[all-commits] [llvm/llvm-project] bdb323: [AMDGPU] Implement CFI for CSR spills (#183150)

Tony Varghese via All-commits all-commits at lists.llvm.org
Fri May 29 05:04:13 PDT 2026


  Branch: refs/heads/users/tonykuttai/ltobugfix
  Home:   https://github.com/llvm/llvm-project
  Commit: bdb3232dfacba6a61a0ac45bec3fb18c7c1c24bd
      https://github.com/llvm/llvm-project/commit/bdb3232dfacba6a61a0ac45bec3fb18c7c1c24bd
  Author: Scott Linder <scott.linder at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIFrameLowering.h
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.h
    M llvm/test/CodeGen/AMDGPU/GlobalISel/assert-align.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/call-outgoing-stack-args.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/localizer.ll
    M llvm/test/CodeGen/AMDGPU/a-v-flat-atomicrmw.ll
    M llvm/test/CodeGen/AMDGPU/a-v-global-atomicrmw.ll
    M llvm/test/CodeGen/AMDGPU/abi-attribute-hints-undefined-behavior.ll
    M llvm/test/CodeGen/AMDGPU/accvgpr-spill-scc-clobber.mir
    M llvm/test/CodeGen/AMDGPU/agpr-copy-no-free-registers.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn-call-whole-wave.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.256bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.320bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.384bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.448bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.576bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.640bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.704bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.768bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.832bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.896bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.960bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-preserve-cc.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow-codegen.ll
    M llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit-undefined-behavior2.ll
    M llvm/test/CodeGen/AMDGPU/av_spill_cross_bb_usage.mir
    M llvm/test/CodeGen/AMDGPU/bf16.ll
    M llvm/test/CodeGen/AMDGPU/branch-relax-spill.ll
    M llvm/test/CodeGen/AMDGPU/call-args-inreg-bfloat.ll
    M llvm/test/CodeGen/AMDGPU/call-args-inreg-no-sgpr-for-csrspill.ll
    M llvm/test/CodeGen/AMDGPU/call-args-inreg.ll
    M llvm/test/CodeGen/AMDGPU/call-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/call-preserved-registers.ll
    M llvm/test/CodeGen/AMDGPU/call-skip.ll
    M llvm/test/CodeGen/AMDGPU/callee-frame-setup.ll
    M llvm/test/CodeGen/AMDGPU/callee-special-input-vgprs-packed.ll
    M llvm/test/CodeGen/AMDGPU/callee-special-input-vgprs.ll
    M llvm/test/CodeGen/AMDGPU/cc-entry.ll
    M llvm/test/CodeGen/AMDGPU/cc-inreg-sgpr0-3-mismatch.ll
    M llvm/test/CodeGen/AMDGPU/copysign-simplify-demanded-bits.ll
    M llvm/test/CodeGen/AMDGPU/cross-block-use-is-not-abi-copy.ll
    M llvm/test/CodeGen/AMDGPU/debug-frame.ll
    M llvm/test/CodeGen/AMDGPU/dwarf-multi-register-use-crash.ll
    M llvm/test/CodeGen/AMDGPU/dynamic-vgpr-reserve-stack-for-cwsr.ll
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-mov-b32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-select.ll
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-select.mir
    M llvm/test/CodeGen/AMDGPU/fix-frame-reg-in-custom-csr-spills.ll
    M llvm/test/CodeGen/AMDGPU/frame-index.mir
    M llvm/test/CodeGen/AMDGPU/frame-setup-without-sgpr-to-vgpr-spills.ll
    M llvm/test/CodeGen/AMDGPU/function-args-inreg.ll
    M llvm/test/CodeGen/AMDGPU/gfx-call-non-gfx-func.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-preserved-registers.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-return-types.ll
    M llvm/test/CodeGen/AMDGPU/identical-subrange-spill-infloop.ll
    M llvm/test/CodeGen/AMDGPU/insert-delay-alu-bug.ll
    M llvm/test/CodeGen/AMDGPU/insert-waitcnts-crash.ll
    M llvm/test/CodeGen/AMDGPU/issue176578.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.scale.f32.16x16x128.f8f6f4.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.scale.f32.32x32x64.f8f6f4.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.readfirstlane.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.smfmac.gfx950.ll
    M llvm/test/CodeGen/AMDGPU/llvm.maximum.f64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.minimum.f64.ll
    M llvm/test/CodeGen/AMDGPU/materialize-frame-index-sgpr.gfx10.ll
    M llvm/test/CodeGen/AMDGPU/materialize-frame-index-sgpr.ll
    M llvm/test/CodeGen/AMDGPU/maximumnum.bf16.ll
    M llvm/test/CodeGen/AMDGPU/maximumnum.ll
    M llvm/test/CodeGen/AMDGPU/memintrinsic-unroll.ll
    M llvm/test/CodeGen/AMDGPU/memset-param-combinations.ll
    M llvm/test/CodeGen/AMDGPU/minimumnum.bf16.ll
    M llvm/test/CodeGen/AMDGPU/minimumnum.ll
    M llvm/test/CodeGen/AMDGPU/mul24-pass-ordering.ll
    M llvm/test/CodeGen/AMDGPU/nested-calls.ll
    M llvm/test/CodeGen/AMDGPU/no-source-locations-in-prologue.ll
    M llvm/test/CodeGen/AMDGPU/nofpclass-call.ll
    M llvm/test/CodeGen/AMDGPU/pei-amdgpu-cs-chain-preserve.mir
    M llvm/test/CodeGen/AMDGPU/pei-vgpr-block-spill-csr.mir
    M llvm/test/CodeGen/AMDGPU/preserve-wwm-copy-dst-reg.ll
    M llvm/test/CodeGen/AMDGPU/s-getpc-b64-remat.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-overlap-wwm-reserve.mir
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i64.v8i64.ll
    M llvm/test/CodeGen/AMDGPU/si-lower-sgpr-spills-vgpr-lanes-usage.mir
    M llvm/test/CodeGen/AMDGPU/si-lower-sgpr-spills.mir
    M llvm/test/CodeGen/AMDGPU/sibling-call.ll
    M llvm/test/CodeGen/AMDGPU/spill-partial-csr-sgpr-live-ins.mir
    M llvm/test/CodeGen/AMDGPU/spill-sgpr-csr-live-ins.mir
    M llvm/test/CodeGen/AMDGPU/spill-sgpr-to-virtual-vgpr.mir
    M llvm/test/CodeGen/AMDGPU/spill-vgpr-block.ll
    M llvm/test/CodeGen/AMDGPU/spill_more_than_wavesize_csr_sgprs.ll
    M llvm/test/CodeGen/AMDGPU/stack-realign.ll
    M llvm/test/CodeGen/AMDGPU/stacksave_stackrestore.ll
    M llvm/test/CodeGen/AMDGPU/strictfp_f16_abi_promote.ll
    M llvm/test/CodeGen/AMDGPU/swdev504645-global-fold.ll
    M llvm/test/CodeGen/AMDGPU/tail-call-inreg-arguments.waterfall.ll
    M llvm/test/CodeGen/AMDGPU/tuple-allocation-failure.ll
    M llvm/test/CodeGen/AMDGPU/unfold-masked-merge-scalar-variablemask.ll
    M llvm/test/CodeGen/AMDGPU/unspill-vgpr-after-rewrite-vgpr-mfma.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-mul.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-mark-last-scratch-load.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-tuple-allocation.ll
    M llvm/test/CodeGen/AMDGPU/wave32.ll
    M llvm/test/CodeGen/AMDGPU/whole-wave-functions.ll
    M llvm/test/CodeGen/AMDGPU/whole-wave-register-copy.ll
    M llvm/test/CodeGen/AMDGPU/whole-wave-register-spill.ll

  Log Message:
  -----------
  [AMDGPU] Implement CFI for CSR spills (#183150)

Introduce new SPILL pseudos to allow CFI to be generated for only CSR
spills, and to make ISA-instruction-level accurate information.

Other targets either generate slightly incorrect information or rely on
conventions for how spills are placed within the entry block. The
approach in this change produces larger unwind tables, with the
increased size being spent on additional DW_CFA_advance_location
instructions needed to describe the unwinding accurately.

Change-Id: I9b09646abd2ac4e56eddf5e9aeca1a5bebbd43dd
Co-authored-by: Scott Linder <scott.linder at amd.com>
Co-authored-by: Venkata Ramanaiah Nalamothu <VenkataRamanaiah.Nalamothu at amd.com>


  Commit: 99bc986c527a9a98c85d792cfd99e0518cc1615d
      https://github.com/llvm/llvm-project/commit/99bc986c527a9a98c85d792cfd99e0518cc1615d
  Author: Roy Shi <royitaqi at users.noreply.github.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/include/llvm/Support/FileSystem.h
    M llvm/include/llvm/Support/MemoryBuffer.h
    M llvm/lib/Support/MemoryBuffer.cpp
    M llvm/lib/Support/Unix/Path.inc
    M llvm/lib/Support/Windows/Path.inc

  Log Message:
  -----------
  [Support] Add MemoryBuffer::randomAccessIfMmap() (#199265)

For read-only MemoryBuffer_MMap, advise the kernel that access pattern
will be random, disabling readahead. This calls `madvise(MADV_RANDOM)`
on *NIX. This function should not be called on a writable buffer.

The implementation follows existing pattern in
`mapped_file_region::dontNeedImpl()` and
`mapped_file_region::willNeedImpl()`.

See intended usage: https://github.com/llvm/llvm-project/pull/199230


  Commit: b76503229dc39d32505504fee48d0d40c4adc069
      https://github.com/llvm/llvm-project/commit/b76503229dc39d32505504fee48d0d40c4adc069
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefLocalVarsChecker.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-local-vars.cpp

  Log Message:
  -----------
  [alpha.webkit.UncountedLocalVarsChecker] Detect a raw pointer/reference in a decomposition declaration. (#198582)


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

  Changed paths:
    M llvm/tools/llvm-profgen/ProfiledBinary.cpp

  Log Message:
  -----------
  [llvm-profgen] Fix -Wunused-variable (#200038)

Inline the variable definition into the assertion given the variable
name does not add much and release builds will end up with an unused
variable otherwise.


  Commit: c315c662cd2d33e0c7f962fed742ee53626d8005
      https://github.com/llvm/llvm-project/commit/c315c662cd2d33e0c7f962fed742ee53626d8005
  Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/test/CodeGen/AMDGPU/code-size-estimate.ll
    M llvm/test/CodeGen/AMDGPU/dagcombine-fmul-sel.ll
    M llvm/test/CodeGen/AMDGPU/extract-subvector-16bit.ll
    M llvm/test/CodeGen/AMDGPU/fmul-to-ldexp.ll
    M llvm/test/CodeGen/AMDGPU/imm16.ll
    M llvm/test/CodeGen/AMDGPU/select-fabs-fneg-extract.f16.ll
    M llvm/test/CodeGen/AMDGPU/select-fabs-fneg-extract.v2f16.ll

  Log Message:
  -----------
  [AMDGPU] Fix codesize estimate after #198005 (#200033)

This fixes failure in libc tests which checks the exact encoding
size. Encoding is now shorter, but it did not recognize fp16
immediates as an inlinable constant and assumes literal encoding.

Shorter encodings were created here:
https://github.com/llvm/llvm-project/pull/198005


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp

  Log Message:
  -----------
  [VPlan] Thread scalar types through VPReplicateRecipe. (NFC) (#199379)

Update VPReplicateRecipe to populate VPSingleDefValue's scalar
type. For most opcodes, the scalar type is determine from the operands,
via computeScalarTypeForInstruction (from
https://github.com/llvm/llvm-project/pull/199378).
For some opcodes, like Loads and casts, the type must be
provided explicitly.

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

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


  Commit: 2f0815059c7b033acf935d49380d8b0166460bb3
      https://github.com/llvm/llvm-project/commit/2f0815059c7b033acf935d49380d8b0166460bb3
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M bolt/test/lit.cfg.py
    M libc/utils/libctest/format.py
    M libsycl/test/lit.cfg.py
    M lldb/test/API/lit.cfg.py
    M lldb/test/API/lldbtest.py
    M lldb/test/Shell/lit.cfg.py
    M llvm/utils/lit/lit/LitConfig.py
    M llvm/utils/lit/lit/TestRunner.py
    M llvm/utils/lit/lit/TestingConfig.py
    M llvm/utils/lit/lit/formats/googletest.py
    M llvm/utils/lit/lit/main.py
    M llvm/utils/lit/tests/Inputs/googletest-timeout/lit.cfg
    M llvm/utils/lit/tests/Inputs/shtest-timeout/lit.cfg

  Log Message:
  -----------
  Reland: [lit] Move maxIndividualTestTime from global to test suite config (#199996)

Simplify LitConfig initialization and setter to allow None values.
TestingConfig.maxIndividualTestTime is initialized to 0 (or resolved to
0 if None) strictly during initialization.

This fixes an issue where the aggressive BOLT timeout of 60s (previously
set globally on lit_config) was leaking and affecting libc++ tests. By
moving the timeout configuration from the global lit_config to the
individual test suite config, we ensure that timeouts are isolated and
respect suite-local settings without leaking.

PR Stack:
* https://github.com/llvm/llvm-project/pull/198192
* https://github.com/llvm/llvm-project/pull/199886
* ➤ https://github.com/llvm/llvm-project/pull/199996
* https://github.com/llvm/llvm-project/pull/198193

The diff from #198192 is 39b632f741012bfbff9858407765e45435ad95ff

Assisted-by: Gemini


  Commit: bf005a1227a4822c7c2535dd5f5f3626fbe441b2
      https://github.com/llvm/llvm-project/commit/bf005a1227a4822c7c2535dd5f5f3626fbe441b2
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/test/Analysis/Checkers/WebKit/call-args.cpp
    M clang/test/Analysis/Checkers/WebKit/objc-mock-types.h
    A clang/test/Analysis/Checkers/WebKit/unretained-call-args-member.mm

  Log Message:
  -----------
  [alpha.webkit.UnretainedCallArgsChecker] Emit a warning for a non-const RetainPtr member (#184243)

This PR fixes a bug in UnretainedCallArgsChecker that it wouldn't emit a
warning when calling a function with the return value of a getter of a
RetainPtr non-const member variable even if such a member variable could
be mutated during such a function call.

The bug caused by tryToFindPtrOrigin treating any call of a getter on a
smart pointer member variable as safe. Fixed the bug by limiting this to
only when the variable is a local variable or a function parameter.

In addition, this PR fixes a bug in WebKit checkers that it would
erroneously emit a warning when calling a getter on a const RetainPtr
member variable beacuse isOwnerPtr was returning false for RetainPtr.
This false negative was previously masked / hidden by the false positive
fixed in this PR.

---------

Co-authored-by: Balázs Benics <benicsbalazs at gmail.com>


  Commit: 9ca1941d8ea2cc9f95def825d2c77cc91e2d2fd5
      https://github.com/llvm/llvm-project/commit/9ca1941d8ea2cc9f95def825d2c77cc91e2d2fd5
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M flang-rt/cmake/modules/AddFlangRTOffload.cmake
    M flang-rt/lib/runtime/CMakeLists.txt

  Log Message:
  -----------
  [flang-rt][cuda] Move thin I/O to ptx only (#200054)


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

  Changed paths:
    M llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp
    M llvm/test/Transforms/SeparateConstOffsetFromGEP/AMDGPU/lower-gep.ll
    M llvm/test/Transforms/SeparateConstOffsetFromGEP/split-gep-sub.ll

  Log Message:
  -----------
  [SeparateConstOffsetFromGEP] Set `inbounds` correctly. (#199304)

swapGEPOperand reorders the GEPs (ptr+off)+const into (ptr+const)+off.
When it does so, it needs to determine if the inner GEP is inbounds.

Previously the way it did this was to call
stripAndAccumulateInBoundsConstantOffsets on (ptr+const), and then check
if this offset was indeed in-bounds.

However, this GEP was not necessarily marked as `inbounds` itself. If it
was not, stripAndAccumulateInBoundsConstantOffsets would return 0 for
the offset (instead of `const`), in which case we'd check if
`0 < [obj width]`, which is trivially true, and then incorrectly mark
the GEP as inbounds.

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


  Commit: 4fe4d9844862451b38bb3bd7329ab1b29916e3be
      https://github.com/llvm/llvm-project/commit/4fe4d9844862451b38bb3bd7329ab1b29916e3be
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/IR/Instructions.cpp
    M llvm/test/Transforms/SimpleLoopUnswitch/trivial-unswitch-profmd.ll

  Log Message:
  -----------
  [IR] Handle `expected` tag in switch branch weights. (#200025)

Switch branch weight metadata has an optional `expected` tag.
SwitchInstProfUpdateWrapper::getSuccessorWeight() did not handle this
tag; if it was present, it would return nullopt, effectively ignoring
the metadata.

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


  Commit: 4e39ea3d5e7320035384072021582af74d91b1a9
      https://github.com/llvm/llvm-project/commit/4e39ea3d5e7320035384072021582af74d91b1a9
  Author: Scott Linder <scott.linder at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.h
    A llvm/test/CodeGen/AMDGPU/amdgpu-spill-cfi-saved-regs.ll

  Log Message:
  -----------
  [AMDGPU] Implement -amdgpu-spill-cfi-saved-regs (#183149)

These spills need special CFI anyway, so implementing them directly
where CFI is emitted avoids the need to invent a mechanism to track them
from ISel.

Change-Id: If4f34abb3a8e0e46b859a7c74ade21eff58c4047
Co-authored-by: Scott Linder <scott.linder at amd.com>
Co-authored-by: Venkata Ramanaiah Nalamothu <VenkataRamanaiah.Nalamothu at amd.com>


  Commit: 5a7e4a0cf7f53a74b87c53b792b6a1d3ece3df28
      https://github.com/llvm/llvm-project/commit/5a7e4a0cf7f53a74b87c53b792b6a1d3ece3df28
  Author: Scott Linder <scott.linder at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineFunction.h
    M llvm/include/llvm/MC/MCDwarf.h
    M llvm/lib/CodeGen/MachineFunction.cpp
    M llvm/lib/MC/MCDwarf.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
    M llvm/test/CodeGen/AMDGPU/debug-frame.ll
    M llvm/test/CodeGen/AMDGPU/dwarf-multi-register-use-crash.ll
    M llvm/test/CodeGen/AMDGPU/insert-waitcnts-crash.ll
    M llvm/test/CodeGen/AMDGPU/no-source-locations-in-prologue.ll
    M llvm/test/CodeGen/AMDGPU/pei-vgpr-block-spill-csr.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-overlap-wwm-reserve.mir

  Log Message:
  -----------
  [AMDGPU][MC] Replace shifted registers in CFI instructions (#183147)

Change-Id: I0d99e9fe43ec3b6fecac20531119956dca2e4e5c


  Commit: b6161b9f4c9e306fa07295db67a7ecc8cfadcffb
      https://github.com/llvm/llvm-project/commit/b6161b9f4c9e306fa07295db67a7ecc8cfadcffb
  Author: Jeff Bailey <jbailey at raspberryginger.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M libc/include/CMakeLists.txt

  Log Message:
  -----------
  [libc] Add missing struct_mmsghdr dependency to sys_socket (#200051)

Updated libc/include/CMakeLists.txt to add
.llvm-libc-types.struct_mmsghdr to the sys_socket dependency list. This
ensures that the generated sys/socket.h correctly includes the
struct_mmsghdr.h type header.

Assisted-by: Automated tooling, human reviewed.


  Commit: 5ae73b942f44295c0baff138effe7272a94c7a1b
      https://github.com/llvm/llvm-project/commit/5ae73b942f44295c0baff138effe7272a94c7a1b
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M lldb/include/lldb/Core/Module.h
    M lldb/source/Commands/CommandObjectTarget.cpp
    M lldb/source/Core/Module.cpp

  Log Message:
  -----------
  [lldb] Keep addr for Memory Modules separate (#199810)

This change is to make DataFileCache symbol table caching work with
memory-read binary modules.

When we read a Module out of memory, we keep the address of the module
in Module's m_object_name field as a string. This is normally the name
of a file in a ranlib/static library/.a archive like the "main.o" in
"foo.a(main.o)". The address is most often seen in the "image list"
output, and is the only easy way to distinguish in that output which
binaries were read out of memory, versus found on local disk. The "name"
of the Module ends up being the combination of the FileSpec plus this
m_object_name.

Reading a binary out of memory is expensive, primarily because of
reading the symbol table. The DataFileCache feature that Greg introduced
five years ago can cache the Symbol Table for a binary locally, and when
we see the same binary loaded again in a future debug session/lldb
session, we can skip parsing the symbol table (or in the case of Memory
Module, reading it from memory).

Unfortunately because the "name" of the Module is the combination of the
FileSpec PLUS the address, if this is a system where binaries can load
at different addresses, we may not be able to use the DataFileCache for
a memory module. The address should not be part of the name for this.

In Module, I created a new optional ivar to track the memory module
address, if this is one, instead of putting the string representation in
m_object_name. In all places (except the DataFileCache name
construction), I append the address to the name just like we do with
m_object_name.

There were a few logging points that were manually constructing the name
when a method would do it for them already; I changed them to call the
method instead.

Probably the least clean part is in CommandObjectTarget (the image list
output), we add the ObjectName to the FileSpec here as well. For now,
instead of trying to leverage one of the methods in Module that combine
them already, I changed it to use the same change.

I used a std::optional for this address instead of the
LLDB_INVALID_ADDRESS convention because it was a lot cleaner to read, I
thought, even if it is different than most often used in the codebase.
Open to using the older coding style if other people think consistency
is more important.


  Commit: 78987e85ae0930b10d2588a9f8333a2fa8c3014d
      https://github.com/llvm/llvm-project/commit/78987e85ae0930b10d2588a9f8333a2fa8c3014d
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M lldb/include/lldb/Core/DataFileCache.h
    M lldb/include/lldb/Core/Module.h
    M lldb/include/lldb/Symbol/ObjectFile.h
    M lldb/include/lldb/Symbol/Symbol.h
    M lldb/include/lldb/Symbol/Symtab.h
    M lldb/include/lldb/Utility/DataEncoder.h
    M lldb/source/Core/DataFileCache.cpp
    M lldb/source/Core/Mangled.cpp
    M lldb/source/Symbol/Symtab.cpp

  Log Message:
  -----------
  [lldb] Edits and clarifications to DataFileCache comments, NFC (#199787)

I was reading through Greg Clayton's DataFileCache PR and fixed a few
small typeos as I went along.

I also had a little trouble understanding the two types of hashes that
are calculated for a file, at first, and I tried to write comments for
the relevant methods (in Module, ObjectFile, and DataFileCache) to be
more explicit about their role and the role of the other hashes that are
calculated. It may be more detail than necessary, but it would have been
helpful for me while reading this through.


  Commit: 055a4ba0b27794d1dd04149f87ebc3cc47bc2bd9
      https://github.com/llvm/llvm-project/commit/055a4ba0b27794d1dd04149f87ebc3cc47bc2bd9
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  [clang] Update C++ DR status page (#200053)

Updates from 2026-05-19 CWG telecon.


  Commit: 9fa9ab338f753cf4fd7c6f7c3c8424da7d15c588
      https://github.com/llvm/llvm-project/commit/9fa9ab338f753cf4fd7c6f7c3c8424da7d15c588
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

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

  Log Message:
  -----------
  [RISCV] Remove unused Predicates for Zicfilp. NFC (#200028)


  Commit: 8fc12f1e3f6aab79aefd70cf68f9c92439e2fc32
      https://github.com/llvm/llvm-project/commit/8fc12f1e3f6aab79aefd70cf68f9c92439e2fc32
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M flang-rt/cmake/modules/AddFlangRTOffload.cmake

  Log Message:
  -----------
  [flang-rt][cuda] Set RT_CUDA_THIN_IO=1 only for PTX object (#200063)


  Commit: e1dd984a809c9c7b8cc3731e3b8eeb8d01fbc8c1
      https://github.com/llvm/llvm-project/commit/e1dd984a809c9c7b8cc3731e3b8eeb8d01fbc8c1
  Author: Susan Tan (ス-ザン タン) <zujunt at nvidia.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
    M flang/test/Transforms/FIRToMemRef/slice-projected.mlir

  Log Message:
  -----------
  [flang][FIRToMemRef] fix stride calculation for complex lowering (#200035)

**Summary**
When `fir.array_coor` targets a projected slice of a complex array (path
0 = real, 1 = imag), FIRToMemRef must not treat the result as a dense
memref.

**Bug:** The pass stopped after fir.convert to `memref<…×complex>` (or
static-shape fast path) and used default/dense strides. Loads/stores
then stepped by sizeof(complex) instead of sizeof(re)/sizeof(im).

**Fix:** For constant `%re/%im` on `complex<T>` storage:

`fir.convert` storage to `memref<…×2×T>` and index the component (0 or
1).
Read layout from `fir.box_dims` on the box (even if the memref shape is
static).
Set each memref stride to `box_dims_byte_stride / sizeof(T)`.

Advised by Cursor


  Commit: e8cc37e60d04ea2e25f03fbeeb8de59f4e640448
      https://github.com/llvm/llvm-project/commit/e8cc37e60d04ea2e25f03fbeeb8de59f4e640448
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/lib/DependencyScanning/DependencyScannerImpl.cpp

  Log Message:
  -----------
  [clang][deps] Disable app extensions during scanning (#200041)

Application extension contributes to the context hash, but only affects
the availability attribute on declarations. Since it cannot affect
dependencies, disable it for the scan to reduce the number of scanning
PCM variants.


  Commit: 00b4695f1dc6b04168be2e1ed8368624d768314f
      https://github.com/llvm/llvm-project/commit/00b4695f1dc6b04168be2e1ed8368624d768314f
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/test/CodeGen/AArch64/fast-isel-branch-cond-split.ll
    A llvm/test/Transforms/CodeGenPrepare/X86/split-branch-cond-weights.ll

  Log Message:
  -----------
  [CodeGenPrepare] Use recomputed split-branch weights. (#199822)

splitBranchCondition computes new branch weights after splitting an
and/or condition into two branches, but then passed the original weights
to createBranchWeights at each metadata update. The recomputed values
were discarded.

Pass the scaled NewTrueWeight/NewFalseWeight values when installing
metadata on both generated branches.

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


  Commit: 7f82efb3966868dfe7d0b37dd6aa104007d264ff
      https://github.com/llvm/llvm-project/commit/7f82efb3966868dfe7d0b37dd6aa104007d264ff
  Author: Guy David <guyda96 at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/include/module.modulemap

  Log Message:
  -----------
  [Object] Add missing BBAddrMap.def to module map (#199961)

Added in 532940bdee66bf5f36a70578698aab66f16919af.


  Commit: f13305bac8ea2237e6fbab29f172e6a5a5058a1c
      https://github.com/llvm/llvm-project/commit/f13305bac8ea2237e6fbab29f172e6a5a5058a1c
  Author: Min-Yih Hsu <min.hsu at sifive.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    A llvm/test/Transforms/VectorCombine/RISCV/vector-deinterleave2.ll

  Log Message:
  -----------
  [VectorCombine] Fold deinterleave2 with smaller effective element size (#192121)

Found in real-world code where this sequence:
```
%d = llvm.vector.deinterleave2 <vscale x 16 x i32> %v
%f0 = extractvalue { <vscale x 8 x i32>, <vscale x 8 x i32> } %d, 0
%f1 = extractvalue { <vscale x 8 x i32>, <vscale x 8 x i32> } %d, 1

%low0 = and <vscale x 8 x i32> %f0, splat (i32 65535)
%low1 = shl <vscale x 8 x i32> %f1, splat (i32 16)
%merge0 = or disjoint <vscale x 8 x i32> %low0, %low1

%high0 = and <vscale x 8 x i32> %f1, splat (i32 -65536)
%high1 = lshr <vscale x 8 x i32> %f0, splat (i32 16)
%merge1 = or disjoint <vscale x 8 x i32> %high0, %high1
```
is really just doing `deinterleave2` but on `<vscale x 32 x i16>`. That
is, the same total vector size but with half the element width. So we
can turn it into:
```
%narrow.v = bitcast <vscale x 16 x i32> %v to <vscale x 32 x i16>
%d = llvm.vector.deinterleave2 <vscale x 32 x i16> %narrow.v
%f0 = extractvalue { <vscale x 16 x i16>, <vscale x 16 x i16> } %d, 0
%f1 = extractvalue { <vscale x 16 x i16>, <vscale x 16 x i16> } %d, 1

%merge0 = bitcast <vscale x 16 x i16> %f0 to <vscale x 8 x i32>
%merge1 = bitcast <vscale x 16 x i16> %f1 to <vscale x 8 x i32>
```
I put this in VectorCombine because I'm worried that the newly created
bitcast might be expensive for some targets, hence a profitability check
before committing the transformation.


  Commit: eb0cb0c69526a8bff5b3b1399a2bd7da4cd3a148
      https://github.com/llvm/llvm-project/commit/eb0cb0c69526a8bff5b3b1399a2bd7da4cd3a148
  Author: Zhijie Wang <yesterda9 at gmail.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

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

  Log Message:
  -----------
  [LifetimeSafety] Propagate inner origins through std::move and related casts (#199600)

std::move and related casts (std::forward, std::forward_like,
std::move_if_noexcept, std::as_const) are reference casts: the result
refers to the same object as the argument. Flow all origin levels for
this family.
  
Fixes #191954


  Commit: 9409c07de6378507397ecdb6f05f628f58110112
      https://github.com/llvm/llvm-project/commit/9409c07de6378507397ecdb6f05f628f58110112
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.h

  Log Message:
  -----------
  [lldb][Darwin] Read Mach-O binaries out of memory more efficiently (#200072)

When lldb needs to read a Mach-O binary out of memory, it first reads
512 bytes to get the mach header, which includes the size of the load
commands, and then does a second read to get the mach header and load
commands.

I am changing the initial read to get 3192 bytes, which will include the
full load commands for most binaries.

In April I changed debugserver to return the correct size of the mach
header and load commands in a `sizeof_mh_and_loadcmds` key. If this
number is provided, refine the amount we read to this size.

This reduces the number of memory read packets we issue from 2 to 1 for
a memory module, outside of packets that may be needed to get the symbol
table.


  Commit: 9d1644738134c7132058dddf4b97f2a782429862
      https://github.com/llvm/llvm-project/commit/9d1644738134c7132058dddf4b97f2a782429862
  Author: Harald van Dijk <hdijk at accesssoftek.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILWriter/DXILBitcodeWriter.cpp
    M llvm/lib/Target/DirectX/DXILWriter/DXILValueEnumerator.cpp
    M llvm/lib/Target/DirectX/DXILWriter/DXILValueEnumerator.h
    M llvm/lib/Target/DirectX/DirectXIRPasses/CMakeLists.txt
    M llvm/lib/Target/DirectX/DirectXIRPasses/DXILDebugInfo.cpp
    M llvm/lib/Target/DirectX/DirectXIRPasses/DXILDebugInfo.h
    A llvm/test/tools/dxil-dis/dbg-value.ll
    M llvm/test/tools/dxil-dis/debug-info.ll

  Log Message:
  -----------
  [DirectX] Add an "offset" operand to llvm.dbg.value (#197478)

Offset operand was removed in abe04759a6, so we need to bring it back
for DXIL. If offset is not specified, it should be zero.

---------

Co-authored-by: Andrew Savonichev <andrew.savonichev at gmail.com>


  Commit: e69fb46030a03bcd9556d60844defd2bb9627587
      https://github.com/llvm/llvm-project/commit/e69fb46030a03bcd9556d60844defd2bb9627587
  Author: Roy Shi <royitaqi at users.noreply.github.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/DebugInfo/GSYM/GsymReader.cpp
    M llvm/tools/llvm-gsymutil/Opts.td
    M llvm/tools/llvm-gsymutil/llvm-gsymutil.cpp

  Log Message:
  -----------
  [gsymutil] Disable readahead in `GsymReader::openFile()` (#199230)

`GsymReader::lookup()` has random access pattern (i.e. binary search an
address, then spot-load/parse info from rest of the GSYM data).
Readahead strategies in kernels (which was enabled by default) don't
necessarily improve (and may degrade) performance. This patch disables
readahead.

In a production system, similar change has seen 5% improvement on IOPS
and data reads. An offline performance test on a Linux machine shows
similar results - it reduces 14.3% total data read, 3.5% CPU%, and 2.9%
wall time (while adding 9.4% page faults). The reduction of total data
read and CPU % may help the performance of a heavily-loaded production
system.
```
  ┌────────────────┬─────────────┬─────────┬────────┐
  │     Metric     │ MADV_RANDOM │ Default │  Diff  │
  ├────────────────┼─────────────┼─────────┼────────┤
  │ Wall (s)       │ 0.286       │ 0.294   │ -2.9%  │
  ├────────────────┼─────────────┼─────────┼────────┤
  │ Major PF       │ 203.6       │ 186.0   │ +9.4%  │
  ├────────────────┼─────────────┼─────────┼────────┤
  │ Minor PF       │ 4433.1      │ 4450.3  │ -0.4%  │
  ├────────────────┼─────────────┼─────────┼────────┤
  │ FS inputs (MB) │ 118.8       │ 138.7   │ -14.3% │
  ├────────────────┼─────────────┼─────────┼────────┤
  │ CPU %          │ 48.8        │ 50.6    │ -3.5%  │
  └────────────────┴─────────────┴─────────┴────────┘
```
The test is performed by doing 100 cold runs, where each run first
purges kernel page cache, then opens/mmaps a 3.8 GB GSYM file, and then
looks up 3 addresses at the beginning/middle/end of the address list.
See [test
script](https://gist.github.com/royitaqi/c06c733cccfbf747d63750b06db77b4a).

The pre-existing hidden option `llvm-gsymutil --benchmark-reader` is
extended to take optional `=<start>,<stride>` to make performance
testing easier.


  Commit: 5db13643f4b7038db0ca304d9f8900122502935c
      https://github.com/llvm/llvm-project/commit/5db13643f4b7038db0ca304d9f8900122502935c
  Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/lib/CodeGen/CGCUDANV.cpp
    A clang/test/CodeGenHIP/offload-pgo-sections.hip
    M compiler-rt/lib/profile/CMakeLists.txt
    M compiler-rt/lib/profile/InstrProfilingFile.c
    A compiler-rt/lib/profile/InstrProfilingPlatformROCm.cpp
    M llvm/include/llvm/IR/RuntimeLibcalls.td
    M llvm/include/llvm/ProfileData/InstrProf.h
    M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
    M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
    A llvm/test/Instrumentation/InstrProfiling/amdgpu-instrumentation.ll
    A llvm/test/Instrumentation/InstrProfiling/amdgpu-profc-arrays.ll
    A llvm/test/Instrumentation/InstrProfiling/gpu-weak.ll
    A llvm/test/Transforms/PGOProfile/amdgpu-disable-value-profiling.ll

  Log Message:
  -----------
  [PGO][AMDGPU] Add basic HIP offload PGO support (#177665)

Provide the minimum HIP/offload path for device profile collection and
merge on HIP before layering profile-format and uniformity-specific
changes separately.

This adds the ROCm collection runtime, hooks device collection into the
host write-file path, lowers AMDGPU instrumentation to
__llvm_profile_instrument_gpu with regular counters, and disables GPU
indirect-call value profiling.


  Commit: 1670d39972a1c6dd4a9e6f54d509a86a72dae1da
      https://github.com/llvm/llvm-project/commit/1670d39972a1c6dd4a9e6f54d509a86a72dae1da
  Author: Harald van Dijk <hdijk at accesssoftek.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILWriter/DXILBitcodeWriter.cpp
    M llvm/lib/Target/DirectX/DirectXIRPasses/PointerTypeAnalysis.cpp
    A llvm/test/tools/dxil-dis/dbg-declare-undef.ll

  Log Message:
  -----------
  [DirectX] Handle undef the same way as null (#197507)


  Commit: 9cc6c9375faa11722435a150c9829df2452b48ca
      https://github.com/llvm/llvm-project/commit/9cc6c9375faa11722435a150c9829df2452b48ca
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M libclc/clc/include/clc/relational/clc_signbit.h
    M libclc/clc/lib/generic/relational/clc_signbit.cl
    A libclc/clc/lib/generic/relational/clc_signbit.inc

  Log Message:
  -----------
  [libclc] Optimize and vectorize signbit (#199497)

Replace element-wise scalarizing implementation with bitcast and shift.
For example,
define hidden range(i32 -1, 1) <2 x i32> @_Z7signbitDv2_f(<2 x float>
noundef %0) #0 {
  %2 = bitcast <2 x float> %0 to <2 x i32>
  %3 = extractelement <2 x i32> %2, i64 0
  %4 = lshr i32 %3, 31
  %5 = insertelement <2 x i32> poison, i32 %4, i64 0
  %6 = extractelement <2 x i32> %2, i64 1
  %7 = lshr i32 %6, 31
  %8 = insertelement <2 x i32> %5, i32 %7, i64 1
  %9 = icmp ne <2 x i32> %8, zeroinitializer
  %10 = sext <2 x i1> %9 to <2 x i32>
  ret <2 x i32> %10
}
is changed to:
define hidden noundef range(i32 -1, 1) <2 x i32> @_Z7signbitDv2_f(<2 x
float> noundef %0) #0 {
  %2 = bitcast <2 x float> %0 to <2 x i32>
  %3 = ashr <2 x i32> %2, splat (i32 31)
  ret <2 x i32> %3
}


  Commit: 1a5822e3c9421fd0a270e7bad3dff92219dd9da3
      https://github.com/llvm/llvm-project/commit/1a5822e3c9421fd0a270e7bad3dff92219dd9da3
  Author: Adrian Vogelsgesang <avogelsgesang at salesforce.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/test/CodeGenCoroutines/coro-gro4.cpp
    M clang/test/CodeGenCoroutines/coro-symmetric-transfer-03.cpp
    M clang/test/CodeGenCoroutines/coro-symmetric-transfer-04.cpp
    M clang/test/CodeGenCoroutines/pr65018.cpp
    M llvm/docs/Coroutines.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm/Transforms/Coroutines/CoroShape.h
    M llvm/lib/Transforms/Coroutines/CoroCleanup.cpp
    M llvm/lib/Transforms/Coroutines/CoroEarly.cpp
    M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
    M llvm/test/Transforms/Coroutines/coro-alloc-with-param-O0.ll
    M llvm/test/Transforms/Coroutines/coro-alloc-with-param-O2.ll
    M llvm/test/Transforms/Coroutines/coro-alloca-07.ll
    M llvm/test/Transforms/Coroutines/coro-await-suspend-handle-in-ramp.ll
    M llvm/test/Transforms/Coroutines/coro-await-suspend-lower-invoke.ll
    M llvm/test/Transforms/Coroutines/coro-await-suspend-lower.ll
    M llvm/test/Transforms/Coroutines/coro-debug-O2.ll
    M llvm/test/Transforms/Coroutines/coro-debug-coro-frame.ll
    M llvm/test/Transforms/Coroutines/coro-debug-dbg.values-not_used_in_frame.ll
    M llvm/test/Transforms/Coroutines/coro-debug-frame-variable.ll
    M llvm/test/Transforms/Coroutines/coro-debug-spill-dbg.declare.ll
    M llvm/test/Transforms/Coroutines/coro-debug.ll
    M llvm/test/Transforms/Coroutines/coro-eh-aware-edge-split-00.ll
    M llvm/test/Transforms/Coroutines/coro-eh-aware-edge-split-01.ll
    M llvm/test/Transforms/Coroutines/coro-eh-aware-edge-split-02.ll
    M llvm/test/Transforms/Coroutines/coro-frame-arrayalloca.ll
    M llvm/test/Transforms/Coroutines/coro-frame.ll
    M llvm/test/Transforms/Coroutines/coro-noop-pacbti.ll
    M llvm/test/Transforms/Coroutines/coro-noop.ll
    M llvm/test/Transforms/Coroutines/coro-padding.ll
    M llvm/test/Transforms/Coroutines/coro-resume-destroy.ll
    M llvm/test/Transforms/Coroutines/coro-spill-corobegin.ll
    M llvm/test/Transforms/Coroutines/coro-spill-promise-02.ll
    M llvm/test/Transforms/Coroutines/coro-spill-promise.ll
    M llvm/test/Transforms/Coroutines/coro-spill-suspend.ll
    M llvm/test/Transforms/Coroutines/coro-split-dbg-labels-inlined.ll
    M llvm/test/Transforms/Coroutines/coro-split-dbg-labels.ll
    M llvm/test/Transforms/Coroutines/coro-split-eh-00.ll
    M llvm/test/Transforms/Coroutines/coro-split-eh-01.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail-chain-pgo-counter-promo.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail1.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail2.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail3.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail4.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail5.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail6.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail7.ll
    M llvm/test/Transforms/Coroutines/coro-split-sink-lifetime-01.ll
    M llvm/test/Transforms/Coroutines/coro-split-sink-lifetime-02.ll
    M llvm/test/Transforms/Coroutines/coro-split-sink-lifetime-03.ll
    M llvm/test/Transforms/Coroutines/coro-split-sink-lifetime-04.ll
    M llvm/test/Transforms/Coroutines/coro-split-tbaa-md.ll
    M llvm/test/Transforms/Coroutines/coro-zero-alloca.ll

  Log Message:
  -----------
  [coro] Use C calling convention for C++20 coroutines (#198943)

Change the calling convention for resume / destroy functions of C++
coroutines from `fastcc` to the C calling convention.

The resume / destroy functions are exposed as part of the coroutine ABI
and must be compatible with other compilers and other versions of LLVM.
fastcc is an LLVM-internal, unstable calling convention, though.

In practice, fastcc and the C calling convention are in sync for `void
func(void*)` function signatures on almost all platforms. Therefore, I
think we can still do this change without widespread ABI breakage.

`fastcc` and `ccc` do differ for i686 (x86-32), MIPS O32, PowerPC64
ELFv1 and Lanai. Afaik, those are all legacy ABIs and a recent feature
like C++20 coroutines is unlikely to be used by projects still targeting
legacy ABIs.

Historical context: I tried to figure out why `fastcc` was used. It is
around since the original commit f93082e71a94 from 2016, predating the
cross-vendor coroutine ABI work. I could not find any discussion of
whether this should use `fastcc` on the review or on the mailing list.

As a side-effect, this also fixes #91123.

Co-authored-by: Cursor <cursoragent at cursor.com>


  Commit: 830c8d625421ed5e86c73acb523f92ee4e39ee84
      https://github.com/llvm/llvm-project/commit/830c8d625421ed5e86c73acb523f92ee4e39ee84
  Author: Derek Schuff <dschuff at chromium.org>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    A llvm/test/tools/llvm-symbolizer/Inputs/wasm-basic.yaml
    R llvm/test/tools/llvm-symbolizer/lit.local.cfg
    M llvm/test/tools/llvm-symbolizer/wasm-basic.s

  Log Message:
  -----------
  test(llvm-symbolizer): fix Wasm layering violation by using YAML (#200080)

Avoid using wasm-ld in LLVM tests by prebuilding the test binary
as a YAML file and using yaml2obj at test time.

This matches the approach taken in
4bce216e6b550c770f2e536422c3d95333f65ba3.
Because yaml2obj always uses 5-byte LEBs, the CODE section offset
shifted from 0x37 to 0x4b, so the file offsets passed to llvm-symbolizer
were updated accordingly.

Replaces #200046

Assisted-by: Gemini


  Commit: 740e52bc99696661f357d4feb975f0209082cea9
      https://github.com/llvm/llvm-project/commit/740e52bc99696661f357d4feb975f0209082cea9
  Author: Harald van Dijk <hdijk at accesssoftek.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Target/DirectX/DirectXIRPasses/DXILDebugInfo.cpp
    A llvm/test/tools/dxil-dis/di-label.ll

  Log Message:
  -----------
  [DirectX] Drop debug labels (#197490)

Debug labels did not exist in LLVM 3.7 and have no equivalent.


  Commit: d65897289e68696fa5f5b2d2f449f7633fff13ab
      https://github.com/llvm/llvm-project/commit/d65897289e68696fa5f5b2d2f449f7633fff13ab
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefLocalVarsChecker.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-local-vars.cpp
    M clang/test/Analysis/Checkers/WebKit/unretained-local-vars.mm

  Log Message:
  -----------
  [alpha.webkit.UncountedLocalVarsChecker] Detect an assignment to a guardian argument (#198695)

A function parameter of type RefPtr<T>& should not be used as a guardian
variable of a raw pointer/reference variable if the function body
contains an assignment to it since such an assignment can shorten the
lifetime of the guarded object.


  Commit: dbe6800baeec47c538f95421348c6c62a38f061c
      https://github.com/llvm/llvm-project/commit/dbe6800baeec47c538f95421348c6c62a38f061c
  Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/test/CodeGen/AMDGPU/arbitrary-fp-to-float.ll
    M llvm/test/CodeGen/AMDGPU/br_cc.f16.ll
    M llvm/test/CodeGen/AMDGPU/call-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/code-size-estimate.ll
    M llvm/test/CodeGen/AMDGPU/commute-compares-scalar-float.ll
    M llvm/test/CodeGen/AMDGPU/dagcombine-fmul-sel.ll
    M llvm/test/CodeGen/AMDGPU/extract-subvector-16bit.ll
    M llvm/test/CodeGen/AMDGPU/fcanonicalize.bf16.ll
    M llvm/test/CodeGen/AMDGPU/fcanonicalize.f16.ll
    M llvm/test/CodeGen/AMDGPU/fmed3.bf16.ll
    M llvm/test/CodeGen/AMDGPU/fmul-to-ldexp.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/imm16.ll
    M llvm/test/CodeGen/AMDGPU/immv216.ll
    M llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll
    M llvm/test/CodeGen/AMDGPU/llvm.round.ll
    M llvm/test/CodeGen/AMDGPU/lround.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix-hi.ll
    M llvm/test/CodeGen/AMDGPU/select-fabs-fneg-extract.f16.ll
    M llvm/test/CodeGen/AMDGPU/select-fabs-fneg-extract.v2f16.ll
    M llvm/test/CodeGen/AMDGPU/select.f16.ll
    M llvm/test/CodeGen/AMDGPU/shrink-add-sub-constant.ll
    M llvm/test/CodeGen/AMDGPU/true16-imm-folded-to-0-regression.ll
    M llvm/test/MC/AMDGPU/gfx1150_asm_salu_float.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vopc.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopc.s
    M llvm/test/MC/AMDGPU/gfx12_asm_sopc.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3c.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc.s
    M llvm/test/MC/AMDGPU/gfx13_asm_sopc.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop1_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop3-fake16.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop3_from_vop1-fake16.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop3_from_vop1.s
    M llvm/test/MC/AMDGPU/literals.s
    M llvm/test/MC/AMDGPU/vop3-gfx10.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1150_dasm_salu_float.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vopcx.txt

  Log Message:
  -----------
  [AMDGPU] This reverts patches to use fp16 inline constants for i16 (#200091)

Patches reverted:

commit c315c662cd2d33e0c7f962fed742ee53626d8005
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date:   Wed May 27 12:51:13 2026

    [AMDGPU] Fix codesize estimate after #198005 (#200033)

    This fixes failure in libc tests which checks the exact encoding
    size. Encoding is now shorter, but it did not recognize fp16
    immediates as an inlinable constant and assumes literal encoding.

    Shorter encodings were created here:
    https://github.com/llvm/llvm-project/pull/198005

commit 2b3bc03b5ef00e7eaa245420ca981c700e1c05c4
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date:   Wed May 27 10:55:36 2026

    [AMDGPU] Use shorter form for i16 operands (#198005)

    For 16-bit operands an inline constant is zero extended
    which in particular allows to use FP constants. These
    will have 16 bits of zeroes in the high half and FP16
    value in the low 16 bits.

    The patch changes semantics of the FP literal argument
    used in i16 context in the asm parser to fp16.

Apparently this breaks some libc tests with bf16. I do not know
why, these were not supposed to be affected. Reverting for now.

Failed tests: https://lab.llvm.org/buildbot/#/builders/10/builds/29005


  Commit: 0381a09309c6fc1e8aec031580ef5d2396143c79
      https://github.com/llvm/llvm-project/commit/0381a09309c6fc1e8aec031580ef5d2396143c79
  Author: Ryan Buchner <rbuchner at qti.qualcomm.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/RISCV/runtime-strided-stores.ll

  Log Message:
  -----------
  [SLP] Precommit tests for runtime strided stores (#200019)

Accompanies #200018


  Commit: 5b17cdb0b5827d8423470084e6004c5686d9cb2a
      https://github.com/llvm/llvm-project/commit/5b17cdb0b5827d8423470084e6004c5686d9cb2a
  Author: SiHuaN <liyongtai at iscas.ac.cn>
  Date:   2026-05-28 (Thu, 28 May 2026)

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

  Log Message:
  -----------
  [RISCV][P-ext] Split v4i16/v8i8 INSERT/EXTRACT_VECTOR_ELT on RV32. (#199917)

With a constant lane index, split the vector and recurse on the
single-GPR half containing Idx (already Custom-lowered).


  Commit: 6619c82f729487ada200a074c72f7260511bb23e
      https://github.com/llvm/llvm-project/commit/6619c82f729487ada200a074c72f7260511bb23e
  Author: Sudharsan Veeravalli <svs at qti.qualcomm.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVMoveMerger.cpp
    A llvm/test/CodeGen/RISCV/move-merge-zdinx-mvsa-regression.mir

  Log Message:
  -----------
  [RISCV] Fix incorrect CM.MVSA01/QC_CM_MVSA01 generation with Zdinx (#200000)

The `RISCVMoveMerger` pass was incorrectly forming
`CM_MVSA01/QC_CM_MVSA01` when `Zdinx` was enabled. The pass attempted CM
merge for copy pairs even when the first copy was not an `a0/a1-based`
CM candidate.

Fix by only running `findMatchingInst` when the current copy is a valid
CM candidate.


  Commit: f9185454a9a70fd351cb8a1ba3b2b3e33e064c06
      https://github.com/llvm/llvm-project/commit/f9185454a9a70fd351cb8a1ba3b2b3e33e064c06
  Author: lijinpei-amd <jinpli at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/SemaObjC.h
    M clang/lib/Sema/SemaAMDGPU.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaExprObjC.cpp
    A clang/test/AST/ast-print-amdgcn-predicate.c

  Log Message:
  -----------
  [clang][AMDGPU] Fix -ast-print crash on expanded predicate builtins (#199963)

ExpandAMDGPUPredicateBuiltIn synthesized an IntegerLiteral typed
_Bool/bool — a shape no other producer creates, and one that
StmtPrinter::VisitIntegerLiteral has no case for. -ast-print on the
resulting if-condition hit llvm_unreachable.

Emit the canonical boolean literal instead:

- C++, C23, OpenCL, HIP: CXXBoolLiteralExpr 'bool'
- pre-C23 C: IntegerLiteral 'int'

In the C case this matches what <stdbool.h>'s true/false macros expand
to.

Fixes #199563


  Commit: 2d5dac5b816726621d08ac695ed0b9799dfb7209
      https://github.com/llvm/llvm-project/commit/2d5dac5b816726621d08ac695ed0b9799dfb7209
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

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

  Log Message:
  -----------
  [Bazel] Fixes 5db1364 (#200104)

The commit added a dep from profile -> interception, so define that
target too

Fixes 5db13643f4b7038db0ca304d9f8900122502935c


  Commit: 635e120fb87304924508a7a204574727e3c37363
      https://github.com/llvm/llvm-project/commit/635e120fb87304924508a7a204574727e3c37363
  Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M compiler-rt/lib/profile/InstrProfilingFile.c
    M compiler-rt/lib/profile/InstrProfilingPlatformROCm.cpp

  Log Message:
  -----------
  [PGO][HIP] Stop pulling ROCm.o into every PGO host link (#200101)

PR #177665 added an unconditional `extern` reference to
`__llvm_profile_hip_collect_device_data` from `InstrProfilingFile.c`,
which forces `InstrProfilingPlatformROCm.o` (and its sanitizer_common /
interception dependencies) out of `libclang_rt.profile.a` in every PGO
binary. That breaks bots without `-lpthread` and races dlsym/PLT state
in non-HIP programs via the interceptor constructor.

Fix:
- Declare the hook `COMPILER_RT_WEAK` and gate the call on its address.
No `COMPILER_RT_VISIBILITY`: a hidden weak-undef function would be
non-preemptible and the address test would fold to true.
- Gate `installHipModuleInterceptors` on `dlsym(hipModuleLoad)` so the
constructor is a no-op if `ROCm.o` is still pulled in.

Fixes:
- https://lab.llvm.org/buildbot/#/builders/66/builds/31311
- https://lab.llvm.org/buildbot/#/builders/174/builds/36180

Verified:
- `check-profile` 134/134 pass.
- `nm` on a non-HIP `clang -fprofile-generate` binary: zero
`installHip`/`ROCm`/`sanitizer`/`hip_collect` symbols.
- HIP offload PGO end-to-end on gfx1101 (compile → run → `llvm-profdata
merge` → `llvm-cov`) still works; interceptor installs, device profile
collected via shared API.


  Commit: d5e97d77289c59d785284e6a0361570a1651acd6
      https://github.com/llvm/llvm-project/commit/d5e97d77289c59d785284e6a0361570a1651acd6
  Author: Haohai Wen <haohai.wen at intel.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/test/Driver/split-debug.c

  Log Message:
  -----------
  [Driver] Honor /Fo when deriving the split-dwarf .dwo path (#199613)

SplitDebugName checked -o and /o but not /Fo, so clang-cl /Fo<path> /c
fell through to the cwd-relative fallback and every .dwo landed in cwd
under <source-stem>.dwo regardless of the .obj location.


  Commit: a20e85f74d7a3f1bc29cb80fa6d47cf74e9f2aa0
      https://github.com/llvm/llvm-project/commit/a20e85f74d7a3f1bc29cb80fa6d47cf74e9f2aa0
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    A clang/test/CXX/basic/basic.link/p11.cpp

  Log Message:
  -----------
  [clang] NFC: add test cases from #111561 (#200105)

This adds those test cases while #111561 gathers dust.


  Commit: da4894c874edb5fc9b9b82a8a99ed471a49153bf
      https://github.com/llvm/llvm-project/commit/da4894c874edb5fc9b9b82a8a99ed471a49153bf
  Author: Arda Serdar Pektezol <arda at pektezol.dev>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopFuse.cpp
    M llvm/test/Transforms/LoopFusion/loop_invariant.ll
    A llvm/test/Transforms/LoopFusion/pr191238.ll

  Log Message:
  -----------
  [LoopFusion] reject unsafe scalar flow dependences (#195895)

`loop-fusion` treats any loop-invariant scalar non-anti dependence as
safe to fuse. In the linked issue, it incorrectly allows scalar flow
dependences where the first loop writes a loop-invariant location and
the second loop later reads that same location. Fusion interleaves the
producer and consumer and this changes the value observed by the second
loop.

Example C source would look like:
```C
for (int i = 0; i < N; i++) {
    ptr[0] = i;
}
for (int j = 0; j < N; j++) {
    out[j] = ptr[0];
}
=>
for (int i = 0; i < N; i++) {
    ptr[0] = i;
    out[i] = ptr[0];
}
```

This patch makes the DA scalar-dependence shortcut **_more
conservative_** by rejecting scalar non-anti and allowing input/output
dependences. This preserves the existing safe read and write cases while
preventing the miscompile above.

The patch also updates the `loop-fusion` debug message to reflect the
narrower accepted case, updates the existing regression to check the new
debug message, and adds a new regression from the linked issue.

Fixes #191238


  Commit: 5acb952cb5d9c899692f44f4280af75a780a599c
      https://github.com/llvm/llvm-project/commit/5acb952cb5d9c899692f44f4280af75a780a599c
  Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    A clang/test/CodeGenHIP/profile-coverage-mapping.hip
    M clang/test/Driver/hip-options.hip

  Log Message:
  -----------
  [HIP][Driver] Forward -fcoverage-mapping flags to device compiler (#198872)

Add `-fcoverage-mapping`, `-fno-coverage-mapping`,
`-fcoverage-compilation-dir=`, `-ffile-compilation-dir=`, and
`-fcoverage-prefix-map=` to the LinkerWrapper `CompilerOptions`
forwarding list. Without this, passing `-fprofile-instr-generate
-fcoverage-mapping` to clang for a HIP program silently omits the
coverage mapping flags from the embedded device recompilation, so
`__llvm_covmap`/`__llvm_covfun` sections are never emitted for device
code.


  Commit: 846bfd77ddc44ef76882fd165fa4d5b68b760456
      https://github.com/llvm/llvm-project/commit/846bfd77ddc44ef76882fd165fa4d5b68b760456
  Author: Zeyi Xu <mitchell.xu2 at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

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

  Log Message:
  -----------
  [LifetimeSafety] Avoid assert on variadic placement new (#199588)

Avoid assuming that a placement allocation function has a second
`ParmVarDecl` before checking whether that parameter is `void*`.
Variadic `operator new(size_t, ...)` can have a placement argument
matched by the ellipsis instead.

As of AI Usage: Codex is used to help rephrase part of the new comments.

Closes https://github.com/llvm/llvm-project/issues/199584


  Commit: 1da70ad6da64e5737aae1b8aad1bc97a36bbe1cf
      https://github.com/llvm/llvm-project/commit/1da70ad6da64e5737aae1b8aad1bc97a36bbe1cf
  Author: Gaurav Dhingra <gauravdhingra.gxyd at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/readability/RedundantParenthesesCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-parentheses.cpp

  Log Message:
  -----------
  [clang-tidy] Fix false positive of parentheses removal for overloaded operator (#192254)

Fixes #189217
    
don't remove necessary parentheses for an overloaded operator, when
the parenthese occurs in the context of a binary operation
    
E.g. (E1 & E2) != E3       // the brackets aren't redundant here
E.g. (E1 & E2)             // brackets are redundant here


  Commit: 48a1ee7bc8e1d740edf635c39e0223b9b02a6ae1
      https://github.com/llvm/llvm-project/commit/48a1ee7bc8e1d740edf635c39e0223b9b02a6ae1
  Author: Dark Steve <Prasoon.Mishra at amd.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/test/CodeGen/AMDGPU/flat-saddr-atomics.ll
    M llvm/test/CodeGen/AMDGPU/wait-xcnt-drain.mir
    M llvm/test/CodeGen/AMDGPU/wait-xcnt.mir

  Log Message:
  -----------
  [AMDGPU] Remove redundant s_wait_xcnt after implicit XCNT drains (#198823)

On gfx1250 several instructions implicitly drain XCNT in hardware:
`s_barrier_wait`/`signal`/`signal_isfirst`, `s_sendmsg`, PC-changes etc.
This patch will remove redundant `s_wait_xcnt` after implicit XCNT
drains.

Pre-commit tests on #198772
Fix: LCOMPILER-1665


  Commit: 9cd3c0b99e5df66adcc96a2fc03b9b177d6ca487
      https://github.com/llvm/llvm-project/commit/9cd3c0b99e5df66adcc96a2fc03b9b177d6ca487
  Author: Helena Kotas <hekotas at microsoft.com>
  Date:   2026-05-27 (Wed, 27 May 2026)

  Changed paths:
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    A clang/test/CodeGenHLSL/resources/res-array-global-to-local.hlsl
    M clang/test/CodeGenHLSL/resources/res-array-local2.hlsl
    M clang/test/CodeGenHLSL/resources/resource-bindings.hlsl
    A clang/test/CodeGenHLSL/resources/resources-in-structs-array-to-local.hlsl

  Log Message:
  -----------
  [HLSL] Codegen for handling global resource array initialization (#198891)

When a global resource array is accessed - whether it is declared at a
global scope or as part of a global struct instance - all of its
resource elements should be initialized from binding into a temporary
local resource array. This change intercepts the Clang codegen at the
relevant places to allow `CGHLSLRuntime` handle this special global
resource array initialization.

Fixes #187087
Fixes #198888


  Commit: 690a25fd5b0bf7118370efbc681661a24a40b83a
      https://github.com/llvm/llvm-project/commit/690a25fd5b0bf7118370efbc681661a24a40b83a
  Author: eleviant <eleviant at accesssoftek.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp
    A clang/test/CodeGen/AArch64/mskernel-interlocked.c
    A clang/test/CodeGen/X86/mskernel-interlocked.c
    M llvm/lib/CodeGen/AtomicExpandPass.cpp
    A llvm/test/CodeGen/X86/volatile-atomicrmw.ll

  Log Message:
  -----------
  [clang] Don't optimize out no-op atomics in kernel mode (#193562)

The no-op atomics like InterlockedAnd(addr, (UINT32)-1) don't modify
the underlying value, however kernel code depends on these accesses
to touch the pool page virtual address and intentionally trigger a page
fault during page migration. This patch also fixes an LLVM issue where
idempotent volatile atomics were incorrectly lowered into memory fences.


  Commit: 8059bc5944b72f3f6f3734ef61bf9eb89ca850a4
      https://github.com/llvm/llvm-project/commit/8059bc5944b72f3f6f3734ef61bf9eb89ca850a4
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/test/AST/ByteCode/cxx11.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix a diagnostic difference in bitcasts (#197174)

Don't immediately return failure and let it be handled by later checks.


  Commit: 191aa295d9c9fe83411ae5cdfeb8a6bb8decb3d2
      https://github.com/llvm/llvm-project/commit/191aa295d9c9fe83411ae5cdfeb8a6bb8decb3d2
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/docs/LangRef.rst

  Log Message:
  -----------
  [LangRef] Do not allow free via synchronization in nofree (#195658)

The nofree attribute is currently specified to only forbid direct free
calls inside the function. A nofree function is still allowed to compel
a pointer to be freed by a different thread through synchronization.

This is currently only spelled out for the function-level nofree
attribute, but I assume the same semantics also hold for argument nofree
(and this matches how the Attributor implementation infers it).

The original motivation for this definition was to keep the attributes
orthogonal and independently inferable. However, the problem is that
nosync is a too strong condition: It excludes *any* synchronization, not
just synchronization that results in the free of a pointer.

Some frontends like Rust can guarantee that most pointer arguments
cannot be freed for the duration of a function call, including via
synchronization. However, they cannot guarantee that no synchronization
takes place at all. The current definition of nofree makes this
inexpressible in LLVM IR, which blocks further progress on
dereferenceable-at-point semantics.

This PR makes two changes to the nofree spec:

* Function-level nofree now disallows free via synchronization,
specified in terms of happens-before.
* Argument-level nofree is now specified in terms of provenance: The
argument has derived provenance that makes it UB to free during the
execution of the function (which includes freeing on another thread with
appropriate synchronization). This also clarified that argument-level
nofree only applies to the particular pointer (similar to `captures`
etc). The underlying object may still be freed via a different argument
to which the same pointer is passed.

Note: The necessary inference changes for the new semantics will
be implemented in a separate PR.


  Commit: 486370c33fbd75247ef608a2ebc04ddaefd2ab46
      https://github.com/llvm/llvm-project/commit/486370c33fbd75247ef608a2ebc04ddaefd2ab46
  Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaAMDGPU.cpp
    M clang/test/SemaOpenCL/builtins-amdgcn-error-gfx1250-cooperative-atomics.cl

  Log Message:
  -----------
  [AMDGPU][Clang] refactor addrspace and scope checks [NFC] (#199175)

Assisted-By: Claude Opus 4.6


  Commit: 942292bf75168377cc06dfa2ba90a552d6d24a69
      https://github.com/llvm/llvm-project/commit/942292bf75168377cc06dfa2ba90a552d6d24a69
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M orc-rt/include/orc-rt/NativeDylibManager.h
    M orc-rt/lib/executor/NativeDylibManager.cpp
    M orc-rt/lib/executor/sps-ci/NativeDylibManagerSPSCI.cpp
    M orc-rt/unittests/NativeDylibManagerSPSCITest.cpp
    M orc-rt/unittests/NativeDylibManagerTest.cpp

  Log Message:
  -----------
  [orc-rt] Remove NativeDylibManager unload operation. (#200119)

NativeDylibManager is intended to act as a backend for
llvm::orc::DylibManager, which does not expose an unload operation. This
commit removes the explicit unload from both the C++ and SPS interfaces,
and unloads dylibs via an on-shutdown callback instead.


  Commit: 6ed05a0b53dc777408305333dcbeec9dac4ea687
      https://github.com/llvm/llvm-project/commit/6ed05a0b53dc777408305333dcbeec9dac4ea687
  Author: Oleksandr Tarasiuk <oleksandr.tarasiuk at outlook.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/SemaCXX/constant-expression-cxx14.cpp

  Log Message:
  -----------
  Revert "[Clang] prevent constexpr crash on invalid overrides" (#199895)

Reverts #184048

---

The original change marks invalid overrides too early, causing follow-up
Sema regressions in special-member handling and MS-compatible override
diagnostics.


  Commit: 91d765f6ab10974f2c7080c90fe26b21bd7d7cb1
      https://github.com/llvm/llvm-project/commit/91d765f6ab10974f2c7080c90fe26b21bd7d7cb1
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/test/CodeGen/sanitize-metadata-nosanitize.c
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
    M llvm/test/Transforms/Attributor/align-atomic.ll
    M llvm/test/Transforms/Attributor/align.ll
    M llvm/test/Transforms/Attributor/liveness.ll
    M llvm/test/Transforms/Attributor/noalias.ll
    M llvm/test/Transforms/Attributor/nocapture-1.ll
    M llvm/test/Transforms/Attributor/nocapture-2.ll
    M llvm/test/Transforms/Attributor/nofpclass.ll
    M llvm/test/Transforms/Attributor/nonnull.ll
    M llvm/test/Transforms/Attributor/nosync.ll
    M llvm/test/Transforms/Attributor/range.ll
    M llvm/test/Transforms/Attributor/readattrs.ll
    M llvm/test/Transforms/Attributor/undefined_behavior.ll
    M llvm/test/Transforms/Attributor/value-simplify-instances.ll
    M llvm/test/Transforms/Attributor/value-simplify-pointer-info-struct.ll
    M llvm/test/Transforms/Attributor/value-simplify-pointer-info.ll
    M llvm/test/Transforms/Attributor/value-simplify.ll
    M llvm/test/Transforms/FunctionAttrs/atomic.ll
    M llvm/test/Transforms/FunctionAttrs/nocapture.ll
    M llvm/test/Transforms/FunctionAttrs/nonnull.ll
    M llvm/test/Transforms/FunctionAttrs/nosync.ll
    M llvm/test/Transforms/FunctionAttrs/readattrs.ll
    M llvm/test/Transforms/FunctionAttrs/writeonly.ll
    M llvm/test/Transforms/OpenMP/parallel_deletion.ll

  Log Message:
  -----------
  [FunctionAttrs][Attributor] Update nofree inference (#196266)

This updates nofree inference after the semantics changes in
https://github.com/llvm/llvm-project/pull/195658.

FunctionAttrs currently only supports function-level nofree inference,
so we just need to check for potentially synchronizing instructions.

Attributor also supports argument nofree, in which case we make
additional changes:
* For callsite arguments, in addition to checking nofree, we also need
to check nocapture. If the call itself doesn't free the arg, it may
still capture it and then we may free it via the captured pointer later.
The way this was handled was already incorrect prior to the semantics
changes.
* Reformulate the handling for other instructions in terms of looking
for provenance captures, as that's what the code was essentially doing,
in a crude way. I'm including this to avoid some regressions for cases
where we can no longer infer function nofree, but can still infer
argument nofree.


  Commit: 35bfc00c5c8db8b5895b83045bbd9562691c0af1
      https://github.com/llvm/llvm-project/commit/35bfc00c5c8db8b5895b83045bbd9562691c0af1
  Author: Iris Shi <0.0 at owo.li>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/test/Transforms/InstCombine/or-bitmask.ll

  Log Message:
  -----------
  [InstCombine] Fix type mismatch in `foldBitmaskMul` (#199920)

Resolves #199506.

`matchBitmaskMul` matches the form `!(A & N) ? 0 : N * C`.

When the select arms are splat vectors but A is a scalar, this produces
malformed ir like `%57 = and i64 %49, <4 x i64> splat (i64
3689348814741910323)`.

Reproducer: https://godbolt.org/z/EYzKTxcKn


  Commit: 4306b4ab9c12a8b9bf4314cbaa7400eeaa1e7ddc
      https://github.com/llvm/llvm-project/commit/4306b4ab9c12a8b9bf4314cbaa7400eeaa1e7ddc
  Author: William Tran-Viet <wtranviet at proton.me>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M libcxx/docs/ReleaseNotes/23.rst
    M libcxx/docs/Status/Cxx2cPapers.csv
    M libcxx/include/__memory/ranges_uninitialized_algorithms.h
    M libcxx/include/__memory/uninitialized_algorithms.h
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.construct.value/ranges_uninitialized_value_construct.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.construct.value/ranges_uninitialized_value_construct_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.construct.value/uninitialized_value_construct.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.construct.value/uninitialized_value_construct_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.copy/ranges_uninitialized_copy.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.copy/ranges_uninitialized_copy_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.copy/uninitialized_copy.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.copy/uninitialized_copy_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.fill.n/ranges_uninitialized_fill_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.fill.n/uninitialized_fill_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.fill/ranges_uninitialized_fill.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.fill/uninitialized_fill.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.move/ranges_uninitialized_move.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.move/ranges_uninitialized_move_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.move/uninitialized_move.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.move/uninitialized_move_n.pass.cpp

  Log Message:
  -----------
  [libc++] Implement P3508R0: Wording for "constexpr for specialized memory algorithms" (#197313)

Resolves #118379

- Add `constexpr` to affected areas
- Add `constexpr` tests
- Update documentation

Tests were created with AI assistance.


  Commit: 5c95f6a859394757b92b0d63ff90b9175056deb6
      https://github.com/llvm/llvm-project/commit/5c95f6a859394757b92b0d63ff90b9175056deb6
  Author: Martin Storsjö <martin at martin.st>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M lld/COFF/Chunks.cpp
    M lld/test/COFF/arm64-relocs-imports.test

  Log Message:
  -----------
  [LLD] [COFF] Fix handling of immediates in ARM64_SECREL_HIGH12A (#200060)

Just like for PAGEBASE_REL21, the immediate in SECREL_HIGH12A is the
byte offset, not a page offset. The byte level offset is added to the
symbol offset, which only then after that gets shifted right by 12. This
makes the handling of this immediate consistent with what MS link.exe
does.

The existing testcase had a zero immediate in the instruction for this
relocation.

This makes it clear that immediate offsets with SECREL_HIGH12A do work
fine, where the byte level offsets end up carrying over to the upper
bits.


  Commit: 5dc8711b4e553ba0ddab673564ac9b6309862e81
      https://github.com/llvm/llvm-project/commit/5dc8711b4e553ba0ddab673564ac9b6309862e81
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M mlir/include/mlir/Interfaces/MemorySlotInterfaces.h
    M mlir/include/mlir/Interfaces/MemorySlotInterfaces.td
    M mlir/lib/Interfaces/MemorySlotInterfaces.cpp
    M mlir/lib/Transforms/Mem2Reg.cpp
    M mlir/test/Transforms/mem2reg.mlir
    M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
    M mlir/test/lib/Dialect/Test/TestOps.td

  Log Message:
  -----------
  [mlir][mem2reg] Promote memory slots through transparent view operations (#196924)

This patch enables mem2reg to operate on load/store that are made
through cast/views of the memory slot (not directly using the SSA value
produced by the allocation op).

This is done by adding a new `PromotableAliaserInterface` interface that must
be implemented by operations that define view of the slot and through which
mem2reg should still happen.

This interface comes with three APIs. The first one allows the operation to
provide new MemorySlots that are aliasing an input MemorySlot. The slot pointers
of these new MemorySlot are results of the operation.

The other two APIs allows projecting the reaching values between the input and output
MemorySlot (one API for each direction).

Assisted by: Claude

RFC:
https://discourse.llvm.org/t/mlir-mem2reg-rfc-promote-memory-slots-through-transparent-view-operations/90761


  Commit: b51a8025bed107c5f9a8113a6ecf446f86eeb9b6
      https://github.com/llvm/llvm-project/commit/b51a8025bed107c5f9a8113a6ecf446f86eeb9b6
  Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/lib/CodeGen/ABIInfoImpl.cpp
    M clang/lib/CodeGen/CGAtomic.cpp
    M clang/lib/CodeGen/CGBlocks.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGCUDANV.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGDecl.cpp
    M clang/lib/CodeGen/CGException.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/MicrosoftCXXABI.cpp
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
    M clang/lib/CodeGen/TargetBuiltins/X86.cpp
    M clang/lib/CodeGen/Targets/X86.cpp
    M clang/test/CodeGen/scoped-atomic-ops.c
    M clang/test/CodeGenCUDA/amdgpu-kernel-arg-pointer-type.cu
    M clang/test/CodeGenCUDA/atomic-options.hip
    M clang/test/CodeGenCUDA/builtins-amdgcn.cu
    M clang/test/CodeGenCUDA/builtins-spirv-amdgcn.cu
    M clang/test/CodeGenCUDA/record-layout.cu
    M clang/test/CodeGenCXX/amdgcn-func-arg.cpp
    M clang/test/CodeGenCXX/cxx0x-initializer-stdinitializerlist.cpp
    M clang/test/CodeGenHIP/placement-new-addrspace.hip
    M clang/test/CodeGenOpenCL/addr-space-struct-arg.cl
    M clang/test/CodeGenOpenCL/amdgpu-abi-struct-arg-byref.cl
    M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
    M clang/test/CodeGenOpenCL/atomic-ops.cl
    M clang/test/CodeGenSYCL/kernel-caller-entry-point.cpp
    M clang/test/OpenMP/amdgcn_target_device_vla.cpp
    M clang/test/OpenMP/amdgpu_target_with_aligned_attribute.c
    M clang/test/OpenMP/target_teams_generic_loop_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_codegen_as_distribute.cpp
    M clang/test/OpenMP/target_teams_generic_loop_codegen_as_parallel_for.cpp

  Log Message:
  -----------
  Revert "[clang] remove lots of "innocuous" addrspacecasts" (#199685)

Reverts llvm/llvm-project#197745

Broke AMDGPU HIP Kokkos bot:
https://lab.llvm.org/buildbot/#/builders/230/builds/958

Late reply as the breakage got lost in some trouble with the buildbot
fleet.

Co-authored-by: Kewen Meng <Kewen.Meng at amd.com>


  Commit: af772866888eb2e2053b5f4d784510006d760e62
      https://github.com/llvm/llvm-project/commit/af772866888eb2e2053b5f4d784510006d760e62
  Author: Davide Grohmann <davide.grohmann at arm.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    A mlir/include/mlir/Target/SPIRV/SPIRVExtInstSets.h
    M mlir/lib/Conversion/TosaToSPIRVTosa/TosaToSPIRVTosaPass.cpp
    M mlir/lib/Target/SPIRV/Deserialization/DeserializeOps.cpp
    M mlir/lib/Target/SPIRV/Deserialization/Deserializer.h
    M mlir/lib/Target/SPIRV/Serialization/SerializeOps.cpp
    M mlir/lib/Target/SPIRV/Serialization/Serializer.cpp
    M mlir/lib/Target/SPIRV/Serialization/Serializer.h
    M mlir/lib/Target/SPIRV/TranslateRegistration.cpp
    R mlir/test/Target/SPIRV/debug-negative.mlir
    A mlir/test/Target/SPIRV/graph-debug-info-negative.mlir
    A mlir/test/Target/SPIRV/graph-debug-info.mlir
    M mlir/unittests/Dialect/SPIRV/DeserializationTest.cpp

  Log Message:
  -----------
  [mlir][spirv] Add SPIR-V NonSemantic.Graph.DebugInfo (#199519)

Add serialization and deserialization support for the SPIR-V
NonSemantic.Graph.DebugInfo.1 extended instruction set used by ARM graph
modules.
    
When debug info emission is enabled, serialize DebugGraph,
DebugOperation,
and DebugTensor records for graph objects, TOSA operations, graph
tensors,
and tensor constants. Emit the records after the SPIR-V objects they
reference, and make DebugOperation point at the DebugGraph result id.
    
Deserialize these records back into MLIR locations and diagnose
malformed
or undefined debug-info references.
    
Enable SPV_KHR_non_semantic_info in the default TOSA-to-SPIR-V target
environment so debug info can be emitted by default.
    
Specification:

https://github.com/KhronosGroup/SPIRV-Registry/blob/main/nonsemantic/NonSemantic.Graph.DebugInfo.asciidoc

Signed-off-by: Mohammadreza Ameri Mahabadian <mohammadreza.amerimahabadian at arm.com>
Signed-off-by: Davide Grohmann <davide.grohmann at arm.com>
Co-authored-by: Mohammadreza Ameri Mahabadian <mohammadreza.amerimahabadian at arm.com>


  Commit: 538140ff2cb74ab2a9496119686041ea509daa08
      https://github.com/llvm/llvm-project/commit/538140ff2cb74ab2a9496119686041ea509daa08
  Author: Guy David <guyda96 at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/include/module.modulemap

  Log Message:
  -----------
  [clang] Add missing BuiltinAnchorSources.def to module map (#200125)

Started with 5db13643f4b7038db0ca304d9f8900122502935c.


  Commit: 626f4061e7f2d84813f5307bd03f35592e4b70c1
      https://github.com/llvm/llvm-project/commit/626f4061e7f2d84813f5307bd03f35592e4b70c1
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
    M mlir/test/Conversion/SPIRVToLLVM/gl-ops-to-llvm.mlir

  Log Message:
  -----------
  [mlir][SPIRVToLLVM] Add conversions for more GL ops (#200115)


  Commit: 597b1376bab39259fb3a03fb320dcd15a8b8f2f2
      https://github.com/llvm/llvm-project/commit/597b1376bab39259fb3a03fb320dcd15a8b8f2f2
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M mlir/lib/Conversion/ComplexToSPIRV/ComplexToSPIRV.cpp
    M mlir/test/Conversion/ComplexToSPIRV/complex-to-spirv.mlir

  Log Message:
  -----------
  [mlir][SPIR-V][complex] Convert complex.add/sub/mul/div to SPIR-V ops (#200123)


  Commit: 3a50239454f81b6f6647021737bbf7797a06e00c
      https://github.com/llvm/llvm-project/commit/3a50239454f81b6f6647021737bbf7797a06e00c
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/GIMatchTableExecutor.h
    M llvm/include/llvm/CodeGen/GlobalISel/GIMatchTableExecutorImpl.h
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table.td
    M llvm/test/TableGen/GlobalISelEmitter/GlobalISelEmitter.td
    M llvm/test/TableGen/GlobalISelEmitter/HwModes.td
    M llvm/test/TableGen/RegClassByHwMode.td
    M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.cpp

  Log Message:
  -----------
  [GlobalISel] Replace `GIM_CheckFeatures` with `GIM_Try_CheckFeatures` (#198461)

This has two benefits. First, it slightly reduces the size of the match
table.
Secondly, if the target feature is not present, we can directly go to
the fail
case, instead of having to do another loop of the interpreter, speeding
up
rejection of rules that do not have the required target feature.

We could do the same with CheckSimplePredicate but it's less used (only
in the combiners I think)
so it is less of a priority.

```
FILE                                          OLD      NEW    DIFF%    SAME?
----                                      -------  -------    -----    -----
AArch64GenGlobalISel.inc                   192681   185938    -3,5%       no
AArch64GenPostLegalizeGICombiner.inc         4457     4457     0,0%      yes
AArch64GenPreLegalizeGICombiner.inc          9010     9009    -0,0%       no
AMDGPUGenGlobalISel.inc                    596402   568486    -4,7%       no
AMDGPUGenPostLegalizeGICombiner.inc          9240     9238    -0,0%       no
AMDGPUGenPreLegalizeGICombiner.inc           8987     8987     0,0%      yes
AMDGPUGenRegBankGICombiner.inc               1981     1980    -0,1%       no
```


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

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

  Log Message:
  -----------
  [VPlan] Don't use Ingredient to get type in VPWidenMemoryRecipe (NFC) (#200049)

The scalar load/store type is already available on the recipe: load
recipes inherit from VPSingleDefRecipe and expose it via
getScalarType(); store recipes can derive it from the stored value's
type via VPTypeAnalysis.

This migrates a number of lookups to be based on information already
available in VPlan directly.


  Commit: 0513c9cba2a02fb853b0af385c0b47503e6678ff
      https://github.com/llvm/llvm-project/commit/0513c9cba2a02fb853b0af385c0b47503e6678ff
  Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

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

  Log Message:
  -----------
  [Bazel] Fixes 5dc8711 (#200129)

This fixes 5dc8711b4e553ba0ddab673564ac9b6309862e81.

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


  Commit: 8a9a82c53e82c8bcbde3f01cf674b8afc5fed753
      https://github.com/llvm/llvm-project/commit/8a9a82c53e82c8bcbde3f01cf674b8afc5fed753
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

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

  Log Message:
  -----------
  [VPlan] Remove redundant vp_merge pattern. NFC (#200116)

m_RemoveMask still matches even if there's no other mask combined, we
just need to check if Mask is null.


  Commit: 4503872fe57315e6df7dbc93128dbe6a02011872
      https://github.com/llvm/llvm-project/commit/4503872fe57315e6df7dbc93128dbe6a02011872
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/test/CodeGenOpenCL/atomic-builtins-default-to-device-scope.cl
    M llvm/include/llvm/IR/Instruction.h
    M llvm/lib/IR/Instruction.cpp
    M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
    M llvm/test/Transforms/FunctionAttrs/atomic.ll
    M llvm/test/Transforms/FunctionAttrs/nocapture.ll
    M llvm/test/Transforms/FunctionAttrs/nosync.ll
    M llvm/test/Transforms/FunctionAttrs/writeonly.ll

  Log Message:
  -----------
  [IR][FunctionAttrs] Clarify memory effects of atomics (#193768)

FunctionAttrs was treating atomic instructions, including with ordering
stronger than monotonic, as only reading/writing their operand.

I don't think doing this is correct, because we model the ordering
constraints of synchronizing atomics via reading/writing "all" memory.
So e.g. if you have a function with a release store on an argument,
marking it as argmem-only is wrong, because that would permit reordering
accesses to other locations around it. (What this PR is doing is not
*sufficient* to model this correctly due to the fence-like effects on
not-yet-escaped memory, but it brings us closer to correctness.)

I initially tried to implement mayReadFromMemory() and
mayWriteToMemory() on top of getMemoryEffects(), but this caused
significant compile-time regressions, so I've kept the logic duplicated.


  Commit: 0e02ccdaf01081dbd947e192fb4769da7bf74d54
      https://github.com/llvm/llvm-project/commit/0e02ccdaf01081dbd947e192fb4769da7bf74d54
  Author: Fabrice de Gans <Steelskin at users.noreply.github.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/include/llvm-c/Remarks.h
    M llvm/include/llvm-c/lto.h

  Log Message:
  -----------
  llvm: Fix most LLVM_C_ABI annotations (#199914)

This updates most LLVM_C_ABI annotations in the llvm-c headers to match
expected usage:
* All public APIs should be properly annotated.
* Inlined functions should not be annotated.

These changes were done by a script fixing annotations on LLVM public
headers and manually checked.

This effort is tracked in #109483.


  Commit: 1235c442a3c08e9cb4a9d2a6c082f392ec0885f1
      https://github.com/llvm/llvm-project/commit/1235c442a3c08e9cb4a9d2a6c082f392ec0885f1
  Author: Sohaib Iftikhar <sohaibiftikhar at google.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:

  Log Message:
  -----------
  Fix Bazel build for 5dc8711 (#200142)

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


  Commit: 86a74788dcc851d501e33c70a88f14dc47293b9f
      https://github.com/llvm/llvm-project/commit/86a74788dcc851d501e33c70a88f14dc47293b9f
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-05-28 (Thu, 28 May 2026)

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

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

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

Fixes #145276


  Commit: 174eb79572b3433aa338ede31815fa8fa6a13b29
      https://github.com/llvm/llvm-project/commit/174eb79572b3433aa338ede31815fa8fa6a13b29
  Author: Simon Tatham <simon.tatham at arm.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M compiler-rt/lib/builtins/CMakeLists.txt
    A compiler-rt/lib/builtins/arm/fixdfdi.S
    A compiler-rt/lib/builtins/arm/fixdfsi.S
    A compiler-rt/lib/builtins/arm/fixsfdi.S
    A compiler-rt/lib/builtins/arm/fixsfsi.S
    A compiler-rt/lib/builtins/arm/fixunsdfdi.S
    A compiler-rt/lib/builtins/arm/fixunsdfsi.S
    A compiler-rt/lib/builtins/arm/fixunssfdi.S
    A compiler-rt/lib/builtins/arm/fixunssfsi.S
    A compiler-rt/test/builtins/Unit/fixdfdinew_test.c
    A compiler-rt/test/builtins/Unit/fixdfsinew_test.c
    A compiler-rt/test/builtins/Unit/fixsfdinew_test.c
    A compiler-rt/test/builtins/Unit/fixsfsinew_test.c
    A compiler-rt/test/builtins/Unit/fixunsdfdinew_test.c
    A compiler-rt/test/builtins/Unit/fixunsdfsinew_test.c
    A compiler-rt/test/builtins/Unit/fixunssfdinew_test.c
    A compiler-rt/test/builtins/Unit/fixunssfsinew_test.c

  Log Message:
  -----------
  [compiler-rt][ARM] Optimized FP -> integer conversions (#179927)

This commit adds a total of 8 new functions, all converting a
floating-point number to an integer, varying in 3 independent choices:

* input float format (32-bit or 64-bit)
* output integer size (32-bit or 64-bit)
* output integer type (signed or unsigned)


  Commit: cee1c3ba576fc6259510313b73fde56150268c52
      https://github.com/llvm/llvm-project/commit/cee1c3ba576fc6259510313b73fde56150268c52
  Author: Luke Hutton <luke.hutton at arm.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TargetEnv.h
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/lib/Dialect/Tosa/IR/TargetEnv.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
    M mlir/test/Dialect/Tosa/canonicalize.mlir
    R mlir/test/Dialect/Tosa/fold_concats.mlir

  Log Message:
  -----------
  [mlir][tosa] Limit consecutive concat rewrite to MAX_TENSOR_LIST_SIZE (#199051)

Previously folding could produce an operation that would later be
considered invalid in validation due to the number of operands it has.
This change adds a check to prevent rewriting consecutive concat
operations if the resulting operation has more than MAX_TENSOR_LIST_SIZE
operands, based on the selected target environment level. If no level is
specified, folding will proceed as before.

In addition, this change rewrites the concat folder as a
canonicalization pattern, since it is not a fold of constant operands.
The change also consolidates testing in
canonicalize.mlir.


  Commit: 172ea47e6d5b04c4849991ffd5ab0f87d444ab86
      https://github.com/llvm/llvm-project/commit/172ea47e6d5b04c4849991ffd5ab0f87d444ab86
  Author: Igor Wodiany <igor.wodiany at amd.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

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

  Log Message:
  -----------
  [AMDGPU] Use separate tables for VOPD3X and VOPDY in `getCanBeVOPD` (NFC) (#199072)

With this change tables for valid VOPD3X (VOPDX still uses
`getVOPDComponentHelper`) and VOPDY operations are
generated through TableGen. This simplifies the look-up
leading to a 2-3% compile-time speed-up for tested shaders
where `getCanBeVOPD` is on a hot path.

Assisted-by: Claude Code


  Commit: 66ee43ce9d66f80cc311e5653478ae83372afb89
      https://github.com/llvm/llvm-project/commit/66ee43ce9d66f80cc311e5653478ae83372afb89
  Author: NeKon69 <nobodqwe at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaLifetimeSafety.h
    M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
    M clang/test/Sema/warn-lifetime-safety-cfg-bailout.cpp
    M clang/test/Sema/warn-lifetime-safety-suggestions.cpp
    M clang/test/Sema/warn-lifetime-safety.cpp

  Log Message:
  -----------
  [LifetimeSafety] Improve diagnostics for use-after-scope (#200031)

Reuses the function for getting object information that was added in
#199432

Comes as part of completing #186002

Co-authored-by: Utkarsh Saxena <usx at google.com>


  Commit: 51d823197cb40a57f25d00882546374d460c649e
      https://github.com/llvm/llvm-project/commit/51d823197cb40a57f25d00882546374d460c649e
  Author: Matthew Nagy <matthew.nagy at sony.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M compiler-rt/include/sanitizer/tysan_interface.h
    M compiler-rt/lib/tysan/tysan.cpp
    M compiler-rt/lib/tysan/tysan.h
    M compiler-rt/lib/tysan/tysan_interceptors.cpp
    A compiler-rt/test/tysan/set_type_unknown-interface.c

  Log Message:
  -----------
  [TySan] Expose __tysan_set_type_unknown interface (#198800)

This can help work around issues like
[#143587](https://github.com/llvm/llvm-project/issues/143587)
The function is renamed with two trailing underscores to match the
naming scheme of the other sanitizers.


  Commit: b115dd117ac109ac501b8bc044dbdefd6f5f2471
      https://github.com/llvm/llvm-project/commit/b115dd117ac109ac501b8bc044dbdefd6f5f2471
  Author: Lukacma <Marian.Lukac at arm.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M lldb/test/API/commands/register/aarch64_dynamic_regset/main.c
    M lldb/test/API/commands/register/aarch64_sve_registers/rw_access_static_config/main.c
    M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SystemOperands.td
    M llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.cpp
    M llvm/test/CodeGen/AArch64/aarch64-sme-za-call-lowering.ll
    M llvm/test/CodeGen/AArch64/aarch64-sysreg128.ll
    A llvm/test/CodeGen/AArch64/arm64-invalid-sys-reg.ll
    R llvm/test/CodeGen/AArch64/arm64-named-reg-notareg.ll
    M llvm/test/CodeGen/AArch64/expand-sme-pseudos.mir
    M llvm/test/CodeGen/AArch64/machine-sme-abi-find-insert-pt.mir
    M llvm/test/CodeGen/AArch64/machine-sme-abi-skip-debug-inst.mir
    M llvm/test/CodeGen/AArch64/sme-abi-eh-liveins.mir
    M llvm/test/CodeGen/AArch64/sme-lazy-sve-nzcv-live.mir
    M llvm/test/CodeGen/AArch64/special-reg.ll
    M llvm/test/MC/AArch64/arm64-system-encoding.s
    M llvm/test/MC/AArch64/armv9-mrrs-diagnostics.s
    M llvm/test/MC/AArch64/armv9-mrrs.s
    M llvm/test/MC/AArch64/armv9-msrr-diagnostics.s
    M llvm/test/MC/AArch64/armv9-msrr.s
    M llvm/test/MC/AArch64/basic-a64-instructions.s
    M llvm/test/MC/Disassembler/AArch64/armv8.2a-uao.txt
    M llvm/test/MC/Disassembler/AArch64/armv8.4a-dit.txt
    M llvm/test/MC/Disassembler/AArch64/armv8.5a-dataproc.txt
    M llvm/test/MC/Disassembler/AArch64/armv8.5a-mte.txt
    M llvm/test/MC/Disassembler/AArch64/armv8.5a-sb.txt
    M llvm/test/MC/Disassembler/AArch64/armv8.5a-ssbs.txt
    M llvm/test/MC/Disassembler/AArch64/armv8.7a-wfxt.txt
    M llvm/test/MC/Disassembler/AArch64/armv8.7a-xs.txt
    M llvm/test/MC/Disassembler/AArch64/armv8.8a-nmi.txt
    M llvm/test/MC/Disassembler/AArch64/basic-a64-instructions.txt

  Log Message:
  -----------
  [AArch64] Fix definition of system register move instructions (#185709)

Current implementation of these instructions makes bit20 in the encoding
part of the system register operand, which is incorrect since
[specification](https://developer.arm.com/documentation/ddi0602/latest)
specifies that bit must be set to 1. This patch changes that and removes
the bit 20 from the encoding of the operand and makes it fixed field for
these instructions. It also fixes the parser and codegen by checking
that Op0 in system register name/encoding is correctly constrained to 2
or 3.

Depends on #185970


  Commit: a554a1989f60ebb292b198bbbe084b5a34f880c5
      https://github.com/llvm/llvm-project/commit/a554a1989f60ebb292b198bbbe084b5a34f880c5
  Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    A clang/test/Driver/dxc_section_emission.hlsl
    M llvm/lib/Target/DirectX/DXContainerGlobals.cpp
    A llvm/test/CodeGen/DirectX/ContainerData/DebugName-DXIL.ll
    M llvm/test/CodeGen/DirectX/lit.local.cfg

  Log Message:
  -----------
  [DirectX] Generate shader debug file name part in llc (#199555)

This change modifies DXContainerGlobals pass to generate debug name
(ILDN) part in DXContainer. ILDN part allows consumers to find PDB file
containing shader debug info.

As ILDB emission PR is not merged yet, and PDB file creation is not
upstreamed yet, debug name is generated based on MD5-hash of bitcode
module in DXIL part.
This corresponds to DXC behavior when a shader is compiled with `/Zi
/Qembed_debug /Zsb` flags (with `/Qembed_debug`, DXC does not produce an
actual PDB file, but still emits ILDN, `/Zsb` tells DXC to use bitcode
from DXIL to compute hash).
However, here ILDN is emitted for any debug info flag configuration.
assuming that it won't break debug info consumers, and that PDB creation
will be added later.


  Commit: eb1b57c639947ad381d9dff6093c2b8085b99d0f
      https://github.com/llvm/llvm-project/commit/eb1b57c639947ad381d9dff6093c2b8085b99d0f
  Author: ritter-x2a <9519134+ritter-x2a at users.noreply.github.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/docs/LangRef.rst

  Log Message:
  -----------
  [LangRef] Specify that syncscopes can affect the monotonic modification order (#189017)

If a target specifies that atomics with mismatching syncscopes appear
non-atomic to each other, there is no point in requiring them to be ordered in
the monotonic modification order. Notably, the [AMDGPU target user
guide](https://llvm.org/docs/AMDGPUUsage.html#memory-scopes) has specified
syncscopes to relax the modification order for years.

So far, I haven't found an example where this less constrained ordering would
be observable (at least with the AMDGPU inclusive scope rules). Whenever a load
would be able to see two monotonic stores with non-inclusive scope, that's
considered a data race (i.e., the load would return `undef`), so it cannot be
used to observe the order of the stores.

Related RFC: https://discourse.llvm.org/t/rfc-clarifying-llvm-irs-concurrent-memory-model/90480


  Commit: dbebcb02d3d8f2e92e1ba235992fb43b5fad50a3
      https://github.com/llvm/llvm-project/commit/dbebcb02d3d8f2e92e1ba235992fb43b5fad50a3
  Author: Davide Grohmann <davide.grohmann at arm.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M mlir/lib/Target/SPIRV/Deserialization/DeserializeOps.cpp

  Log Message:
  -----------
  [mlir][spirv] Remove unnecessary assertion (#200137)

The use of the variable in the assertion was causing a build failure
when compiling with assertion off and hence the variable becomes unused.

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


  Commit: 326a1320dc98be6ce17270a2138b76f2036aaa5e
      https://github.com/llvm/llvm-project/commit/326a1320dc98be6ce17270a2138b76f2036aaa5e
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/test/Transforms/LoopStrengthReduce/AArch64/vscale-fixups.ll

  Log Message:
  -----------
  [LSR][AArch64] Precommit tests showing lack of `mul vl` addressing (NFC) (#200149)

These loops could be using `mul vl` addressing in the loop and use fewer
base registers and have a smaller loop setup.


  Commit: dbdbb8d6afd8d30a0074ee0aadc2dbf81c0e8d02
      https://github.com/llvm/llvm-project/commit/dbdbb8d6afd8d30a0074ee0aadc2dbf81c0e8d02
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M libcxx/include/__type_traits/conditional.h

  Log Message:
  -----------
  [libc++] Simplify the implementation of conditional a bit (#199916)

We can use our internal `_If` instead of specializing `conditional` for
selecting the appropriate type.


  Commit: ff7e6bbb7f1187a839690b2832507038b5ea2fc3
      https://github.com/llvm/llvm-project/commit/ff7e6bbb7f1187a839690b2832507038b5ea2fc3
  Author: Fabrice de Gans <Steelskin at users.noreply.github.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/Analysis.h
    M llvm/include/llvm/CodeGen/AntiDepBreaker.h
    M llvm/include/llvm/CodeGen/AsmPrinter.h
    M llvm/include/llvm/CodeGen/AsmPrinterAnalysis.h
    M llvm/include/llvm/CodeGen/AssignmentTrackingAnalysis.h
    M llvm/include/llvm/CodeGen/AtomicExpand.h
    M llvm/include/llvm/CodeGen/BasicBlockMatchingAndInference.h
    M llvm/include/llvm/CodeGen/BasicBlockSectionUtils.h
    M llvm/include/llvm/CodeGen/BasicBlockSectionsProfileReader.h
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/include/llvm/CodeGen/BranchFoldingPass.h
    M llvm/include/llvm/CodeGen/BranchRelaxation.h
    M llvm/include/llvm/CodeGen/CFIFixup.h
    M llvm/include/llvm/CodeGen/CalcSpillWeights.h
    M llvm/include/llvm/CodeGen/CodeGenCommonISel.h
    M llvm/include/llvm/CodeGen/CodeGenPrepare.h
    M llvm/include/llvm/CodeGen/ComplexDeinterleavingPass.h
    M llvm/include/llvm/CodeGen/DFAPacketizer.h
    M llvm/include/llvm/CodeGen/DbgEntityHistoryCalculator.h
    M llvm/include/llvm/CodeGen/DeadMachineInstructionElim.h
    M llvm/include/llvm/CodeGen/DebugHandlerBase.h
    M llvm/include/llvm/CodeGen/DetectDeadLanes.h
    M llvm/include/llvm/CodeGen/DwarfEHPrepare.h
    M llvm/include/llvm/CodeGen/EarlyIfConversion.h
    M llvm/include/llvm/CodeGen/EdgeBundles.h
    M llvm/include/llvm/CodeGen/ExecutionDomainFix.h
    M llvm/include/llvm/CodeGen/ExpandIRInsts.h
    M llvm/include/llvm/CodeGen/ExpandPostRAPseudos.h
    M llvm/include/llvm/CodeGen/ExpandReductions.h
    M llvm/include/llvm/CodeGen/ExpandVectorPredication.h
    M llvm/include/llvm/CodeGen/FEntryInserter.h
    M llvm/include/llvm/CodeGen/FastISel.h
    M llvm/include/llvm/CodeGen/FaultMaps.h
    M llvm/include/llvm/CodeGen/FinalizeISel.h
    M llvm/include/llvm/CodeGen/FixupStatepointCallerSaved.h
    M llvm/include/llvm/CodeGen/FunctionLoweringInfo.h
    M llvm/include/llvm/CodeGen/GCEmptyBasicBlocks.h
    M llvm/include/llvm/CodeGen/GCMetadataPrinter.h
    M llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h
    M llvm/include/llvm/CodeGen/GlobalISel/Combiner.h
    M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
    M llvm/include/llvm/CodeGen/GlobalISel/IRTranslator.h
    M llvm/include/llvm/CodeGen/GlobalISel/InlineAsmLowering.h
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
    M llvm/include/llvm/CodeGen/GlobalISel/Localizer.h
    M llvm/include/llvm/CodeGen/GlobalISel/RegBankSelect.h
    M llvm/include/llvm/CodeGen/GlobalMerge.h
    M llvm/include/llvm/CodeGen/GlobalMergeFunctions.h
    M llvm/include/llvm/CodeGen/HardwareLoops.h
    M llvm/include/llvm/CodeGen/IndirectBrExpand.h
    M llvm/include/llvm/CodeGen/InitUndef.h
    M llvm/include/llvm/CodeGen/InlineAsmPrepare.h
    M llvm/include/llvm/CodeGen/InsertCodePrefetch.h
    M llvm/include/llvm/CodeGen/InterleavedAccess.h
    M llvm/include/llvm/CodeGen/InterleavedLoadCombine.h
    M llvm/include/llvm/CodeGen/IntrinsicLowering.h
    M llvm/include/llvm/CodeGen/JMCInstrumenter.h
    M llvm/include/llvm/CodeGen/KCFI.h
    M llvm/include/llvm/CodeGen/LatencyPriorityQueue.h
    M llvm/include/llvm/CodeGen/LazyMachineBlockFrequencyInfo.h
    M llvm/include/llvm/CodeGen/LexicalScopes.h
    M llvm/include/llvm/CodeGen/LibcallLoweringInfo.h
    M llvm/include/llvm/CodeGen/LiveDebugValuesPass.h
    M llvm/include/llvm/CodeGen/LiveDebugVariables.h
    M llvm/include/llvm/CodeGen/LiveIntervalUnion.h
    M llvm/include/llvm/CodeGen/LivePhysRegs.h
    M llvm/include/llvm/CodeGen/LiveRangeEdit.h
    M llvm/include/llvm/CodeGen/LiveRegMatrix.h
    M llvm/include/llvm/CodeGen/LiveStacks.h
    M llvm/include/llvm/CodeGen/LocalStackSlotAllocation.h
    M llvm/include/llvm/CodeGen/LoopTraversal.h
    M llvm/include/llvm/CodeGen/LowerEmuTLS.h
    M llvm/include/llvm/CodeGen/MBFIWrapper.h
    M llvm/include/llvm/CodeGen/MIR2Vec.h
    M llvm/include/llvm/CodeGen/MIRFSDiscriminator.h
    M llvm/include/llvm/CodeGen/MIRFSDiscriminatorOptions.h
    M llvm/include/llvm/CodeGen/MIRParser/MIParser.h
    M llvm/include/llvm/CodeGen/MIRSampleProfile.h
    M llvm/include/llvm/CodeGen/MIRYamlMapping.h
    M llvm/include/llvm/CodeGen/MachineBlockHashInfo.h
    M llvm/include/llvm/CodeGen/MachineBlockPlacement.h
    M llvm/include/llvm/CodeGen/MachineBranchProbabilityInfo.h
    M llvm/include/llvm/CodeGen/MachineCSE.h
    M llvm/include/llvm/CodeGen/MachineConstantPool.h
    M llvm/include/llvm/CodeGen/MachineCopyPropagation.h
    M llvm/include/llvm/CodeGen/MachineDominanceFrontier.h
    M llvm/include/llvm/CodeGen/MachineFunctionAnalysis.h
    M llvm/include/llvm/CodeGen/MachineIDFSSAUpdater.h
    M llvm/include/llvm/CodeGen/MachineLateInstrsCleanup.h
    M llvm/include/llvm/CodeGen/MachineLoopUtils.h
    M llvm/include/llvm/CodeGen/MachineModuleInfoImpls.h
    M llvm/include/llvm/CodeGen/MachinePipeliner.h
    M llvm/include/llvm/CodeGen/MachineRegionInfo.h
    M llvm/include/llvm/CodeGen/MachineSSAUpdater.h
    M llvm/include/llvm/CodeGen/MachineSink.h
    M llvm/include/llvm/CodeGen/MachineTraceMetrics.h
    M llvm/include/llvm/CodeGen/MachineUniformityAnalysis.h
    M llvm/include/llvm/CodeGen/ModuloSchedule.h
    M llvm/include/llvm/CodeGen/MultiHazardRecognizer.h
    M llvm/include/llvm/CodeGen/OptimizePHIs.h
    M llvm/include/llvm/CodeGen/PEI.h
    M llvm/include/llvm/CodeGen/PHIElimination.h
    M llvm/include/llvm/CodeGen/PatchableFunction.h
    M llvm/include/llvm/CodeGen/PeepholeOptimizer.h
    M llvm/include/llvm/CodeGen/PostRAHazardRecognizer.h
    M llvm/include/llvm/CodeGen/PostRAMachineSink.h
    M llvm/include/llvm/CodeGen/PostRASchedulerList.h
    M llvm/include/llvm/CodeGen/PreISelIntrinsicLowering.h
    M llvm/include/llvm/CodeGen/ProcessImplicitDefs.h
    M llvm/include/llvm/CodeGen/RDFGraph.h
    M llvm/include/llvm/CodeGen/RDFLiveness.h
    M llvm/include/llvm/CodeGen/RDFRegisters.h
    M llvm/include/llvm/CodeGen/ReachingDefAnalysis.h
    M llvm/include/llvm/CodeGen/RegAllocEvictionAdvisor.h
    M llvm/include/llvm/CodeGen/RegAllocFast.h
    M llvm/include/llvm/CodeGen/RegAllocGreedyPass.h
    M llvm/include/llvm/CodeGen/RegAllocPBQP.h
    M llvm/include/llvm/CodeGen/RegAllocPriorityAdvisor.h
    M llvm/include/llvm/CodeGen/RegUsageInfoCollector.h
    M llvm/include/llvm/CodeGen/RegUsageInfoPropagate.h
    M llvm/include/llvm/CodeGen/RegisterBankInfo.h
    M llvm/include/llvm/CodeGen/RegisterCoalescerPass.h
    M llvm/include/llvm/CodeGen/RegisterScavenging.h
    M llvm/include/llvm/CodeGen/RegisterUsageInfo.h
    M llvm/include/llvm/CodeGen/Rematerializer.h
    M llvm/include/llvm/CodeGen/RemoveLoadsIntoFakeUses.h
    M llvm/include/llvm/CodeGen/RemoveRedundantDebugValues.h
    M llvm/include/llvm/CodeGen/RenameIndependentSubregs.h
    M llvm/include/llvm/CodeGen/ResourcePriorityQueue.h
    M llvm/include/llvm/CodeGen/SDNodeInfo.h
    M llvm/include/llvm/CodeGen/SafeStack.h
    M llvm/include/llvm/CodeGen/SanitizerBinaryMetadata.h
    M llvm/include/llvm/CodeGen/ScheduleDAG.h
    M llvm/include/llvm/CodeGen/ScheduleDFS.h
    M llvm/include/llvm/CodeGen/ScheduleHazardRecognizer.h
    M llvm/include/llvm/CodeGen/ScoreboardHazardRecognizer.h
    M llvm/include/llvm/CodeGen/SelectOptimize.h
    M llvm/include/llvm/CodeGen/SelectionDAG.h
    M llvm/include/llvm/CodeGen/SelectionDAGISel.h
    M llvm/include/llvm/CodeGen/SelectionDAGTargetInfo.h
    M llvm/include/llvm/CodeGen/ShadowStackGCLowering.h
    M llvm/include/llvm/CodeGen/ShrinkWrap.h
    M llvm/include/llvm/CodeGen/SjLjEHPrepare.h
    M llvm/include/llvm/CodeGen/SpillPlacement.h
    M llvm/include/llvm/CodeGen/Spiller.h
    M llvm/include/llvm/CodeGen/StackColoring.h
    M llvm/include/llvm/CodeGen/StackFrameLayoutAnalysisPass.h
    M llvm/include/llvm/CodeGen/StackProtector.h
    M llvm/include/llvm/CodeGen/StackSlotColoring.h
    M llvm/include/llvm/CodeGen/SwiftErrorValueTracking.h
    M llvm/include/llvm/CodeGen/SwitchLoweringUtils.h
    M llvm/include/llvm/CodeGen/TailDuplicator.h
    M llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h
    M llvm/include/llvm/CodeGen/TwoAddressInstructionPass.h
    M llvm/include/llvm/CodeGen/TypePromotion.h
    M llvm/include/llvm/CodeGen/UnreachableBlockElim.h
    M llvm/include/llvm/CodeGen/VLIWMachineScheduler.h
    M llvm/include/llvm/CodeGen/WasmEHPrepare.h
    M llvm/include/llvm/CodeGen/WinEHFuncInfo.h
    M llvm/include/llvm/CodeGen/WinEHPrepare.h
    M llvm/include/llvm/CodeGen/WindowScheduler.h
    M llvm/include/llvm/CodeGen/XRayInstrumentation.h

  Log Message:
  -----------
  llvm: Fix most LLVM_ABI annotations in CodeGen (#199921)

This updates most LLVM_ABI annotations in the CodeGen headers to match
expected usage:
* All public APIs should be properly annotated.
* Inlined functions should not be annotated.

These changes were done by a script fixing annotations on LLVM public
headers and manually checked.

This effort is tracked in #109483.


  Commit: 4683f6ba6152e26c22adeaa4daf46732492228e5
      https://github.com/llvm/llvm-project/commit/4683f6ba6152e26c22adeaa4daf46732492228e5
  Author: Ebuka Ezike <e_ezike at apple.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M lldb/tools/lldb-dap/DAP.cpp

  Log Message:
  -----------
  [lldb-dap] Fix data race on disconnecting (#200017)

Guard m_disconnecting with the m_queue_mutex because the value can be
changed in multiple threads


  Commit: f6758a5664a61596ea601ea44304aab798c33962
      https://github.com/llvm/llvm-project/commit/f6758a5664a61596ea601ea44304aab798c33962
  Author: ejose02 <ejose at amd.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M flang/lib/Frontend/FrontendAction.cpp
    A flang/test/Preprocessing/show-macros-stdin.f90

  Log Message:
  -----------
  [flang] Fix -E -dM macro dumping for stdin and .f90 inputs (#200144)

Issue:
flang -E -dM does not consistently print predefined macros for stdin and
.f90 inputs, unlike expected behavior.

Root cause:
Flang only initialized predefined macros when preprocessing was implied
by -cpp or suffix-based inference (mustBePreprocessed), but not when -dM
alone requested macro dumping.

Fix:
Treat -dM as an explicit trigger to initialize macro predefinitions in,
and add a stdin regression test for flang -E -dM - < /dev/null.

Fixes #198234


  Commit: 5cac2751fb9cf3112d16717b278e40d07dd6cfdc
      https://github.com/llvm/llvm-project/commit/5cac2751fb9cf3112d16717b278e40d07dd6cfdc
  Author: Rong "Mantle" Bao <rong.bao at csmantle.top>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/CodeGen/stack-clash-protection.c
    M llvm/lib/Target/LoongArch/LoongArchFrameLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchFrameLowering.h
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchMachineFunctionInfo.h
    M llvm/test/CodeGen/LoongArch/inline-asm-constraint-f.ll
    A llvm/test/CodeGen/LoongArch/stack-clash-prologue-nounwind.ll
    A llvm/test/CodeGen/LoongArch/stack-clash-prologue.ll
    A llvm/test/CodeGen/LoongArch/stack-probing-dynamic-nonentry.ll
    A llvm/test/CodeGen/LoongArch/stack-probing-dynamic.ll
    A llvm/test/CodeGen/LoongArch/stack-probing-frame-setup.mir

  Log Message:
  -----------
  [LoongArch] Add `-fstack-clash-protection` support (#195595)

This PR adds stack probing and `-fstack-clash-protection` support to the
LoongArch backend and Clang driver.

The implementation is largely borrowed from the RISCV backend (cf.
#117612, #139731), with the same allocation-unrolling strategy for
const-sized allocations.


  Commit: 8ecfd9b96df46fc394173e4e6fecdac6381f37b6
      https://github.com/llvm/llvm-project/commit/8ecfd9b96df46fc394173e4e6fecdac6381f37b6
  Author: Sohaib Iftikhar <sohaibiftikhar at google.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M mlir/include/mlir/Target/SPIRV/SPIRVExtInstSets.h
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [BUILD]: Fix for af772866 (#200158)


  Commit: 5b32c6e99e8dba8d1415b2d65f38650e3cff9951
      https://github.com/llvm/llvm-project/commit/5b32c6e99e8dba8d1415b2d65f38650e3cff9951
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/include/llvm/IR/InstrTypes.h
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/test/Transforms/InstCombine/assume.ll

  Log Message:
  -----------
  [InstCombine] Drop the correct assume when working on assume bundles (#198404)

Currently, all assumes of the same kind in an assume bundle are dropped,
even though only a single one is actually checked to be redundant and
should be dropped. This introduces a new `removeOperandFromBundleAt`,
which instead drops a bundle at a specific position. This should also be
faster, since copying the bundles can now be done into an already
correctly allocated vector.


  Commit: 9107dacd6e41c4b65c503c1fa199a1e30a8356a5
      https://github.com/llvm/llvm-project/commit/9107dacd6e41c4b65c503c1fa199a1e30a8356a5
  Author: Fabrice de Gans <Steelskin at users.noreply.github.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/AssumptionCache.h
    M llvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h
    M llvm/include/llvm/Analysis/CFGSCCPrinter.h
    M llvm/include/llvm/Analysis/CmpInstAnalysis.h
    M llvm/include/llvm/Analysis/CostModel.h
    M llvm/include/llvm/Analysis/CycleAnalysis.h
    M llvm/include/llvm/Analysis/DDGPrinter.h
    M llvm/include/llvm/Analysis/DXILMetadataAnalysis.h
    M llvm/include/llvm/Analysis/Delinearization.h
    M llvm/include/llvm/Analysis/DomConditionCache.h
    M llvm/include/llvm/Analysis/DominanceFrontier.h
    M llvm/include/llvm/Analysis/FunctionPropertiesAnalysis.h
    M llvm/include/llvm/Analysis/GuardUtils.h
    M llvm/include/llvm/Analysis/HashRecognize.h
    M llvm/include/llvm/Analysis/IR2Vec.h
    M llvm/include/llvm/Analysis/IVUsers.h
    M llvm/include/llvm/Analysis/IndirectCallPromotionAnalysis.h
    M llvm/include/llvm/Analysis/InstCount.h
    M llvm/include/llvm/Analysis/KernelInfo.h
    M llvm/include/llvm/Analysis/LazyBlockFrequencyInfo.h
    M llvm/include/llvm/Analysis/LazyBranchProbabilityInfo.h
    M llvm/include/llvm/Analysis/LazyValueInfo.h
    M llvm/include/llvm/Analysis/Lint.h
    M llvm/include/llvm/Analysis/LoopCacheAnalysis.h
    M llvm/include/llvm/Analysis/LoopIterator.h
    M llvm/include/llvm/Analysis/MLInlineAdvisor.h
    M llvm/include/llvm/Analysis/MemDerefPrinter.h
    M llvm/include/llvm/Analysis/MemoryDependenceAnalysis.h
    M llvm/include/llvm/Analysis/ModuleDebugInfoPrinter.h
    M llvm/include/llvm/Analysis/ObjCARCAliasAnalysis.h
    M llvm/include/llvm/Analysis/ObjCARCAnalysisUtils.h
    M llvm/include/llvm/Analysis/ObjCARCInstKind.h
    M llvm/include/llvm/Analysis/OverflowInstAnalysis.h
    M llvm/include/llvm/Analysis/PtrUseVisitor.h
    M llvm/include/llvm/Analysis/RegionInfo.h
    M llvm/include/llvm/Analysis/ReplayInlineAdvisor.h
    M llvm/include/llvm/Analysis/ScalarEvolution.h
    M llvm/include/llvm/Analysis/ScalarEvolutionDivision.h
    M llvm/include/llvm/Analysis/StackLifetime.h
    M llvm/include/llvm/Analysis/StackSafetyAnalysis.h
    M llvm/include/llvm/Analysis/StaticDataProfileInfo.h
    M llvm/include/llvm/Analysis/StructuralHash.h
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/include/llvm/Analysis/Trace.h
    M llvm/include/llvm/Analysis/TypeMetadataUtils.h
    M llvm/include/llvm/Analysis/UniformityAnalysis.h
    M llvm/include/llvm/Analysis/ValueLatticeUtils.h
    M llvm/lib/Analysis/DominanceFrontier.cpp
    M llvm/lib/Analysis/RegionInfo.cpp

  Log Message:
  -----------
  llvm: Fix most LLVM_ABI annotations in Analysis (#199019)

This updates most LLVM_ABI annotations in the Analysis headers to match
expected usage:
* All public APIs should be properly annotated.
* Inlined functions should not be annotated.

These changes were done by a script fixing annotations on LLVM public
headers and manually checked.

This effort is tracked in #109483.


  Commit: 61b5b08623e8457e28bce2984593632a9774be96
      https://github.com/llvm/llvm-project/commit/61b5b08623e8457e28bce2984593632a9774be96
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M libc/test/integration/src/__support/GPU/CMakeLists.txt

  Log Message:
  -----------
  [libc] Move fixed buffer GPU test to an integration test (#200042)

Move the `fixedbuffer` GPU test to an integration test.

libc tests are intended to be GTest style tests written with the normal
`TEST(Suite, Test)` GTest macros. Example
[here](https://github.com/llvm/llvm-project/blob/main/libc/test/include/SignbitTest.h#L32).

This test has its own `main` which ends up causing a `main multiple
definitions` linker error when compiling for SPIR-V (work in progress).
I'm not sure why this error doesn't occur for AMDGPU, probably the fact
we have to compile with a ton less compile/linker flags for SPIR-V and
one of them hides the issue.

Specifically the fix is that we don't link against
`libc/test/UnitTest/CMakeFiles/LibcTest.hermetic.dir/LibcTestMain.cpp.o`
which has its own main which conflicts with the one defined in the test.

All other tests in this directory are integration tests too.

A quick check of other uses of the `TEST_MAIN` macro also showed them
using `add_integration_test` and not `add_libc_test`.

Signed-off-by: Nick Sarnie <nick.sarnie at intel.com>


  Commit: 3e8fc3561fb5ccd50441804a56244fac6142e7b4
      https://github.com/llvm/llvm-project/commit/3e8fc3561fb5ccd50441804a56244fac6142e7b4
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/lib/CIR/CodeGen/CIRGenCoroutine.cpp
    M clang/lib/CIR/CodeGen/CIRGenException.cpp
    A clang/test/CIR/CodeGen/coro-exceptions.cpp

  Log Message:
  -----------
  [CIR] Implement 'coroutine' exception handling lowering (#200045)

This patch implements the lowering to CIR for exception handling.
Unfortunately the missing components of Flatten-CFG don't work here, so
we only test that we get successfully to CIR, not to LLVM-IR.

This patch runs the 'await-resume' in a try/catch, and only if that
succeeds, does it run the coroutine body (also in a try/catch if there
is an exception handler).

This is nearly identical to the implementation in classic-codegen,
except we invert the resume-eh variable's value, so we can just use a
simple `if` op for the branch.


  Commit: 4471b623631534fb9bf50f55150594be69a305e8
      https://github.com/llvm/llvm-project/commit/4471b623631534fb9bf50f55150594be69a305e8
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/utils/git/github-automation.py

  Log Message:
  -----------
  [GitHub] Add InstCombine Contributor Guide to new contributor greeting comment (#199730)

I have always manually replied to new contributors, reminding them to
follow the InstCombine contributor guide. Let’s automate this process.

Now it will append the link to the guide when the PR changes the
InstCombine (and highly related components) files.


  Commit: 98c7814ca93baa6976b92a753d8a6364915266f0
      https://github.com/llvm/llvm-project/commit/98c7814ca93baa6976b92a753d8a6364915266f0
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/test/tools/llubi/alloca.ll
    M llvm/test/tools/llubi/assume_misalign_all_ones.ll
    M llvm/test/tools/llubi/assume_null.ll
    M llvm/test/tools/llubi/assume_null_all_ones.ll
    M llvm/test/tools/llubi/attribute_dereferenceable_ub_nullary_provenance.ll
    M llvm/test/tools/llubi/attributes.ll
    M llvm/test/tools/llubi/bitcast_be.ll
    M llvm/test/tools/llubi/bitcast_le.ll
    M llvm/test/tools/llubi/freeze.ll
    M llvm/test/tools/llubi/gep.ll
    M llvm/test/tools/llubi/inttoptr.ll
    M llvm/test/tools/llubi/lib_calloc_large_size.ll
    M llvm/test/tools/llubi/lib_calloc_size_overflow.ll
    M llvm/test/tools/llubi/lib_free_nullary_pointer.ll
    M llvm/test/tools/llubi/lib_malloc_large_size.ll
    M llvm/test/tools/llubi/loadstore_be.ll
    M llvm/test/tools/llubi/loadstore_le.ll
    M llvm/test/tools/llubi/loadstore_uaf.ll
    M llvm/test/tools/llubi/metadata.ll
    M llvm/test/tools/llubi/store_dead.ll
    M llvm/tools/llubi/lib/Context.cpp
    M llvm/tools/llubi/lib/Context.h
    M llvm/tools/llubi/lib/Value.cpp
    M llvm/tools/llubi/lib/Value.h

  Log Message:
  -----------
  [llubi] Add basic support for provenance modeling (#185977)

There are four solutions to model the provenance in the memory:
1. `(allocid, bitindex)` for each bit: It follows the definition of byte
type.
2. `(allocid, bitindex)` for each byte: This assumes the pointer/byte
types are always byte-sized, and requires bitextract/bitinsert to shift
by multiples of 8, as posted in
https://discourse.llvm.org/t/rfc-add-a-new-byte-type-to-llvm-ir/89522/53.
I believe this is true in most real-world cases.
3. Assign a random tag for each memory object: The tag has the same
width as the address. It is stored in the memory like addresses. Thus,
each logical byte only occupies 4 bytes. When loading a pointer, the tag
is loaded and used to recover the provenance. Incorrect bit ordering
will result in nullary provenance (with a negligible rate of false
negatives). I think it is feasible because we can always turn a false
negative into a positive with a different seed. It is also compatible
with captured components
(https://github.com/dtcxzyw/llvm-ub-aware-interpreter/blob/d15dfef5bc0c1b30b05512bbc28fddb2b50cc0b1/ubi.h#L187)
and noalias (https://jhostert.de/blog/2025/noalias/) if we maintain the
tree structure in a hashmap.
4. Maintains a `addr -> provenance` map like
[miri](https://github.com/rust-lang/rust/blob/main/compiler/rustc_middle/src/mir/interpret/allocation/provenance_map.rs).
It also looks expensive to maintain the provenance at the bit level.

This patch implements the third approach. After
https://github.com/llvm/llvm-project/pull/178666 lands, I can add more
tests to play with byte types.


  Commit: 9f82a4e41f9a0101488cd81444adfa646063dbc5
      https://github.com/llvm/llvm-project/commit/9f82a4e41f9a0101488cd81444adfa646063dbc5
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    M llvm/test/CodeGen/AArch64/arm64-ldst-unscaled-pre-post.mir
    M llvm/test/CodeGen/AArch64/ldst-miflags.mir
    M llvm/test/CodeGen/AArch64/ldst-opt.mir
    M llvm/test/CodeGen/AArch64/ldst_update_cfpath.mir
    M llvm/test/CodeGen/AArch64/memtag-merge-writeback.mir
    M llvm/test/CodeGen/AArch64/no-reorder-cfi-merge-back-load.mir
    M llvm/test/CodeGen/AArch64/no-reorder-cfi-merge-fwd-load.mir
    M llvm/test/CodeGen/AArch64/stack-probing-dynamic.ll
    A llvm/test/CodeGen/AArch64/volatile-reg-writeback.ll
    M llvm/test/Transforms/LoopStrengthReduce/AArch64/lsr-memcpy.ll

  Log Message:
  -----------
  [AArch64] Do not generate indexed addressing mode for volatile accesses (#196305)

Instructions performing register writeback do not set a valid
instruction syndrome, making it impossible to handle MMIO in protected
hypervisors. Suppress the use of postinc/preinc addressing modes for
volatile accesses, which may be used to interact with MMIO.

There are three different places that can form indexed addressing modes:

 * GISel via isIndexingLegal()
 * SDAG via getPreIndexedAddressParts() and getPostIndexedAddressParts()
 * AArch64LoadStoreOptimizer

The the latter case, exclude volatile accesses on SP (which are relevant
for stack probing) and MTE tag stores, as both cannot be MMIO.

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


  Commit: 34f294ccbca8c820fffd0538015499108f6600aa
      https://github.com/llvm/llvm-project/commit/34f294ccbca8c820fffd0538015499108f6600aa
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M flang/lib/Semantics/resolve-directives.cpp
    R flang/test/Semantics/OpenMP/detach-symbols.f90

  Log Message:
  -----------
  [flang][OpenMP] Event handles are not predetermined shared (#200055)

An event-handle variable that appears in a DETACH has its data-sharing
attributes determined according to the usual rules in the constructs
enclosing the clause.


  Commit: 7fb99eefbc6eb6850cb392165388fd87b61b526b
      https://github.com/llvm/llvm-project/commit/7fb99eefbc6eb6850cb392165388fd87b61b526b
  Author: Prerona Chaudhuri <pchaudhuri at nvidia.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Analysis/CallGraphSCCPass.cpp
    A llvm/test/Other/legacy-callgraph-scc-pass-printer.ll

  Log Message:
  -----------
  Emit newline after IR-dump banner in PrintCallGraphPass (#199410)

Required for Compiler Explorer's opt-pipeline viewer: the tool parses
pass output by splitting on the IR-dump banner line, so the banner must
end with a newline. Without it, targets that exercise this pass cannot
be inspected through the opt-pipeline feature.

Assisted by Claude.


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

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/neon-partial-reduce-dot-product.ll

  Log Message:
  -----------
  [AArch64] Lower SUMLA via two udot products on plain dotprod targets. (#199761)

Lower PARTIAL_REDUCE_SUMLA on targets without i8mm using udot via

sum(mul (zext %a, sext %b)) =
    sum(mul zext %a, zext (xor %b, 0x80)) -
    sum(mul 128, zext %a)

using  sext(s) = zext(xor(s, 0x80)) - 128
(https://alive2.llvm.org/ce/z/8G8rer)

Alive2 proofs:
* mul (zext, sext) https://alive2.llvm.org/ce/z/8Av7rG
* mul (sext, zext) https://alive2.llvm.org/ce/z/g-gJGq

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


  Commit: da4e5cc928c8f8000643e48bc2790b51927eeac6
      https://github.com/llvm/llvm-project/commit/da4e5cc928c8f8000643e48bc2790b51927eeac6
  Author: Oliver Stannard <oliver.stannard at arm.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Analysis/ScalarEvolution.cpp
    A llvm/test/Analysis/ScalarEvolution/rounding-demanded-bits.ll
    A llvm/test/CodeGen/Thumb2/LowOverheadLoops/tail-pred-known-bits.ll

  Log Message:
  -----------
  [SCEV] Canonicalise round-up idiom when some bits known (#197126)

Since #174380, instcombine can clear some set bits in the added constant
in expressions like this, when A has some known-clear low order bits.
  (A + 15) & ~15

This transformation is valid, but can make it harder for later passes to
recognise this idiom for rounding up to a power of 2. This is causing
the ARM MVE tail predication pass to fail on loops with a trip count
which is a multiple of a small power of 2.

The fix is to reverse the transformation when building SCEV expressions,
canonicalising to always use the largest valid value for the added
constant.

Alive proofs:
https://alive2.llvm.org/ce/z/hhndoW
https://alive2.llvm.org/ce/z/_JYVat


  Commit: ebe8595c0012674eb5ce7427ee938214f711ca66
      https://github.com/llvm/llvm-project/commit/ebe8595c0012674eb5ce7427ee938214f711ca66
  Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.h

  Log Message:
  -----------
  [lldb][NFCI] Cleanup APIs in AppleObjCClassDescriptorV2 (#200122)

This removes unnecessary unique_ptrs and uses better error handling
(expected instead of bools).


  Commit: c8ef5dcfae341d176cd84a182c320d61afc441cf
      https://github.com/llvm/llvm-project/commit/c8ef5dcfae341d176cd84a182c320d61afc441cf
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

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

  Log Message:
  -----------
  [VPlan] Directly pass SrcEltTy when constructing WideGEP (NFC) (#200043)

Avoid getting the source element type from the underlying instruction,
and make the underlying instruction optional.


  Commit: 5d29057a58760454c96411d27a92b8d80e40b048
      https://github.com/llvm/llvm-project/commit/5d29057a58760454c96411d27a92b8d80e40b048
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M .github/actions/push-container/action.yml

  Log Message:
  -----------
  actions/push-container: Remove template expansion (#200062)

https://github.com/llvm/llvm-project/security/code-scanning/1757


  Commit: d5edbe411d8f60d13a5aeb2a4b0764dbb83a6155
      https://github.com/llvm/llvm-project/commit/d5edbe411d8f60d13a5aeb2a4b0764dbb83a6155
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M .github/workflows/upload-release-artifact/action.yml

  Log Message:
  -----------
  workflows/upload-release-artifact: Validate input and remove template expansion (#199972)

https://github.com/llvm/llvm-project/security/code-scanning/1757
https://github.com/llvm/llvm-project/security/code-scanning/1758
https://github.com/llvm/llvm-project/security/code-scanning/1759
https://github.com/llvm/llvm-project/security/code-scanning/1760
https://github.com/llvm/llvm-project/security/code-scanning/1761


  Commit: 992ee5934c1142c00dc09589380b8277cc43ef09
      https://github.com/llvm/llvm-project/commit/992ee5934c1142c00dc09589380b8277cc43ef09
  Author: Matt Turner <mattst88 at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake
    M compiler-rt/cmake/base-config-ix.cmake
    M compiler-rt/lib/asan/asan_allocator.h
    M compiler-rt/lib/asan/asan_mapping.h
    M compiler-rt/lib/sanitizer_common/sanitizer_asm.h
    M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_platform.h
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_linux.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.h
    A compiler-rt/lib/sanitizer_common/sanitizer_syscall_linux_alpha.inc

  Log Message:
  -----------
  Add support for Alpha to libsanitizer (#194161)

Add support for [Alpha](https://en.wikipedia.org/wiki/DEC_Alpha) to
libsanitizer.

- [sanitizer] Add SANITIZER_ALPHA platform macro
- [sanitizer] Add Linux/Alpha syscall implementation
- [sanitizer] Skip __old_kernel_stat check on Alpha
- [sanitizer] Use statx for stat syscalls on Linux/Alpha
- [sanitizer] Add GetPcSpBp signal context support for Alpha
- [sanitizer] Add Alpha struct size constants
- [sanitizer] Add Alpha ioctl encoding constants
- [compiler-rt] sanitizer: Alpha struct sigaction has no sa_restorer
- [compiler-rt] sanitizer: Disable interceptor trampoline on Alpha
- [compiler-rt] sanitizer: Add Alpha __sanitizer_dirent layout
- [compiler-rt] sanitizer: Add Alpha ThreadDescriptorSizeFallback()
- [compiler-rt] Enable Alpha Linux target
- [compiler-rt] Use fixed shadow offset 0x10000000000 (1T) for Alpha
- [compiler-rt][ASan] Limit allocator to 512G on Alpha

Tested by porting the changes to gcc's downstream libsanitizer and
building and running the libunwind test suite with UBSan / ASan enabled.


  Commit: 2766733764f4bdf8399d48c0225e9c64bdfa95f7
      https://github.com/llvm/llvm-project/commit/2766733764f4bdf8399d48c0225e9c64bdfa95f7
  Author: Guy David <guyda96 at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

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

  Log Message:
  -----------
  [compiler-rt][profile] Add COMPILER_RT_BUILD_PROFILE_ROCM option (#200127)


  Commit: 34e7ecaf872f324c11d1e7e631831f2876cd8bd0
      https://github.com/llvm/llvm-project/commit/34e7ecaf872f324c11d1e7e631831f2876cd8bd0
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-05-28 (Thu, 28 May 2026)

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

  Log Message:
  -----------
  [IR] Avoid caching a DenseMap reference across erase in handleOperandChangeImpl. NFC (#200179)

They bind a reference into the map and write through it after erasing
the old entry. This will not hold for backward-shift deletion. Extracted
from #199615


  Commit: b43dcbeffe022d5e03d60c4091c92f651c4f20a4
      https://github.com/llvm/llvm-project/commit/b43dcbeffe022d5e03d60c4091c92f651c4f20a4
  Author: Dmitry Sidorov <Dmitry.Sidorov at amd.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/docs/SPIRVUsage.rst
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
    M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
    M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstrInfo.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
    A llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_poison_freeze/arithmetic-poison-execmode-metadata.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_poison_freeze/arithmetic-poison-execmode-negative.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_poison_freeze/arithmetic-poison-execmode.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_poison_freeze/freeze.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_poison_freeze/poison-composite.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_poison_freeze/poison.ll

  Log Message:
  -----------
  Implement SPV_KHR_poison_freeze extension (#198037)

Specification can be found here:

https://github.com/KhronosGroup/SPIRV-Registry/blob/main/extensions/KHR/SPV_KHR_poison_freeze.asciidoc


  Commit: 3c21a0cbad43398d47fb2a95b242a02f084dd767
      https://github.com/llvm/llvm-project/commit/3c21a0cbad43398d47fb2a95b242a02f084dd767
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
    A llvm/test/CodeGen/SPIRV/extensions/SPV_ALTERA_arbitrary_precision_integers/i128-icmp.ll

  Log Message:
  -----------
  [SPIR-V] Add s128 to allPtrsScalarsAndVectors in legalizer (#199998)

Without this, i128 G_ICMP fails legalization before OpTypeInt emits the
diagnostic

---------

Co-authored-by: Dmitry Sidorov <dsidorov at amd.com>


  Commit: 5536348d060066e875c9bf9e056447ece59c783d
      https://github.com/llvm/llvm-project/commit/5536348d060066e875c9bf9e056447ece59c783d
  Author: Prasoon <prasoonkumar054 at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/utils/lit/lit/TestingConfig.py

  Log Message:
  -----------
  [lit] Handle config loading safely (#200168)

Currently, the config file is opened outside the `try` block without
explicit encoding and handled with a bare `except`.
We can move to putting a `with open()` context manager inside the `try`
block and catching OSError.

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


  Commit: a16511c2d9697e7c5a9a9bc10948762666573c3c
      https://github.com/llvm/llvm-project/commit/a16511c2d9697e7c5a9a9bc10948762666573c3c
  Author: Naveen Seth Hanig <naveen.hanig at outlook.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/include/clang/Driver/Types.def
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ModulesDriver.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/Types.cpp
    M clang/lib/Tooling/InterpolatingCompilationDatabase.cpp
    M clang/test/Driver/modules-driver-dep-graph-stdlib-modules.cpp
    M clang/test/Driver/modules-driver-import-std.cpp

  Log Message:
  -----------
  [clang][modules-driver] Precompile std modules independently of -o and final phase (#199289)

With this, Standard library modules are always precompiled as the
primary output of their `-cc1` invocation, instead of being produced as
a byproduct of compiling the Standard library modules to object files.

This also keeps Standard library module precompilation independent of
the final phase specified on the command line, so importing them keep
working under `-fsyntax-only` (and other command-line options that
specify the final phase).

This also makes the Standard library module precompilation independent
of the `-o` flag, so that a command like `clang -std=c++23
-fmodules-driver main.cpp -o main` no longer redirects the Standard
library module outputs to 'main', breaking the compilation.


  Commit: 8ab00f2c21e5975f5de977ca68607b4acc23c856
      https://github.com/llvm/llvm-project/commit/8ab00f2c21e5975f5de977ca68607b4acc23c856
  Author: Zibi Sarbinowski <zibi at ca.ibm.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/test/CodeGen/Generic/2009-03-17-LSR-APInt.ll
    M llvm/test/CodeGen/Generic/available_externally_alias.ll

  Log Message:
  -----------
  [z/OS][tests] XFAIL using aliases on z/OS (#200176)

This PR XFAIL 2 lit test cases as the following errors are expected:

```
FAIL: LLVM :: CodeGen/Generic/available_externally_alias.ll
# | <unknown>:0: error: Only aliases to functions is supported in GOFF.

FAIL: LLVM :: CodeGen/Generic/2009-03-17-LSR-APInt.ll
# | <unknown>:0: error: Weak alias/reference not supported on z/OS
```


  Commit: f24ee22550de8bfe926df7a6358f307023b8f24b
      https://github.com/llvm/llvm-project/commit/f24ee22550de8bfe926df7a6358f307023b8f24b
  Author: ioana ghiban <ioana.ghiban at arm.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    A mlir/test/Conversion/MemRefToEmitC/memref-to-emitc-alloc-dealloc.mlir
    R mlir/test/Conversion/MemRefToEmitC/memref-to-emitc-alloc.mlir

  Log Message:
  -----------
  [mlir][EmitC] Include DeallocOp in AllocOp memref conversion tests (#198275)

This PR helps keep changes introduced in
https://github.com/llvm/llvm-project/pull/194591 visible, by renaming
files in a separate commit.


  Commit: 3e92883e83f76926467adaee8d81902c407823a9
      https://github.com/llvm/llvm-project/commit/3e92883e83f76926467adaee8d81902c407823a9
  Author: Christian Kandeler <christian.kandeler at qt.io>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang-tools-extra/clangd/XRefs.cpp
    M clang-tools-extra/clangd/test/type-hierarchy-ext.test
    M clang-tools-extra/clangd/test/type-hierarchy.test
    M clang-tools-extra/clangd/unittests/CallHierarchyTests.cpp

  Log Message:
  -----------
  [clangd] Remove redundant symbol name from hierarchy item details (#170112)

Closes clangd/clangd#2346.


  Commit: c20c666e7df2b09fb51704d5e44dce94503baa76
      https://github.com/llvm/llvm-project/commit/c20c666e7df2b09fb51704d5e44dce94503baa76
  Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.h

  Log Message:
  -----------
  [lldb][NFCI] Cleanup AppleObjCClassDescriptorV2::objc_class_t API (#200180)


  Commit: 082ac6e3eaaa33b579f9e4c67a84599e9d49e9d4
      https://github.com/llvm/llvm-project/commit/082ac6e3eaaa33b579f9e4c67a84599e9d49e9d4
  Author: Prasoon <prasoonkumar054 at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/utils/lit/lit/ShUtil.py

  Log Message:
  -----------
  [lit] Optimize ShLexer string construction (#199641)

`lex_arg_quoted` and `lex_arg_slow` methods in the `lit`'s `ShLexer`
class used `+=` for string concatenation, which was inefficient. This change
replaces that pattern by collecting string fragments in a list and using
`"".join()` at the end.

**Baseline:**
| Stage | Metric (Runtime / Peak RSS) |
| :--- | :--- |
| **CodeGen-X86** | 99.310s / 51872 kB |
| **llvm-transforms** | 51.457s / 66928 kB |

**Changes made here:**
| Stage | Metric (Runtime / Peak RSS) |
| :--- | :--- |
| **CodeGen-X86** | 94.964s / 51868 kB |
| **llvm-transforms** | 50.890s / 66328 kB |

This PR is part of the "GSoC 2026: Improving lit" project.

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


  Commit: 7ac0a3cec9bf6c6199f62be26d1cdb754c97383d
      https://github.com/llvm/llvm-project/commit/7ac0a3cec9bf6c6199f62be26d1cdb754c97383d
  Author: Prasoon <prasoonkumar054 at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/utils/lit/lit/ProgressBar.py

  Log Message:
  -----------
  [lit] Replace zip(range(len(x)), x) with enumerate(x) in ProgressBar (#199884)

Updated `ProgressBar.py` to replace four instances of
`zip(range(len(x)), x)` with `enumerate(x)`. The former is a legacy
Python 2 pattern, while `enumerate()` is the modern and efficient Python
3 idiom. This is a clean-up refactor that results in no behavioral
changes to the code.

This PR is part of the "GSoC 2026: Improving lit" project.

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


  Commit: 3beee85e5244bc70fa32210d89634c0e53d2606d
      https://github.com/llvm/llvm-project/commit/3beee85e5244bc70fa32210d89634c0e53d2606d
  Author: Matt <MattPD at users.noreply.github.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/mod-file.cpp
    M flang/lib/Semantics/resolve-names.cpp
    A flang/test/Semantics/OpenMP/declare-reduction-accessibility.f90
    A flang/test/Semantics/OpenMP/declare-reduction-default-private.f90
    A flang/test/Semantics/OpenMP/declare-reduction-modfile-private.f90
    A flang/test/Semantics/OpenMP/declare-reduction-public-regression.f90
    A flang/test/Semantics/OpenMP/declare-reduction-use-assoc.f90

  Log Message:
  -----------
  [flang][OpenMP] Fix declare reduction accessibility in module scope (#197078)

Fix four interacting issues with OpenMP declare reduction accessibility
when reductions are declared in Fortran modules:

1. Accessibility propagation (resolve-names.cpp): Reduction symbols like
`op.+` had no linkage to the corresponding `operator(+)` accessibility.
`ApplyDefaultAccess()` now reverse-maps mangled names to their Fortran
   identifiers and inherits operator/procedure accessibility.

2. USE-associated duplicate detection (resolve-names.cpp):
`FindSymbol()`
searched parent scopes and found USE-associated symbols, causing false
   "Duplicate definition" errors. Changed to scope-local `FindInScope()`
   with proper `UseDetails` handling that shadows USE symbols.

3. Module file serialization (mod-file.cpp): `PutUserReduction()` never
emitted accessibility, so PRIVATE was lost on module file round-trips.
Now emits `private::<identifier>` when no GenericDetails symbol already
   carries PRIVATE (avoiding duplicates with PutGeneric output).

4. Reduction clause checking (check-omp-structure.cpp):
   `CheckSymbolSupportsType()` scanned all module scopes ignoring
   accessibility. Now skips PRIVATE reductions in the module scope scan.

Also fixes a pre-existing bug in `MakeNameFromOperator()` where the
CharBlock lengths for OR, EQV, and NEQV included the null terminator
(6/7/8 instead of 5/6/7), causing silent mismatches in StringSwitch
comparisons.

Note: `CheckSymbolSupportsType` still scans all global module scopes
rather than only USE-reachable ones. This pre-existing over-broad lookup
is improved by the PRIVATE filter added here but a proper
scope-restricted resolution is left as future work.

Fixes #187415
Related: #192580

Assisted-by: Claude Opus 4.6.

Co-authored-by: Matt P. Dziubinski <matt-p.dziubinski at hpe.com>


  Commit: 96b6bb78aa04c489fcd95e844a74bbcc64f8a2ef
      https://github.com/llvm/llvm-project/commit/96b6bb78aa04c489fcd95e844a74bbcc64f8a2ef
  Author: lijinpei-amd <jinpli at amd.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    A llvm/test/CodeGen/AMDGPU/freeze-other-uses-issue-198094.ll

  Log Message:
  -----------
  [DAGCombiner] Loop unfreeze step in visitFREEZE freezeOtherUses (#200120)

The first ReplaceAllUsesOfValueWith in visitFREEZE's freezeOtherUses
block can leave users of N behind: when the inner RAUW cascade
encounters a freeze user whose hash collides post-mutation, the
recursive merge prepends new freeze users to N's use-list that the outer
iterator deliberately skips (PR3018 invariant). Those leftover users
then collide with the self-cycle the next RAUW step creates, firing
"Node is not in map!" in RemoveNodeFromCSEMaps.

Wrap the unfreeze in a convergence loop so all such prepended users are
drained before the second RAUW. Each iteration strictly shrinks N's
use-set, bounded by the depth of the freeze chain.

Fixes #198094


  Commit: 7948d336a9eb457321dce284bdd1dfbffa33ef33
      https://github.com/llvm/llvm-project/commit/7948d336a9eb457321dce284bdd1dfbffa33ef33
  Author: Prasoon <prasoonkumar054 at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/utils/lit/lit/Test.py

  Log Message:
  -----------
  [lit] Refactor super() calls in ResultCode (#199891)

This PR simplifies the `super()` call in `ResultCode.__new__`
by migrating from the Python 2 style explicit arguments to the
standard Python 3 zero-argument syntax.

This PR is part of the "GSoC 2026: Improving lit" project.

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


  Commit: ba7d42b096cbef00320abe2b2e12a0125a6dc2f3
      https://github.com/llvm/llvm-project/commit/ba7d42b096cbef00320abe2b2e12a0125a6dc2f3
  Author: Maryam Moghadas <maryammo at ca.ibm.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.h
    M llvm/lib/Target/PowerPC/PPCInstrVSX.td
    M llvm/test/CodeGen/PowerPC/combine-fneg.ll
    M llvm/test/CodeGen/PowerPC/fma-combine.ll
    M llvm/test/CodeGen/PowerPC/recipest.ll
    M llvm/test/CodeGen/PowerPC/repeated-fp-divisors.ll
    A llvm/test/CodeGen/PowerPC/vec-splats-opt.ll

  Log Message:
  -----------
  [PowerPC] Optimize vec_splats of small FP values on Power8/9 (#199538)

Recognize small constant FP splats representable as integers and lower
them to vspltisw + xvcvsxwdp/xvcvsxwsp on Power8/9, avoiding constant
pool loads.


  Commit: 90aece05fdd4be2f6ccac93508d7ee7852d336b5
      https://github.com/llvm/llvm-project/commit/90aece05fdd4be2f6ccac93508d7ee7852d336b5
  Author: LU-JOHN <John.Lu at amd.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/saddsat.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/ssubsat.ll
    M llvm/test/CodeGen/AMDGPU/ashr.v2i16.ll
    M llvm/test/CodeGen/AMDGPU/sdwa-peephole-instr.mir

  Log Message:
  -----------
  [AMDGPU] Do not combine V_ASHRREV_I16* to make sdwa (#198491)

Do not combine V_ASHRREV_I16* instructions to form sdwa instructions.
These instructions zero-fill the high 16-bits.

---------

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


  Commit: 8fea28089a91bbcee1ffb21d034548019329d775
      https://github.com/llvm/llvm-project/commit/8fea28089a91bbcee1ffb21d034548019329d775
  Author: Ilia Kuklin <ikuklin at accesssoftek.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Object/DXContainer.cpp
    M llvm/unittests/Object/DXContainerTest.cpp

  Log Message:
  -----------
  [DirectX] Check DXContainer's header magic during parsing (#198586)

Check that header magic is 'DXBC' during parsing to avoid random data
being treated like a correct header.


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

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

  Log Message:
  -----------
  [RISCV] Use append TableGen feature in RISCVInstrInfoP.td. NFC (#200110)

I may go back and adjust some formatting in a follow up. I wanted to
keep the diff here focused on the Predicates changes.


  Commit: 67ac1b07a38f44ff9f05b8d7b1e3fe2b3698782c
      https://github.com/llvm/llvm-project/commit/67ac1b07a38f44ff9f05b8d7b1e3fe2b3698782c
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

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

  Log Message:
  -----------
  [RISCV][P-ext] Support v4i16/v8i8 build_vector on RV32. (#199883)


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

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

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

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

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

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

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

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

Non-core cleanups aided by Claude Opus 4.7.


  Commit: ea4cd9228f872677395d1ded19f67f20f016c78a
      https://github.com/llvm/llvm-project/commit/ea4cd9228f872677395d1ded19f67f20f016c78a
  Author: michaelselehov <michael.selehov at amd.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/lib/CodeGen/Targets/AMDGPU.cpp
    R clang/test/CodeGen/amdgpu-abi-struct-coerce.c
    M clang/test/CodeGen/amdgpu-variadic-call.c
    M clang/test/CodeGenOpenCL/amdgpu-abi-struct-coerce.cl
    M clang/test/Headers/amdgcn-openmp-device-math-complex.c

  Log Message:
  -----------
  Revert "[AMDGPU] Stop coercing structs with FP and int fields to inte… (#199981)

…ger arrays (#185083)"

This reverts commit 50b859cca1ccf7d174ee61a8a130ae14220209e4.

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


  Commit: 2c8ca9679e85e466e8d7105027df322d03c45e3d
      https://github.com/llvm/llvm-project/commit/2c8ca9679e85e466e8d7105027df322d03c45e3d
  Author: Jan André Reuter <j.reuter at fz-juelich.de>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/docs/OpenMPSupport.rst
    M offload/include/OpenMP/OMPT/Interface.h
    M offload/libomptarget/OpenMP/API.cpp
    M offload/libomptarget/OpenMP/OMPT/Callback.cpp
    A offload/test/ompt/target_memset.c
    A offload/test/ompt/target_memset_async.c
    A offload/test/ompt/target_memset_emi.c

  Log Message:
  -----------
  [OMPT] Add callback for `omp_target_memset` calls (#194168)

OpenMP v6.0 added new enum values to `ompt_callback_target_data_op_t`
for communicating `memset` events. Add a corresponding callback
invokation to `omp_target_memset` calls.

Expand the tests to ensure correct behavior.

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


  Commit: 10f84995b430a7964d0873488100756a52652fa0
      https://github.com/llvm/llvm-project/commit/10f84995b430a7964d0873488100756a52652fa0
  Author: Prasoon <prasoonkumar054 at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/utils/lit/lit/TestRunner.py

  Log Message:
  -----------
  [lit] Modernize ParserKind implementation using Python3 IntEnum (#199965)

`ParserKind` in `TestRunner.py` uses a detached dictionary
for suffix mapping, which is a Python 2 idiom. We can convert
the class to a Python 3 `IntEnum`. No change in behavior.

This PR is part of the "GSoC 2026: Improving lit" project.

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


  Commit: 10497d20fc2f5312df03dc7c48f4f050f92ad6d5
      https://github.com/llvm/llvm-project/commit/10497d20fc2f5312df03dc7c48f4f050f92ad6d5
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/IR/Constants.cpp
    M llvm/test/Assembler/aggregate-constant-values.ll

  Log Message:
  -----------
  [IR] Remove options for vector of null representation (#200172)

This had a bit time to bake in tree, I don't think we need these options
anymore.


  Commit: aff129e825b5e21943f89a3994d6e26a14600367
      https://github.com/llvm/llvm-project/commit/aff129e825b5e21943f89a3994d6e26a14600367
  Author: Joshua Rodriguez <josh.rodriguez at arm.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/docs/GlobalISel/GenericOpcode.rst
    M llvm/include/llvm/Support/TargetOpcodes.def
    M llvm/include/llvm/Target/GenericOpcodes.td
    M llvm/include/llvm/Target/GlobalISel/SelectionDAGCompat.td
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
    M llvm/test/CodeGen/AArch64/arm64-neon-mul-div.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
    M llvm/test/CodeGen/X86/machine-block-hash.mir

  Log Message:
  -----------
  [AArch64][GlobalISel] Add support for pmul intrinsic (#198809)

Previously, pmul couldn't lower as there were neither any GlobalISel
patterns for the intrinsic, nor a GlobalISel node to allow use of the
SelectionDAG patterns.
Create a G_PMUL node linked to the SelectionDAG node 'clmul' (CarryLess
MULtiplication). Now the ISel stage of GlobalISel has suitable patterns
to lower the intrinsic.


  Commit: ac2c011dd3b15e97b6dd6fbd11ca57b6411cab09
      https://github.com/llvm/llvm-project/commit/ac2c011dd3b15e97b6dd6fbd11ca57b6411cab09
  Author: Piotr Balcer <piotr.balcer at intel.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M offload/unittests/OffloadAPI/common/Fixtures.hpp
    M offload/unittests/OffloadAPI/event/olGetEventElapsedTime.cpp
    M offload/unittests/OffloadAPI/kernel/olCalculateOptimalOccupancy.cpp
    M offload/unittests/OffloadAPI/kernel/olLaunchKernel.cpp
    M offload/unittests/OffloadAPI/memory/olMemFill.cpp
    M offload/unittests/OffloadAPI/queue/olDestroyQueue.cpp
    M offload/unittests/OffloadAPI/queue/olLaunchHostFunction.cpp
    M offload/unittests/OffloadAPI/symbol/olGetSymbolInfo.cpp

  Log Message:
  -----------
  [offload] add SKIP_KNOWN_FAILURE unittest macro (#196275)

... and disable failing level-zero tests, to be reenabled once the
plugin is fully functional.

Here is the passrate for the level-zero plugin unit tests:
```
Total Discovered Tests: 645
  Skipped:  74 (11.47%)
  Passed : 571 (88.53%)
```

We are actively working on fixing the issues marked as known failures
here.


  Commit: 35a10827d093d5890948c9ac362ac546464a67bc
      https://github.com/llvm/llvm-project/commit/35a10827d093d5890948c9ac362ac546464a67bc
  Author: Gábor Tóthvári <gabor.tothvari at ericsson.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/docs/analyzer/developer-docs/IPA.rst
    M clang/include/clang/Analysis/AnalysisDeclContext.h
    M clang/include/clang/Analysis/PathDiagnostic.h
    M clang/include/clang/Analysis/ProgramPoint.h
    M clang/include/clang/StaticAnalyzer/Checkers/Taint.h
    M clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h
    M clang/include/clang/StaticAnalyzer/Core/Checker.h
    M clang/include/clang/StaticAnalyzer/Core/CheckerManager.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/Environment.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/LoopWidening.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SValBuilder.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/Store.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h
    M clang/lib/Analysis/AnalysisDeclContext.cpp
    M clang/lib/Analysis/PathDiagnostic.cpp
    M clang/lib/Analysis/ProgramPoint.cpp
    M clang/lib/StaticAnalyzer/Checkers/AnalysisOrderChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/AnalyzerStatsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ArrayBoundChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/BasicObjCFoundationChecks.cpp
    M clang/lib/StaticAnalyzer/Checkers/BuiltinFunctionChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/CXXDeleteChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/CXXSelfAssignmentChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/CallAndMessageChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/CastValueChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/CheckObjCDealloc.cpp
    M clang/lib/StaticAnalyzer/Checkers/CheckerDocumentation.cpp
    M clang/lib/StaticAnalyzer/Checkers/ChrootChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ContainerModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/ConversionChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/DebugContainerModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/DebugIteratorModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/DereferenceChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/DirectIvarAssignment.cpp
    M clang/lib/StaticAnalyzer/Checkers/DynamicTypeChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/DynamicTypePropagation.cpp
    M clang/lib/StaticAnalyzer/Checkers/ErrnoChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ErrnoModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/ErrnoModeling.h
    M clang/lib/StaticAnalyzer/Checkers/ErrnoTesterChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ExprInspectionChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/FuchsiaHandleChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/InnerPointerChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/InvalidatedIteratorChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/Iterator.cpp
    M clang/lib/StaticAnalyzer/Checkers/Iterator.h
    M clang/lib/StaticAnalyzer/Checkers/IteratorModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/IteratorRangeChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/LocalizationChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MIGChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MacOSKeychainAPIChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MismatchedIteratorChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MoveChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/NoOwnershipChangeVisitor.cpp
    M clang/lib/StaticAnalyzer/Checkers/NonNullParamChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ObjCSuperDeallocChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/PthreadLockChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountChecker.h
    M clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountDiagnostics.cpp
    M clang/lib/StaticAnalyzer/Checkers/ReturnPointerRangeChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/STLAlgorithmModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/SmartPtrModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/StackAddrEscapeChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StdVariantChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/Taint.cpp
    M clang/lib/StaticAnalyzer/Checkers/TaintTesterChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/TraversalChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/UnconditionalVAArgChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/UndefBranchChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/UndefinedArraySubscriptChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/UninitializedObject/UninitializedObjectChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/UnreachableCodeChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/VAListChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/VLASizeChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/VforkChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/VirtualCallChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/cert/InvalidPtrChecker.cpp
    M clang/lib/StaticAnalyzer/Core/BugReporter.cpp
    M clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
    M clang/lib/StaticAnalyzer/Core/CallEvent.cpp
    M clang/lib/StaticAnalyzer/Core/CheckerManager.cpp
    M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp
    M clang/lib/StaticAnalyzer/Core/Environment.cpp
    M clang/lib/StaticAnalyzer/Core/ExplodedGraph.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineObjC.cpp
    M clang/lib/StaticAnalyzer/Core/LoopUnrolling.cpp
    M clang/lib/StaticAnalyzer/Core/LoopWidening.cpp
    M clang/lib/StaticAnalyzer/Core/MemRegion.cpp
    R clang/lib/StaticAnalyzer/Core/PrettyStackTraceLocationContext.h
    A clang/lib/StaticAnalyzer/Core/PrettyStackTraceStackFrame.h
    M clang/lib/StaticAnalyzer/Core/ProgramState.cpp
    M clang/lib/StaticAnalyzer/Core/RegionStore.cpp
    M clang/lib/StaticAnalyzer/Core/SValBuilder.cpp
    M clang/lib/StaticAnalyzer/Core/SymbolManager.cpp
    M clang/lib/StaticAnalyzer/Core/WorkList.cpp
    M clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
    M clang/unittests/StaticAnalyzer/BlockEntranceCallbackTest.cpp
    M clang/unittests/StaticAnalyzer/CallDescriptionTest.cpp
    M clang/unittests/StaticAnalyzer/CallEventTest.cpp
    M clang/unittests/StaticAnalyzer/FalsePositiveRefutationBRVisitorTest.cpp
    M clang/unittests/StaticAnalyzer/ParamRegionTest.cpp
    M clang/unittests/StaticAnalyzer/StoreTest.cpp
    M clang/unittests/StaticAnalyzer/SymbolReaperTest.cpp
    M clang/unittests/StaticAnalyzer/UnsignedStatDemo.cpp
    M clang/www/analyzer/checker_dev_manual.html

  Log Message:
  -----------
  [analyzer][NFC] Merge the class `LocationContext` into `StackFrame` (#198211)

This commit implements the final parts of the roadmap described in issue
#190973 by merging the class `LocationContext` into the class
`StackFrame` and replacing `LocationContext` with `StackFrame`
throughout the analyzer.


  Commit: 020b4dde0f8c26fc880f4410e7a682fff9db5311
      https://github.com/llvm/llvm-project/commit/020b4dde0f8c26fc880f4410e7a682fff9db5311
  Author: Mishal Shah <mishal_shah at apple.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M .ci/green-dragon/lldb-windows.groovy

  Log Message:
  -----------
  [CI] Add 'lld' to LLVM projects in build script for lldb windows bot (#200207)


  Commit: 839091f0f298294459495a562ae29e75c389df95
      https://github.com/llvm/llvm-project/commit/839091f0f298294459495a562ae29e75c389df95
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    A lldb/include/lldb/Host/windows/LazyImport.h
    M lldb/source/Plugins/Process/Windows/Common/NativeThreadWindows.cpp
    M lldb/source/Plugins/Process/Windows/Common/TargetThreadWindows.cpp
    A lldb/test/API/windows/thread/Makefile
    A lldb/test/API/windows/thread/TestThreadName.py
    A lldb/test/API/windows/thread/main.c

  Log Message:
  -----------
  [lldb-server][Windows] add support for thread name (#199983)


  Commit: f505ceabdd2339f078cd6886d3f52cc622abd5c9
      https://github.com/llvm/llvm-project/commit/f505ceabdd2339f078cd6886d3f52cc622abd5c9
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/include/clang/AST/DeclTemplate.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/test/CXX/temp/temp.decls/temp.spec.partial/temp.spec.partial.member/p2.cpp
    M clang/test/SemaTemplate/class-template-spec.cpp

  Log Message:
  -----------
  [clang] fix member specializations of class and variable partial specializations (#200092)

A partial specialization may be a member specialization even if there is
no corresponding primary member partial specialization.

For example:
```C++
template<class> struct X {
  template<class> struct Inner;
};
template<> template<class T>
struct X<int>::Inner<T*> {};
```

Make sure this state is represented, so that
[temp.spec.partial.member]p2 can be applied.

Split off from #199528


  Commit: b76d08a8fc46684c43728eb3c097718d0b6c00b7
      https://github.com/llvm/llvm-project/commit/b76d08a8fc46684c43728eb3c097718d0b6c00b7
  Author: Min-Yih Hsu <min.hsu at sifive.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    A llvm/lib/Target/RISCV/RISCVSchedSiFive8.td
    M llvm/lib/Target/RISCV/RISCVSchedSiFiveP400.td
    M llvm/lib/Target/RISCV/RISCVSchedSiFiveP500.td

  Log Message:
  -----------
  [RISCV] Factor out common scheduling model part between SiFive P400 and P500. NFCI (#199796)

This is the first part a patch series that tries to factor out common
bits from the SiFiveP400, SiFiveP500, and the SiFiveP600 scheduling
models.

This PR contains the related changes on the SiFiveP400 and SiFiveP500
models

NFCI.

---------

Co-authored-by: Craig Topper <craig.topper at sifive.com>


  Commit: 7e539a4497fb6f4c7a8c112514bb1b1ec54fe94f
      https://github.com/llvm/llvm-project/commit/7e539a4497fb6f4c7a8c112514bb1b1ec54fe94f
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp

  Log Message:
  -----------
  [VPlan] Thread scalar types through VPWiden(Cast)Recipe. (NFC) (#199572)

Update VPWidenRecipe and VPWidenCastRecipe to populate
VPSingleDefValue's
scalar type. For all VPWidenRecipe opcodes, the scalar type is determine
from the operands, via computeScalarTypeForInstruction (from
https://github.com/llvm/llvm-project/pull/199378).
For cast, the type must be provided explicitly.

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

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


  Commit: 934e5610ebfae936598896dc188cad331992d1af
      https://github.com/llvm/llvm-project/commit/934e5610ebfae936598896dc188cad331992d1af
  Author: Alexey Samsonov <vonosmas at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M libc/src/inttypes/strtoimax.cpp
    M libc/src/inttypes/strtoumax.cpp
    M libc/src/stdlib/strtol.cpp
    M libc/src/stdlib/strtol_l.cpp
    M libc/src/stdlib/strtoll.cpp
    M libc/src/stdlib/strtoll_l.cpp
    M libc/src/stdlib/strtoul.cpp
    M libc/src/stdlib/strtoul_l.cpp
    M libc/src/stdlib/strtoull.cpp
    M libc/src/stdlib/strtoull_l.cpp
    M libc/src/wchar/wcstol.cpp
    M libc/src/wchar/wcstoll.cpp
    M libc/src/wchar/wcstoul.cpp
    M libc/src/wchar/wcstoull.cpp
    M libc/test/src/stdlib/StrtolTest.h
    M libc/test/src/stdlib/strtoint32_test.cpp
    M libc/test/src/stdlib/strtoint64_test.cpp
    M libc/test/src/wchar/WcstolTest.h

  Log Message:
  -----------
  [libc] Don't touch str_end in strto* and wcsto* functions when base is incorrect (#200073)

Updates the behavior of `stro*` and `wcsto*` endpoints to not touch
`str_end` pointer when the provided value of `base` is incorrect and
errno is set to `EINVAL`.

`strto*` and `wcsto*` functions accept `base` as an input argument,
which can only be 0 or lie in [2,36] range. In case of invalid argument,
the functions should return 0 and set errno accordingly. Should the
"output argument" of `str_end` be updated in this case to point to the
beginning of the input string?
* C standard is unclear about it -
is says that `str` should be stored in `str_end` **if `str` is empty or
does not have the expected form** -- but there is no "expected form" for
invalid base values.
* POSIX standard explicitly mentions that for incorrect base value errno
should be set to `EINVAL` and points out that the value of `str_end`
is **unspecified** in this case.

Known implementations don't have a universal agreement about it:
* musl sets `str_end` unconditionally
* glibc doesn't do that in `EINVAL` case
* newlib doesn't do that either.

LLVM-libc used to unconditionally set `str_end` even in `EINVAL` case,
which is changed in this PR. This would not only help with portability,
but makes sense by itself - if input arguments are clearly invalid,
let's not touch output arguments either.

Assisted by: Gemini, human-reviewed


  Commit: 58e35f93069976d71ee4b1ce6215217890da781c
      https://github.com/llvm/llvm-project/commit/58e35f93069976d71ee4b1ce6215217890da781c
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/utils/gn/secondary/compiler-rt/lib/builtins/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Support/BUILD.gn

  Log Message:
  -----------
  [gn build] Port commits (#200224)

Ported commits:

- 174eb79572b3

- e1e52c9ccef3


  Commit: 218a21cee57f5eabcecdcb6d739fa8863c3ae9b9
      https://github.com/llvm/llvm-project/commit/218a21cee57f5eabcecdcb6d739fa8863c3ae9b9
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/utils/gn/build/BUILD.gn
    M llvm/utils/gn/build/toolchain/compiler.gni
    M llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysisFramework/Frontend/BUILD.gn
    M llvm/utils/gn/secondary/compiler-rt/lib/builtins/BUILD.gn
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/API/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/DataFormatters/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/Host/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/Interpreter/BUILD.gn
    M llvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/ABI/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-objcopy/BUILD.gn

  Log Message:
  -----------
  [gn build] Format all files (#200226)

$ git ls-files '*.gn' '*.gni' | xargs llvm/utils/gn/gn.py format


  Commit: f1c26bce3f30f29e9130d55a7ffb0a2a171a5652
      https://github.com/llvm/llvm-project/commit/f1c26bce3f30f29e9130d55a7ffb0a2a171a5652
  Author: Michael Jones <michaelrj at google.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/include/wctype.yaml
    M libc/src/__support/CMakeLists.txt
    M libc/src/__support/wctype/CMakeLists.txt
    M libc/src/__support/wctype/perfect_hash_map.h
    A libc/src/__support/wctype/wctype_conversion_utils.cpp
    A libc/src/__support/wctype/wctype_conversion_utils.h
    M libc/src/__support/wctype_utils.h
    M libc/src/wctype/CMakeLists.txt
    A libc/src/wctype/towlower.cpp
    A libc/src/wctype/towlower.h
    A libc/src/wctype/towupper.cpp
    A libc/src/wctype/towupper.h
    M libc/test/src/__support/wctype/CMakeLists.txt
    M libc/test/src/__support/wctype_utils_test.cpp
    M libc/test/src/wctype/CMakeLists.txt
    M libc/test/src/wctype/iswprint_test.cpp
    A libc/test/src/wctype/towlower_test.cpp
    A libc/test/src/wctype/towupper_test.cpp

  Log Message:
  -----------
  [libc] Implement towupper and towlower entrypoints (#198659)

Following up on #187670 to add public entrypoints for the wctype
conversion functions.

Assisted-by: Automated tooling, human reviewed.

---------

Co-authored-by: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>


  Commit: 3613e27b4c6f5bd79ed0bf982efd76495bdf3dd7
      https://github.com/llvm/llvm-project/commit/3613e27b4c6f5bd79ed0bf982efd76495bdf3dd7
  Author: David Meng <davidmenggx at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/lib/Sema/SemaLifetimeSafety.h
    M clang/test/Sema/warn-lifetime-safety-misplaced-lifetimebound-cross-tu.cpp
    M clang/test/Sema/warn-lifetime-safety-misplaced-lifetimebound-intra-tu.cpp
    A clang/test/Sema/warn-lifetime-safety-misplaced-lifetimebound-macro.cpp

  Log Message:
  -----------
  [LifetimeSafety] Add fix-it for misplaced lifetimebound attributes (#199149)

This patch adds a fix-it hint for
`warn_lifetime_safety_intra_tu_misplaced_lifetimebound` and
`warn_lifetime_safety_cross_tu_misplaced_lifetimebound` to the
appropriate declaration.

The fix-it attribute is emitted in the correct location, accounting for
pure virtual functions, overrides, trailing return types, and default
arguments. The message is suppressed for macros.

Resolves #198634


  Commit: 0aa9ec6a361002f54deb2a8036410455ee527950
      https://github.com/llvm/llvm-project/commit/0aa9ec6a361002f54deb2a8036410455ee527950
  Author: Min-Yih Hsu <min.hsu at sifive.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
    M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
    M llvm/test/Transforms/InstCombine/ARM/mve-narrow.ll
    A llvm/test/Transforms/InstCombine/fold-zext-of-deinterleave.ll

  Log Message:
  -----------
  [InstCombine] Fold zext into de-interleaving (factor=2) instructions (#195330)

Given the following de-interleaving shufflevectors and the consuming
zexts:
```
%f0 = shufflevector <8 x i32> %v, <4 x i32> <i32 0, i32 2, i32 4, i32 6>
%f1 = shufflevector <8 x i32> %v, <4 x i32> <i32 1, i32 3, i32 5, i32 7>
%z0 = zext <4 x i32> %f0 to <4 x i64>
%z1 = zext <4 x i32> %f1 to <4 x i64>
```
We can actually bitcast the input value, `%v`, first into a vector type
with double the element size but half the vector length, before
replacing zexts with simple arithmetics on this new bitcast:
```
%bc = bitcast <8 x i32> %v to <4 x i64>
%z0 = and <4 x i64> %bc, splat (i64 4294967295)
%z1 = lshr <4 x i64> %bc, splat (i64 32)
```
This transformation is almost always benefitial as shufflevector is
generally more expensive than normal arithmetics.


  Commit: 9092493752a25c94c7e001695e37ab0073c50f5e
      https://github.com/llvm/llvm-project/commit/9092493752a25c94c7e001695e37ab0073c50f5e
  Author: Krystian Stasiowski <sdkrystian at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/lib/Sema/SemaExprCXX.cpp
    A clang/test/CXX/expr/expr.prim/expr.prim.this/p4.cpp

  Log Message:
  -----------
  [Clang][Sema] Use correct DeclContext when checking 'this' (#163243)

As mentioned in #163089, clang crashes for the following inputs:

```cpp
struct S {
    static void f() {
        auto x = []() -> decltype(this) {};
    }
};
```

```cpp
struct S {
    static void f() {
        auto x = []() noexcept(decltype(this)()) {};
    }
};
```

The crash happens because we currently pass `CurContext` to
`isLambdaCallWithExplicitObjectParameter` in `Sema::CheckCXXThisType`
when we should be passing `DC` (returned from
`getFunctionLevelDeclContext`).

Fixes #163089.


  Commit: 72871f6fa1f1edc3df45d01b67f5093ff9d8e8b5
      https://github.com/llvm/llvm-project/commit/72871f6fa1f1edc3df45d01b67f5093ff9d8e8b5
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M libcxx/include/__tree
    M libcxx/test/std/containers/associative/multimap/multimap.modifiers/extract_key.pass.cpp
    M libcxx/test/std/containers/associative/multiset/extract_key.pass.cpp

  Log Message:
  -----------
  [libc++] Fix multi{map,set}::extract not returning the first matching element (#199703)

According to [associative.reqmts] `extract(k)` returns the _first_
element in the container with key equivalent to k.


  Commit: ab0178ce058b660d51ab44c38087c9408125f244
      https://github.com/llvm/llvm-project/commit/ab0178ce058b660d51ab44c38087c9408125f244
  Author: Alex MacLean <amaclean at nvidia.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Transforms/IPO/ExpandVariadics.cpp
    M llvm/test/CodeGen/NVPTX/convert-call-to-indirect.ll

  Log Message:
  -----------
  [ExpandVariadics] Fixup handeling of mismatched return types (#198843)

Fix an assert when RAUW tries to replace all uses with a different type.


  Commit: 743cd53e67d267daf9a1d748bfc551f69980fceb
      https://github.com/llvm/llvm-project/commit/743cd53e67d267daf9a1d748bfc551f69980fceb
  Author: Syadus Sefat <42645939+mssefat at users.noreply.github.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.sr.ll

  Log Message:
  -----------
  [AMDGPU][GlobalIsel] Add regbank support for amdgcn_cvt_scalef32_sr_f8_f16/32 (#197031)

This patch adds register bank legalization rules for amdgcn_cvt_scalef32_sr_f8_f16/32 intrinsics in the AMDGPU GlobalISel
pipeline.


  Commit: f30438b2ab6ca099584c0921f369f46693f83fbb
      https://github.com/llvm/llvm-project/commit/f30438b2ab6ca099584c0921f369f46693f83fbb
  Author: Igor Wodiany <igor.wodiany at amd.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

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

  Log Message:
  -----------
  [AMDGPU] Add an early exit in `tryMatchVOPDPairVariant` (#200148)

This allows to skip calls to `hasRAWDependency` when we know that no
VOPD pair can be encoded.


  Commit: a0150ce371d1d808e0753c954618388fbe7ef7b7
      https://github.com/llvm/llvm-project/commit/a0150ce371d1d808e0753c954618388fbe7ef7b7
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/test/Fir/array-coor-canonicalization.fir

  Log Message:
  -----------
  [flang] Canonicalize fir.array_coor for contiguous arrays. (#200106)

This patch adds new canonicalization pattern for `fir.array_coor`
sequences appearing for contiguous array slices like `dx(1:3)`,
`dx(1:3, 2)`, etc. This canonicalization helps exposing the original
rank of the array, which makes MLIR after FIRToMemRef better
optimizable.

Assisted by Cursor


  Commit: 45304733791f94bff5c9141c4c793dba3a03360f
      https://github.com/llvm/llvm-project/commit/45304733791f94bff5c9141c4c793dba3a03360f
  Author: NeKon69 <nobodqwe at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaLifetimeSafety.h
    M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
    M clang/test/Sema/warn-lifetime-safety-dangling-field.cpp
    M clang/test/Sema/warn-lifetime-safety-dangling-global.cpp
    M clang/test/Sema/warn-lifetime-safety-suggestions.cpp
    M clang/test/Sema/warn-lifetime-safety.cpp

  Log Message:
  -----------
  [LifetimeSafety] Improve dangling field/global diagnostics (#200147)

Reuses the function for getting object information that was added in
#199432

Comes as part of completing #186002

---------

Co-authored-by: Utkarsh Saxena <usx at google.com>


  Commit: 192601e8b3ad8b5f73cf27f2093fef5a8c9f4cb6
      https://github.com/llvm/llvm-project/commit/192601e8b3ad8b5f73cf27f2093fef5a8c9f4cb6
  Author: Min-Yih Hsu <min.hsu at sifive.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVSchedSiFiveP400.td
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/arithmetic.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/bitwise.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/comparison.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/conversion.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/fma.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/fp.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/mask.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/minmax.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/mul-div.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/permutation.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/reduction.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/vle-vse-vlm.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/vlse-vsse.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/vlseg-vsseg.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/vlxe-vsxe.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/zvbb.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/zvbc.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/zvkg.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/zvkned.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/zvknhb.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/zvksed.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/zvksh.s

  Log Message:
  -----------
  [RISCV] Update the ProcResource used by vsetvli in SiFiveP400 model (#199802)

The vsetvli instruction (and friends) should use the first integer pipe
(i.e. SiFiveP400IEXQ0)

Co-authored-by: Craig Topper <craig.topper at sifive.com>


  Commit: 6dec1e526f0300094dad64bcf16123d353117617
      https://github.com/llvm/llvm-project/commit/6dec1e526f0300094dad64bcf16123d353117617
  Author: David Green <david.green at arm.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/test/CodeGen/AArch64/aarch64-mull-masks.ll

  Log Message:
  -----------
  [AArch64] Add more tests for generating mull from disjoint or. NFC (#200237)


  Commit: e1d2b5b52d80440048789527e22345fef154056e
      https://github.com/llvm/llvm-project/commit/e1d2b5b52d80440048789527e22345fef154056e
  Author: Zibi Sarbinowski <zibi at ca.ibm.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/test/CodeGen/Generic/2009-03-17-LSR-APInt.ll
    M llvm/test/CodeGen/Generic/available_externally_alias.ll

  Log Message:
  -----------
  [z/OS][tests] using aliases on z/OS are not supported (#200233)

This PR follows up on #200176 by replacing XFAIL with UNSUPPORTED for
test cases that are not planned for support in the near future.


  Commit: 742b750f5e2b90c79401fa000f91248db6f80b8f
      https://github.com/llvm/llvm-project/commit/742b750f5e2b90c79401fa000f91248db6f80b8f
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M lldb/source/Plugins/Platform/MacOSX/PlatformRemoteDarwinDevice.cpp

  Log Message:
  -----------
  [lldb][Darwin] Save "most recent SDK root" in local var (#200095)

In PlatformRemoteDarwinDevice::GetSharedModule we have an array of "sdk
root" directories (aka DeviceSupport directories) for a remote device,
which contain all of the system shared libraries on the local mac. We
may have 6 SDK Root directories for different OS builds. We try to
identify the correct one for the target based on version number, but
when we find a file with a matching UUID in one directory we set that as
the "most recently successful" directory, and start our searches with
that one. Then we fall back to searching all the other directories.

Since adding parallel module loading, because this method doesn't lock
access to the "most recently successful directory"
(m_last_module_sdk_idx), we could check the m_last_module_sdk_idx
directory, and then if that was unsuccessful, check all other entries !=
m_last_module_sdk_idx. But m_last_module_sdk_idx could mutate via
another thread, and we skip one of our SDK Root directories. Resulting
in reading a binary out of memory, when we had a local copy of it.

This PR reads the value of m_last_module_sdk_idx into a local const, and
uses the same local index to check for it -- and if not found, to skip
that directory when iterating over all directories again, instead of
adding locking around access to this.

The array itself is created when the Platform is initialized and not
mutated when parallel-binary-loading, so there are no concerns with
that.

rdar://178096480


  Commit: a0ac7521342567573da5b1e47c94f6199faada39
      https://github.com/llvm/llvm-project/commit/a0ac7521342567573da5b1e47c94f6199faada39
  Author: Christopher Ferris <cferris1000 at users.noreply.github.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/combined.h
    M compiler-rt/lib/scudo/standalone/include/scudo/interface.h
    M compiler-rt/lib/scudo/standalone/memtag.h
    M compiler-rt/lib/scudo/standalone/primary32.h
    M compiler-rt/lib/scudo/standalone/primary64.h
    M compiler-rt/lib/scudo/standalone/tests/CMakeLists.txt
    A compiler-rt/lib/scudo/standalone/tests/error_info_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/primary_test.cpp
    M compiler-rt/lib/scudo/standalone/wrappers_c.cpp

  Log Message:
  -----------
  [scudo] Create a non-static getErrorInfo function. (#199770)

Create a getErrorInfo function that operates on the Allocator and
doesn't require passing in all of the extra information.

Add interface function __scudo_get_fault_error_info that calls this new
function.

Add all needed functions to support the new getErrorInfo.

This is being added to replace the static version from Android that
required linking in a copy of libscudo to use. This new version will be
used directly from libc.


  Commit: 9c640504466ab0c7cd2850fd482092b72a01bc9e
      https://github.com/llvm/llvm-project/commit/9c640504466ab0c7cd2850fd482092b72a01bc9e
  Author: David Green <david.green at arm.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/test/Analysis/CostModel/AArch64/arith-bf16.ll
    M llvm/test/CodeGen/AArch64/fabs.ll
    M llvm/test/CodeGen/AArch64/fixed-length-bf16-arith.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfclamp.ll

  Log Message:
  -----------
  [AArch64] Fixup f16->bf16 in intrinsic defs. NFC (#200244)


  Commit: 09ad10052903ad38aa770642ae5c6a7115c92e5e
      https://github.com/llvm/llvm-project/commit/09ad10052903ad38aa770642ae5c6a7115c92e5e
  Author: Nerixyz <nerixdev at outlook.de>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilderClang.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilderClang.h
    M lldb/source/Plugins/SymbolFile/NativePDB/PdbUtil.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/PdbUtil.h
    A lldb/test/Shell/SymbolFile/NativePDB/ast-lambdas-msvc.cpp
    A lldb/test/Shell/SymbolFile/NativePDB/ast-lambdas.cpp

  Log Message:
  -----------
  [lldb][NativePDB] Use decl context from a method's class (#199221)

When we look up the parent decl context for a method, we used to look
for that by name. For "regular" types that works well.
Say, we have a `struct ns::Foo` and `ns::Foo::bar`. We'd search for
`ns::Foo` and use its context.

For special types - mainly lambdas - this doesn't work. They can't be
found by looking for the name we get from the function symbol. That name
won't be in the TPI hash table we use.

I'm not fully sure under which name they're in that table. For example,
if we get the name `Foo::fun::<lambda_1>::operator()` from the function
symbol, we'd look for `Foo::fun::<lambda_1>`. This fails. A class with
this name is actually present, but it has a different unique name. Its
unique name demangles to `` `public: void __cdecl
Foo::fun(void)'::`1'::<lambda_1> `` which doesn't match what we searched
for. That might be the issue.

If we can't find a class/struct, we create namespaces. So before, we
created namespaces for each segment and added a regular function inside.
This was wrong for methods.

However, we can tell that a function is a method by looking at its
function type. And we know the parent class from this type. With this PR
that parent class is used if it's available.


  Commit: 184a8f94757c35deecf7a7323ca3ce73c9f228b7
      https://github.com/llvm/llvm-project/commit/184a8f94757c35deecf7a7323ca3ce73c9f228b7
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M libcxx/include/__iterator/static_bounded_iter.h
    M libcxx/include/__iterator/wrap_iter.h
    A libcxx/test/libcxx/containers/sequences/array/nodiscard.iterator.verify.cpp

  Log Message:
  -----------
  [libc++] Applied `[[nodiscard]]` to `array::iterator` (#198492)

Towards #172124


  Commit: 5f49cff125e2adb255f2d61e8589ae761d5b4826
      https://github.com/llvm/llvm-project/commit/5f49cff125e2adb255f2d61e8589ae761d5b4826
  Author: David Green <david.green at arm.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    A llvm/test/CodeGen/AArch64/and_xor_shift.ll

  Log Message:
  -----------
  [AArch64] Add tests for and+xor+shift. NFC (#200250)

This adds test coverage for #199813. Hopefully this will prevent gisel
from
getting worse.


  Commit: d69c732e6e71bf80ad7336ae2a5834ee74593c28
      https://github.com/llvm/llvm-project/commit/d69c732e6e71bf80ad7336ae2a5834ee74593c28
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M .github/workflows/hlsl-test-all.yaml

  Log Message:
  -----------
  CI: ignore errors on HLSL Publish step (#200240)

This step seems to fail consistently on the remote endpoint for large
PRs.

Example:
https://github.com/llvm/llvm-project/actions/runs/26589632748/job/78344693871?pr=199528


  Commit: 060ef6a90c39b4573c9eba2757be2cbf6ec22796
      https://github.com/llvm/llvm-project/commit/060ef6a90c39b4573c9eba2757be2cbf6ec22796
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/utils/lit/lit/LitConfig.py
    A llvm/utils/lit/tests/Inputs/lit-config-readonly/lit.cfg
    A llvm/utils/lit/tests/lit-config-readonly.py

  Log Message:
  -----------
  [lit] Enforce read-only behavior on lit_config.maxIndividualTestTime (#198193)

Enforce read-only behavior on lit_config.maxIndividualTestTime after
initialization to prevent test suites from modifying it globally, and
add a core lit test to verify this behavior.

PR Stack:
* https://github.com/llvm/llvm-project/pull/198192
* https://github.com/llvm/llvm-project/pull/199886
* https://github.com/llvm/llvm-project/pull/199996
* ➤ https://github.com/llvm/llvm-project/pull/198193

Assisted-by: Gemini


  Commit: 4df74706ab477798263cade8b742bba48d0b172f
      https://github.com/llvm/llvm-project/commit/4df74706ab477798263cade8b742bba48d0b172f
  Author: xys-syx <xuyuansui at outlook.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M flang/lib/Optimizer/Builder/CUDAIntrinsicCall.cpp
    M flang/test/Lower/CUDA/cuda-device-proc.cuf
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
    M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
    M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
    M mlir/test/Dialect/LLVMIR/nvvm.mlir
    M mlir/test/Target/LLVMIR/nvvm/barrier.mlir
    M mlir/test/Target/LLVMIR/nvvmir-invalid.mlir
    M mlir/test/python/dialects/nvvm.py

  Log Message:
  -----------
  [MLIR][NVVM] Split nvvm.barrier into nvvm.barrier and nvvm.barrier.reduction (#199404)


  Commit: f089890d5e200a1811d69842aa71fa39e7c33482
      https://github.com/llvm/llvm-project/commit/f089890d5e200a1811d69842aa71fa39e7c33482
  Author: Berkay Sahin <berkaysahindev at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-parameters.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-values.cpp
    M clang/lib/Analysis/ExprMutationAnalyzer.cpp
    M clang/unittests/Analysis/ExprMutationAnalyzerTest.cpp

  Log Message:
  -----------
  [clang-tidy] Fixes false positive with a non-const method on a pointer (#188844)

Fixes

#56777
#58098
#64955

Non-const member functions don't mutate the pointer but the pointee.
Pointee mutations follow different path within the analyzer, so should
not be effected.

Edit to old tests were needed. Adds a dedicated tests besides those.


  Commit: 3769bd61d0b3e555c45a9b5de919f0f166355fe8
      https://github.com/llvm/llvm-project/commit/3769bd61d0b3e555c45a9b5de919f0f166355fe8
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

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

  Log Message:
  -----------
  [RISCV] Use std::optional::operator* instead of value(). NFC (#200235)


  Commit: 3df7e3707c2a3673a25e2fa8147d3cb9ba0aad0e
      https://github.com/llvm/llvm-project/commit/3df7e3707c2a3673a25e2fa8147d3cb9ba0aad0e
  Author: vporpo <vasileios.porpodas at amd.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
    M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp

  Log Message:
  -----------
  [SandboxVec][DAG] Implement missing API for successors (#195301)

This patch implements the missing API for accessing the DAG successors.
This includes the successor iterators and DAG Node member functions like
succs(). These are mirroring the existing predecessor API.


  Commit: e7ea47d98e7e1b38496846d37ca06d1f1562f54b
      https://github.com/llvm/llvm-project/commit/e7ea47d98e7e1b38496846d37ca06d1f1562f54b
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M .github/workflows/premerge.yaml

  Log Message:
  -----------
  worflows/premerge: Remove template expansion (#200068)

https://github.com/llvm/llvm-project/security/code-scanning/1686
https://github.com/llvm/llvm-project/security/code-scanning/1687
https://github.com/llvm/llvm-project/security/code-scanning/1688
https://github.com/llvm/llvm-project/security/code-scanning/1689


  Commit: 46c8c1e1320e5524700f09998490a5fd7216917b
      https://github.com/llvm/llvm-project/commit/46c8c1e1320e5524700f09998490a5fd7216917b
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
    M llvm/test/Transforms/AggressiveInstCombine/popcount.ll

  Log Message:
  -----------
  [AggressiveInstCombine] Factor common code out of tryToRecognizePopCount and tryToRecognizePopCount2n3. (#199440)

Both of these patterns end with code to compute the popcount of each
byte.

This isn't NFC because tryToRecognizePopCount2n3 handled an alternate
pattern for one of the steps and tryToRecognizePopCount used
MaskedValueIsZero. The shared code applies these differences to both
cases. New tests have been added.

Assisted-by: Claude Sonnet 4.6

---------

Co-authored-by: Min-Yih Hsu <min at myhsu.dev>


  Commit: 63da2695b1a3c8e4f42d2e1d63faa1eb412886ec
      https://github.com/llvm/llvm-project/commit/63da2695b1a3c8e4f42d2e1d63faa1eb412886ec
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

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

  Log Message:
  -----------
  [VPlan] Strip IR-PatternMatch include in VPlanAnalysis (NFC) (#200186)

To reduce confusion.


  Commit: 42010078e75053f09e46a8d58033fa768c57961f
      https://github.com/llvm/llvm-project/commit/42010078e75053f09e46a8d58033fa768c57961f
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
    M llvm/test/Transforms/MemCpyOpt/memset-memcpy-redundant-memset.ll

  Log Message:
  -----------
  [MemCpyOpt] Keep volatile memset before memcpy (#200100)


  Commit: 810e67f50d8f149c0c88cbda1707b52b7ae9936f
      https://github.com/llvm/llvm-project/commit/810e67f50d8f149c0c88cbda1707b52b7ae9936f
  Author: Carlos Seo <carlos.seo at linaro.org>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M flang/lib/Lower/OpenMP/Clauses.cpp
    A flang/test/Lower/OpenMP/Todo/ordered-depend.f90
    M llvm/include/llvm/Frontend/OpenMP/ClauseT.h

  Log Message:
  -----------
  [flang][OpenMP] Fix crash on standalone ordered with depend(source|sink:) (#200193)

A standalone ordered construct using the pre-OpenMP 5.2 depend(source) /
depend(sink:) spelling crashed flang with an assertion failure in
buildConstructQueue ("Construct decomposition failed"), or emitted a
TODO when assertions were disabled.

These dependence types are valid on ordered since OpenMP 4.5, but flang
represents them internally as a doacross clause, which construct
decomposition only accepts from OpenMP 5.2. As a result, decomposition
produced an empty output and tripped the assertion at every OpenMP
version below 5.2 (including the default 3.1).

Lowering of the standalone ordered directive is not implemented yet
(genOrderedOp only emits a "not yet implemented" message and ignores the
construct queue). Build the construct queue only for the
block-associated variant and emit the TODO directly for the standalone
directive, so the decomposition that would otherwise assert is no longer
reached.

Note: at versions below 4.5 the construct is technically invalid, but
flang's semantics accepts it silently. Making semantics emit a "requires
OpenMP 4.5" error/warning is probably a good idea.

Fixes #198972


  Commit: b2edcf9fb336b06f624d7c58a04c6dcf3cf74a54
      https://github.com/llvm/llvm-project/commit/b2edcf9fb336b06f624d7c58a04c6dcf3cf74a54
  Author: Johannes Doerfert <jdoerfert.llvm at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/IPO/Instrumentor.h
    M llvm/lib/Transforms/IPO/Instrumentor.cpp
    M llvm/test/Instrumentation/Instrumentor/alloca_and_function.ll
    M llvm/test/Instrumentation/Instrumentor/default_config.json
    M llvm/test/Instrumentation/Instrumentor/module_and_globals.ll

  Log Message:
  -----------
  [Instrumentor] Introduce BasePointerIO to communicate base pointer information (#197607)

Loads, stores, and later probably calls, can request a base pointer info
object from the user runtime. This object is queried right after the
base pointer of the operation is defined, and then passed to the
pre/post runtime calls of the loads and stores. This allows users to
inspect pointers early and once, but provide the analysis results to all
operations that might be executed in loops. A potential use case is to
lookup the size and start of the underlying object and then provide
those to the access runtime calls for in-bounds checking.


  Commit: cdb606c37c8f08783aad6d4cc73adbc7d199b1e2
      https://github.com/llvm/llvm-project/commit/cdb606c37c8f08783aad6d4cc73adbc7d199b1e2
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

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

  Log Message:
  -----------
  [VPlan] Predicate SCEVs in getSCEVExprForVPValue (NFC) (#199994)

Although the change could be functional in theory, it is very difficult
to find a test case.


  Commit: b41aef8b809c255814801d658138b98e828012b1
      https://github.com/llvm/llvm-project/commit/b41aef8b809c255814801d658138b98e828012b1
  Author: adams381 <adams at nvidia.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    A clang/test/CIR/CodeGen/vector-binop-overflow.cpp

  Log Message:
  -----------
  [CIR] Omit nsw/nuw on integer vector binops (#199123)

CIRGen was attaching `nsw` to `cir.add` on `!cir.vector` integer types
because the signed-overflow path keys off `compType` (the element type,
still `!s32i`), while the verifier only allows `nsw`/`nuw` on scalar
`!cir.int` results.  That mismatch showed up 144 times in the libcxx
CIR sweep on `std::experimental::simd` — `experimental/__simd/vec_ext.h`
increment/decrement (`__data + 1` / `__data - 1`).

Classic CodeGen never enters the signed-overflow block for vector
computation types; CIR now skips the scalar `nsw`/`nuw` path when the
MLIR operand is an integer vector, and uses `getAs<VectorType>()` for
`compType` so typedef-wrapped GCC vectors resolve the element type
correctly.

Regression test `vector-binop-overflow.cpp` checks scalar add still gets
`nsw` and vector add/sub/mul do not (CIR + LLVM + OGCG).


  Commit: 5c219c86b6ffb8adb284e6c439ad1f78f5c10803
      https://github.com/llvm/llvm-project/commit/5c219c86b6ffb8adb284e6c439ad1f78f5c10803
  Author: Johannes Doerfert <jdoerfert.llvm at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/IPO/Instrumentor.h
    M llvm/lib/Transforms/IPO/Instrumentor.cpp
    A llvm/test/Instrumentation/Instrumentor/cast.ll
    A llvm/test/Instrumentation/Instrumentor/cast_config.json
    A llvm/test/Instrumentation/Instrumentor/cast_crash.ll
    A llvm/test/Instrumentation/Instrumentor/cast_filter.ll
    A llvm/test/Instrumentation/Instrumentor/cast_filter_config.json
    M llvm/test/Instrumentation/Instrumentor/default_config.json

  Log Message:
  -----------
  [Instrumentor] Add cast instruction instrumentation support (#198224)

We now allow to have instrumentation opportunities for many instructions
(=opcodes) to bundle common classes together. Users can use filters on
the opcode, type-id, and size to statically select what they are
interested in.

Coded with Claude.


  Commit: 23776bd325ec951781923a638ad632e4126b30ea
      https://github.com/llvm/llvm-project/commit/23776bd325ec951781923a638ad632e4126b30ea
  Author: Vedran Miletić <vedran at miletic.net>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/CMakeLists.txt

  Log Message:
  -----------
  [llvm] Fix LLVMOrcTargetProcess symbol export with MinGW/Cygwin shared libs (#174266)

When any symbol in a DLL carries dllexport, the MinGW/Cygwin linker
switches to exclusive-export mode and omits all other symbols from the
export table. LLVMOrcTargetProcess uses LLVM_ALWAYS_EXPORT (__declspec(
dllexport)) so its symbols can be found via GetProcAddress from a
statically linked executable, which triggers this behaviour.

Add --export-all-symbols to LLVMOrcTargetProcess for MinGW/Cygwin
BUILD_SHARED_LIBS builds to restore full symbol export.


  Commit: 2f98f171c2983c2fe875e0f597128a5c1de2165f
      https://github.com/llvm/llvm-project/commit/2f98f171c2983c2fe875e0f597128a5c1de2165f
  Author: Maryam Moghadas <maryammo at ca.ibm.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

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

  Log Message:
  -----------
  [PowerPC] Fix MSan failure in LowerBUILD_VECTOR (#200260)

Initialize SplatBitSize to fix use-of-uninitialized-value error detected
by MemorySanitizer in ba7d42b.


  Commit: 0d1e9a6177d9ae85d2822fd98bffe55f86e38875
      https://github.com/llvm/llvm-project/commit/0d1e9a6177d9ae85d2822fd98bffe55f86e38875
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

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

  Log Message:
  -----------
  [X86][TTI] Retrieve address space from intrinsic info. (#200265)

Instead of using the passed Ptr argument to get the type, to retrieve
the address space, directly retrieve it from MICA.

This fixes a crash when Ptr is nullptr, as after #200049.

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


  Commit: 642bbbaf57ed1d0ce6b7871a8d3dc1386e95926b
      https://github.com/llvm/llvm-project/commit/642bbbaf57ed1d0ce6b7871a8d3dc1386e95926b
  Author: Dhruva Chakrabarti <Dhruva.Chakrabarti at amd.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/CodeGen/InlineSpiller.cpp
    M llvm/lib/CodeGen/LiveRangeEdit.cpp

  Log Message:
  -----------
  [2/3][RegAlloc][LiveRegMatrix] Fix inconsistency when fold creates a CopyMI (#197776)

When TargetInstrInfo::foldMemoryOperand produces a side-effect CopyMI,
the copy destination vreg's LiveInterval is extended via addSegment. If
that vreg is already assigned in LiveRegMatrix, the matrix becomes
inconsistent because it still holds the old (smaller) interval.

Fix this in two places:

- InlineSpiller::foldMemoryOperand: unassign the vreg from the matrix
before addSegment, reassign after, so the matrix reflects the updated
interval.

- LiveRangeEdit::foldAsLoad: notify the delegate via
LRE_WillShrinkVirtReg before addSegment.

LIT test exercised by this patch (i.e. if I introduce consistency
verification as in https://github.com/llvm/llvm-project/pull/197778 but
not this patch, the following test fails):
CodeGen/X86/apx/pr191368.ll

Assisted-by: Cursor/Claude Opus


  Commit: 01cfbaabef6cb59a1a6eb870bf5f48ac2e747118
      https://github.com/llvm/llvm-project/commit/01cfbaabef6cb59a1a6eb870bf5f48ac2e747118
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M .github/workflows/release-binaries-all.yml
    M .github/workflows/release-binaries.yml
    M .github/workflows/release-sources.yml
    M .github/workflows/release-tasks.yml
    M .github/workflows/upload-release-artifact/action.yml

  Log Message:
  -----------
  workflows/upload-release-artifact: Use require-release-manager action (#195374)

This removes the final use of RELEASE_TASKS_USER_TOKEN secret. It
required plumbing the secrets in thrugh several levels of workflow
calls, which is not ideal, but I don't see a better way to do this.


  Commit: f7f3d9d0aea8588ed1aff033978370a5bdf97029
      https://github.com/llvm/llvm-project/commit/f7f3d9d0aea8588ed1aff033978370a5bdf97029
  Author: Nerixyz <nerixdev at outlook.de>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M lldb/test/API/windows/thread/main.c

  Log Message:
  -----------
  [lldb][Windows] Move `processthreadsapi.h` include (#200278)

`processthreadsapi.h` needs to be included after `windows.h`.
clang-format needs to be disabled here to avoid sorting the includes.

Fixes the test failure from
https://github.com/llvm/llvm-project/pull/199983#issuecomment-4567633271.


  Commit: 075e16f74d7b265a22af73c4fcb5a6bd4b186543
      https://github.com/llvm/llvm-project/commit/075e16f74d7b265a22af73c4fcb5a6bd4b186543
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    M clang/test/CIR/CodeGen/vla.c

  Log Message:
  -----------
  [CIR] Correctly emit the size expr of a VLA with a 'bool' size. (#200066)

This came up in a test suite, the frontend considers 'bool' to be
integral enough to use as a bounds, so bool makes it through to the VLA
codegen. This patch adds a new cast function that takes a bool or int
type and casts it to an int (as this is a pretty useful task, that I
    believe I've seen before).


  Commit: 927c51d2434e9cb094742e77289b35dad88383c5
      https://github.com/llvm/llvm-project/commit/927c51d2434e9cb094742e77289b35dad88383c5
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M lldb/source/Commands/CommandObjectFrame.cpp
    M lldb/test/API/commands/frame/recognizer/TestFrameRecognizer.py

  Log Message:
  -----------
  [lldb] Improve frame variable handling of recognizer arguments (#200084)

Fixes two bugs. The bug which prompted this change is that `frame
variable name` would
print all regcognizer arguments, even though only "name" was requested.

While making a test for the first bug, I found that `frame variable
recognizer_arg` will
both successfully print the variable, and also report a false positive
error:

```
error: <user expression>:1:1: use of undeclared identifier 'recognizer_arg'
      1 | recognizer_arg
```

This change fixes both bugs, including when using `--regex`.


  Commit: 58dff928280641f764fd08e421ee8a707f586f2d
      https://github.com/llvm/llvm-project/commit/58dff928280641f764fd08e421ee8a707f586f2d
  Author: Zibi Sarbinowski <zibi at ca.ibm.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    A llvm/test/tools/llvm-offload-binary/llvm-offload-binary-malformed.ll
    M llvm/test/tools/llvm-offload-binary/llvm-offload-binary.ll

  Log Message:
  -----------
  [llvm-offload-binary] Fix test failures on z/OS by splitting malformed tests (#200258)

## Summary
This PR fixes test failures in `llvm-offload-binary.ll` on z/OS (and
potentially other EBCDIC platforms) by splitting the malformed file
tests into a separate test file.

## Problem
The test was failing on z/OS because it uses `printf` with octal escape
sequences to create malformed binary test data:
```bash
printf "\020\377\020\255\012" > %t9
```

On z/OS, the shell's I/O redirection performs automatic EBCDIC-to-ASCII
translation on the output from `printf`. This means the binary data
written to the file gets translated, resulting in different bytes than
intended. The malformed test data is therefore not created correctly,
causing `llvm-offload-binary` to fail in unexpected ways or not produce
the expected error messages.

## Benefits of this solution
- Main test file now passes on all platforms including z/OS
- Malformed file error handling tests are preserved for ASCII-based
systems
- Clear separation of concerns between standard tests and
platform-specific tests
- No loss of test coverage on supported platforms


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

  Changed paths:
    M flang/lib/Optimizer/Analysis/ArraySectionAnalyzer.cpp
    A flang/test/HLFIR/order_assignments/where-allocatable-base.f90

  Log Message:
  -----------
  [flang] Fix WHERE self-updates on allocatable array sections (#200281)

Teach ArraySectionAnalyzer to use the scheduler's value-equivalence
callback
when comparing hlfir.designate base memrefs. This lets HLFIR ordered
assignment
lowering recognize allocatable WHERE self-updates as aligned even when
the LHS
and RHS use distinct descriptor loads.

This avoids generating full-sized RHS temporaries for these masked
self-updates, preventing device heap exhaustion while preserving
parallel
kernel generation. Add a regression test for allocatable WHERE section
scheduling.


  Commit: 7e200ebdd08cc5d95016c02636abe6e93bb581d4
      https://github.com/llvm/llvm-project/commit/7e200ebdd08cc5d95016c02636abe6e93bb581d4
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
    M llvm/test/Transforms/AggressiveInstCombine/popcount.ll

  Log Message:
  -----------
  [AggressiveInstCombine] Support Len==8 in tryToRecognizePopCount2n3. (#199551)

Len==8 can use matchPopCountBytes to do it's matching.


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

  Changed paths:
    M llvm/docs/TestingGuide.rst

  Log Message:
  -----------
  [Docs] Improve Documentation on Writing IR Test Cases (#200259)

This adds documentation for a couple common review comments I've seen:
1. Extraneous target triples/data-layouts
2. Tests not getting put in the right folder (especially when they
require a target and are not put in the target-specific subfolder)
3. Extraneous FileCheck prefixes.


  Commit: 75fb8e47f6170d66c72311b9629b19c02e97841b
      https://github.com/llvm/llvm-project/commit/75fb8e47f6170d66c72311b9629b19c02e97841b
  Author: Alan Zhao <ayzhao at google.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M lld/ELF/Arch/X86_64.cpp

  Log Message:
  -----------
  [lld][nfc] Fix spelling (#200279)


  Commit: 8d8ebb1cb1b552423f6dff74a0887943d36dce08
      https://github.com/llvm/llvm-project/commit/8d8ebb1cb1b552423f6dff74a0887943d36dce08
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/revec-fma-vectorize.ll

  Log Message:
  -----------
  [SLP][REVEC][NFC]Add a test with the missed fma vectorization, NFC



Reviewers: 

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


  Commit: a853917bbf7b88e5b7e6cf61d0e724d68e0e1df1
      https://github.com/llvm/llvm-project/commit/a853917bbf7b88e5b7e6cf61d0e724d68e0e1df1
  Author: Ethan Luis McDonough <ethanluismcdonough at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/IPO/InstrumentorUtils.h

  Log Message:
  -----------
  [Instrumentor] Fix nondeterminism in indirect argument alloca usage  (#200289)

Co-authored-by: Kevin Sala Penades <salapenades1 at llnl.gov>


  Commit: 3f140498c2d7ad67226c14d9d2cf5caf1442cceb
      https://github.com/llvm/llvm-project/commit/3f140498c2d7ad67226c14d9d2cf5caf1442cceb
  Author: Johannes Doerfert <jdoerfert.llvm at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/IPO/Instrumentor.h
    M llvm/include/llvm/Transforms/IPO/InstrumentorStubPrinter.h
    M llvm/lib/Transforms/IPO/Instrumentor.cpp
    M llvm/lib/Transforms/IPO/InstrumentorStubPrinter.cpp
    R llvm/test/Instrumentation/Instrumentor/default_rt
    A llvm/test/Instrumentation/Instrumentor/default_rt.c
    A llvm/test/Instrumentation/Instrumentor/default_rt.h
    M llvm/test/Instrumentation/Instrumentor/generate_rt.ll
    A llvm/test/Instrumentation/Instrumentor/lit.local.cfg
    M llvm/test/Instrumentation/Instrumentor/rt_config.json

  Log Message:
  -----------
  [Instrumentor] Improve stub printer (for C/C++ and value packs) (#198366)

The stub printer now emits a helper header to deal with value packs (in
C and C++). We also make the files C/C++ compatible and use the proper
format strings for int32_t and int64_t.


  Commit: 843d4a6a27a06527122d3c5fa1a3f85fd8d5fd1b
      https://github.com/llvm/llvm-project/commit/843d4a6a27a06527122d3c5fa1a3f85fd8d5fd1b
  Author: Ethan Luis McDonough <ethanluismcdonough at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/IPO/Instrumentor.h
    M llvm/lib/Transforms/IPO/Instrumentor.cpp
    M llvm/test/Instrumentation/Instrumentor/default_config.json
    M llvm/test/Instrumentation/Instrumentor/module_and_globals.ll
    A llvm/test/Instrumentation/Instrumentor/operations.json
    A llvm/test/Instrumentation/Instrumentor/operations.ll

  Log Message:
  -----------
  [Instrumentor] Add numeric operation instruction instrumentation support (#199749)

This patch introduces a new instrumentation opportunity for numeric
operations.


  Commit: 4910eda2a04e8532e434acb140c692e1c4da319c
      https://github.com/llvm/llvm-project/commit/4910eda2a04e8532e434acb140c692e1c4da319c
  Author: Florian Mayer <fmayer at google.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M clang/lib/Analysis/FlowSensitive/Models/UncheckedStatusOrAccessModel.cpp
    M clang/unittests/Analysis/FlowSensitive/MockHeaders.cpp
    M clang/unittests/Analysis/FlowSensitive/UncheckedStatusOrAccessModelTestFixture.cpp

  Log Message:
  -----------
  [FlowSensitive] [StatusOr] Support ABSL_RETURN_IF_ERROR (#200287)

This was recently introduced in absl


  Commit: 7964b66bf55d53f7a528a8153c005bee0614a3d7
      https://github.com/llvm/llvm-project/commit/7964b66bf55d53f7a528a8153c005bee0614a3d7
  Author: Ethan Luis McDonough <ethanluismcdonough at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/include/llvm/CMakeLists.txt
    A llvm/include/llvm/Transforms/IPO/InstrumentorRuntimeHelper.h
    A llvm/include/llvm/Transforms/IPO/InstrumentorVariables.inc.in
    M llvm/lib/Transforms/IPO/InstrumentorStubPrinter.cpp
    M llvm/test/Instrumentation/Instrumentor/default_rt.h

  Log Message:
  -----------
  [Instrumentor] Move instrumentor stub library into its own header file (#199329)

This patch depends on #198366. It moves the instrumentor runtime helper
header into its own file and makes it accessible as a string value to
the instrumentor pass.


  Commit: 5047ae21b426452b3ee753574be45404d15111cb
      https://github.com/llvm/llvm-project/commit/5047ae21b426452b3ee753574be45404d15111cb
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M llvm/docs/DeveloperPolicy.rst

  Log Message:
  -----------
  [Docs] Note change to Maintainers.md in DeveloperPolicy (#200315)

This was brought up in a Discord discussion around adding a new target.
Update the documentation to mention Maintainers.md everywhere and remove
references to Maintainers.rst where the former is exclusive.

The only remaining usage of Maintainers.rst is in clang-tools-extra and
we should probably just rewrite it in Markdown especially given it seems
like there is conesnsus to move away from ReST entirely, but we can do
that later.


  Commit: 7672a992182dee9ddaabe538bd3fd61a91d854b8
      https://github.com/llvm/llvm-project/commit/7672a992182dee9ddaabe538bd3fd61a91d854b8
  Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

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

  Log Message:
  -----------
  [Bazel] Fixes 7964b66 (#200316)

This fixes 7964b66bf55d53f7a528a8153c005bee0614a3d7.

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


  Commit: 4c33844b4b560f24b2a3a0cc689d73510cb01ad5
      https://github.com/llvm/llvm-project/commit/4c33844b4b560f24b2a3a0cc689d73510cb01ad5
  Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

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

  Log Message:
  -----------
  [PGO][HIP] Skip ROCm interceptor in profile-only compiler-rt builds (#200111)

PR #177665 made `libclang_rt.profile.a` merge `RTInterception` and
`sanitizer_common` object libs to support the `hipModuleLoad*` host
interceptor added in `InstrProfilingPlatformROCm.cpp`. Those object-lib
targets are only created when `COMPILER_RT_BUILD_SANITIZERS / _MEMPROF /
_XRAY / _CTX_PROFILE` is enabled (see `compiler-rt/lib/CMakeLists.txt`),
so a profile-only configuration fails at configure time:

```
CMake Error at cmake/Modules/AddCompilerRT.cmake:365 (add_library):
  Error evaluating generator expression:
    $<TARGET_OBJECTS:RTInterception.x86_64>
  Objects of target "RTInterception.x86_64" referenced but no such target
  exists.
Call Stack (most recent call first):
  lib/profile/CMakeLists.txt:233 (add_compiler_rt_runtime)
```

Fix: gate the object-lib merge on the `RTInterception.<arch>` /
`RTSanitizerCommon*.<arch>` targets actually existing, and drop
`InstrProfilingPlatformROCm.cpp` from `PROFILE_SOURCES` in that case so
the static archive stays self-contained. The host-side hook
`__llvm_profile_hip_collect_device_data` is already declared weak in
`InstrProfilingFile.c` (PR #200101), so its absence is fine at link
time.

Verified:
- Profile-only standalone compiler-rt build
(`-DCOMPILER_RT_BUILD_SANITIZERS=OFF -DCOMPILER_RT_BUILD_MEMPROF=OFF
-DCOMPILER_RT_BUILD_XRAY=OFF -DCOMPILER_RT_BUILD_CTX_PROFILE=OFF
-DCOMPILER_RT_BUILD_PROFILE=ON`) now configures and links cleanly.
- Default runtimes build still merges the object libs and produces the
interceptor; `check-profile` 134/134 pass.


  Commit: 3cb8e7215f2d3aa2849813320d3d337859242388
      https://github.com/llvm/llvm-project/commit/3cb8e7215f2d3aa2849813320d3d337859242388
  Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUCoExecSchedStrategy.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUCoExecSchedStrategy.h

  Log Message:
  -----------
  [AMDGPU] Address follow-up concerns from 189121 (#192322)

Addressing some comments missed in
https://github.com/llvm/llvm-project/pull/185726


  Commit: 561c528b5e1900d41aeef506dfb632a66b3b9d51
      https://github.com/llvm/llvm-project/commit/561c528b5e1900d41aeef506dfb632a66b3b9d51
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/SDPatternMatch.h
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/vp-combine-reverse-load.ll
    M llvm/test/CodeGen/RISCV/rvv/vp-combine-store-reverse.ll

  Log Message:
  -----------
  [RISCV] Extend vp.reverse vp.load/vp.store combine to non-VP splice + reverse (#180907)

As part of #172961, we can replace vp.reverse with
vector.splice.right(reverse(X), poison, EVL). This extends the existing
vp.reverse(vp.load) -> vp.strided.load stride=-1 and
vp.store(vp.reverse) -> vp.strided.store stride=-1 combines to also
handle the splice form.

It adds a pattern match helper to match both vp.reverse and
vector.splice.right. If vp.reverse is removed in future, then this
pattern match helper can be removed.


  Commit: 01a92098491a9d94f84149b92a5a522b1725668b
      https://github.com/llvm/llvm-project/commit/01a92098491a9d94f84149b92a5a522b1725668b
  Author: Chaitanya <Krishna.Sankisa at amd.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAMDGPU.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h

  Log Message:
  -----------
  [CIR] Add emitBuiltinWithOneOverloadedType helper (#199518)

Port `emitBuiltinWithOneOverloadedType<N>` from classic
CodeGen(`CGBuiltin.h`) to `CIRGenFunction` so the common pattern "emit N
scalar operands and call an LLVM intrinsic whose return type matches the
first operand" can be written as a one-liner across all targets.

Used it to simplify a few existing AMDGPU builtin lowerings (`div_fmas`,
`ds_swizzle`, `readlane`, `readfirstlane`).


  Commit: b378c7162613afdc982e8a2e6ec478066ea04492
      https://github.com/llvm/llvm-project/commit/b378c7162613afdc982e8a2e6ec478066ea04492
  Author: Jin Huang <jinhuang1102 at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/CodeGen/ExpandIRInsts.cpp
    M llvm/test/CodeGen/AArch64/fcvt-i256.ll
    M llvm/test/CodeGen/AMDGPU/itofp.i128.bf.ll
    M llvm/test/CodeGen/AMDGPU/itofp.i128.ll
    M llvm/test/CodeGen/RISCV/bitint-fp-conv-200.ll
    M llvm/test/Transforms/ExpandIRInsts/X86/expand-fp-convert-small.ll
    M llvm/test/Transforms/ExpandIRInsts/X86/expand-int-convert-small.ll
    M llvm/test/Transforms/ExpandIRInsts/X86/expand-large-fp-convert-fptosi129.ll
    M llvm/test/Transforms/ExpandIRInsts/X86/expand-large-fp-convert-fptoui129.ll
    M llvm/test/Transforms/ExpandIRInsts/X86/expand-large-fp-convert-si129tofp.ll
    M llvm/test/Transforms/ExpandIRInsts/X86/expand-large-fp-convert-ui129tofp.ll
    M llvm/test/Transforms/ExpandIRInsts/X86/expand-large-fp-optnone.ll

  Log Message:
  -----------
  [profcheck] Fix profile metadata propagation for Large FP Operations (#175864)

This PR improves the propagation of profile metadata within the
ExpandIRInsts pass. When lowering non-standard floating-point
operations, the pass now ensures that branch weights are correctly
attached to the generated control flow, preventing the loss of profile
data during IR expansion.

This enhancements cover the conversions between non-standard
floating-point formats and large integers (e.g., `fptosi/fptoui`,
`sitofp/uitofp` involving `i129`).

This PR implements Heuristic-Based Branch Weights labeling using
established heuristics for Floating-point rounding overflow and
saturation checks and adds detailed comments within the expansion logic
to explain the rationale behind specific branch weight choices and the
underlying mathematical invariants.

Please refer to the implementation details in the source code for the
specific branch weight values and the logic governing their application.

---------

Co-authored-by: Jin Huang <jingold at google.com>
Co-authored-by: Aiden Grossman <aidengrossman at google.com>


  Commit: 023e7decf625eb03e93aec568ffdbf13e726fbee
      https://github.com/llvm/llvm-project/commit/023e7decf625eb03e93aec568ffdbf13e726fbee
  Author: Sudharsan Veeravalli <svs at qti.qualcomm.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVMoveMerger.cpp
    M llvm/test/CodeGen/RISCV/rv32-merge-non-arg-reg.mir

  Log Message:
  -----------
  [RISCV] Skip unrelated COPY during Zdinx/P instruction generation in RISCVMoveMerge (#200219)

`findMatchingInstPair` returned early on the first non-matching `COPY`,
which could miss a valid later `COPY` pair.

Update the scan to continue past non-matching `COPY` instructions and
only apply existing dependency checks when a lane match is found.


  Commit: 479818a38ccfb1d82a1e67d13ae11d2151a62c30
      https://github.com/llvm/llvm-project/commit/479818a38ccfb1d82a1e67d13ae11d2151a62c30
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

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

  Log Message:
  -----------
  [Profcheck] Update xfail list after b378c7162613afdc982e8a2e6ec478066ea04492 (#200326)


  Commit: 767f01e0910d9211486d4022c5c5e7d71c85dff2
      https://github.com/llvm/llvm-project/commit/767f01e0910d9211486d4022c5c5e7d71c85dff2
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    A libclc/clc/include/clc/internal/math/clc_runtime_has_hw_fma32.h
    M libclc/clc/include/clc/internal/math/clc_sw_fma.h
    M libclc/clc/include/clc/math/clc_fma.h
    M libclc/clc/lib/generic/math/clc_fma.cl
    M libclc/clc/lib/spirv/CMakeLists.txt
    A libclc/clc/lib/spirv/math/clc_fma.cl
    A libclc/clc/lib/spirv/math/clc_fma.inc
    A libclc/clc/lib/spirv/math/clc_runtime_has_hw_fma32.cl
    A libclc/clc/lib/spirv/math/clc_sw_fma.cl
    M libclc/clc/lib/spirv/vulkan/CMakeLists.txt
    R libclc/clc/lib/spirv/vulkan/math/clc_sw_fma.cl
    M libclc/opencl/lib/generic/math/fma.cl
    M libclc/opencl/lib/spirv/CMakeLists.txt
    A libclc/opencl/lib/spirv/math/fma.cl

  Log Message:
  -----------
  [libclc] Use float sw_fma for spirv*-mesa-mesa3d targets (#199626)

This partially reverts 39f3d72b72fd, which changes almost all targets to
use __builtin_elementwise_fma.
The same revert was done for clspv in 1d719edd9935.

Restore __clc_runtime_has_hw_fma32 so that Mesa can dynamically change
its behavior to enable native fma for specific hardware.

Fixes #198542


  Commit: 021b93e7e763e81db740972c5f2b761a6f7f47b5
      https://github.com/llvm/llvm-project/commit/021b93e7e763e81db740972c5f2b761a6f7f47b5
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M lldb/test/API/python_api/sbmodule/TestSBModule.py

  Log Message:
  -----------
  [lldb] Make TestSBModule a no-SHARED_BUILD_TESTCASE (#188265)

Building libfoo.a twice (quickly) confuses the cache in
ObjectContainerBSDArchive (which works only with second granularity),
and causes the second test to fail due to accessing wrong parts of the
file.

I'm also making this a NO_DEBUG_INFO_TESTCASE as the debug info
distinction is not particularly relevant for this test. Technically,
this would be enough as the collision is between two debug info variants
of the same test case, but SHARED_BUILD_TESTCASE=False seems like a more
principled fix.


  Commit: bf8dabd88282bb9cf6bd364d29e6d797645074f0
      https://github.com/llvm/llvm-project/commit/bf8dabd88282bb9cf6bd364d29e6d797645074f0
  Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    A offload/ci/hip-tpl.py

  Log Message:
  -----------
  [HIP][CI] Add HIP Kokkos bot recipe (#200201)


  Commit: 7d7f98b11b9c2dee5ca6b570fba161dbb102ef87
      https://github.com/llvm/llvm-project/commit/7d7f98b11b9c2dee5ca6b570fba161dbb102ef87
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M clang/lib/CodeGen/CGVTables.cpp
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M clang/lib/CodeGen/MicrosoftCXXABI.cpp
    M clang/test/CodeGen/construction-vtable-visibility.cpp
    M clang/test/CodeGen/push-hidden-visibility-subclass.cpp
    M clang/test/CodeGen/split-lto-unit-input.cpp
    M clang/test/CodeGenCUDA/increment-index-for-thunks.cu
    M clang/test/CodeGenCUDA/record-layout.cu
    M clang/test/CodeGenCXX/OmitRTTIComponentABI/simple-vtable-definition.cpp
    M clang/test/CodeGenCXX/PR26569.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/available_externally-vtable.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/child-inheritted-from-parent-in-comdat.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/child-vtable-in-comdat.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/cross-translation-unit-1.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/cross-translation-unit-2.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/diamond-inheritance.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/diamond-virtual-inheritance.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/inheritted-virtual-function.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/inline-virtual-function.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/inlined-key-function.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/multiple-inheritance.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/no-alias-when-dso-local.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/override-pure-virtual-method.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/overriden-virtual-function.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/parent-and-child-in-comdats.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/parent-vtable-in-comdat.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/relative-vtables-flag.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/relative-vtables-hwasan.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/simple-vtable-definition.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/vtable-hidden-when-in-comdat.cpp
    M clang/test/CodeGenCXX/apple-kext-indirect-call-2.cpp
    M clang/test/CodeGenCXX/apple-kext-indirect-call.cpp
    M clang/test/CodeGenCXX/apple-kext-indirect-virtual-dtor-call.cpp
    M clang/test/CodeGenCXX/attr-exclude_from_explicit_instantiation.exclude_from_dllexport.cpp
    M clang/test/CodeGenCXX/attr-exclude_from_explicit_instantiation.exclude_from_dllimport.cpp
    M clang/test/CodeGenCXX/cfi-cross-dso.cpp
    M clang/test/CodeGenCXX/ctor-dtor-alias.cpp
    M clang/test/CodeGenCXX/cxx11-vtable-key-function.cpp
    M clang/test/CodeGenCXX/dllexport.cpp
    M clang/test/CodeGenCXX/dllimport-rtti.cpp
    M clang/test/CodeGenCXX/dllimport.cpp
    M clang/test/CodeGenCXX/dso-local-executable.cpp
    M clang/test/CodeGenCXX/dynamic-cast-address-space.cpp
    M clang/test/CodeGenCXX/internal-linkage.cpp
    M clang/test/CodeGenCXX/key-function-vtable.cpp
    M clang/test/CodeGenCXX/mangle-ms-md5.cpp
    M clang/test/CodeGenCXX/mangle-subst-std.cpp
    M clang/test/CodeGenCXX/mdefault-visibility-export-mapping-rtti.cpp
    M clang/test/CodeGenCXX/microsoft-abi-extern-template.cpp
    M clang/test/CodeGenCXX/microsoft-abi-vftables.cpp
    M clang/test/CodeGenCXX/microsoft-abi-vtables-return-thunks.cpp
    M clang/test/CodeGenCXX/microsoft-abi-vtables-single-inheritance.cpp
    M clang/test/CodeGenCXX/microsoft-abi-vtables-virtual-inheritance.cpp
    M clang/test/CodeGenCXX/microsoft-interface.cpp
    M clang/test/CodeGenCXX/microsoft-no-rtti-data.cpp
    M clang/test/CodeGenCXX/microsoft-vector-deleting-dtors.cpp
    M clang/test/CodeGenCXX/modules-vtable.cppm
    M clang/test/CodeGenCXX/ms-local-vft-alias-comdat.cpp
    M clang/test/CodeGenCXX/ms-thunks-unprototyped.cpp
    M clang/test/CodeGenCXX/pr70585.cppm
    M clang/test/CodeGenCXX/ps-dllstorage-vtable-rtti.cpp
    M clang/test/CodeGenCXX/ptrauth-apple-kext-indirect-call-2.cpp
    M clang/test/CodeGenCXX/ptrauth-apple-kext-indirect-call.cpp
    M clang/test/CodeGenCXX/ptrauth-apple-kext-indirect-virtual-dtor-call.cpp
    M clang/test/CodeGenCXX/ptrauth-explicit-vtable-pointer-control.cpp
    M clang/test/CodeGenCXX/ptrauth-global-constant-initializers.cpp
    M clang/test/CodeGenCXX/ptrauth-member-function-pointer.cpp
    M clang/test/CodeGenCXX/ptrauth-type-info-vtable.cpp
    M clang/test/CodeGenCXX/ptrauth-virtual-function.cpp
    M clang/test/CodeGenCXX/ptrauth-vtable-virtual-inheritance-thunk.cpp
    M clang/test/CodeGenCXX/template-instantiation.cpp
    M clang/test/CodeGenCXX/type-metadata.cpp
    M clang/test/CodeGenCXX/type_visibility.cpp
    M clang/test/CodeGenCXX/vcall-visibility-metadata.cpp
    M clang/test/CodeGenCXX/virt-template-vtable.cpp
    M clang/test/CodeGenCXX/visibility-dllstorageclass.cpp
    M clang/test/CodeGenCXX/visibility.cpp
    M clang/test/CodeGenCXX/vtable-align-address-space.cpp
    M clang/test/CodeGenCXX/vtable-align.cpp
    M clang/test/CodeGenCXX/vtable-assume-load-address-space.cpp
    M clang/test/CodeGenCXX/vtable-assume-load.cpp
    M clang/test/CodeGenCXX/vtable-available-externally.cpp
    M clang/test/CodeGenCXX/vtable-consteval.cpp
    M clang/test/CodeGenCXX/vtable-constexpr-address-space.cpp
    M clang/test/CodeGenCXX/vtable-constexpr.cpp
    M clang/test/CodeGenCXX/vtable-key-function-address-space.cpp
    M clang/test/CodeGenCXX/vtable-key-function-arm.cpp
    M clang/test/CodeGenCXX/vtable-key-function-ios.cpp
    M clang/test/CodeGenCXX/vtable-key-function-win-comdat.cpp
    M clang/test/CodeGenCXX/vtable-key-function.cpp
    M clang/test/CodeGenCXX/vtable-linkage-address-space.cpp
    M clang/test/CodeGenCXX/vtable-linkage.cpp
    M clang/test/CodeGenCXX/vtt-layout-address-space.cpp
    M clang/test/CodeGenCXX/vtt-layout.cpp
    M clang/test/CodeGenCXX/windows-itanium-type-info.cpp
    M clang/test/DebugInfo/CXX/vtable-inheritance-diamond.cpp
    M clang/test/DebugInfo/CXX/vtable-inheritance-multiple.cpp
    M clang/test/DebugInfo/CXX/vtable-inheritance-simple-main.cpp
    M clang/test/DebugInfo/CXX/vtable-inheritance-simple.cpp
    M clang/test/DebugInfo/CXX/vtable-inheritance-virtual.cpp
    M clang/test/DebugInfo/CXX/vtable-template-instantiation.cpp
    M clang/test/Headers/hip-header.hip
    M clang/test/Modules/vtable-windows.cppm
    M clang/test/OpenMP/nvptx_target_pure_deleted_codegen.cpp
    M clang/test/OpenMP/target_vtable_codegen_explicit.cpp

  Log Message:
  -----------
  [CodeGen] Stop setting vtable as unnamed_addr (#200108)

Successor of https://github.com/llvm/llvm-project/pull/197855

Close https://github.com/llvm/llvm-project/issues/71196

See the above PR for the full context.

AI assisted


  Commit: 891b8f6fa8e796464b34fa9460933fccf69f3cc3
      https://github.com/llvm/llvm-project/commit/891b8f6fa8e796464b34fa9460933fccf69f3cc3
  Author: Claire Fan <fanyungching at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Target/BPF/BPFSelectionDAGInfo.cpp
    M llvm/lib/Target/BPF/BPFSelectionDAGInfo.h
    A llvm/test/CodeGen/BPF/libcall-memcpy-threshold.ll

  Log Message:
  -----------
  [BPF] crash fix for memcpy with unsupported alignment (#199541)

### Summary
BPF only has scalar load/store opcodes up to 8 bytes and `memcpy` with
16 byte alignment crashes with `llvm_unreachable("unsupported memcpy
alignment");` in `BPFInstrInfo::expandMEMCPY`

### Issue
The crash can be reproduced from Rust code like:

```rust
#[no_mangle]
pub extern "C" fn entry(src: *const u128) -> u64 {
    let mut dst = [0u128; 2];
    unsafe { ptr::copy_nonoverlapping(src, dst.as_mut_ptr(), 2) };
    let _ = black_box(dst);
    0
}
```

This produces a `memcpy` with 16-byte alignment and
`BPFSelectionDAGInfo::EmitTargetCodeForMemcpy` emit the `BPFISD::MEMCPY`
pseudo for 16-byte alignment. That pseudo later reaches `expandMEMCPY`
during the Post-RA pseudo expansion pass and hits:
```
llvm_unreachable("unsupported memcpy alignment");
```

The crash report looks like:
```
= note: PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/
        and include the crash backtrace and instructions to reproduce the bug.
        Stack dump:
        0. Running pass 'Function Pass Manager' on module 'linked_module'.
        1. Running pass 'Post-RA pseudo instruction expansion pass' on function '@entry'
```
### Fix
Return `SDValue()` in `BPFSelectionDAGInfo::EmitTargetCodeForMemcpy`
when the alignment is larger than 8 bytes. LLVM then naturally falls
back to the existing libcall path and emits `call memcpy` instead of
creating a pseudo instruction that cannot be expanded later.

Since `memcpy`, `memset`, and `memmove` are now whitelisted, I think
this fallback behavior is the right fix: unsupported target expansion
should decline and use the existing libcall path instead of crashing.

### Opt-in controls around libcalls
I also want to use this chance to introduce two opt-in controls around
libcalls for VM/runtime use cases built on top of the BPF backend (both
controls are opt-in and disabled by default, so existing kernel projects
and current BPF behavior remain unchanged),

### --bpf-max-stores-per-memfunc
First, an opt-in flag to control over
`BPFSelectionDAGInfo::getCommonMaxStoresPerMemFunc()`.

Today, the target memory expansion path uses:

```c++
if (StoresNumEstimate > getCommonMaxStoresPerMemFunc())
  return SDValue();
```

This threshold controls whether `EmitTargetCodeForMemcpy` continues
emitting the BPF memory pseudo(which is later expanded with load/store
ops) or falls back to the libcall path.

Currently this value is effectively fixed at 128, which means most
constant-size memory operations are expanded into inline load/store
sequences. Exposing the threshold gives VM/runtime users a way to allow
more memory operations to fall through to libcalls, while keeping the
current default behavior unchanged.

### --bpf-allows-libcalls (PR #199542 )
Second, an opt-in flag to allow additional libcalls beyond the currently
whitelisted ones.

Today BPF rejects unsupported libcalls here:

```c++
if (Sym != BPF_TRAP && Sym != "__multi3" && Sym != "__divti3" &&
    Sym != "__modti3" && Sym != "__udivti3" &&
    Sym != "__umodti3" && Sym != "memcpy" &&
    Sym != "memset" && Sym != "memmove")
  fail(
      CLI.DL, DAG,
      Twine("A call to built-in function '" + Sym +
            "' is not supported."));
```

With the new flag enabled, _this error path is skipped_ so VM/runtime
environments can provide their own libcall implementations.

For VM runtimes using the BPF backend, libcalls are useful because they
create an interface between normal compiler-generated code and
runtime-specific optimization. We have already explored this model for
u128 arithmetic, where libcalls allow normal Rust code to stay unchanged
while the runtime can provide optimized behavior:


https://blueshift.gg/research/accelerating-u128-math-with-libcalls-and-jit-intrinsics

The same idea applies to memory operations. Users can continue writing
normal Rust like `ptr::copy_nonoverlapping`, while the runtime can
choose an implementation tailored to its execution environment.

Both controls are opt-in and disabled by default, so existing kernel
projects and current BPF behavior remain unchanged.


  Commit: 6bee6b09e21c579f191daab05a180b3ffeedfebc
      https://github.com/llvm/llvm-project/commit/6bee6b09e21c579f191daab05a180b3ffeedfebc
  Author: Claire Fan <fanyungching at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Target/BPF/BPFISelLowering.cpp
    A llvm/test/CodeGen/BPF/libcall-non-whitelisted.ll

  Log Message:
  -----------
  [BPF] cli option to allow libcalls (#199542)

This is the follow up PR for PR #199541 

### --bpf-allows-libcalls
Second, an opt-in flag to allow additional libcalls beyond the currently
whitelisted ones.

Today BPF rejects unsupported libcalls here:

```c++
if (Sym != BPF_TRAP && Sym != "__multi3" && Sym != "__divti3" &&
    Sym != "__modti3" && Sym != "__udivti3" &&
    Sym != "__umodti3" && Sym != "memcpy" &&
    Sym != "memset" && Sym != "memmove")
  fail(
      CLI.DL, DAG,
      Twine("A call to built-in function '" + Sym +
            "' is not supported."));
```

With the new flag enabled, this error path is skipped so VM/runtime
environments can provide their own libcall implementations.

For VM runtimes using the BPF backend, libcalls are useful because they
create an interface between normal compiler-generated code and
runtime-specific optimization. We have already explored this model for
u128 arithmetic, where libcalls allow normal Rust code to stay unchanged
while the runtime can provide optimized behavior:


https://blueshift.gg/research/accelerating-u128-math-with-libcalls-and-jit-intrinsics

The same idea applies to memory operations. Users can continue writing
normal Rust like `ptr::copy_nonoverlapping`, while the runtime can
choose an implementation tailored to its execution environment.

This new option is opt-in and disabled by default, so existing kernel
projects and current BPF behavior remain unchanged.


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

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

  Log Message:
  -----------
  [RISCV] Combine isGPRPairCopyCandidateEven/isGPRPairCopyCandidateOdd in MoveMerger. NFC (#200254)

These only differ in the subreg index. Add a bool to control it.


  Commit: 4c1bc59365360f7f24a5c82b8cebd2b52634879a
      https://github.com/llvm/llvm-project/commit/4c1bc59365360f7f24a5c82b8cebd2b52634879a
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

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

  Log Message:
  -----------
  [clang][bytecode] Fix variadic operator calls with explicit this (#199978)


  Commit: bbf8a33ad5f51b5641e7665e5f0d2f0079b454f6
      https://github.com/llvm/llvm-project/commit/bbf8a33ad5f51b5641e7665e5f0d2f0079b454f6
  Author: Davide Grohmann <davide.grohmann at arm.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

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

  Log Message:
  -----------
  [mlir][spirv][tosa] Extend TOSA to SPIR-V TOSA op conversion (#200009)

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

Introduce a common TosaOpConvert pattern with small replacer classes
to share result type conversion while keeping op-specific replacement
logic explicit.

The newly covered operations include:
* elementwise ops such as clamp, arithmetic_right_shift, mul, table,
  negate, and select
* reductions and argmax
* gather, scatter, resize
* reshape, reverse, slice, tile, transpose
* cast and const_shape

Also add conversion tests.

---------

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


  Commit: b835d5a98f48cb9dcae3ec915a0790826eb7d2a2
      https://github.com/llvm/llvm-project/commit/b835d5a98f48cb9dcae3ec915a0790826eb7d2a2
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

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

  Log Message:
  -----------
  [IR] Only require nofree in canBeFreed() (#200191)

After https://github.com/llvm/llvm-project/pull/195658 we only need the
function to be nofree, as this also precludes freeing via
synchronization now. Being nosync is no longer required.


  Commit: 01c93f511b4b5f734ac420709266036497610014
      https://github.com/llvm/llvm-project/commit/01c93f511b4b5f734ac420709266036497610014
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M clang/lib/CodeGen/CGCall.cpp
    M clang/test/CodeGenCXX/new_hot_cold.cpp
    M clang/test/CodeGenCXX/operator-new.cpp

  Log Message:
  -----------
  [Clang] Mark new as inaccessiblememonly if sane (#197199)

If `-fassume-sane-operator-new` (the default), assume that `operator
new` does not read or write accessible memory.

Currently, this assumption already exists due to special treatment in
BasicAA. I'd like to remove this special treatment (see
https://github.com/llvm/llvm-project/pull/197180), and instead rely only
on the `memory` attribute.

It's worth noting that this is consistent with GCC's interpretation of
the flag (where it is also enabled by default):

> [...] With -fassume-sane-operators-new-delete option GCC may assume
that calls to the replaceable global operators from new or delete
expressions or from __builtin_operator_new or __builtin_operator_delete
calls don’t read or modify any global variables or variables whose
address could escape to the operators (global state; except for errno
for the new and new[] operators). [...]


  Commit: b159ed6fa212607ecd287fa73f4bee59802b1528
      https://github.com/llvm/llvm-project/commit/b159ed6fa212607ecd287fa73f4bee59802b1528
  Author: hev <wangrui at loongson.cn>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
    M llvm/lib/Target/LoongArch/CMakeLists.txt
    M llvm/lib/Target/LoongArch/LoongArchAsmPrinter.cpp
    M llvm/lib/Target/LoongArch/LoongArchAsmPrinter.h
    M llvm/lib/Target/LoongArch/LoongArchTargetMachine.cpp
    A llvm/lib/Target/LoongArch/LoongArchTargetObjectFile.cpp
    A llvm/lib/Target/LoongArch/LoongArchTargetObjectFile.h
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchELFObjectWriter.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchELFStreamer.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchELFStreamer.h
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchFixupKinds.h
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCAsmInfo.h
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchTargetStreamer.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchTargetStreamer.h
    A llvm/test/DebugInfo/LoongArch/tls.ll
    A llvm/test/MC/LoongArch/Directives/tls.s
    M llvm/utils/gn/secondary/llvm/lib/Target/LoongArch/BUILD.gn

  Log Message:
  -----------
  [LoongArch] Emit DTPREL relocations for TLS debug info (#199326)

Teach the LoongArch backend to lower thread-local debug references using
target-specific DTPREL relocations.

This adds .dtprelword and .dtpreldword directive parsing and streaming,
introduces 32-bit and 64-bit DTPREL fixups and ELF relocation mappings,
and uses a LoongArch target object file to represent debug TLS symbols
as VK_DTPREL expressions. LoongArchAsmPrinter is updated to emit the new
directives for debug TLS values in assembly output.

Add MC and debug info tests for assembly emission and object
relocations.


  Commit: 8f45cf9822a5840925836457b78ba4d515ef8da5
      https://github.com/llvm/llvm-project/commit/8f45cf9822a5840925836457b78ba4d515ef8da5
  Author: Jonas Paulsson <paulson1 at linux.ibm.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/SystemZ/cmp-ext-01.ll

  Log Message:
  -----------
  [SystemZ] Handle pointer size correctly in getVectorBitmaskConversionCost(). (#200171)

Unfortunately, getScalarSizeInBits() returns 0 for PointerTy, which
means that the loop vectorizer got way too high costs for sext i1 after
a compare(ptr, 0).

There is already a version of getScalarSizeInBits() in
SystemZTargetTransformInfo.cpp that handles this, so this is fixed by
using this in the needed places.

As a result, a few more loops are vectorized, and perl improves ~1%.


  Commit: 64bc1fae11d6591739ed0c14f1f3464ae7bc24ac
      https://github.com/llvm/llvm-project/commit/64bc1fae11d6591739ed0c14f1f3464ae7bc24ac
  Author: Dominik Steenken <dost at de.ibm.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M clang/include/clang/Basic/CodeGenOptions.def
    M clang/include/clang/Options/Options.td
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    A clang/test/CodeGen/SystemZ/stack-guard-global-option.c
    M clang/test/Driver/stack-protector-guard.c
    M llvm/include/llvm/IR/Module.h
    M llvm/lib/IR/Module.cpp
    M llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp
    M llvm/lib/Target/SystemZ/SystemZAsmPrinter.h
    M llvm/lib/Target/SystemZ/SystemZISelDAGToDAG.cpp
    M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
    M llvm/lib/Target/SystemZ/SystemZISelLowering.h
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.h
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.td
    M llvm/lib/Target/SystemZ/SystemZOperators.td
    A llvm/test/CodeGen/SystemZ/stack-guard-global-nopic.ll
    A llvm/test/CodeGen/SystemZ/stack-guard-global-pic.ll
    A llvm/test/CodeGen/SystemZ/stack-guard-pseudos.ll
    A llvm/test/CodeGen/SystemZ/stack-guard-tls.ll
    R llvm/test/CodeGen/SystemZ/stack-guard.ll

  Log Message:
  -----------
  [SystemZ] Global Stackprotector and associated location section (#169317)

This commit allows `-mstack-protector-guard=global` for `s390x`.

It also adds a new arch-specific option
`-mstack-protector-guard-record`, analogous to `-mrecord-mcount`, which
will cause `clang` to emit a `__stack_protector_loc` section containing
all the locations in the output binary that load the stack guard
address, for the purposes of later rewriting of those loads by the
kernel. This new option only works together with the `global` stack
protector.

In order to minimize exposure of the stack guard, both the storing of
the stack guard onto the stack, and the later comparison of that value
against the reference value, are handled via direct mem-to-mem
instructions, those being `mvc` and `clc`.

This is achieved by introducing two new pseudo instructions,
`MOVE_STACK_GUARD` and `COMPARE_STACK_GUARD`, which are inserted by the
DAGCombiner after SelectionDAG construction. These pseudos stick around
throughout the entire backend pipeline, and are lowered only in the
AsmPrinter.

This commit also adds tests for both kinds of stack protectors (tls and
global), for the proper insertion of the pseudos, the proper emission of
the, `__stack_protector_loc` section, as well as the option
compatibility checks for the new options.


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

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

  Log Message:
  -----------
  [IR] Skip remove_if scan for empty maps in removeNotPreservedAnalysis (#200292)

removeNotPreservedAnalysis runs after every legacy-PM pass. #198982
changed it to DenseMap::remove_if, which iterates the raw bucket array
even when the map is empty. The old begin()/end() loop did not:
begin()'s
makeBegin returns end() directly for an empty map (its "avoid advancing
past empty buckets" shortcut), so the loop touched no buckets. These
maps
are usually empty here but keep a grown bucket array after their entries
are erased (a 64-bucket array when compiling sqlite3.i at -O0 -g), so
remove_if walks empty buckets for nothing, regressing instructions:u
(most visible at -O0). #199571 was a small fix for the out-of-lined
remove_if call; this addresses the dominant cost.

Skip empty maps, which fixes the regression:

https://llvm-compile-time-tracker.com/compare.php?from=8ab00f2c21e5975f5de977ca68607b4acc23c856&to=6a33135fad599da0c2c9919ec37f81217e5c8f6b&stat=instructions:u


  Commit: 3648f148c70b1980e858f539f1d49837ad94dbf0
      https://github.com/llvm/llvm-project/commit/3648f148c70b1980e858f539f1d49837ad94dbf0
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M llvm/Maintainers.md

  Log Message:
  -----------
  [LLVM] Add myself as maintainer for LoopInterchange and related passes (#200335)

I have been consistently contributing to LoopInterchange and the passes
related to it, including Delinearization, DependenceAnalysis, and
ScalarEvolutionDivision. In accordance with [the LLVM Developer
Policy](https://llvm.org/docs/DeveloperPolicy.html#adding-or-enabling-a-new-llvm-pass),
and to help move things forward, particularly toward enabling
LoopInterchange by default, I would like to nominate myself as a
maintainer for these passes.

See also: #124911.


  Commit: 971ad593d6a2df38ab3854dc3bc440eab8416057
      https://github.com/llvm/llvm-project/commit/971ad593d6a2df38ab3854dc3bc440eab8416057
  Author: Joshua Rodriguez <josh.rodriguez at arm.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
    M llvm/test/CodeGen/AArch64/arm64-int-neon.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Add handling for scalar sqneg intrinsic (#200211)

Scalar versions of the intrinsic must be performed on FPR banks. To
ensure this happens, coerce the source and destination registers to be
on FPR.


  Commit: 3ca81aa6b6d081797eeb555fb905fe7707acac74
      https://github.com/llvm/llvm-project/commit/3ca81aa6b6d081797eeb555fb905fe7707acac74
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Transforms/VectorCombine/X86/load-extractelement-scalarization.ll

  Log Message:
  -----------
  [VectorCombine] Don't scalarize atomic loads (#200263)

scalarizeLoad tries to convert e.g.

      %a = load <2 x i32> %ptr
      %b = extractelement %a, 1

into a scalar load. Before this patch it would do this even when the
load is atomic, but in doing so it accidentally dropped the atomicity of
the load!

Although it is correct to apply this transformation to unordered
atomics, for now we simply don't apply this pass to atomics at all.

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


  Commit: 9d47197593c671a2925b1121b9194d73d2b0195b
      https://github.com/llvm/llvm-project/commit/9d47197593c671a2925b1121b9194d73d2b0195b
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M libcxx/include/__memory/shared_ptr.h

  Log Message:
  -----------
  [libc++] Use variable templates instead of class templates in shared_ptr.h (#199481)

This improves readability and compile times a bit.


  Commit: eaf5ba7478e774e55334b021221db62f331667e5
      https://github.com/llvm/llvm-project/commit/eaf5ba7478e774e55334b021221db62f331667e5
  Author: Sven van Haastregt <sven.vanhaastregt at arm.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    M llvm/test/CodeGen/SPIRV/transcoding/ReqdSubgroupSize.ll

  Log Message:
  -----------
  [SPIR-V] Recognize reqd_sub_group_size metadata for SubgroupSize (#199521)

Recognize function metadata without a vendor prefix for the
`SubgroupSize` Execution Mode, alongside the existing vendor-prefixed
metadata. `SubgroupSize` is a core SPIR-V feature, so representing it
using vendor-prefixed metadata was misleading.

Relates to
https://github.com/KhronosGroup/SPIRV-LLVM-Translator/issues/3742


  Commit: e8772d99d89a5ed47a58d1a429bc55e5e055c3f7
      https://github.com/llvm/llvm-project/commit/e8772d99d89a5ed47a58d1a429bc55e5e055c3f7
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M llvm/Maintainers.md

  Log Message:
  -----------
  [Maintainers] Fix Markdown heading level (#200340)


  Commit: d7703c6aab9fd496cc467d81415d07c01247f188
      https://github.com/llvm/llvm-project/commit/d7703c6aab9fd496cc467d81415d07c01247f188
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2026-05-29 (Fri, 29 May 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 byteswap.h to Linux public header target lists (#200345)

The headers don't get built/installed without this.


  Commit: a0f7a62bb6a20404221e2823d4b7dd77f67e77ea
      https://github.com/llvm/llvm-project/commit/a0f7a62bb6a20404221e2823d4b7dd77f67e77ea
  Author: Mariya Podchishchaeva <mariya.podchishchaeva at intel.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst

  Log Message:
  -----------
  [clang][doc][SYCL] Add a very first SYCL release note (#200200)


  Commit: 2d046bd62066067a1de8cb65752f1dd9404c4121
      https://github.com/llvm/llvm-project/commit/2d046bd62066067a1de8cb65752f1dd9404c4121
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
    M llvm/test/Transforms/LoopStrengthReduce/AArch64/vscale-fixups.ll
    A llvm/test/Transforms/LoopStrengthReduce/AArch64/vscale-negative-i32-offset.ll

  Log Message:
  -----------
  [LSR] Improve the recognition of vscale immediates (#196998)

Previously, the extraction of vscale immediates was handled the same as
the non-scalable case. That is we'd look for a `vscale * constant`
scMulExpr on the LHS of the SCEV expression.

However, within a SCEV expression operands are ordered by "complexity",
which is defined (mostly) by the order of the SCEVTypes enum:
https://github.com/llvm/llvm-project/blob/bcb84e234980ca42ee47e21e4c97180c788c946a/llvm/include/llvm/Analysis/ScalarEvolutionExpressions.h#L38-L59

So, (non-scalable) constants would always occur on the LHS as the
simplest expression type, but a scMulExpr could occur later in the
operand list for a scAddExpr (e.g., after a sext/zext expression). This
meant in some cases we'd fail to find vscale immediates.

This patch updates `ExtractImmediate` to search later operands to find
vscale offsets, and prefer vscale offsets based on the access type and
current BaseOffset. So for scalable accesses, we prefer finding vscale
immediates over fixed immediates when both are present.


  Commit: f7fa98ea57dc665d8fcde895fe44547b9d9189cb
      https://github.com/llvm/llvm-project/commit/f7fa98ea57dc665d8fcde895fe44547b9d9189cb
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M llvm/Maintainers.md

  Log Message:
  -----------
  [llvm][docs] Correct link to libc maintainers file (#200348)


  Commit: c2e39974c8e27727b15297f82b6bd3be684a4789
      https://github.com/llvm/llvm-project/commit/c2e39974c8e27727b15297f82b6bd3be684a4789
  Author: Weibo He <NewSigma at 163.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/Coroutines/SuspendCrossingInfo.h
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
    M llvm/lib/Transforms/Coroutines/SuspendCrossingInfo.cpp
    A llvm/test/Transforms/Coroutines/coro-frame-inramp.ll

  Log Message:
  -----------
  [CoroSplit] Never cross suspending points when `coro.is_in_ramp` is true (#198226)

When `coro.is_in_ramp` is true, the marked region does not appear in
resumers after splitting and therefore never crosses a suspension point.
This patch leverages that property to avoid wasting space on lazy
conversion:

``` C++
#include <coroutine>

struct coro {
    struct promise_type {
      auto get_return_object() noexcept {
        return std::coroutine_handle<promise_type>::from_promise(*this);
      }
      std::suspend_always initial_suspend() noexcept { return {}; }
      std::suspend_never final_suspend() noexcept { return {}; }
      void return_void() noexcept {}
      void unhandled_exception() {}
    };

    coro(std::coroutine_handle<promise_type> handle) : handle(handle) {}

    std::coroutine_handle<> handle;
    long l[2];
};

coro fn() {
  co_return;
}
```


  Commit: 2e10a9f2e95a17d4d009e9546a6cb5d442049233
      https://github.com/llvm/llvm-project/commit/2e10a9f2e95a17d4d009e9546a6cb5d442049233
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

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

  Log Message:
  -----------
  [clang][bytecode] Check Mulc op for numbers (#199657)


  Commit: bafde6fbb860e9b2f887a649c19f3b3ebb168041
      https://github.com/llvm/llvm-project/commit/bafde6fbb860e9b2f887a649c19f3b3ebb168041
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/lib/Driver/ToolChains/HIPAMD.cpp
    M flang-rt/CMakeLists.txt
    M flang-rt/cmake/modules/AddFlangRT.cmake
    A flang-rt/cmake/modules/FlangRTIntrospection.cmake
    M flang-rt/lib/CMakeLists.txt
    M flang-rt/lib/runtime/CMakeLists.txt
    A flang-rt/lib/runtime/__cuda_builtins.f90
    A flang-rt/lib/runtime/__cuda_device.f90
    A flang-rt/lib/runtime/__fortran_builtins.f90
    A flang-rt/lib/runtime/__fortran_ieee_exceptions.f90
    A flang-rt/lib/runtime/__fortran_type_info.f90
    A flang-rt/lib/runtime/__ppc_intrinsics.f90
    A flang-rt/lib/runtime/__ppc_types.f90
    A flang-rt/lib/runtime/cooperative_groups.f90
    A flang-rt/lib/runtime/cuda_runtime_api.f90
    A flang-rt/lib/runtime/cudadevice.f90
    A flang-rt/lib/runtime/flang_debug.f90
    A flang-rt/lib/runtime/ieee_arithmetic.f90
    A flang-rt/lib/runtime/ieee_exceptions.f90
    A flang-rt/lib/runtime/ieee_features.f90
    A flang-rt/lib/runtime/iso_c_binding.f90
    A flang-rt/lib/runtime/iso_fortran_env.f90
    M flang-rt/lib/runtime/iso_fortran_env_impl.cpp
    A flang-rt/lib/runtime/iso_fortran_env_impl.f90
    A flang-rt/lib/runtime/mma.f90
    M flang-rt/test/CMakeLists.txt
    M flang-rt/test/Driver/compare_iso_fortran_env_symbols.f90
    M flang-rt/test/Driver/iso_fortran_env_impl.f90
    M flang-rt/test/lit.cfg.py
    M flang-rt/test/lit.site.cfg.py.in
    M flang/CMakeLists.txt
    M flang/lib/Semantics/semantics.cpp
    R flang/module/.clang-format
    R flang/module/__cuda_builtins.f90
    R flang/module/__cuda_device.f90
    R flang/module/__fortran_builtins.f90
    R flang/module/__fortran_ieee_exceptions.f90
    R flang/module/__fortran_type_info.f90
    R flang/module/__ppc_intrinsics.f90
    R flang/module/__ppc_types.f90
    R flang/module/cooperative_groups.f90
    R flang/module/cuda_runtime_api.f90
    R flang/module/cudadevice.f90
    R flang/module/flang_debug.f90
    R flang/module/ieee_arithmetic.f90
    R flang/module/ieee_exceptions.f90
    R flang/module/ieee_features.f90
    R flang/module/iso_c_binding.f90
    R flang/module/iso_fortran_env.f90
    R flang/module/iso_fortran_env_impl.f90
    R flang/module/mma.f90
    M flang/test/CMakeLists.txt
    R flang/test/Driver/Inputs/resource_dir_with_per_target_subdir/finclude/flang/x86_64-unknown-linux-gnu/.keep
    M flang/test/Driver/intrinsic-module-path_per_target.f90
    M flang/test/Driver/pp-fixed-form.f90
    M flang/test/Lower/OpenMP/simd_aarch64.f90
    M flang/test/Lower/OpenMP/target-enter-data-default-openmp52.f90
    M flang/test/Lower/where-loc.f90
    M flang/test/Parser/bug2280.f90
    M flang/test/Preprocessing/fixed-free.f
    M flang/test/Preprocessing/no-pp-if.f90
    M flang/test/Semantics/bug163242.f90
    M flang/test/Semantics/bug164303.f90
    M flang/test/Semantics/bug2021.f90
    M flang/test/lit.cfg.py
    M flang/test/lit.site.cfg.py.in
    M flang/tools/CMakeLists.txt
    R flang/tools/f18/CMakeLists.txt
    R flang/tools/f18/dump.cpp
    M llvm/runtimes/CMakeLists.txt
    M openmp/CMakeLists.txt
    R openmp/cmake/modules/LibompCheckFortranFlag.cmake
    M openmp/cmake/modules/LibompHandleFlags.cmake
    M openmp/module/CMakeLists.txt
    M openmp/runtime/cmake/LibompExports.cmake
    M openmp/runtime/test/lit.cfg
    M openmp/runtime/test/lit.site.cfg.in
    M runtimes/cmake/config-Fortran.cmake

  Log Message:
  -----------
  [Flang] Move builtin .mod generation into runtimes (Reapply #137828) (#171515)

Reapplication of #137828 and #169638

Move building the .mod files from openmp/flang to openmp/flang-rt using
a shared mechanism. Motivations to do so are:

1. Most modules are target-dependent and need to be re-compiled for each
target separately, which is something the LLVM_ENABLE_RUNTIMES system
already does. Prime example is `iso_c_binding.mod` which encodes the
target's ABI. Constants such as `c_long_double` also have different
values).
Most other modules have `#ifdef`-enclosed code as well. For instance
this caused offload targets nvptx64-nvidia-cuda/amdgpu-amd-amdhsa to use
the modules files compiled for the host which may contrain uses of the
types REAL(10) or REAL(16) not available for nvptx/amdgpu.

2. CMake has support for Fortran that we should use. Among other things,
it automatically determines module dependencies so there is no need to
hardcode them in the CMakeLists.txt.

Currently the dependencies between builtin modules and `omp_lib.mod`
seem to be incorrect:
https://github.com/llvm/llvm-project/pull/174474#issuecomment-3880189581

3. It allows using Fortran itself to implement Flang-RT. Currently, only
`iso_fortran_env_impl.f90` emits object files that are needed by Fortran
applications (#89403). The workaround of #95388 could be reverted (PR
#169525).


If using Flang for cross-compilation or target-offloading, flang-rt must
now be compiled for each target not only for the library, but also to
get the target-specific module files. For instance in a bootstrapping
runtime build, this can be done by adding:
`-DLLVM_RUNTIME_TARGETS=default;nvptx64-nvidia-cuda;amdgpu-amd-amdhsa`.


Some new dependencies come into play:
* openmp depends on flang-rt for building `lib_omp.mod` and
`lib_omp_kinds.mod`. Currently, if flang-rt is not found then the
modules are not built.
* check-flang depends on flang-rt: If not found, the majority of tests
are disabled. If not building in a bootstrpping build, the location of
the module files can be pointed to using
`-DFLANG_INTRINSIC_MODULES_DIR=<path>`, e.g. in a flang-standalone
build. Alternatively, the test needing any of the intrinsic modules
could be marked with `REQUIRES: flangrt-modules`.
* check-flang depends on openmp: Not a change; tests requiring
`lib_omp.mod` and `lib_omp_kinds.mod` those are already marked with
`openmp_runtime`.

As intrinsic are now specific to the target, their location is moved
from `include/flang` to `<resource-dir>/finclude/flang/<triple>`. The
mechnism to compute the location have been moved from flang-rt
(previously used to compute the location of `libflang_rt.*.a`) to common
locations in `cmake/GetToolchainDirs.cmake` and
`runtimes/CMakeLists.txt` so they can be used by both, openmp and
flang-rt. Potentially the mechnism could also be shared by other
libraries such as compiler-rt.

`finclude` was chosen because `gfortran` uses it as well and avoids
misuse such as `#include <flang/iso_c_binding.mod>`. The search location
is now determined by `ToolChain` in the driver, instead of by the
frontend. Another subdirectory `flang` avoids accidental inclusion of
gfortran-modules which due to compression would result in
user-unfriendly errors. Now the driver adds `-fintrinsic-module-path`
for that location to the frontend call (Just like gfortran does).
Since the driver determines the location,
tests invoking `flang -fc1` and `bbc` must also be passed the location
by llvm-lit. This works like llvm-lit does for finding the include dirs
for Clang using `-print-file-name=...`.


  Commit: 0d8316a53da5ef7b46dd54ea5cf69c89129bb46d
      https://github.com/llvm/llvm-project/commit/0d8316a53da5ef7b46dd54ea5cf69c89129bb46d
  Author: Dan Liew <dan at su-root.co.uk>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M compiler-rt/docs/BuildingCompilerRT.rst
    M compiler-rt/test/CMakeLists.txt

  Log Message:
  -----------
  [Compiler-rt][CMake][BoundsSafety] Add `COMPILER_RT_ENABLE_TEST_SUITES` to control which test suites are enabled (#196385)

This change introduces a new CMake cache variable
`COMPILER_RT_ENABLE_TEST_SUITES` that allows users to have fine-grained
control over which test suites are included and therefore run when
running `ninja check-all`.

For example building with `COMPILER_RT_ENABLE_TEST_SUITES=builtins;asan`
will only enable the builtins and asan tests under `compiler-rt/tests`.

The default value of `COMPILER_RT_INCLUDE_TESTS` is `all` which is a
special value that includes everything and it being the default means
this patch preserves existing behavior. Note this new option only has
affect when `COMPILER_RT_INCLUDE_TESTS` is On.

The primary use case for this change is it allows controlling tests that
don't have a corresponding runtime to be enabled/disabled. An example of
this is the `shadowcallstack` test suite. `-fbounds-safety` also has a
downstream test suite in compiler-rt like this. Previously there was no
way to disable including these tests when `COMPILER_RT_INCLUDE_TESTS`
was on.

The `-fbounds-safety` test suite will be upstreamed once the necessary
clang pieces exist upstream.

A side benefit of this change is it allows building runtimes but not
testing some of them which can be useful in some testing environments
(e.g. smoke-test). It is not the primary motivation though.

While the existing `COMPILER_RT_BUILD_<NAME>` options can be used to
prevent running tests (by not building corresponding runtimes) that
isn't a good solution because it:

* Doesn't work for tests that have no corresponding runtime to be built
  like `shadowcallstack` because there's no CMake option for it.
* Requires specifying multiple CMake options to disable building each
  runtime that we don't want tested. This approach disallows "building
  but not testing certain runtimes" and also is annoying to maintain
  because its effectively a subtractive list (you say what you don't
  want) that has to be updated everytime a new runtime is introduced
  whereas COMPILER_RT_ENABLE_TEST_SUITES is an additive list (you say
  what you want) that doesn't need modifying everytime a new runtime is
  introduced.

To implement this all test directories in `compiler-rt/test` are now
added through the `compiler_rt_test_runtime()` function which has been
adapted to accommodate all use cases.

Assisted-by: Claude Code

rdar://176477660


  Commit: 386dac00fba8c7386fe33174234ca1c22b82258b
      https://github.com/llvm/llvm-project/commit/386dac00fba8c7386fe33174234ca1c22b82258b
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M clang/lib/CodeGen/CGCall.cpp
    M clang/test/CodeGenCXX/new_hot_cold.cpp
    M clang/test/CodeGenCXX/operator-new.cpp

  Log Message:
  -----------
  Revert "[Clang] Mark new as inaccessiblememonly if sane" (#200349)

Reverts llvm/llvm-project#197199.

This had some unexpected optimization impact.


  Commit: 0850f6e62ea02a51be9aa465dbc926d30f7ef6a5
      https://github.com/llvm/llvm-project/commit/0850f6e62ea02a51be9aa465dbc926d30f7ef6a5
  Author: Bill Wendling <morbo at google.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CodeGenFunction.h

  Log Message:
  -----------
  [CodeGen][NFC] Refactor EmitAsmStmt to reduce header churn (#199377)

Implement Justin's suggestion, which was far better than what we had.


  Commit: 2c49ef885bae8fdb540705a8df0200fbc9de4592
      https://github.com/llvm/llvm-project/commit/2c49ef885bae8fdb540705a8df0200fbc9de4592
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/test/Transforms/LoopVectorize/hoist-predicated-loads-with-predicated-stores.ll

  Log Message:
  -----------
  [VPlan] Support URem in getSCEVExprForVPValue. (#199794)

Extend vputils::getSCEVExprForVPValue to construct SCEV expressions for
URem recipes.

Enables SCEV-based no-alias reasoning for stores derived from UREM GEPs.

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


  Commit: 73080a6c3b5c3e7d11c1294e0afa7ebe5821d712
      https://github.com/llvm/llvm-project/commit/73080a6c3b5c3e7d11c1294e0afa7ebe5821d712
  Author: Igor Wodiany <igor.wodiany at amd.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/VOP2Instructions.td
    M llvm/lib/Target/AMDGPU/VOP3Instructions.td
    M llvm/lib/Target/AMDGPU/VOPInstructions.td

  Log Message:
  -----------
  [AMDGPU] Remove _dpp variants from VOPD tables (#200184)

DPP instructions are not eligible to pariticpate in VOPD and will be
eventually rejected -- `VOPDComponentTable` size is reduced by 33%. This
address a comment from #199072.

Assisted-by: Claude Code


  Commit: 7527985fd76cd2a22e4d2a168b813fd29142e24d
      https://github.com/llvm/llvm-project/commit/7527985fd76cd2a22e4d2a168b813fd29142e24d
  Author: Igor Wodiany <igor.wodiany at amd.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

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

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

This further improves lookup by using a packed key that returns both X
and Y eligibility via a direct lookup, removing the need for a binary
search on the VOPDX and VOPDY tables.

Due to TableGen limitations the direct lookup table is generated
manually from the VOPDX and VOPDY tables. Doing it automatically is
future work.

After this patch, `getCanBeVOPD` is reduced to one O(log n) binary
search and one O(1) direct lookup. We could replace the whole function
with a direct lookup using Opc as a key, but the new table would be an
order of magnitude larger. As such, a two-step lookup is the preferred
approach unless we can show that the benefit of a single lookup
outweighs the significant increase in table size — especially since n in
the initial O(log n) lookup is only ~50.

With this patch I'm seeing a decrease from ~2.5% to ~1.75% in perf
report for `getCanBeVOPD`. The baseline has both #199072 and #200184
applied.

Assisted-By: Claude Code


  Commit: afddfe074afb19681e2d7628f37f5d621df2ff3a
      https://github.com/llvm/llvm-project/commit/afddfe074afb19681e2d7628f37f5d621df2ff3a
  Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.h

  Log Message:
  -----------
  [lldb][NFCI] Cleanup AppleObjCClassDescriptorV2::class_ro_t API (#200213)


  Commit: 7a4d7733ae55ef8ac139d80e2b0f2bd1951ff5c8
      https://github.com/llvm/llvm-project/commit/7a4d7733ae55ef8ac139d80e2b0f2bd1951ff5c8
  Author: Deepak Shirke <117824396+deepakshirkem at users.noreply.github.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M lld/ELF/LinkerScript.cpp
    M lld/docs/ReleaseNotes.rst
    M lld/test/ELF/linkerscript/end-overflow-check.test
    A lld/test/ELF/linkerscript/memory-loc-counter-dot-addr.s

  Log Message:
  -----------
  [ELF] Fix location counter used for output section address with MEMOR… (#197293)

When a section uses '.' as its address expression inside a MEMORY region
(e.g. 's02 . : { ... } > FLASH'), lld was incorrectly evaluating '.'
against the memory region's current position instead of the global
location counter. Save the global dot before the memRegion override and
restore it when an explicit addrExpr is present.

Fixes #112919

@maskray @smithp35 could you please review this patch?


  Commit: 3843c160526fcda1e6c0760bff09b9c43c3a0b9d
      https://github.com/llvm/llvm-project/commit/3843c160526fcda1e6c0760bff09b9c43c3a0b9d
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/Pointer.cpp
    M clang/lib/AST/ByteCode/Pointer.h
    M clang/test/AST/ByteCode/const-eval.c

  Log Message:
  -----------
  [clang][bytecode] `Pointer::computeOffsetForComparison()` can fail (#199987)

It used to cause an assertion failure inside
`ASTContext::getTypeSizeInChars()` when the reocord decl was not
defined.


  Commit: cfeeab33e66c56bf7619a8672bf44cb48473b00d
      https://github.com/llvm/llvm-project/commit/cfeeab33e66c56bf7619a8672bf44cb48473b00d
  Author: Dominik Steenken <dost at de.ibm.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp

  Log Message:
  -----------
  [SystemZ] Remove unused variable warning (#200359)

This PR removes a variable declaration that was causing issues in builds
without assertions and `-Werror` enabled. Instead of declaring a
variable that is then only used in an assert, the value assigned to the
variable is moved into the assert instead.

This should resolve the build issue caused by #169317 discovered
[here](https://lab.llvm.org/buildbot/#/builders/228/builds/377).


  Commit: e7a1a60f63b095f45cbd66f5e9542bd2498e371a
      https://github.com/llvm/llvm-project/commit/e7a1a60f63b095f45cbd66f5e9542bd2498e371a
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/revec-fma-vectorize.ll

  Log Message:
  -----------
  [SLP][REVEC] Skip external-use extract cost for insertelement buildvector roots

An insertelement buildvector node produces a single vector whose type
equals the scalar type, and its external use is the whole vector, not a
subvector lane. SLP charged it an SK_ExtractSubvector cost, flipping
trees like the complex FMA (2.0f * A) + B from cost -1 to 0 so REVEC
kept them scalar.

Fixes #199715

Reviewers: RKSimon, hiraditya, bababuck

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


  Commit: 1cf8469545abb5f5df92714a3b6d98dc2a485fa0
      https://github.com/llvm/llvm-project/commit/1cf8469545abb5f5df92714a3b6d98dc2a485fa0
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/ValueTypes.h
    M llvm/include/llvm/CodeGenTypes/MachineValueType.h
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp
    M llvm/lib/Target/Hexagon/HexagonISelDAGToDAGHVX.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.h
    M llvm/lib/Target/M68k/M68kISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVSelectionDAGInfo.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
    M llvm/lib/Target/X86/X86FastISel.cpp
    M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp

  Log Message:
  -----------
  [NFC][ValueType] Add is*VectorOf(VT) helpers. (#200189)

Allows VT.isFixedLengthVectorOf(MVT::i1) in place of
"VT.isFixedLengthVector() && VT.getVectorElementType() == MVT::i1".


  Commit: 354cdd40be8715c41c1d68faab31c330e026b369
      https://github.com/llvm/llvm-project/commit/354cdd40be8715c41c1d68faab31c330e026b369
  Author: Martin Storsjö <martin at martin.st>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M compiler-rt/lib/builtins/arm/fixdfdi.S
    M compiler-rt/lib/builtins/arm/fixsfdi.S
    M compiler-rt/lib/builtins/arm/fixunsdfdi.S
    M compiler-rt/lib/builtins/arm/fixunssfdi.S

  Log Message:
  -----------
  [compiler-rt] [ARM] Restore Windows specific names for fp->int functions (#200360)

These Windows specific names were added in
8c59680ac26cf3d772f51aa5ebd64be8e59ed384 (and refactored later in
e6407356ba008e474322d52b7d031f65fa4913fc).

When ARM specific implementations of them were added in
174eb79572b3433aa338ede31815fa8fa6a13b29, the ARM specific files replace
the generic ones - while the ARM specific file lacked the Windows/ARM
renaming of the functions.

Restore the Windows naming of these functions.


  Commit: 458e23591c4df2b330aa9d949c4b0933c1529be2
      https://github.com/llvm/llvm-project/commit/458e23591c4df2b330aa9d949c4b0933c1529be2
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M llvm/lib/Analysis/ConstantFolding.cpp
    M llvm/test/Transforms/InstSimplify/sincos.ll

  Log Message:
  -----------
  [LLVM][InstSimplify] Ensure scalar sincos constant fold only triggers for scalars. (#200229)


  Commit: fad51d3f41482e148683e12741ac9abfbe49742d
      https://github.com/llvm/llvm-project/commit/fad51d3f41482e148683e12741ac9abfbe49742d
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M libcxx/include/__configuration/namespace.h

  Log Message:
  -----------
  [libc++] Only push/pop diagnostics for ABI annotations pragmas if not in a system header (#200338)

This should significantly reduce the compile time hit for Clang modules
with the new explicit and implicit ABI annotations.


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

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/LoongArch/lsx/vmskcond.ll

  Log Message:
  -----------
  [DAG] isAllOnesOrAllOnesSplat - handle implicitly truncated constants (#200209)

Allow implicit truncation in BUILD_VECTOR/SPLAT_VECTOR splat nodes - we only need 1's in the lower bits of every element

More yak shaving for #198162 where we often have <8 x i1> <i8 1, i8 1, i8 1, i8 1, i8 1, i8 1, i8 1, i8 1> used in XOR patterns.


  Commit: 1cd28beb77558f80644b4764a9402d0461345ae9
      https://github.com/llvm/llvm-project/commit/1cd28beb77558f80644b4764a9402d0461345ae9
  Author: Ivan Kosarev <ivan.kosarev at amd.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.768bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.832bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.896bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.960bit.ll
    M llvm/test/CodeGen/AMDGPU/extend-phi-subrange-not-in-parent.mir
    M llvm/test/CodeGen/AMDGPU/ipra-regmask.ll
    M llvm/test/CodeGen/AMDGPU/load-constant-i1.ll
    M llvm/test/CodeGen/AMDGPU/preserve-wwm-copy-dst-reg.ll
    M llvm/test/CodeGen/AMDGPU/scc-clobbered-sgpr-to-vmem-spill.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-to-vmem-scc-clobber-unhandled.mir
    M llvm/test/CodeGen/AMDGPU/spill-scavenge-offset.ll
    M llvm/test/CodeGen/AMDGPU/split-liverange-overlapping-copies.mir
    A llvm/test/MC/AMDGPU/vcc_tuples.s

  Log Message:
  -----------
  [AMDGPU] Have VCC as a first-class member of the SGPR pool. (#173870)

Add VCC and tuples using VCC to SGPR register classes.

We already support VCC as an allocatable register for 32-bit SGPR
operands, so it seems most natural to support it for register
tuple operands as well.

s106/s107 are still not allowed as aliases of vcc_lo/hi in
AsmParser.

The names given to the VCC tuples match those produced by SP3,
though it feels like there is room for improvement.

https://github.com/llvm/llvm-project/issues/62651


  Commit: 472e7ed971bd24a14ba2c75f6c442928f8283d7c
      https://github.com/llvm/llvm-project/commit/472e7ed971bd24a14ba2c75f6c442928f8283d7c
  Author: Nerixyz <nerixdev at outlook.de>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionUtil.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp
    M lldb/test/API/commands/expression/expr_inside_lambda/TestExprInsideLambdas.py

  Log Message:
  -----------
  [lldb] Treat `__this` from CodeView/PDB as captured `this` (#200271)

When building with CodeView/PDB, the captured `this` parameter in a
lambda is named `__this` instead of `this` (for clang, see
[`CGDebugInfo::GetLambdaCaptureName`](https://github.com/llvm/llvm-project/blob/23776bd325ec951781923a638ad632e4126b30ea/clang/lib/CodeGen/CGDebugInfo.cpp#L2064)).

In this PR, I added lookups for `__this`. This change will make the
success cases in `TestExprInsideLambdas.py` pass. The only difference
with CodeView/PDB is that the errors show "use of undeclared identifier"
instead of "use of non-static data member" because the lambda object
isn't a nested type here.

Fixes #71837.


  Commit: e0282749ff6bab5a436b201315982483a6d04113
      https://github.com/llvm/llvm-project/commit/e0282749ff6bab5a436b201315982483a6d04113
  Author: Hassnaa Hamdi <hassnaa.hamdi at arm.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/LoopVectorize.h
    M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp

  Log Message:
  -----------
  [LV][NFC] Factor out vectorization report functions to a separate namespace (#194951)

This patch groups the stateless vectorization-reporting helpers into a
new `LoopVectorizationUtils` namespace in the Planner so they can be
shared cleanly across the Loop Vectorizer's components.


  Commit: 9f34092cbdc079e17fb42c4c911f5e90ffbb7f14
      https://github.com/llvm/llvm-project/commit/9f34092cbdc079e17fb42c4c911f5e90ffbb7f14
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M clang/www/c_status.html

  Log Message:
  -----------
  [C23] Combine two proposals on C status tracking page (#200239)

N2601 is what added Annex H for the interchange and extended floating
point types.

N2844 removed default argument promotions for the types in Annex H.

So these two proposals really do go together.


  Commit: 421cfead959f7a616a4899828895347edb28ff1b
      https://github.com/llvm/llvm-project/commit/421cfead959f7a616a4899828895347edb28ff1b
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/Opcodes.td
    M clang/test/AST/ByteCode/cxx23.cpp
    M clang/test/SemaCXX/constant-expression-p2280r4.cpp

  Log Message:
  -----------
  [clang][bytecode] Reject dynamic_cast on constexpr-unknown pointers (#200363)


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

  Changed paths:
    M llvm/test/CodeGen/X86/avx512-mask-op.ll

  Log Message:
  -----------
  [X86] avx512-mask-op.ll - add #198162 test coverage based off "Eval4Inputs" example (#200373)


  Commit: 8c4a5318ae93ffc598b5dbc4cc0c3795ecd423eb
      https://github.com/llvm/llvm-project/commit/8c4a5318ae93ffc598b5dbc4cc0c3795ecd423eb
  Author: Ilia Kuklin <ikuklin at accesssoftek.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

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

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

This patch enables the following:
1. Attempting to parse a `DXContainer` from stream 5 (generated by
DirectX tools) of a PDB file.
2. Outputting a PDB file with a built in DXContainer as YAML. Existing
DirectX tools form a PDB container with empty DBI, TPI and IPI streams,
so this patch also allows them to be empty when dumping a PDB file as
YAML.
3. Creating a PDB file from YAML with an built in DXContainer. When
creating a PDB with a DXContainer, streams DBI, TPI and IPI can be
completely empty, so this patch also includes adjustments to allow
forming such a PDB file. This is done to maintain compatibility with
other DirectX tools.


  Commit: 35c0ccb2e3d2c851c66f583b00030b140a336297
      https://github.com/llvm/llvm-project/commit/35c0ccb2e3d2c851c66f583b00030b140a336297
  Author: Tony Varghese <tonypalampalliyil at gmail.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M .ci/green-dragon/lldb-windows.groovy
    M .github/actions/push-container/action.yml
    M .github/workflows/hlsl-test-all.yaml
    M .github/workflows/premerge.yaml
    M .github/workflows/release-binaries-all.yml
    M .github/workflows/release-binaries.yml
    M .github/workflows/release-sources.yml
    M .github/workflows/release-tasks.yml
    M .github/workflows/upload-release-artifact/action.yml
    M bolt/test/lit.cfg.py
    M clang-tools-extra/clang-tidy/readability/RedundantParenthesesCheck.cpp
    M clang-tools-extra/clangd/XRefs.cpp
    M clang-tools-extra/clangd/test/type-hierarchy-ext.test
    M clang-tools-extra/clangd/test/type-hierarchy.test
    M clang-tools-extra/clangd/unittests/CallHierarchyTests.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-parameters.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-values.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-parentheses.cpp
    M clang/docs/OpenMPSupport.rst
    M clang/docs/ReleaseNotes.rst
    M clang/docs/analyzer/developer-docs/IPA.rst
    M clang/include/clang/AST/DeclTemplate.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeAnnotations.h
    M clang/include/clang/Analysis/AnalysisDeclContext.h
    M clang/include/clang/Analysis/PathDiagnostic.h
    M clang/include/clang/Analysis/ProgramPoint.h
    M clang/include/clang/Basic/CodeGenOptions.def
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/include/clang/Driver/Types.def
    M clang/include/clang/Options/Options.td
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/SemaObjC.h
    M clang/include/clang/StaticAnalyzer/Checkers/Taint.h
    M clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h
    M clang/include/clang/StaticAnalyzer/Core/Checker.h
    M clang/include/clang/StaticAnalyzer/Core/CheckerManager.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/Environment.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/LoopWidening.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SValBuilder.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/Store.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h
    M clang/include/module.modulemap
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Function.h
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ByteCode/Opcodes.td
    M clang/lib/AST/ByteCode/Pointer.cpp
    M clang/lib/AST/ByteCode/Pointer.h
    M clang/lib/Analysis/AnalysisDeclContext.cpp
    M clang/lib/Analysis/ExprMutationAnalyzer.cpp
    M clang/lib/Analysis/FlowSensitive/Models/UncheckedStatusOrAccessModel.cpp
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/lib/Analysis/LifetimeSafety/LifetimeAnnotations.cpp
    M clang/lib/Analysis/PathDiagnostic.cpp
    M clang/lib/Analysis/ProgramPoint.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAMDGPU.cpp
    M clang/lib/CIR/CodeGen/CIRGenCoroutine.cpp
    M clang/lib/CIR/CodeGen/CIRGenException.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/lib/CodeGen/ABIInfoImpl.cpp
    M clang/lib/CodeGen/CGAtomic.cpp
    M clang/lib/CodeGen/CGBlocks.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGCUDANV.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGDecl.cpp
    M clang/lib/CodeGen/CGException.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CGVTables.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M clang/lib/CodeGen/MicrosoftCXXABI.cpp
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
    M clang/lib/CodeGen/TargetBuiltins/X86.cpp
    M clang/lib/CodeGen/Targets/AMDGPU.cpp
    M clang/lib/CodeGen/Targets/X86.cpp
    M clang/lib/DependencyScanning/DependencyScannerImpl.cpp
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ModulesDriver.cpp
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/HIPAMD.cpp
    M clang/lib/Driver/Types.cpp
    M clang/lib/Sema/SemaAMDGPU.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaExprObjC.cpp
    M clang/lib/Sema/SemaLifetimeSafety.h
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/StaticAnalyzer/Checkers/AnalysisOrderChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/AnalyzerStatsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ArrayBoundChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/BasicObjCFoundationChecks.cpp
    M clang/lib/StaticAnalyzer/Checkers/BuiltinFunctionChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/CXXDeleteChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/CXXSelfAssignmentChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/CallAndMessageChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/CastValueChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/CheckObjCDealloc.cpp
    M clang/lib/StaticAnalyzer/Checkers/CheckerDocumentation.cpp
    M clang/lib/StaticAnalyzer/Checkers/ChrootChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ContainerModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/ConversionChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/DebugContainerModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/DebugIteratorModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/DereferenceChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/DirectIvarAssignment.cpp
    M clang/lib/StaticAnalyzer/Checkers/DynamicTypeChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/DynamicTypePropagation.cpp
    M clang/lib/StaticAnalyzer/Checkers/ErrnoChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ErrnoModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/ErrnoModeling.h
    M clang/lib/StaticAnalyzer/Checkers/ErrnoTesterChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ExprInspectionChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/FuchsiaHandleChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/InnerPointerChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/InvalidatedIteratorChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/Iterator.cpp
    M clang/lib/StaticAnalyzer/Checkers/Iterator.h
    M clang/lib/StaticAnalyzer/Checkers/IteratorModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/IteratorRangeChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/LocalizationChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MIGChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MacOSKeychainAPIChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MismatchedIteratorChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MoveChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/NoOwnershipChangeVisitor.cpp
    M clang/lib/StaticAnalyzer/Checkers/NonNullParamChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ObjCSuperDeallocChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/PthreadLockChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountChecker.h
    M clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountDiagnostics.cpp
    M clang/lib/StaticAnalyzer/Checkers/ReturnPointerRangeChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/STLAlgorithmModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/SmartPtrModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/StackAddrEscapeChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StdVariantChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/Taint.cpp
    M clang/lib/StaticAnalyzer/Checkers/TaintTesterChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/TraversalChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/UnconditionalVAArgChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/UndefBranchChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/UndefinedArraySubscriptChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/UninitializedObject/UninitializedObjectChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/UnreachableCodeChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/VAListChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/VLASizeChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/VforkChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/VirtualCallChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefLocalVarsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/cert/InvalidPtrChecker.cpp
    M clang/lib/StaticAnalyzer/Core/BugReporter.cpp
    M clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
    M clang/lib/StaticAnalyzer/Core/CallEvent.cpp
    M clang/lib/StaticAnalyzer/Core/CheckerManager.cpp
    M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp
    M clang/lib/StaticAnalyzer/Core/Environment.cpp
    M clang/lib/StaticAnalyzer/Core/ExplodedGraph.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineObjC.cpp
    M clang/lib/StaticAnalyzer/Core/LoopUnrolling.cpp
    M clang/lib/StaticAnalyzer/Core/LoopWidening.cpp
    M clang/lib/StaticAnalyzer/Core/MemRegion.cpp
    R clang/lib/StaticAnalyzer/Core/PrettyStackTraceLocationContext.h
    A clang/lib/StaticAnalyzer/Core/PrettyStackTraceStackFrame.h
    M clang/lib/StaticAnalyzer/Core/ProgramState.cpp
    M clang/lib/StaticAnalyzer/Core/RegionStore.cpp
    M clang/lib/StaticAnalyzer/Core/SValBuilder.cpp
    M clang/lib/StaticAnalyzer/Core/SymbolManager.cpp
    M clang/lib/StaticAnalyzer/Core/WorkList.cpp
    M clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
    M clang/lib/Tooling/InterpolatingCompilationDatabase.cpp
    M clang/test/AST/ByteCode/const-eval.c
    M clang/test/AST/ByteCode/cxx11.cpp
    M clang/test/AST/ByteCode/cxx23.cpp
    A clang/test/AST/ast-print-amdgcn-predicate.c
    M clang/test/Analysis/Checkers/WebKit/call-args.cpp
    M clang/test/Analysis/Checkers/WebKit/objc-mock-types.h
    M clang/test/Analysis/Checkers/WebKit/uncounted-local-vars.cpp
    A clang/test/Analysis/Checkers/WebKit/unretained-call-args-member.mm
    M clang/test/Analysis/Checkers/WebKit/unretained-local-vars.mm
    A clang/test/CIR/CodeGen/coro-exceptions.cpp
    A clang/test/CIR/CodeGen/vector-binop-overflow.cpp
    M clang/test/CIR/CodeGen/vla.c
    A clang/test/CXX/basic/basic.link/p11.cpp
    A clang/test/CXX/expr/expr.prim/expr.prim.this/p4.cpp
    M clang/test/CXX/temp/temp.decls/temp.spec.partial/temp.spec.partial.member/p2.cpp
    A clang/test/CodeGen/AArch64/mskernel-interlocked.c
    A clang/test/CodeGen/SystemZ/stack-guard-global-option.c
    A clang/test/CodeGen/X86/mskernel-interlocked.c
    R clang/test/CodeGen/amdgpu-abi-struct-coerce.c
    M clang/test/CodeGen/amdgpu-variadic-call.c
    M clang/test/CodeGen/construction-vtable-visibility.cpp
    M clang/test/CodeGen/push-hidden-visibility-subclass.cpp
    M clang/test/CodeGen/sanitize-metadata-nosanitize.c
    M clang/test/CodeGen/scoped-atomic-ops.c
    M clang/test/CodeGen/split-lto-unit-input.cpp
    M clang/test/CodeGen/stack-clash-protection.c
    M clang/test/CodeGenCUDA/amdgpu-kernel-arg-pointer-type.cu
    M clang/test/CodeGenCUDA/atomic-options.hip
    M clang/test/CodeGenCUDA/builtins-amdgcn.cu
    M clang/test/CodeGenCUDA/builtins-spirv-amdgcn.cu
    M clang/test/CodeGenCUDA/increment-index-for-thunks.cu
    M clang/test/CodeGenCUDA/record-layout.cu
    M clang/test/CodeGenCXX/OmitRTTIComponentABI/simple-vtable-definition.cpp
    M clang/test/CodeGenCXX/PR26569.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/available_externally-vtable.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/child-inheritted-from-parent-in-comdat.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/child-vtable-in-comdat.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/cross-translation-unit-1.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/cross-translation-unit-2.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/diamond-inheritance.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/diamond-virtual-inheritance.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/inheritted-virtual-function.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/inline-virtual-function.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/inlined-key-function.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/multiple-inheritance.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/no-alias-when-dso-local.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/override-pure-virtual-method.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/overriden-virtual-function.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/parent-and-child-in-comdats.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/parent-vtable-in-comdat.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/relative-vtables-flag.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/relative-vtables-hwasan.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/simple-vtable-definition.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/vtable-hidden-when-in-comdat.cpp
    M clang/test/CodeGenCXX/amdgcn-func-arg.cpp
    M clang/test/CodeGenCXX/apple-kext-indirect-call-2.cpp
    M clang/test/CodeGenCXX/apple-kext-indirect-call.cpp
    M clang/test/CodeGenCXX/apple-kext-indirect-virtual-dtor-call.cpp
    M clang/test/CodeGenCXX/attr-exclude_from_explicit_instantiation.exclude_from_dllexport.cpp
    M clang/test/CodeGenCXX/attr-exclude_from_explicit_instantiation.exclude_from_dllimport.cpp
    M clang/test/CodeGenCXX/cfi-cross-dso.cpp
    M clang/test/CodeGenCXX/ctor-dtor-alias.cpp
    M clang/test/CodeGenCXX/cxx0x-initializer-stdinitializerlist.cpp
    M clang/test/CodeGenCXX/cxx11-vtable-key-function.cpp
    M clang/test/CodeGenCXX/dllexport.cpp
    M clang/test/CodeGenCXX/dllimport-rtti.cpp
    M clang/test/CodeGenCXX/dllimport.cpp
    M clang/test/CodeGenCXX/dso-local-executable.cpp
    M clang/test/CodeGenCXX/dynamic-cast-address-space.cpp
    M clang/test/CodeGenCXX/internal-linkage.cpp
    M clang/test/CodeGenCXX/key-function-vtable.cpp
    M clang/test/CodeGenCXX/mangle-ms-md5.cpp
    M clang/test/CodeGenCXX/mangle-subst-std.cpp
    M clang/test/CodeGenCXX/mdefault-visibility-export-mapping-rtti.cpp
    M clang/test/CodeGenCXX/microsoft-abi-extern-template.cpp
    M clang/test/CodeGenCXX/microsoft-abi-vftables.cpp
    M clang/test/CodeGenCXX/microsoft-abi-vtables-return-thunks.cpp
    M clang/test/CodeGenCXX/microsoft-abi-vtables-single-inheritance.cpp
    M clang/test/CodeGenCXX/microsoft-abi-vtables-virtual-inheritance.cpp
    M clang/test/CodeGenCXX/microsoft-interface.cpp
    M clang/test/CodeGenCXX/microsoft-no-rtti-data.cpp
    M clang/test/CodeGenCXX/microsoft-vector-deleting-dtors.cpp
    M clang/test/CodeGenCXX/modules-vtable.cppm
    M clang/test/CodeGenCXX/ms-local-vft-alias-comdat.cpp
    M clang/test/CodeGenCXX/ms-thunks-unprototyped.cpp
    M clang/test/CodeGenCXX/pr70585.cppm
    M clang/test/CodeGenCXX/ps-dllstorage-vtable-rtti.cpp
    M clang/test/CodeGenCXX/ptrauth-apple-kext-indirect-call-2.cpp
    M clang/test/CodeGenCXX/ptrauth-apple-kext-indirect-call.cpp
    M clang/test/CodeGenCXX/ptrauth-apple-kext-indirect-virtual-dtor-call.cpp
    M clang/test/CodeGenCXX/ptrauth-explicit-vtable-pointer-control.cpp
    M clang/test/CodeGenCXX/ptrauth-global-constant-initializers.cpp
    M clang/test/CodeGenCXX/ptrauth-member-function-pointer.cpp
    M clang/test/CodeGenCXX/ptrauth-type-info-vtable.cpp
    M clang/test/CodeGenCXX/ptrauth-virtual-function.cpp
    M clang/test/CodeGenCXX/ptrauth-vtable-virtual-inheritance-thunk.cpp
    M clang/test/CodeGenCXX/template-instantiation.cpp
    M clang/test/CodeGenCXX/type-metadata.cpp
    M clang/test/CodeGenCXX/type_visibility.cpp
    M clang/test/CodeGenCXX/vcall-visibility-metadata.cpp
    M clang/test/CodeGenCXX/virt-template-vtable.cpp
    M clang/test/CodeGenCXX/visibility-dllstorageclass.cpp
    M clang/test/CodeGenCXX/visibility.cpp
    M clang/test/CodeGenCXX/vtable-align-address-space.cpp
    M clang/test/CodeGenCXX/vtable-align.cpp
    M clang/test/CodeGenCXX/vtable-assume-load-address-space.cpp
    M clang/test/CodeGenCXX/vtable-assume-load.cpp
    M clang/test/CodeGenCXX/vtable-available-externally.cpp
    M clang/test/CodeGenCXX/vtable-consteval.cpp
    M clang/test/CodeGenCXX/vtable-constexpr-address-space.cpp
    M clang/test/CodeGenCXX/vtable-constexpr.cpp
    M clang/test/CodeGenCXX/vtable-key-function-address-space.cpp
    M clang/test/CodeGenCXX/vtable-key-function-arm.cpp
    M clang/test/CodeGenCXX/vtable-key-function-ios.cpp
    M clang/test/CodeGenCXX/vtable-key-function-win-comdat.cpp
    M clang/test/CodeGenCXX/vtable-key-function.cpp
    M clang/test/CodeGenCXX/vtable-linkage-address-space.cpp
    M clang/test/CodeGenCXX/vtable-linkage.cpp
    M clang/test/CodeGenCXX/vtt-layout-address-space.cpp
    M clang/test/CodeGenCXX/vtt-layout.cpp
    M clang/test/CodeGenCXX/windows-itanium-type-info.cpp
    M clang/test/CodeGenCoroutines/coro-gro4.cpp
    M clang/test/CodeGenCoroutines/coro-symmetric-transfer-03.cpp
    M clang/test/CodeGenCoroutines/coro-symmetric-transfer-04.cpp
    M clang/test/CodeGenCoroutines/pr65018.cpp
    A clang/test/CodeGenHIP/offload-pgo-sections.hip
    M clang/test/CodeGenHIP/placement-new-addrspace.hip
    A clang/test/CodeGenHIP/profile-coverage-mapping.hip
    A clang/test/CodeGenHLSL/resources/res-array-global-to-local.hlsl
    M clang/test/CodeGenHLSL/resources/res-array-local2.hlsl
    M clang/test/CodeGenHLSL/resources/resource-bindings.hlsl
    A clang/test/CodeGenHLSL/resources/resources-in-structs-array-to-local.hlsl
    M clang/test/CodeGenOpenCL/addr-space-struct-arg.cl
    M clang/test/CodeGenOpenCL/amdgpu-abi-struct-arg-byref.cl
    M clang/test/CodeGenOpenCL/amdgpu-abi-struct-coerce.cl
    M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
    M clang/test/CodeGenOpenCL/atomic-builtins-default-to-device-scope.cl
    M clang/test/CodeGenOpenCL/atomic-ops.cl
    M clang/test/CodeGenSYCL/kernel-caller-entry-point.cpp
    M clang/test/DebugInfo/CXX/vtable-inheritance-diamond.cpp
    M clang/test/DebugInfo/CXX/vtable-inheritance-multiple.cpp
    M clang/test/DebugInfo/CXX/vtable-inheritance-simple-main.cpp
    M clang/test/DebugInfo/CXX/vtable-inheritance-simple.cpp
    M clang/test/DebugInfo/CXX/vtable-inheritance-virtual.cpp
    M clang/test/DebugInfo/CXX/vtable-template-instantiation.cpp
    A clang/test/Driver/dxc_section_emission.hlsl
    M clang/test/Driver/hip-options.hip
    M clang/test/Driver/modules-driver-dep-graph-stdlib-modules.cpp
    M clang/test/Driver/modules-driver-import-std.cpp
    M clang/test/Driver/split-debug.c
    M clang/test/Driver/stack-protector-guard.c
    M clang/test/Headers/amdgcn-openmp-device-math-complex.c
    M clang/test/Headers/hip-header.hip
    M clang/test/Modules/vtable-windows.cppm
    M clang/test/OpenMP/amdgcn_target_device_vla.cpp
    M clang/test/OpenMP/amdgpu_target_with_aligned_attribute.c
    M clang/test/OpenMP/nvptx_target_pure_deleted_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_codegen_as_distribute.cpp
    M clang/test/OpenMP/target_teams_generic_loop_codegen_as_parallel_for.cpp
    M clang/test/OpenMP/target_vtable_codegen_explicit.cpp
    M clang/test/Sema/Inputs/lifetime-analysis.h
    M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
    M clang/test/Sema/warn-lifetime-safety-cfg-bailout.cpp
    M clang/test/Sema/warn-lifetime-safety-dangling-field.cpp
    M clang/test/Sema/warn-lifetime-safety-dangling-global.cpp
    M clang/test/Sema/warn-lifetime-safety-misplaced-lifetimebound-cross-tu.cpp
    M clang/test/Sema/warn-lifetime-safety-misplaced-lifetimebound-intra-tu.cpp
    A clang/test/Sema/warn-lifetime-safety-misplaced-lifetimebound-macro.cpp
    M clang/test/Sema/warn-lifetime-safety-suggestions.cpp
    M clang/test/Sema/warn-lifetime-safety.cpp
    M clang/test/SemaCXX/constant-expression-cxx14.cpp
    M clang/test/SemaCXX/constant-expression-p2280r4.cpp
    M clang/test/SemaOpenCL/builtins-amdgcn-error-gfx1250-cooperative-atomics.cl
    M clang/test/SemaTemplate/class-template-spec.cpp
    M clang/unittests/Analysis/ExprMutationAnalyzerTest.cpp
    M clang/unittests/Analysis/FlowSensitive/MockHeaders.cpp
    M clang/unittests/Analysis/FlowSensitive/UncheckedStatusOrAccessModelTestFixture.cpp
    M clang/unittests/StaticAnalyzer/BlockEntranceCallbackTest.cpp
    M clang/unittests/StaticAnalyzer/CallDescriptionTest.cpp
    M clang/unittests/StaticAnalyzer/CallEventTest.cpp
    M clang/unittests/StaticAnalyzer/FalsePositiveRefutationBRVisitorTest.cpp
    M clang/unittests/StaticAnalyzer/ParamRegionTest.cpp
    M clang/unittests/StaticAnalyzer/StoreTest.cpp
    M clang/unittests/StaticAnalyzer/SymbolReaperTest.cpp
    M clang/unittests/StaticAnalyzer/UnsignedStatDemo.cpp
    M clang/www/analyzer/checker_dev_manual.html
    M clang/www/c_status.html
    M clang/www/cxx_dr_status.html
    M compiler-rt/CMakeLists.txt
    M compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake
    M compiler-rt/cmake/base-config-ix.cmake
    M compiler-rt/docs/BuildingCompilerRT.rst
    M compiler-rt/include/sanitizer/tysan_interface.h
    M compiler-rt/lib/asan/asan_allocator.h
    M compiler-rt/lib/asan/asan_mapping.h
    M compiler-rt/lib/builtins/CMakeLists.txt
    A compiler-rt/lib/builtins/arm/fixdfdi.S
    A compiler-rt/lib/builtins/arm/fixdfsi.S
    A compiler-rt/lib/builtins/arm/fixsfdi.S
    A compiler-rt/lib/builtins/arm/fixsfsi.S
    A compiler-rt/lib/builtins/arm/fixunsdfdi.S
    A compiler-rt/lib/builtins/arm/fixunsdfsi.S
    A compiler-rt/lib/builtins/arm/fixunssfdi.S
    A compiler-rt/lib/builtins/arm/fixunssfsi.S
    M compiler-rt/lib/profile/CMakeLists.txt
    M compiler-rt/lib/profile/InstrProfilingFile.c
    A compiler-rt/lib/profile/InstrProfilingPlatformROCm.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_asm.h
    M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_platform.h
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_linux.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.h
    A compiler-rt/lib/sanitizer_common/sanitizer_syscall_linux_alpha.inc
    M compiler-rt/lib/scudo/standalone/combined.h
    M compiler-rt/lib/scudo/standalone/include/scudo/interface.h
    M compiler-rt/lib/scudo/standalone/memtag.h
    M compiler-rt/lib/scudo/standalone/primary32.h
    M compiler-rt/lib/scudo/standalone/primary64.h
    M compiler-rt/lib/scudo/standalone/tests/CMakeLists.txt
    A compiler-rt/lib/scudo/standalone/tests/error_info_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/primary_test.cpp
    M compiler-rt/lib/scudo/standalone/wrappers_c.cpp
    M compiler-rt/lib/tysan/tysan.cpp
    M compiler-rt/lib/tysan/tysan.h
    M compiler-rt/lib/tysan/tysan_interceptors.cpp
    M compiler-rt/test/CMakeLists.txt
    A compiler-rt/test/builtins/Unit/fixdfdinew_test.c
    A compiler-rt/test/builtins/Unit/fixdfsinew_test.c
    A compiler-rt/test/builtins/Unit/fixsfdinew_test.c
    A compiler-rt/test/builtins/Unit/fixsfsinew_test.c
    A compiler-rt/test/builtins/Unit/fixunsdfdinew_test.c
    A compiler-rt/test/builtins/Unit/fixunsdfsinew_test.c
    A compiler-rt/test/builtins/Unit/fixunssfdinew_test.c
    A compiler-rt/test/builtins/Unit/fixunssfsinew_test.c
    A compiler-rt/test/tysan/set_type_unknown-interface.c
    M flang-rt/CMakeLists.txt
    M flang-rt/cmake/modules/AddFlangRT.cmake
    M flang-rt/cmake/modules/AddFlangRTOffload.cmake
    A flang-rt/cmake/modules/FlangRTIntrospection.cmake
    M flang-rt/lib/CMakeLists.txt
    M flang-rt/lib/runtime/CMakeLists.txt
    A flang-rt/lib/runtime/__cuda_builtins.f90
    A flang-rt/lib/runtime/__cuda_device.f90
    A flang-rt/lib/runtime/__fortran_builtins.f90
    A flang-rt/lib/runtime/__fortran_ieee_exceptions.f90
    A flang-rt/lib/runtime/__fortran_type_info.f90
    A flang-rt/lib/runtime/__ppc_intrinsics.f90
    A flang-rt/lib/runtime/__ppc_types.f90
    A flang-rt/lib/runtime/cooperative_groups.f90
    A flang-rt/lib/runtime/cuda_runtime_api.f90
    A flang-rt/lib/runtime/cudadevice.f90
    A flang-rt/lib/runtime/flang_debug.f90
    A flang-rt/lib/runtime/ieee_arithmetic.f90
    A flang-rt/lib/runtime/ieee_exceptions.f90
    A flang-rt/lib/runtime/ieee_features.f90
    A flang-rt/lib/runtime/iso_c_binding.f90
    A flang-rt/lib/runtime/iso_fortran_env.f90
    M flang-rt/lib/runtime/iso_fortran_env_impl.cpp
    A flang-rt/lib/runtime/iso_fortran_env_impl.f90
    A flang-rt/lib/runtime/mma.f90
    M flang-rt/test/CMakeLists.txt
    M flang-rt/test/Driver/compare_iso_fortran_env_symbols.f90
    M flang-rt/test/Driver/iso_fortran_env_impl.f90
    M flang-rt/test/lit.cfg.py
    M flang-rt/test/lit.site.cfg.py.in
    M flang/CMakeLists.txt
    M flang/lib/Frontend/FrontendAction.cpp
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M flang/lib/Optimizer/Analysis/ArraySectionAnalyzer.cpp
    M flang/lib/Optimizer/Builder/CUDAIntrinsicCall.cpp
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/mod-file.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/semantics.cpp
    R flang/module/.clang-format
    R flang/module/__cuda_builtins.f90
    R flang/module/__cuda_device.f90
    R flang/module/__fortran_builtins.f90
    R flang/module/__fortran_ieee_exceptions.f90
    R flang/module/__fortran_type_info.f90
    R flang/module/__ppc_intrinsics.f90
    R flang/module/__ppc_types.f90
    R flang/module/cooperative_groups.f90
    R flang/module/cuda_runtime_api.f90
    R flang/module/cudadevice.f90
    R flang/module/flang_debug.f90
    R flang/module/ieee_arithmetic.f90
    R flang/module/ieee_exceptions.f90
    R flang/module/ieee_features.f90
    R flang/module/iso_c_binding.f90
    R flang/module/iso_fortran_env.f90
    R flang/module/iso_fortran_env_impl.f90
    R flang/module/mma.f90
    M flang/test/CMakeLists.txt
    R flang/test/Driver/Inputs/resource_dir_with_per_target_subdir/finclude/flang/x86_64-unknown-linux-gnu/.keep
    M flang/test/Driver/intrinsic-module-path_per_target.f90
    M flang/test/Driver/pp-fixed-form.f90
    M flang/test/Fir/array-coor-canonicalization.fir
    A flang/test/HLFIR/order_assignments/where-allocatable-base.f90
    M flang/test/Lower/CUDA/cuda-device-proc.cuf
    A flang/test/Lower/OpenMP/Todo/ordered-depend.f90
    M flang/test/Lower/OpenMP/simd_aarch64.f90
    M flang/test/Lower/OpenMP/target-enter-data-default-openmp52.f90
    M flang/test/Lower/where-loc.f90
    M flang/test/Parser/bug2280.f90
    M flang/test/Preprocessing/fixed-free.f
    M flang/test/Preprocessing/no-pp-if.f90
    A flang/test/Preprocessing/show-macros-stdin.f90
    A flang/test/Semantics/OpenMP/declare-reduction-accessibility.f90
    A flang/test/Semantics/OpenMP/declare-reduction-default-private.f90
    A flang/test/Semantics/OpenMP/declare-reduction-modfile-private.f90
    A flang/test/Semantics/OpenMP/declare-reduction-public-regression.f90
    A flang/test/Semantics/OpenMP/declare-reduction-use-assoc.f90
    R flang/test/Semantics/OpenMP/detach-symbols.f90
    M flang/test/Semantics/bug163242.f90
    M flang/test/Semantics/bug164303.f90
    M flang/test/Semantics/bug2021.f90
    M flang/test/Transforms/FIRToMemRef/slice-projected.mlir
    M flang/test/lit.cfg.py
    M flang/test/lit.site.cfg.py.in
    M flang/tools/CMakeLists.txt
    R flang/tools/f18/CMakeLists.txt
    R flang/tools/f18/dump.cpp
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/aarch64/headers.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/riscv/headers.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/config/linux/x86_64/headers.txt
    M libc/include/CMakeLists.txt
    M libc/include/wctype.yaml
    M libc/src/__support/CMakeLists.txt
    M libc/src/__support/wctype/CMakeLists.txt
    M libc/src/__support/wctype/perfect_hash_map.h
    A libc/src/__support/wctype/wctype_conversion_utils.cpp
    A libc/src/__support/wctype/wctype_conversion_utils.h
    M libc/src/__support/wctype_utils.h
    M libc/src/inttypes/strtoimax.cpp
    M libc/src/inttypes/strtoumax.cpp
    M libc/src/stdlib/strtol.cpp
    M libc/src/stdlib/strtol_l.cpp
    M libc/src/stdlib/strtoll.cpp
    M libc/src/stdlib/strtoll_l.cpp
    M libc/src/stdlib/strtoul.cpp
    M libc/src/stdlib/strtoul_l.cpp
    M libc/src/stdlib/strtoull.cpp
    M libc/src/stdlib/strtoull_l.cpp
    M libc/src/wchar/wcstol.cpp
    M libc/src/wchar/wcstoll.cpp
    M libc/src/wchar/wcstoul.cpp
    M libc/src/wchar/wcstoull.cpp
    M libc/src/wctype/CMakeLists.txt
    A libc/src/wctype/towlower.cpp
    A libc/src/wctype/towlower.h
    A libc/src/wctype/towupper.cpp
    A libc/src/wctype/towupper.h
    M libc/test/integration/src/__support/GPU/CMakeLists.txt
    M libc/test/src/__support/wctype/CMakeLists.txt
    M libc/test/src/__support/wctype_utils_test.cpp
    M libc/test/src/stdlib/StrtolTest.h
    M libc/test/src/stdlib/strtoint32_test.cpp
    M libc/test/src/stdlib/strtoint64_test.cpp
    M libc/test/src/wchar/WcstolTest.h
    M libc/test/src/wctype/CMakeLists.txt
    M libc/test/src/wctype/iswprint_test.cpp
    A libc/test/src/wctype/towlower_test.cpp
    A libc/test/src/wctype/towupper_test.cpp
    M libc/utils/libctest/format.py
    A libclc/clc/include/clc/internal/math/clc_runtime_has_hw_fma32.h
    M libclc/clc/include/clc/internal/math/clc_sw_fma.h
    M libclc/clc/include/clc/math/clc_fma.h
    M libclc/clc/include/clc/relational/clc_signbit.h
    M libclc/clc/lib/generic/math/clc_fma.cl
    M libclc/clc/lib/generic/relational/clc_signbit.cl
    A libclc/clc/lib/generic/relational/clc_signbit.inc
    M libclc/clc/lib/spirv/CMakeLists.txt
    A libclc/clc/lib/spirv/math/clc_fma.cl
    A libclc/clc/lib/spirv/math/clc_fma.inc
    A libclc/clc/lib/spirv/math/clc_runtime_has_hw_fma32.cl
    A libclc/clc/lib/spirv/math/clc_sw_fma.cl
    M libclc/clc/lib/spirv/vulkan/CMakeLists.txt
    R libclc/clc/lib/spirv/vulkan/math/clc_sw_fma.cl
    M libclc/opencl/lib/generic/math/fma.cl
    M libclc/opencl/lib/spirv/CMakeLists.txt
    A libclc/opencl/lib/spirv/math/fma.cl
    M libcxx/docs/ReleaseNotes/23.rst
    M libcxx/docs/Status/Cxx2cPapers.csv
    M libcxx/include/__configuration/namespace.h
    M libcxx/include/__iterator/static_bounded_iter.h
    M libcxx/include/__iterator/wrap_iter.h
    M libcxx/include/__memory/ranges_uninitialized_algorithms.h
    M libcxx/include/__memory/shared_ptr.h
    M libcxx/include/__memory/uninitialized_algorithms.h
    M libcxx/include/__tree
    M libcxx/include/__type_traits/conditional.h
    A libcxx/test/libcxx/containers/sequences/array/nodiscard.iterator.verify.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.modifiers/extract_key.pass.cpp
    M libcxx/test/std/containers/associative/multiset/extract_key.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.construct.value/ranges_uninitialized_value_construct.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.construct.value/ranges_uninitialized_value_construct_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.construct.value/uninitialized_value_construct.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.construct.value/uninitialized_value_construct_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.copy/ranges_uninitialized_copy.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.copy/ranges_uninitialized_copy_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.copy/uninitialized_copy.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.copy/uninitialized_copy_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.fill.n/ranges_uninitialized_fill_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.fill.n/uninitialized_fill_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.fill/ranges_uninitialized_fill.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.fill/uninitialized_fill.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.move/ranges_uninitialized_move.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.move/ranges_uninitialized_move_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.move/uninitialized_move.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.move/uninitialized_move_n.pass.cpp
    M libsycl/test/lit.cfg.py
    M lld/COFF/Chunks.cpp
    M lld/ELF/Arch/X86_64.cpp
    M lld/ELF/LinkerScript.cpp
    M lld/docs/ReleaseNotes.rst
    M lld/test/COFF/arm64-relocs-imports.test
    M lld/test/ELF/linkerscript/end-overflow-check.test
    A lld/test/ELF/linkerscript/memory-loc-counter-dot-addr.s
    M lldb/include/lldb/Core/DataFileCache.h
    M lldb/include/lldb/Core/Module.h
    A lldb/include/lldb/Host/windows/LazyImport.h
    M lldb/include/lldb/Symbol/ObjectFile.h
    M lldb/include/lldb/Symbol/Symbol.h
    M lldb/include/lldb/Symbol/Symtab.h
    M lldb/include/lldb/Utility/DataEncoder.h
    M lldb/source/Commands/CommandObjectFrame.cpp
    M lldb/source/Commands/CommandObjectTarget.cpp
    M lldb/source/Core/DataFileCache.cpp
    M lldb/source/Core/Mangled.cpp
    M lldb/source/Core/Module.cpp
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.h
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionUtil.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.h
    M lldb/source/Plugins/Platform/MacOSX/PlatformRemoteDarwinDevice.cpp
    M lldb/source/Plugins/Process/Windows/Common/NativeThreadWindows.cpp
    M lldb/source/Plugins/Process/Windows/Common/TargetThreadWindows.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilderClang.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilderClang.h
    M lldb/source/Plugins/SymbolFile/NativePDB/PdbUtil.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/PdbUtil.h
    M lldb/source/Symbol/Symtab.cpp
    M lldb/test/API/commands/expression/expr_inside_lambda/TestExprInsideLambdas.py
    M lldb/test/API/commands/frame/recognizer/TestFrameRecognizer.py
    M lldb/test/API/commands/register/aarch64_dynamic_regset/main.c
    M lldb/test/API/commands/register/aarch64_sve_registers/rw_access_static_config/main.c
    M lldb/test/API/lit.cfg.py
    M lldb/test/API/lldbtest.py
    M lldb/test/API/python_api/sbmodule/TestSBModule.py
    A lldb/test/API/windows/thread/Makefile
    A lldb/test/API/windows/thread/TestThreadName.py
    A lldb/test/API/windows/thread/main.c
    A lldb/test/Shell/SymbolFile/NativePDB/ast-lambdas-msvc.cpp
    A lldb/test/Shell/SymbolFile/NativePDB/ast-lambdas.cpp
    M lldb/test/Shell/lit.cfg.py
    M lldb/tools/lldb-dap/DAP.cpp
    M llvm/Maintainers.md
    M llvm/docs/Coroutines.rst
    M llvm/docs/DeveloperPolicy.rst
    M llvm/docs/GlobalISel/GenericOpcode.rst
    M llvm/docs/LangRef.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/docs/SPIRVUsage.rst
    M llvm/docs/TestingGuide.rst
    M llvm/include/llvm-c/Remarks.h
    M llvm/include/llvm-c/lto.h
    M llvm/include/llvm/ADT/DenseMap.h
    M llvm/include/llvm/Analysis/AssumptionCache.h
    M llvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h
    M llvm/include/llvm/Analysis/CFGSCCPrinter.h
    M llvm/include/llvm/Analysis/CmpInstAnalysis.h
    M llvm/include/llvm/Analysis/CostModel.h
    M llvm/include/llvm/Analysis/CycleAnalysis.h
    M llvm/include/llvm/Analysis/DDGPrinter.h
    M llvm/include/llvm/Analysis/DXILMetadataAnalysis.h
    M llvm/include/llvm/Analysis/Delinearization.h
    M llvm/include/llvm/Analysis/DomConditionCache.h
    M llvm/include/llvm/Analysis/DominanceFrontier.h
    M llvm/include/llvm/Analysis/FunctionPropertiesAnalysis.h
    M llvm/include/llvm/Analysis/GuardUtils.h
    M llvm/include/llvm/Analysis/HashRecognize.h
    M llvm/include/llvm/Analysis/IR2Vec.h
    M llvm/include/llvm/Analysis/IVUsers.h
    M llvm/include/llvm/Analysis/IndirectCallPromotionAnalysis.h
    M llvm/include/llvm/Analysis/InstCount.h
    M llvm/include/llvm/Analysis/KernelInfo.h
    M llvm/include/llvm/Analysis/LazyBlockFrequencyInfo.h
    M llvm/include/llvm/Analysis/LazyBranchProbabilityInfo.h
    M llvm/include/llvm/Analysis/LazyValueInfo.h
    M llvm/include/llvm/Analysis/Lint.h
    M llvm/include/llvm/Analysis/LoopCacheAnalysis.h
    M llvm/include/llvm/Analysis/LoopIterator.h
    M llvm/include/llvm/Analysis/MLInlineAdvisor.h
    M llvm/include/llvm/Analysis/MemDerefPrinter.h
    M llvm/include/llvm/Analysis/MemoryDependenceAnalysis.h
    M llvm/include/llvm/Analysis/ModuleDebugInfoPrinter.h
    M llvm/include/llvm/Analysis/ObjCARCAliasAnalysis.h
    M llvm/include/llvm/Analysis/ObjCARCAnalysisUtils.h
    M llvm/include/llvm/Analysis/ObjCARCInstKind.h
    M llvm/include/llvm/Analysis/OverflowInstAnalysis.h
    M llvm/include/llvm/Analysis/PtrUseVisitor.h
    M llvm/include/llvm/Analysis/RegionInfo.h
    M llvm/include/llvm/Analysis/ReplayInlineAdvisor.h
    M llvm/include/llvm/Analysis/ScalarEvolution.h
    M llvm/include/llvm/Analysis/ScalarEvolutionDivision.h
    M llvm/include/llvm/Analysis/StackLifetime.h
    M llvm/include/llvm/Analysis/StackSafetyAnalysis.h
    M llvm/include/llvm/Analysis/StaticDataProfileInfo.h
    M llvm/include/llvm/Analysis/StructuralHash.h
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/include/llvm/Analysis/Trace.h
    M llvm/include/llvm/Analysis/TypeMetadataUtils.h
    M llvm/include/llvm/Analysis/UniformityAnalysis.h
    M llvm/include/llvm/Analysis/ValueLatticeUtils.h
    M llvm/include/llvm/CMakeLists.txt
    M llvm/include/llvm/CodeGen/Analysis.h
    M llvm/include/llvm/CodeGen/AntiDepBreaker.h
    M llvm/include/llvm/CodeGen/AsmPrinter.h
    M llvm/include/llvm/CodeGen/AsmPrinterAnalysis.h
    M llvm/include/llvm/CodeGen/AssignmentTrackingAnalysis.h
    M llvm/include/llvm/CodeGen/AtomicExpand.h
    M llvm/include/llvm/CodeGen/BasicBlockMatchingAndInference.h
    M llvm/include/llvm/CodeGen/BasicBlockSectionUtils.h
    M llvm/include/llvm/CodeGen/BasicBlockSectionsProfileReader.h
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/include/llvm/CodeGen/BranchFoldingPass.h
    M llvm/include/llvm/CodeGen/BranchRelaxation.h
    M llvm/include/llvm/CodeGen/CFIFixup.h
    M llvm/include/llvm/CodeGen/CalcSpillWeights.h
    M llvm/include/llvm/CodeGen/CodeGenCommonISel.h
    M llvm/include/llvm/CodeGen/CodeGenPrepare.h
    M llvm/include/llvm/CodeGen/ComplexDeinterleavingPass.h
    M llvm/include/llvm/CodeGen/DFAPacketizer.h
    M llvm/include/llvm/CodeGen/DbgEntityHistoryCalculator.h
    M llvm/include/llvm/CodeGen/DeadMachineInstructionElim.h
    M llvm/include/llvm/CodeGen/DebugHandlerBase.h
    M llvm/include/llvm/CodeGen/DetectDeadLanes.h
    M llvm/include/llvm/CodeGen/DwarfEHPrepare.h
    M llvm/include/llvm/CodeGen/EarlyIfConversion.h
    M llvm/include/llvm/CodeGen/EdgeBundles.h
    M llvm/include/llvm/CodeGen/ExecutionDomainFix.h
    M llvm/include/llvm/CodeGen/ExpandIRInsts.h
    M llvm/include/llvm/CodeGen/ExpandPostRAPseudos.h
    M llvm/include/llvm/CodeGen/ExpandReductions.h
    M llvm/include/llvm/CodeGen/ExpandVectorPredication.h
    M llvm/include/llvm/CodeGen/FEntryInserter.h
    M llvm/include/llvm/CodeGen/FastISel.h
    M llvm/include/llvm/CodeGen/FaultMaps.h
    M llvm/include/llvm/CodeGen/FinalizeISel.h
    M llvm/include/llvm/CodeGen/FixupStatepointCallerSaved.h
    M llvm/include/llvm/CodeGen/FunctionLoweringInfo.h
    M llvm/include/llvm/CodeGen/GCEmptyBasicBlocks.h
    M llvm/include/llvm/CodeGen/GCMetadataPrinter.h
    M llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h
    M llvm/include/llvm/CodeGen/GlobalISel/Combiner.h
    M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
    M llvm/include/llvm/CodeGen/GlobalISel/GIMatchTableExecutor.h
    M llvm/include/llvm/CodeGen/GlobalISel/GIMatchTableExecutorImpl.h
    M llvm/include/llvm/CodeGen/GlobalISel/IRTranslator.h
    M llvm/include/llvm/CodeGen/GlobalISel/InlineAsmLowering.h
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
    M llvm/include/llvm/CodeGen/GlobalISel/Localizer.h
    M llvm/include/llvm/CodeGen/GlobalISel/RegBankSelect.h
    M llvm/include/llvm/CodeGen/GlobalMerge.h
    M llvm/include/llvm/CodeGen/GlobalMergeFunctions.h
    M llvm/include/llvm/CodeGen/HardwareLoops.h
    M llvm/include/llvm/CodeGen/IndirectBrExpand.h
    M llvm/include/llvm/CodeGen/InitUndef.h
    M llvm/include/llvm/CodeGen/InlineAsmPrepare.h
    M llvm/include/llvm/CodeGen/InsertCodePrefetch.h
    M llvm/include/llvm/CodeGen/InterleavedAccess.h
    M llvm/include/llvm/CodeGen/InterleavedLoadCombine.h
    M llvm/include/llvm/CodeGen/IntrinsicLowering.h
    M llvm/include/llvm/CodeGen/JMCInstrumenter.h
    M llvm/include/llvm/CodeGen/KCFI.h
    M llvm/include/llvm/CodeGen/LatencyPriorityQueue.h
    M llvm/include/llvm/CodeGen/LazyMachineBlockFrequencyInfo.h
    M llvm/include/llvm/CodeGen/LexicalScopes.h
    M llvm/include/llvm/CodeGen/LibcallLoweringInfo.h
    M llvm/include/llvm/CodeGen/LiveDebugValuesPass.h
    M llvm/include/llvm/CodeGen/LiveDebugVariables.h
    M llvm/include/llvm/CodeGen/LiveIntervalUnion.h
    M llvm/include/llvm/CodeGen/LivePhysRegs.h
    M llvm/include/llvm/CodeGen/LiveRangeEdit.h
    M llvm/include/llvm/CodeGen/LiveRegMatrix.h
    M llvm/include/llvm/CodeGen/LiveStacks.h
    M llvm/include/llvm/CodeGen/LocalStackSlotAllocation.h
    M llvm/include/llvm/CodeGen/LoopTraversal.h
    M llvm/include/llvm/CodeGen/LowerEmuTLS.h
    M llvm/include/llvm/CodeGen/MBFIWrapper.h
    M llvm/include/llvm/CodeGen/MIR2Vec.h
    M llvm/include/llvm/CodeGen/MIRFSDiscriminator.h
    M llvm/include/llvm/CodeGen/MIRFSDiscriminatorOptions.h
    M llvm/include/llvm/CodeGen/MIRParser/MIParser.h
    M llvm/include/llvm/CodeGen/MIRSampleProfile.h
    M llvm/include/llvm/CodeGen/MIRYamlMapping.h
    M llvm/include/llvm/CodeGen/MachineBlockHashInfo.h
    M llvm/include/llvm/CodeGen/MachineBlockPlacement.h
    M llvm/include/llvm/CodeGen/MachineBranchProbabilityInfo.h
    M llvm/include/llvm/CodeGen/MachineCSE.h
    M llvm/include/llvm/CodeGen/MachineConstantPool.h
    M llvm/include/llvm/CodeGen/MachineCopyPropagation.h
    M llvm/include/llvm/CodeGen/MachineDominanceFrontier.h
    M llvm/include/llvm/CodeGen/MachineFunction.h
    M llvm/include/llvm/CodeGen/MachineFunctionAnalysis.h
    M llvm/include/llvm/CodeGen/MachineIDFSSAUpdater.h
    M llvm/include/llvm/CodeGen/MachineLateInstrsCleanup.h
    M llvm/include/llvm/CodeGen/MachineLoopUtils.h
    M llvm/include/llvm/CodeGen/MachineModuleInfoImpls.h
    M llvm/include/llvm/CodeGen/MachinePipeliner.h
    M llvm/include/llvm/CodeGen/MachineRegionInfo.h
    M llvm/include/llvm/CodeGen/MachineSSAUpdater.h
    M llvm/include/llvm/CodeGen/MachineSink.h
    M llvm/include/llvm/CodeGen/MachineTraceMetrics.h
    M llvm/include/llvm/CodeGen/MachineUniformityAnalysis.h
    M llvm/include/llvm/CodeGen/ModuloSchedule.h
    M llvm/include/llvm/CodeGen/MultiHazardRecognizer.h
    M llvm/include/llvm/CodeGen/OptimizePHIs.h
    M llvm/include/llvm/CodeGen/PEI.h
    M llvm/include/llvm/CodeGen/PHIElimination.h
    M llvm/include/llvm/CodeGen/PatchableFunction.h
    M llvm/include/llvm/CodeGen/PeepholeOptimizer.h
    M llvm/include/llvm/CodeGen/PostRAHazardRecognizer.h
    M llvm/include/llvm/CodeGen/PostRAMachineSink.h
    M llvm/include/llvm/CodeGen/PostRASchedulerList.h
    M llvm/include/llvm/CodeGen/PreISelIntrinsicLowering.h
    M llvm/include/llvm/CodeGen/ProcessImplicitDefs.h
    M llvm/include/llvm/CodeGen/RDFGraph.h
    M llvm/include/llvm/CodeGen/RDFLiveness.h
    M llvm/include/llvm/CodeGen/RDFRegisters.h
    M llvm/include/llvm/CodeGen/ReachingDefAnalysis.h
    M llvm/include/llvm/CodeGen/RegAllocEvictionAdvisor.h
    M llvm/include/llvm/CodeGen/RegAllocFast.h
    M llvm/include/llvm/CodeGen/RegAllocGreedyPass.h
    M llvm/include/llvm/CodeGen/RegAllocPBQP.h
    M llvm/include/llvm/CodeGen/RegAllocPriorityAdvisor.h
    M llvm/include/llvm/CodeGen/RegUsageInfoCollector.h
    M llvm/include/llvm/CodeGen/RegUsageInfoPropagate.h
    M llvm/include/llvm/CodeGen/RegisterBankInfo.h
    M llvm/include/llvm/CodeGen/RegisterCoalescerPass.h
    M llvm/include/llvm/CodeGen/RegisterScavenging.h
    M llvm/include/llvm/CodeGen/RegisterUsageInfo.h
    M llvm/include/llvm/CodeGen/Rematerializer.h
    M llvm/include/llvm/CodeGen/RemoveLoadsIntoFakeUses.h
    M llvm/include/llvm/CodeGen/RemoveRedundantDebugValues.h
    M llvm/include/llvm/CodeGen/RenameIndependentSubregs.h
    M llvm/include/llvm/CodeGen/ResourcePriorityQueue.h
    M llvm/include/llvm/CodeGen/SDNodeInfo.h
    M llvm/include/llvm/CodeGen/SDPatternMatch.h
    M llvm/include/llvm/CodeGen/SafeStack.h
    M llvm/include/llvm/CodeGen/SanitizerBinaryMetadata.h
    M llvm/include/llvm/CodeGen/ScheduleDAG.h
    M llvm/include/llvm/CodeGen/ScheduleDFS.h
    M llvm/include/llvm/CodeGen/ScheduleHazardRecognizer.h
    M llvm/include/llvm/CodeGen/ScoreboardHazardRecognizer.h
    M llvm/include/llvm/CodeGen/SelectOptimize.h
    M llvm/include/llvm/CodeGen/SelectionDAG.h
    M llvm/include/llvm/CodeGen/SelectionDAGISel.h
    M llvm/include/llvm/CodeGen/SelectionDAGTargetInfo.h
    M llvm/include/llvm/CodeGen/ShadowStackGCLowering.h
    M llvm/include/llvm/CodeGen/ShrinkWrap.h
    M llvm/include/llvm/CodeGen/SjLjEHPrepare.h
    M llvm/include/llvm/CodeGen/SpillPlacement.h
    M llvm/include/llvm/CodeGen/Spiller.h
    M llvm/include/llvm/CodeGen/StackColoring.h
    M llvm/include/llvm/CodeGen/StackFrameLayoutAnalysisPass.h
    M llvm/include/llvm/CodeGen/StackProtector.h
    M llvm/include/llvm/CodeGen/StackSlotColoring.h
    M llvm/include/llvm/CodeGen/SwiftErrorValueTracking.h
    M llvm/include/llvm/CodeGen/SwitchLoweringUtils.h
    M llvm/include/llvm/CodeGen/TailDuplicator.h
    M llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h
    M llvm/include/llvm/CodeGen/TwoAddressInstructionPass.h
    M llvm/include/llvm/CodeGen/TypePromotion.h
    M llvm/include/llvm/CodeGen/UnreachableBlockElim.h
    M llvm/include/llvm/CodeGen/VLIWMachineScheduler.h
    M llvm/include/llvm/CodeGen/ValueTypes.h
    M llvm/include/llvm/CodeGen/WasmEHPrepare.h
    M llvm/include/llvm/CodeGen/WinEHFuncInfo.h
    M llvm/include/llvm/CodeGen/WinEHPrepare.h
    M llvm/include/llvm/CodeGen/WindowScheduler.h
    M llvm/include/llvm/CodeGen/XRayInstrumentation.h
    M llvm/include/llvm/CodeGenTypes/MachineValueType.h
    M llvm/include/llvm/DebugInfo/PDB/Native/PDBFile.h
    M llvm/include/llvm/DebugInfo/PDB/Native/PDBFileBuilder.h
    M llvm/include/llvm/DebugInfo/PDB/Native/PDBStringTableBuilder.h
    M llvm/include/llvm/DebugInfo/PDB/Native/RawConstants.h
    M llvm/include/llvm/Frontend/OpenMP/ClauseT.h
    M llvm/include/llvm/IR/InstrTypes.h
    M llvm/include/llvm/IR/Instruction.h
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/include/llvm/IR/Module.h
    M llvm/include/llvm/IR/RuntimeLibcalls.td
    M llvm/include/llvm/MC/MCDwarf.h
    M llvm/include/llvm/ProfileData/InstrProf.h
    M llvm/include/llvm/Support/FileSystem.h
    M llvm/include/llvm/Support/MemoryBuffer.h
    M llvm/include/llvm/Support/TargetOpcodes.def
    M llvm/include/llvm/Target/GenericOpcodes.td
    M llvm/include/llvm/Target/GlobalISel/SelectionDAGCompat.td
    M llvm/include/llvm/Transforms/Coroutines/CoroShape.h
    M llvm/include/llvm/Transforms/Coroutines/SuspendCrossingInfo.h
    M llvm/include/llvm/Transforms/IPO/Instrumentor.h
    A llvm/include/llvm/Transforms/IPO/InstrumentorRuntimeHelper.h
    M llvm/include/llvm/Transforms/IPO/InstrumentorStubPrinter.h
    M llvm/include/llvm/Transforms/IPO/InstrumentorUtils.h
    A llvm/include/llvm/Transforms/IPO/InstrumentorVariables.inc.in
    M llvm/include/llvm/Transforms/Vectorize/LoopVectorize.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
    M llvm/include/module.modulemap
    M llvm/lib/Analysis/CallGraphSCCPass.cpp
    M llvm/lib/Analysis/ConstantFolding.cpp
    M llvm/lib/Analysis/DominanceFrontier.cpp
    M llvm/lib/Analysis/RegionInfo.cpp
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/CodeGen/AtomicExpandPass.cpp
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/lib/CodeGen/ExpandIRInsts.cpp
    M llvm/lib/CodeGen/InlineSpiller.cpp
    M llvm/lib/CodeGen/LiveRangeEdit.cpp
    M llvm/lib/CodeGen/MachineFunction.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/DebugInfo/GSYM/GsymReader.cpp
    M llvm/lib/DebugInfo/PDB/Native/PDBFile.cpp
    M llvm/lib/DebugInfo/PDB/Native/PDBFileBuilder.cpp
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/CMakeLists.txt
    M llvm/lib/IR/Constants.cpp
    M llvm/lib/IR/Instruction.cpp
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/IR/LegacyPassManager.cpp
    M llvm/lib/IR/Module.cpp
    M llvm/lib/IR/Value.cpp
    M llvm/lib/MC/MCDwarf.cpp
    M llvm/lib/Object/DXContainer.cpp
    M llvm/lib/Support/MemoryBuffer.cpp
    M llvm/lib/Support/Unix/Path.inc
    M llvm/lib/Support/Windows/Path.inc
    M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    M llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SystemOperands.td
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
    M llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUCoExecSchedStrategy.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUCoExecSchedStrategy.h
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/GCNVOPDUtils.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIFrameLowering.h
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/AMDGPU/SIInstrInfo.td
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
    M llvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.h
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/VOP2Instructions.td
    M llvm/lib/Target/AMDGPU/VOP3Instructions.td
    M llvm/lib/Target/AMDGPU/VOPDInstructions.td
    M llvm/lib/Target/AMDGPU/VOPInstructions.td
    M llvm/lib/Target/BPF/BPFISelLowering.cpp
    M llvm/lib/Target/BPF/BPFSelectionDAGInfo.cpp
    M llvm/lib/Target/BPF/BPFSelectionDAGInfo.h
    M llvm/lib/Target/DirectX/DXContainerGlobals.cpp
    M llvm/lib/Target/DirectX/DXILWriter/DXILBitcodeWriter.cpp
    M llvm/lib/Target/DirectX/DXILWriter/DXILValueEnumerator.cpp
    M llvm/lib/Target/DirectX/DXILWriter/DXILValueEnumerator.h
    M llvm/lib/Target/DirectX/DirectXIRPasses/CMakeLists.txt
    M llvm/lib/Target/DirectX/DirectXIRPasses/DXILDebugInfo.cpp
    M llvm/lib/Target/DirectX/DirectXIRPasses/DXILDebugInfo.h
    M llvm/lib/Target/DirectX/DirectXIRPasses/PointerTypeAnalysis.cpp
    M llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp
    M llvm/lib/Target/Hexagon/HexagonISelDAGToDAGHVX.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.h
    M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
    M llvm/lib/Target/LoongArch/CMakeLists.txt
    M llvm/lib/Target/LoongArch/LoongArchAsmPrinter.cpp
    M llvm/lib/Target/LoongArch/LoongArchAsmPrinter.h
    M llvm/lib/Target/LoongArch/LoongArchFrameLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchFrameLowering.h
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchMachineFunctionInfo.h
    M llvm/lib/Target/LoongArch/LoongArchTargetMachine.cpp
    A llvm/lib/Target/LoongArch/LoongArchTargetObjectFile.cpp
    A llvm/lib/Target/LoongArch/LoongArchTargetObjectFile.h
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchELFObjectWriter.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchELFStreamer.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchELFStreamer.h
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchFixupKinds.h
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCAsmInfo.h
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchTargetStreamer.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchTargetStreamer.h
    M llvm/lib/Target/M68k/M68kISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.h
    M llvm/lib/Target/PowerPC/PPCInstrVSX.td
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
    M llvm/lib/Target/RISCV/RISCVMoveMerger.cpp
    A llvm/lib/Target/RISCV/RISCVSchedSiFive8.td
    M llvm/lib/Target/RISCV/RISCVSchedSiFiveP400.td
    M llvm/lib/Target/RISCV/RISCVSchedSiFiveP500.td
    M llvm/lib/Target/RISCV/RISCVSelectionDAGInfo.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
    M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
    M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstrInfo.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
    M llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp
    M llvm/lib/Target/SystemZ/SystemZAsmPrinter.h
    M llvm/lib/Target/SystemZ/SystemZISelDAGToDAG.cpp
    M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
    M llvm/lib/Target/SystemZ/SystemZISelLowering.h
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.h
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.td
    M llvm/lib/Target/SystemZ/SystemZOperators.td
    M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
    M llvm/lib/Target/X86/X86FastISel.cpp
    M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
    M llvm/lib/Transforms/Coroutines/CoroCleanup.cpp
    M llvm/lib/Transforms/Coroutines/CoroEarly.cpp
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
    M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
    M llvm/lib/Transforms/Coroutines/SuspendCrossingInfo.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/IPO/ExpandVariadics.cpp
    M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
    M llvm/lib/Transforms/IPO/Instrumentor.cpp
    M llvm/lib/Transforms/IPO/InstrumentorStubPrinter.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
    M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
    M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
    M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
    M llvm/lib/Transforms/Scalar/LoopFuse.cpp
    M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
    M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
    M llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.h
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/runtimes/CMakeLists.txt
    M llvm/test/Analysis/CostModel/AArch64/arith-bf16.ll
    M llvm/test/Analysis/CostModel/SystemZ/cmp-ext-01.ll
    A llvm/test/Analysis/ScalarEvolution/rounding-demanded-bits.ll
    M llvm/test/Analysis/ValueTracking/memory-dereferenceable.ll
    M llvm/test/Assembler/aggregate-constant-values.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
    M llvm/test/CodeGen/AArch64/aarch64-mull-masks.ll
    M llvm/test/CodeGen/AArch64/aarch64-sme-za-call-lowering.ll
    M llvm/test/CodeGen/AArch64/aarch64-sysreg128.ll
    A llvm/test/CodeGen/AArch64/and_xor_shift.ll
    M llvm/test/CodeGen/AArch64/arm64-int-neon.ll
    A llvm/test/CodeGen/AArch64/arm64-invalid-sys-reg.ll
    M llvm/test/CodeGen/AArch64/arm64-ldst-unscaled-pre-post.mir
    R llvm/test/CodeGen/AArch64/arm64-named-reg-notareg.ll
    M llvm/test/CodeGen/AArch64/arm64-neon-mul-div.ll
    M llvm/test/CodeGen/AArch64/expand-sme-pseudos.mir
    M llvm/test/CodeGen/AArch64/fabs.ll
    M llvm/test/CodeGen/AArch64/fast-isel-branch-cond-split.ll
    M llvm/test/CodeGen/AArch64/fcvt-i256.ll
    M llvm/test/CodeGen/AArch64/fixed-length-bf16-arith.ll
    M llvm/test/CodeGen/AArch64/ldst-miflags.mir
    M llvm/test/CodeGen/AArch64/ldst-opt.mir
    M llvm/test/CodeGen/AArch64/ldst_update_cfpath.mir
    M llvm/test/CodeGen/AArch64/machine-sme-abi-find-insert-pt.mir
    M llvm/test/CodeGen/AArch64/machine-sme-abi-skip-debug-inst.mir
    M llvm/test/CodeGen/AArch64/memtag-merge-writeback.mir
    M llvm/test/CodeGen/AArch64/neon-partial-reduce-dot-product.ll
    M llvm/test/CodeGen/AArch64/no-reorder-cfi-merge-back-load.mir
    M llvm/test/CodeGen/AArch64/no-reorder-cfi-merge-fwd-load.mir
    M llvm/test/CodeGen/AArch64/sme-abi-eh-liveins.mir
    M llvm/test/CodeGen/AArch64/sme-lazy-sve-nzcv-live.mir
    M llvm/test/CodeGen/AArch64/special-reg.ll
    M llvm/test/CodeGen/AArch64/stack-probing-dynamic.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-bfclamp.ll
    A llvm/test/CodeGen/AArch64/volatile-reg-writeback.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/assert-align.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/call-outgoing-stack-args.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/localizer.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/saddsat.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/ssubsat.ll
    M llvm/test/CodeGen/AMDGPU/a-v-flat-atomicrmw.ll
    M llvm/test/CodeGen/AMDGPU/a-v-global-atomicrmw.ll
    M llvm/test/CodeGen/AMDGPU/abi-attribute-hints-undefined-behavior.ll
    M llvm/test/CodeGen/AMDGPU/accvgpr-spill-scc-clobber.mir
    M llvm/test/CodeGen/AMDGPU/agpr-copy-no-free-registers.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn-call-whole-wave.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.256bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.320bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.384bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.448bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.576bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.640bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.704bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.768bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.832bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.896bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.960bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-preserve-cc.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow-codegen.ll
    A llvm/test/CodeGen/AMDGPU/amdgpu-spill-cfi-saved-regs.ll
    M llvm/test/CodeGen/AMDGPU/arbitrary-fp-to-float.ll
    M llvm/test/CodeGen/AMDGPU/ashr.v2i16.ll
    M llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit-undefined-behavior2.ll
    M llvm/test/CodeGen/AMDGPU/av_spill_cross_bb_usage.mir
    M llvm/test/CodeGen/AMDGPU/bf16.ll
    M llvm/test/CodeGen/AMDGPU/br_cc.f16.ll
    M llvm/test/CodeGen/AMDGPU/branch-relax-spill.ll
    M llvm/test/CodeGen/AMDGPU/call-args-inreg-bfloat.ll
    M llvm/test/CodeGen/AMDGPU/call-args-inreg-no-sgpr-for-csrspill.ll
    M llvm/test/CodeGen/AMDGPU/call-args-inreg.ll
    M llvm/test/CodeGen/AMDGPU/call-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/call-preserved-registers.ll
    M llvm/test/CodeGen/AMDGPU/call-skip.ll
    M llvm/test/CodeGen/AMDGPU/callee-frame-setup.ll
    M llvm/test/CodeGen/AMDGPU/callee-special-input-vgprs-packed.ll
    M llvm/test/CodeGen/AMDGPU/callee-special-input-vgprs.ll
    M llvm/test/CodeGen/AMDGPU/cc-entry.ll
    M llvm/test/CodeGen/AMDGPU/cc-inreg-sgpr0-3-mismatch.ll
    M llvm/test/CodeGen/AMDGPU/commute-compares-scalar-float.ll
    M llvm/test/CodeGen/AMDGPU/copysign-simplify-demanded-bits.ll
    M llvm/test/CodeGen/AMDGPU/cross-block-use-is-not-abi-copy.ll
    M llvm/test/CodeGen/AMDGPU/dagcombine-fmul-sel.ll
    M llvm/test/CodeGen/AMDGPU/debug-frame.ll
    M llvm/test/CodeGen/AMDGPU/dwarf-multi-register-use-crash.ll
    M llvm/test/CodeGen/AMDGPU/dynamic-vgpr-reserve-stack-for-cwsr.ll
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-mov-b32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-select.ll
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-select.mir
    M llvm/test/CodeGen/AMDGPU/extend-phi-subrange-not-in-parent.mir
    M llvm/test/CodeGen/AMDGPU/extract-subvector-16bit.ll
    M llvm/test/CodeGen/AMDGPU/fcanonicalize.bf16.ll
    M llvm/test/CodeGen/AMDGPU/fcanonicalize.f16.ll
    M llvm/test/CodeGen/AMDGPU/fix-frame-reg-in-custom-csr-spills.ll
    M llvm/test/CodeGen/AMDGPU/flat-saddr-atomics.ll
    M llvm/test/CodeGen/AMDGPU/fmed3.bf16.ll
    M llvm/test/CodeGen/AMDGPU/fmul-to-ldexp.ll
    M llvm/test/CodeGen/AMDGPU/frame-index.mir
    M llvm/test/CodeGen/AMDGPU/frame-setup-without-sgpr-to-vgpr-spills.ll
    A llvm/test/CodeGen/AMDGPU/freeze-other-uses-issue-198094.ll
    M llvm/test/CodeGen/AMDGPU/function-args-inreg.ll
    M llvm/test/CodeGen/AMDGPU/gfx-call-non-gfx-func.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-preserved-registers.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-return-types.ll
    M llvm/test/CodeGen/AMDGPU/identical-subrange-spill-infloop.ll
    M llvm/test/CodeGen/AMDGPU/imm16.ll
    M llvm/test/CodeGen/AMDGPU/immv216.ll
    M llvm/test/CodeGen/AMDGPU/insert-delay-alu-bug.ll
    M llvm/test/CodeGen/AMDGPU/insert-waitcnts-crash.ll
    M llvm/test/CodeGen/AMDGPU/ipra-regmask.ll
    M llvm/test/CodeGen/AMDGPU/issue176578.ll
    M llvm/test/CodeGen/AMDGPU/itofp.i128.bf.ll
    M llvm/test/CodeGen/AMDGPU/itofp.i128.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.sr.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.scale.f32.16x16x128.f8f6f4.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.scale.f32.32x32x64.f8f6f4.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.readfirstlane.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.smfmac.gfx950.ll
    M llvm/test/CodeGen/AMDGPU/llvm.fptrunc.round.ll
    M llvm/test/CodeGen/AMDGPU/llvm.maximum.f64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.minimum.f64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.round.ll
    M llvm/test/CodeGen/AMDGPU/load-constant-i1.ll
    M llvm/test/CodeGen/AMDGPU/lround.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix-hi.ll
    M llvm/test/CodeGen/AMDGPU/materialize-frame-index-sgpr.gfx10.ll
    M llvm/test/CodeGen/AMDGPU/materialize-frame-index-sgpr.ll
    M llvm/test/CodeGen/AMDGPU/maximumnum.bf16.ll
    M llvm/test/CodeGen/AMDGPU/maximumnum.ll
    M llvm/test/CodeGen/AMDGPU/memintrinsic-unroll.ll
    M llvm/test/CodeGen/AMDGPU/memset-param-combinations.ll
    M llvm/test/CodeGen/AMDGPU/minimumnum.bf16.ll
    M llvm/test/CodeGen/AMDGPU/minimumnum.ll
    M llvm/test/CodeGen/AMDGPU/mul24-pass-ordering.ll
    M llvm/test/CodeGen/AMDGPU/nested-calls.ll
    M llvm/test/CodeGen/AMDGPU/no-source-locations-in-prologue.ll
    M llvm/test/CodeGen/AMDGPU/nofpclass-call.ll
    M llvm/test/CodeGen/AMDGPU/pei-amdgpu-cs-chain-preserve.mir
    M llvm/test/CodeGen/AMDGPU/pei-vgpr-block-spill-csr.mir
    M llvm/test/CodeGen/AMDGPU/preserve-wwm-copy-dst-reg.ll
    M llvm/test/CodeGen/AMDGPU/s-getpc-b64-remat.ll
    M llvm/test/CodeGen/AMDGPU/scc-clobbered-sgpr-to-vmem-spill.ll
    M llvm/test/CodeGen/AMDGPU/sdwa-peephole-instr.mir
    M llvm/test/CodeGen/AMDGPU/select-fabs-fneg-extract.f16.ll
    M llvm/test/CodeGen/AMDGPU/select-fabs-fneg-extract.v2f16.ll
    M llvm/test/CodeGen/AMDGPU/select.f16.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-overlap-wwm-reserve.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-to-vmem-scc-clobber-unhandled.mir
    M llvm/test/CodeGen/AMDGPU/shrink-add-sub-constant.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i64.v8i64.ll
    M llvm/test/CodeGen/AMDGPU/si-lower-sgpr-spills-vgpr-lanes-usage.mir
    M llvm/test/CodeGen/AMDGPU/si-lower-sgpr-spills.mir
    M llvm/test/CodeGen/AMDGPU/sibling-call.ll
    M llvm/test/CodeGen/AMDGPU/spill-partial-csr-sgpr-live-ins.mir
    M llvm/test/CodeGen/AMDGPU/spill-scavenge-offset.ll
    M llvm/test/CodeGen/AMDGPU/spill-sgpr-csr-live-ins.mir
    M llvm/test/CodeGen/AMDGPU/spill-sgpr-to-virtual-vgpr.mir
    M llvm/test/CodeGen/AMDGPU/spill-vgpr-block.ll
    M llvm/test/CodeGen/AMDGPU/spill_more_than_wavesize_csr_sgprs.ll
    M llvm/test/CodeGen/AMDGPU/split-liverange-overlapping-copies.mir
    M llvm/test/CodeGen/AMDGPU/stack-realign.ll
    M llvm/test/CodeGen/AMDGPU/stacksave_stackrestore.ll
    M llvm/test/CodeGen/AMDGPU/strictfp_f16_abi_promote.ll
    M llvm/test/CodeGen/AMDGPU/swdev504645-global-fold.ll
    M llvm/test/CodeGen/AMDGPU/tail-call-inreg-arguments.waterfall.ll
    M llvm/test/CodeGen/AMDGPU/true16-imm-folded-to-0-regression.ll
    M llvm/test/CodeGen/AMDGPU/tuple-allocation-failure.ll
    M llvm/test/CodeGen/AMDGPU/unfold-masked-merge-scalar-variablemask.ll
    M llvm/test/CodeGen/AMDGPU/unspill-vgpr-after-rewrite-vgpr-mfma.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-mul.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-mark-last-scratch-load.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-tuple-allocation.ll
    M llvm/test/CodeGen/AMDGPU/wait-xcnt-drain.mir
    M llvm/test/CodeGen/AMDGPU/wait-xcnt.mir
    M llvm/test/CodeGen/AMDGPU/wave32.ll
    M llvm/test/CodeGen/AMDGPU/whole-wave-functions.ll
    M llvm/test/CodeGen/AMDGPU/whole-wave-register-copy.ll
    M llvm/test/CodeGen/AMDGPU/whole-wave-register-spill.ll
    A llvm/test/CodeGen/BPF/libcall-memcpy-threshold.ll
    A llvm/test/CodeGen/BPF/libcall-non-whitelisted.ll
    A llvm/test/CodeGen/DirectX/ContainerData/DebugName-DXIL.ll
    M llvm/test/CodeGen/DirectX/lit.local.cfg
    M llvm/test/CodeGen/Generic/2009-03-17-LSR-APInt.ll
    M llvm/test/CodeGen/Generic/available_externally_alias.ll
    M llvm/test/CodeGen/LoongArch/inline-asm-constraint-f.ll
    M llvm/test/CodeGen/LoongArch/lsx/vmskcond.ll
    A llvm/test/CodeGen/LoongArch/stack-clash-prologue-nounwind.ll
    A llvm/test/CodeGen/LoongArch/stack-clash-prologue.ll
    A llvm/test/CodeGen/LoongArch/stack-probing-dynamic-nonentry.ll
    A llvm/test/CodeGen/LoongArch/stack-probing-dynamic.ll
    A llvm/test/CodeGen/LoongArch/stack-probing-frame-setup.mir
    M llvm/test/CodeGen/NVPTX/convert-call-to-indirect.ll
    M llvm/test/CodeGen/PowerPC/combine-fneg.ll
    M llvm/test/CodeGen/PowerPC/fma-combine.ll
    M llvm/test/CodeGen/PowerPC/recipest.ll
    M llvm/test/CodeGen/PowerPC/repeated-fp-divisors.ll
    A llvm/test/CodeGen/PowerPC/vec-splats-opt.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
    M llvm/test/CodeGen/RISCV/bitint-fp-conv-200.ll
    A llvm/test/CodeGen/RISCV/move-merge-zdinx-mvsa-regression.mir
    M llvm/test/CodeGen/RISCV/rv32-merge-non-arg-reg.mir
    M llvm/test/CodeGen/RISCV/rvp-narrowing-shift-trunc.ll
    M llvm/test/CodeGen/RISCV/rvp-simd-64.ll
    M llvm/test/CodeGen/RISCV/rvv/vp-combine-reverse-load.ll
    M llvm/test/CodeGen/RISCV/rvv/vp-combine-store-reverse.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_ALTERA_arbitrary_precision_integers/i128-icmp.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_poison_freeze/arithmetic-poison-execmode-metadata.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_poison_freeze/arithmetic-poison-execmode-negative.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_poison_freeze/arithmetic-poison-execmode.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_poison_freeze/freeze.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_poison_freeze/poison-composite.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_poison_freeze/poison.ll
    M llvm/test/CodeGen/SPIRV/transcoding/ReqdSubgroupSize.ll
    A llvm/test/CodeGen/SystemZ/stack-guard-global-nopic.ll
    A llvm/test/CodeGen/SystemZ/stack-guard-global-pic.ll
    A llvm/test/CodeGen/SystemZ/stack-guard-pseudos.ll
    A llvm/test/CodeGen/SystemZ/stack-guard-tls.ll
    R llvm/test/CodeGen/SystemZ/stack-guard.ll
    A llvm/test/CodeGen/Thumb2/LowOverheadLoops/tail-pred-known-bits.ll
    M llvm/test/CodeGen/X86/avx512-mask-op.ll
    M llvm/test/CodeGen/X86/machine-block-hash.mir
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512vbmi2.ll
    A llvm/test/CodeGen/X86/volatile-atomicrmw.ll
    A llvm/test/DebugInfo/LoongArch/tls.ll
    A llvm/test/Instrumentation/InstrProfiling/amdgpu-instrumentation.ll
    A llvm/test/Instrumentation/InstrProfiling/amdgpu-profc-arrays.ll
    A llvm/test/Instrumentation/InstrProfiling/gpu-weak.ll
    M llvm/test/Instrumentation/Instrumentor/alloca_and_function.ll
    A llvm/test/Instrumentation/Instrumentor/cast.ll
    A llvm/test/Instrumentation/Instrumentor/cast_config.json
    A llvm/test/Instrumentation/Instrumentor/cast_crash.ll
    A llvm/test/Instrumentation/Instrumentor/cast_filter.ll
    A llvm/test/Instrumentation/Instrumentor/cast_filter_config.json
    M llvm/test/Instrumentation/Instrumentor/default_config.json
    R llvm/test/Instrumentation/Instrumentor/default_rt
    A llvm/test/Instrumentation/Instrumentor/default_rt.c
    A llvm/test/Instrumentation/Instrumentor/default_rt.h
    M llvm/test/Instrumentation/Instrumentor/generate_rt.ll
    A llvm/test/Instrumentation/Instrumentor/lit.local.cfg
    M llvm/test/Instrumentation/Instrumentor/module_and_globals.ll
    A llvm/test/Instrumentation/Instrumentor/operations.json
    A llvm/test/Instrumentation/Instrumentor/operations.ll
    M llvm/test/Instrumentation/Instrumentor/rt_config.json
    M llvm/test/MC/AArch64/arm64-system-encoding.s
    M llvm/test/MC/AArch64/armv9-mrrs-diagnostics.s
    M llvm/test/MC/AArch64/armv9-mrrs.s
    M llvm/test/MC/AArch64/armv9-msrr-diagnostics.s
    M llvm/test/MC/AArch64/armv9-msrr.s
    M llvm/test/MC/AArch64/basic-a64-instructions.s
    M llvm/test/MC/AMDGPU/gfx1150_asm_salu_float.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vopc.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopc.s
    M llvm/test/MC/AMDGPU/gfx12_asm_sopc.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3c.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc.s
    M llvm/test/MC/AMDGPU/gfx13_asm_sopc.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop1_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop3-fake16.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop3_from_vop1-fake16.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop3_from_vop1.s
    M llvm/test/MC/AMDGPU/literals.s
    A llvm/test/MC/AMDGPU/vcc_tuples.s
    M llvm/test/MC/AMDGPU/vop3-gfx10.s
    M llvm/test/MC/Disassembler/AArch64/armv8.2a-uao.txt
    M llvm/test/MC/Disassembler/AArch64/armv8.4a-dit.txt
    M llvm/test/MC/Disassembler/AArch64/armv8.5a-dataproc.txt
    M llvm/test/MC/Disassembler/AArch64/armv8.5a-mte.txt
    M llvm/test/MC/Disassembler/AArch64/armv8.5a-sb.txt
    M llvm/test/MC/Disassembler/AArch64/armv8.5a-ssbs.txt
    M llvm/test/MC/Disassembler/AArch64/armv8.7a-wfxt.txt
    M llvm/test/MC/Disassembler/AArch64/armv8.7a-xs.txt
    M llvm/test/MC/Disassembler/AArch64/armv8.8a-nmi.txt
    M llvm/test/MC/Disassembler/AArch64/basic-a64-instructions.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1150_dasm_salu_float.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vopcx.txt
    A llvm/test/MC/LoongArch/Directives/tls.s
    A llvm/test/Other/legacy-callgraph-scc-pass-printer.ll
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table.td
    M llvm/test/TableGen/GlobalISelEmitter/GlobalISelEmitter.td
    M llvm/test/TableGen/GlobalISelEmitter/HwModes.td
    M llvm/test/TableGen/RegClassByHwMode.td
    M llvm/test/Transforms/AggressiveInstCombine/popcount.ll
    M llvm/test/Transforms/Attributor/align-atomic.ll
    M llvm/test/Transforms/Attributor/align.ll
    M llvm/test/Transforms/Attributor/liveness.ll
    M llvm/test/Transforms/Attributor/noalias.ll
    M llvm/test/Transforms/Attributor/nocapture-1.ll
    M llvm/test/Transforms/Attributor/nocapture-2.ll
    M llvm/test/Transforms/Attributor/nofpclass.ll
    M llvm/test/Transforms/Attributor/nonnull.ll
    M llvm/test/Transforms/Attributor/nosync.ll
    M llvm/test/Transforms/Attributor/range.ll
    M llvm/test/Transforms/Attributor/readattrs.ll
    M llvm/test/Transforms/Attributor/undefined_behavior.ll
    M llvm/test/Transforms/Attributor/value-simplify-instances.ll
    M llvm/test/Transforms/Attributor/value-simplify-pointer-info-struct.ll
    M llvm/test/Transforms/Attributor/value-simplify-pointer-info.ll
    M llvm/test/Transforms/Attributor/value-simplify.ll
    A llvm/test/Transforms/CodeGenPrepare/X86/split-branch-cond-weights.ll
    M llvm/test/Transforms/Coroutines/coro-alloc-with-param-O0.ll
    M llvm/test/Transforms/Coroutines/coro-alloc-with-param-O2.ll
    M llvm/test/Transforms/Coroutines/coro-alloca-07.ll
    M llvm/test/Transforms/Coroutines/coro-await-suspend-handle-in-ramp.ll
    M llvm/test/Transforms/Coroutines/coro-await-suspend-lower-invoke.ll
    M llvm/test/Transforms/Coroutines/coro-await-suspend-lower.ll
    M llvm/test/Transforms/Coroutines/coro-debug-O2.ll
    M llvm/test/Transforms/Coroutines/coro-debug-coro-frame.ll
    M llvm/test/Transforms/Coroutines/coro-debug-dbg.values-not_used_in_frame.ll
    M llvm/test/Transforms/Coroutines/coro-debug-frame-variable.ll
    M llvm/test/Transforms/Coroutines/coro-debug-spill-dbg.declare.ll
    M llvm/test/Transforms/Coroutines/coro-debug.ll
    M llvm/test/Transforms/Coroutines/coro-eh-aware-edge-split-00.ll
    M llvm/test/Transforms/Coroutines/coro-eh-aware-edge-split-01.ll
    M llvm/test/Transforms/Coroutines/coro-eh-aware-edge-split-02.ll
    M llvm/test/Transforms/Coroutines/coro-frame-arrayalloca.ll
    A llvm/test/Transforms/Coroutines/coro-frame-inramp.ll
    M llvm/test/Transforms/Coroutines/coro-frame.ll
    M llvm/test/Transforms/Coroutines/coro-noop-pacbti.ll
    M llvm/test/Transforms/Coroutines/coro-noop.ll
    M llvm/test/Transforms/Coroutines/coro-padding.ll
    M llvm/test/Transforms/Coroutines/coro-resume-destroy.ll
    M llvm/test/Transforms/Coroutines/coro-spill-corobegin.ll
    M llvm/test/Transforms/Coroutines/coro-spill-promise-02.ll
    M llvm/test/Transforms/Coroutines/coro-spill-promise.ll
    M llvm/test/Transforms/Coroutines/coro-spill-suspend.ll
    M llvm/test/Transforms/Coroutines/coro-split-dbg-labels-inlined.ll
    M llvm/test/Transforms/Coroutines/coro-split-dbg-labels.ll
    M llvm/test/Transforms/Coroutines/coro-split-eh-00.ll
    M llvm/test/Transforms/Coroutines/coro-split-eh-01.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail-chain-pgo-counter-promo.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail1.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail2.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail3.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail4.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail5.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail6.ll
    M llvm/test/Transforms/Coroutines/coro-split-musttail7.ll
    M llvm/test/Transforms/Coroutines/coro-split-sink-lifetime-01.ll
    M llvm/test/Transforms/Coroutines/coro-split-sink-lifetime-02.ll
    M llvm/test/Transforms/Coroutines/coro-split-sink-lifetime-03.ll
    M llvm/test/Transforms/Coroutines/coro-split-sink-lifetime-04.ll
    M llvm/test/Transforms/Coroutines/coro-split-tbaa-md.ll
    M llvm/test/Transforms/Coroutines/coro-zero-alloca.ll
    M llvm/test/Transforms/ExpandIRInsts/X86/expand-fp-convert-small.ll
    M llvm/test/Transforms/ExpandIRInsts/X86/expand-int-convert-small.ll
    M llvm/test/Transforms/ExpandIRInsts/X86/expand-large-fp-convert-fptosi129.ll
    M llvm/test/Transforms/ExpandIRInsts/X86/expand-large-fp-convert-fptoui129.ll
    M llvm/test/Transforms/ExpandIRInsts/X86/expand-large-fp-convert-si129tofp.ll
    M llvm/test/Transforms/ExpandIRInsts/X86/expand-large-fp-convert-ui129tofp.ll
    M llvm/test/Transforms/ExpandIRInsts/X86/expand-large-fp-optnone.ll
    M llvm/test/Transforms/FunctionAttrs/atomic.ll
    M llvm/test/Transforms/FunctionAttrs/nocapture.ll
    M llvm/test/Transforms/FunctionAttrs/nonnull.ll
    M llvm/test/Transforms/FunctionAttrs/nosync.ll
    M llvm/test/Transforms/FunctionAttrs/readattrs.ll
    M llvm/test/Transforms/FunctionAttrs/writeonly.ll
    M llvm/test/Transforms/InstCombine/ARM/mve-narrow.ll
    M llvm/test/Transforms/InstCombine/assume.ll
    A llvm/test/Transforms/InstCombine/fold-zext-of-deinterleave.ll
    M llvm/test/Transforms/InstCombine/or-bitmask.ll
    M llvm/test/Transforms/InstSimplify/sincos.ll
    M llvm/test/Transforms/LoopFusion/loop_invariant.ll
    A llvm/test/Transforms/LoopFusion/pr191238.ll
    M llvm/test/Transforms/LoopStrengthReduce/AArch64/lsr-memcpy.ll
    M llvm/test/Transforms/LoopStrengthReduce/AArch64/vscale-fixups.ll
    A llvm/test/Transforms/LoopStrengthReduce/AArch64/vscale-negative-i32-offset.ll
    M llvm/test/Transforms/LoopVectorize/X86/masked_load_store.ll
    M llvm/test/Transforms/LoopVectorize/hoist-predicated-loads-with-predicated-stores.ll
    M llvm/test/Transforms/MemCpyOpt/memset-memcpy-redundant-memset.ll
    M llvm/test/Transforms/OpenMP/parallel_deletion.ll
    A llvm/test/Transforms/PGOProfile/amdgpu-disable-value-profiling.ll
    A llvm/test/Transforms/SLPVectorizer/RISCV/runtime-strided-stores.ll
    A llvm/test/Transforms/SLPVectorizer/X86/revec-fma-vectorize.ll
    M llvm/test/Transforms/SeparateConstOffsetFromGEP/AMDGPU/lower-gep.ll
    M llvm/test/Transforms/SeparateConstOffsetFromGEP/split-gep-sub.ll
    M llvm/test/Transforms/SimpleLoopUnswitch/trivial-unswitch-profmd.ll
    A llvm/test/Transforms/VectorCombine/RISCV/vector-deinterleave2.ll
    M llvm/test/Transforms/VectorCombine/X86/load-extractelement-scalarization.ll
    A llvm/test/tools/dxil-dis/dbg-declare-undef.ll
    A llvm/test/tools/dxil-dis/dbg-value.ll
    M llvm/test/tools/dxil-dis/debug-info.ll
    A llvm/test/tools/dxil-dis/di-label.ll
    M llvm/test/tools/llubi/alloca.ll
    M llvm/test/tools/llubi/assume_misalign_all_ones.ll
    M llvm/test/tools/llubi/assume_null.ll
    M llvm/test/tools/llubi/assume_null_all_ones.ll
    M llvm/test/tools/llubi/attribute_dereferenceable_ub_nullary_provenance.ll
    M llvm/test/tools/llubi/attributes.ll
    M llvm/test/tools/llubi/bitcast_be.ll
    M llvm/test/tools/llubi/bitcast_le.ll
    M llvm/test/tools/llubi/freeze.ll
    M llvm/test/tools/llubi/gep.ll
    M llvm/test/tools/llubi/inttoptr.ll
    M llvm/test/tools/llubi/lib_calloc_large_size.ll
    M llvm/test/tools/llubi/lib_calloc_size_overflow.ll
    M llvm/test/tools/llubi/lib_free_nullary_pointer.ll
    M llvm/test/tools/llubi/lib_malloc_large_size.ll
    M llvm/test/tools/llubi/loadstore_be.ll
    M llvm/test/tools/llubi/loadstore_le.ll
    M llvm/test/tools/llubi/loadstore_uaf.ll
    M llvm/test/tools/llubi/metadata.ll
    M llvm/test/tools/llubi/store_dead.ll
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/arithmetic.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/bitwise.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/comparison.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/conversion.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/fma.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/fp.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/mask.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/minmax.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/mul-div.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/permutation.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/reduction.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/vle-vse-vlm.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/vlse-vsse.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/vlseg-vsseg.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/vlxe-vsxe.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/zvbb.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/zvbc.test
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/zvkg.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/zvkned.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/zvknhb.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/zvksed.s
    M llvm/test/tools/llvm-mca/RISCV/SiFiveP400/rvv/zvksh.s
    A llvm/test/tools/llvm-offload-binary/llvm-offload-binary-malformed.ll
    M llvm/test/tools/llvm-offload-binary/llvm-offload-binary.ll
    A llvm/test/tools/llvm-pdbutil/dxcontainer.test
    A llvm/test/tools/llvm-symbolizer/Inputs/wasm-basic.yaml
    R llvm/test/tools/llvm-symbolizer/lit.local.cfg
    M llvm/test/tools/llvm-symbolizer/wasm-basic.s
    M llvm/tools/llubi/lib/Context.cpp
    M llvm/tools/llubi/lib/Context.h
    M llvm/tools/llubi/lib/Value.cpp
    M llvm/tools/llubi/lib/Value.h
    M llvm/tools/llvm-gsymutil/Opts.td
    M llvm/tools/llvm-gsymutil/llvm-gsymutil.cpp
    M llvm/tools/llvm-pdbutil/PdbYaml.cpp
    M llvm/tools/llvm-pdbutil/PdbYaml.h
    M llvm/tools/llvm-pdbutil/YAMLOutputStyle.cpp
    M llvm/tools/llvm-pdbutil/YAMLOutputStyle.h
    M llvm/tools/llvm-pdbutil/llvm-pdbutil.cpp
    M llvm/tools/llvm-pdbutil/llvm-pdbutil.h
    M llvm/tools/llvm-profgen/ProfiledBinary.cpp
    M llvm/unittests/ADT/BitVectorTest.cpp
    M llvm/unittests/Object/DXContainerTest.cpp
    M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
    M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.cpp
    M llvm/utils/git/github-automation.py
    M llvm/utils/gn/build/BUILD.gn
    M llvm/utils/gn/build/toolchain/compiler.gni
    M llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysisFramework/Frontend/BUILD.gn
    M llvm/utils/gn/secondary/compiler-rt/lib/builtins/BUILD.gn
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/API/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/DataFormatters/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/Host/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/Interpreter/BUILD.gn
    M llvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/ABI/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Support/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Target/LoongArch/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-objcopy/BUILD.gn
    M llvm/utils/lit/lit/LitConfig.py
    M llvm/utils/lit/lit/ProgressBar.py
    M llvm/utils/lit/lit/ShUtil.py
    M llvm/utils/lit/lit/Test.py
    M llvm/utils/lit/lit/TestRunner.py
    M llvm/utils/lit/lit/TestingConfig.py
    M llvm/utils/lit/lit/formats/googletest.py
    M llvm/utils/lit/lit/main.py
    M llvm/utils/lit/tests/Inputs/googletest-timeout/lit.cfg
    A llvm/utils/lit/tests/Inputs/lit-config-readonly/lit.cfg
    M llvm/utils/lit/tests/Inputs/shtest-timeout/lit.cfg
    A llvm/utils/lit/tests/lit-config-readonly.py
    M llvm/utils/profcheck-xfail.txt
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
    M mlir/include/mlir/Dialect/Tosa/IR/TargetEnv.h
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/include/mlir/Interfaces/MemorySlotInterfaces.h
    M mlir/include/mlir/Interfaces/MemorySlotInterfaces.td
    A mlir/include/mlir/Target/SPIRV/SPIRVExtInstSets.h
    M mlir/lib/Conversion/ComplexToSPIRV/ComplexToSPIRV.cpp
    M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
    M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
    M mlir/lib/Conversion/TosaToSPIRVTosa/TosaToSPIRVTosaOps.cpp
    M mlir/lib/Conversion/TosaToSPIRVTosa/TosaToSPIRVTosaPass.cpp
    M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
    M mlir/lib/Dialect/Tosa/IR/TargetEnv.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
    M mlir/lib/Interfaces/MemorySlotInterfaces.cpp
    M mlir/lib/Target/SPIRV/Deserialization/DeserializeOps.cpp
    M mlir/lib/Target/SPIRV/Deserialization/Deserializer.h
    M mlir/lib/Target/SPIRV/Serialization/SerializeOps.cpp
    M mlir/lib/Target/SPIRV/Serialization/Serializer.cpp
    M mlir/lib/Target/SPIRV/Serialization/Serializer.h
    M mlir/lib/Target/SPIRV/TranslateRegistration.cpp
    M mlir/lib/Transforms/Mem2Reg.cpp
    M mlir/test/Conversion/ComplexToSPIRV/complex-to-spirv.mlir
    A mlir/test/Conversion/MemRefToEmitC/memref-to-emitc-alloc-dealloc.mlir
    R mlir/test/Conversion/MemRefToEmitC/memref-to-emitc-alloc.mlir
    M mlir/test/Conversion/SPIRVToLLVM/gl-ops-to-llvm.mlir
    M mlir/test/Conversion/TosaToSPIRVTosa/tosa-to-spirv.mlir
    M mlir/test/Dialect/LLVMIR/nvvm.mlir
    M mlir/test/Dialect/Tosa/canonicalize.mlir
    R mlir/test/Dialect/Tosa/fold_concats.mlir
    M mlir/test/Target/LLVMIR/nvvm/barrier.mlir
    M mlir/test/Target/LLVMIR/nvvmir-invalid.mlir
    R mlir/test/Target/SPIRV/debug-negative.mlir
    A mlir/test/Target/SPIRV/graph-debug-info-negative.mlir
    A mlir/test/Target/SPIRV/graph-debug-info.mlir
    M mlir/test/Transforms/mem2reg.mlir
    M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
    M mlir/test/lib/Dialect/Test/TestOps.td
    M mlir/test/python/dialects/nvvm.py
    M mlir/unittests/Dialect/SPIRV/DeserializationTest.cpp
    A offload/ci/hip-tpl.py
    M offload/include/OpenMP/OMPT/Interface.h
    M offload/libomptarget/OpenMP/API.cpp
    M offload/libomptarget/OpenMP/OMPT/Callback.cpp
    A offload/test/ompt/target_memset.c
    A offload/test/ompt/target_memset_async.c
    A offload/test/ompt/target_memset_emi.c
    M offload/unittests/OffloadAPI/common/Fixtures.hpp
    M offload/unittests/OffloadAPI/event/olGetEventElapsedTime.cpp
    M offload/unittests/OffloadAPI/kernel/olCalculateOptimalOccupancy.cpp
    M offload/unittests/OffloadAPI/kernel/olLaunchKernel.cpp
    M offload/unittests/OffloadAPI/memory/olMemFill.cpp
    M offload/unittests/OffloadAPI/queue/olDestroyQueue.cpp
    M offload/unittests/OffloadAPI/queue/olLaunchHostFunction.cpp
    M offload/unittests/OffloadAPI/symbol/olGetSymbolInfo.cpp
    M openmp/CMakeLists.txt
    R openmp/cmake/modules/LibompCheckFortranFlag.cmake
    M openmp/cmake/modules/LibompHandleFlags.cmake
    M openmp/module/CMakeLists.txt
    M openmp/runtime/cmake/LibompExports.cmake
    M openmp/runtime/test/lit.cfg
    M openmp/runtime/test/lit.site.cfg.in
    M orc-rt/include/orc-rt/NativeDylibManager.h
    M orc-rt/lib/executor/NativeDylibManager.cpp
    M orc-rt/lib/executor/sps-ci/NativeDylibManagerSPSCI.cpp
    M orc-rt/unittests/NativeDylibManagerSPSCITest.cpp
    M orc-rt/unittests/NativeDylibManagerTest.cpp
    M runtimes/cmake/config-Fortran.cmake
    M utils/bazel/llvm-project-overlay/compiler-rt/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  Merge branch 'main' into users/tonykuttai/ltobugfix


Compare: https://github.com/llvm/llvm-project/compare/f8d2a255b386...35c0ccb2e3d2

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