[all-commits] [llvm/llvm-project] 7fd679: [Bazel] Fixes 64171f0 (#221585)

Alexey Bataev via All-commits all-commits at lists.llvm.org
Mon Sep 7 11:31:33 PDT 2026


  Branch: refs/heads/users/alexey-bataev/spr/slpsupport-copyable-gepzext-main-ops-and-relax-gather-pointer-compatibility
  Home:   https://github.com/llvm/llvm-project
  Commit: 7fd679a3fdb585f2fd75d950e396c11901bfd62c
      https://github.com/llvm/llvm-project/commit/7fd679a3fdb585f2fd75d950e396c11901bfd62c
  Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
  Date:   2026-09-06 (Sun, 06 Sep 2026)

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

  Log Message:
  -----------
  [Bazel] Fixes 64171f0 (#221585)

This fixes 64171f09367ae70475eebe9184353ca5948681fb (#221123).

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

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


  Commit: cc4b3c91c6d3b557d175622c2c326e98ced61fbe
      https://github.com/llvm/llvm-project/commit/cc4b3c91c6d3b557d175622c2c326e98ced61fbe
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-09-06 (Sun, 06 Sep 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/Hexagon/sffms.ll

  Log Message:
  -----------
  DAGCombiner: Drop AllowFPOpFusion from visitFSUBForFMACombine (#221439)

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


  Commit: c2dd24dc601f9e7f66ec813ab33baab34585d506
      https://github.com/llvm/llvm-project/commit/c2dd24dc601f9e7f66ec813ab33baab34585d506
  Author: AZero13 <gfunni234 at gmail.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/test/Transforms/InstCombine/overflow-mul.ll
    M llvm/test/Transforms/InstCombine/saturating-add-sub.ll
    M llvm/test/Transforms/InstCombine/uadd-with-overflow.ll

  Log Message:
  -----------
  [InstCombine] Canonicalize zext+overflow check to overflow check if zext's only purpose is to check overflow (#220658)

Change processUMulZExtIdiom to also support adds, since the idiom is the
same, except with add instead of mul.

Alive2: https://alive2.llvm.org/ce/z/SsB4AK


  Commit: 08fb771d71de39421d1e9e200c8b8a0b06d74220
      https://github.com/llvm/llvm-project/commit/08fb771d71de39421d1e9e200c8b8a0b06d74220
  Author: Avi Kivity <avi at scylladb.com>
  Date:   2026-09-06 (Sun, 06 Sep 2026)

  Changed paths:
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/test/DebugInfo/CXX/limited-ctor.cpp

  Log Message:
  -----------
  Revert "[DebugInfo] Ignore undefined constexpr constructors in constructor homing." (#221566)

This reverts commit
https://github.com/llvm/llvm-project/commit/6ba0802b406e0963720a698702b9136578dde149
(https://github.com/llvm/llvm-project/pull/218165).

canUseCtorHoming() used to bail out on
hasConstexprNonCopyMoveConstructor().
That commit narrowed the exemption to *defined* constexpr constructors,
on the
assumption that a constructor which is not defined here will be defined
- and
will therefore emit the type's debug info - in whichever translation
unit
constructs the object.

That assumption does not hold when the constructor is never invoked at
all. A
constructor of a class template specialization is only instantiated, and
hence
only defined, where it is used. If nothing ever constructs the
specialization,
its constructors are defined in no translation unit, and so nothing
anywhere
homes the type - even though the type still has to be complete in order
to read
a member.

(The reverted commit's stated rationale, that "declared constexpr
constructors
are not callable in a TU that doesn't see their definition", does not
hold
either: such a constructor can be called outside a constant expression,
with
the definition supplied by another translation unit, and clang emits an
ordinary external call for it. But that is not what breaks here.)

Unions of layout-compatible types are where this bites. The common
initial
sequence rule ([class.mem.general]p26, 9.2/19 in C++11) lets a program
write
through one union member and read through another where the two share a
common
initial sequence, and absl::container_internal::map_slot_type is built
on it:
it aliases std::pair<const K, V> and std::pair<K, V> so that
flat_hash_map<K, V> can hand out pair<const K, V> references while still
moving
keys efficiently. Slots are created and destroyed through the mutable
pair and
only read through the const-key one, so a std::pair<const K, V> is never
constructed, none of its constructors is ever instantiated, and its type
is
emitted nowhere.

Reduced, and linkable - the following compiles, links and returns 0:

    template <class A, class B> struct mypair {
        A first;
        B second;
        constexpr mypair() : first(), second() {}
constexpr mypair(const A& a, const B& b) : first(a), second(b) {}
    };

    template <class K, class V>
    union map_slot_type {
        map_slot_type() {}
        ~map_slot_type() {}
using value_type = mypair<const K, V>; // read, never constructed
        using mutable_value_type = mypair<K, V>;    // constructed
        value_type value;
        mutable_value_type mutable_value;
        K key;
    };

    map_slot_type<unsigned long, void*> slot;
    int marker;

    int main() {
        slot.mutable_value = mypair<unsigned long, void*>(42, &marker);
return (slot.value.first == 42 && slot.value.second == &marker) ? 0 : 1;
    }

mypair<unsigned long, void*> is constructed and keeps its debug info.
mypair<const unsigned long, void*> is only read, and is emitted as a
declaration in every translation unit, so a debugger cannot show first
and
second:

    clang 22.1.8     DW_AT_byte_size   (0x10)
    clang 24.0.0git  DW_AT_declaration (true)

This is how it was found - gdb reporting "<incomplete type>" for
std::pair<const size_t, ...> in ScyllaDB, which broke the flat_hash_map
readers
in its gdb scripts.

Keep the test coverage the reverted commit added for the cases whose
expected
output is unchanged, restore the DeclaredConstexpr expectation to full
debug
info, and add the aliased-pair case above.

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

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


  Commit: 68f48bd751e4def54642707b2e44bbcab4f8d948
      https://github.com/llvm/llvm-project/commit/68f48bd751e4def54642707b2e44bbcab4f8d948
  Author: benscharl <benscharl42 at gmail.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/InstCombine/icmp-power2-and-icmp-shifted-mask.ll
    M llvm/test/Transforms/InstCombine/nested-select.ll
    M llvm/unittests/Analysis/ValueTrackingTest.cpp

  Log Message:
  -----------
  [ValueTracking] Infer implied conditions through masked bit tests (#219626)

Fixes #214397

`isImpliedCondICmps` failed when one compare constrains X and the other
tests a value derived from X. For example:
`X u<13` implies `(X & 16) == 0`

This adds an additional check. When both compares have constant RHS
operands and the second compare's LHS is `and (L0, C)`, following
strategy is applied: L0's range is derived from the first compare and
the mask is applied. If the resulting range satisfies the second
predicate for all values, the implication is correct. If the inverse
predicate is satisfied for all values, the implication is false.
Otherwise the result is unknown.

Alive2: https://alive2.llvm.org/ce/z/aa62Yy


  Commit: e384c0d60bf44f432a9e9d56c81c2f372452fb02
      https://github.com/llvm/llvm-project/commit/e384c0d60bf44f432a9e9d56c81c2f372452fb02
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-09-06 (Sun, 06 Sep 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    M llvm/test/Analysis/LoopAccessAnalysis/all-ones-null-pointer.ll
    M llvm/test/Analysis/LoopAccessAnalysis/evaluate-at-symbolic-max-backedge-taken-count-may-wrap.ll
    M llvm/test/Analysis/LoopAccessAnalysis/negative-step-deref-off-by-eltsize.ll
    M llvm/test/Analysis/LoopAccessAnalysis/retry-runtime-checks-after-dependence-analysis-forked-pointers.ll
    M llvm/test/Analysis/LoopAccessAnalysis/symbolic-stride.ll

  Log Message:
  -----------
  [LAA] Fix inverted bounds for negative-step AddRecs with unknown end. (#218388)

Currently we use an conservative upper bound (-1) for runtime checks
when evaluating the AddRec may wrap.

This does not properly account for negative steps. In that case, we need
to use null as conservative lower bound.

One complication is that the null pointer may not be zero, so we need to
check for that, and bail out completely if that's the case. We then must
clean up any pointers partially added.

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


  Commit: be3c61a954c5f80f179991df6eefa3d4e3570bba
      https://github.com/llvm/llvm-project/commit/be3c61a954c5f80f179991df6eefa3d4e3570bba
  Author: Yongqiang Tian <yqtian668 at gmail.com>
  Date:   2026-09-06 (Sun, 06 Sep 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineOutliner.h
    M llvm/include/llvm/CodeGen/TargetInstrInfo.h
    M llvm/lib/CodeGen/MachineOutliner.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    A llvm/test/CodeGen/AArch64/machine-outliner-debug-admission.mir
    M llvm/test/CodeGen/AArch64/machine-outliner-macho-compact-unwind-frame.mir
    M llvm/test/CodeGen/AArch64/machine-outliner-mapper-stats.mir
    M llvm/test/CodeGen/AArch64/machine-outliner-mapping-stats.mir
    A llvm/test/CodeGen/AArch64/machine-outliner-range-debug.mir
    A llvm/test/CodeGen/RISCV/machine-outliner-debug-codegen.mir
    A llvm/test/CodeGen/RISCV/machine-outliner-mapper-debug-state.mir

  Log Message:
  -----------
  [MachineOutliner] Properly handle Debug MachineInstrs (#219326)

Fixes #219176.

Debug instructions could affect `MachineOutliner` output in two ways:

- The minimum basic-block size check used `MachineBasicBlock::size()`,
which includes debug instructions. A block containing one ordinary
instruction and one debug instruction could therefore enter the mapper
even though it was too small to outline.
- Mapping an invisible debug instruction cleared `AddedIllegalLastTime`.
This changed the separator state and could affect persistent token
numbering, outlined-function ordering, and ultimately the generated
object code.

This patch makes debug instructions transparent to both decisions:

- Use the non-debug instruction count for the minimum block-size check.
- Preserve the mapper's separator state for debug instructions while
retaining the existing behavior for other invisible pseudos.

The patch adds MIR coverage for both cases and updates the existing
mapper statistics test to reflect blocks that are now skipped.

Testing:

- The original reproducer produces identical ordinary MIR before and
after the outliner for `-g0` and `-g`.
- The normalized machine-code fingerprints for the original reproducer
are identical with and without debug information.
- The complete AArch64 and RISC-V CodeGen test directories pass: 6852
passed, 5 expectedly failed, 0 failed.

AI assistance disclosure: OpenAI Codex 5.6 Sol assisted with the
implementation and testing. The changes were co-reviewed by Claude and
Yongqiang Tian.


  Commit: adbd9456bdc3cf6287f3cee6fb15424f6f5001cc
      https://github.com/llvm/llvm-project/commit/adbd9456bdc3cf6287f3cee6fb15424f6f5001cc
  Author: David Tellenbach <dtellenbach at apple.com>
  Date:   2026-09-06 (Sun, 06 Sep 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ConditionalCompares.cpp
    A llvm/test/CodeGen/AArch64/cmpbr-ccmp.ll
    A llvm/test/CodeGen/AArch64/cmpbr-ccmp.mir

  Log Message:
  -----------
  [AArch64] Allow forming CCMPs for CB branches (#221111)

AArch64ConditionalCompares currently doesn't consider FEAT_CMPBR CB
instructions when trying to form CCMPs. This leads to a lot more
branches which is usually hurtful for performance.

The patchs adds handling CB instructions, just like we do for other
fused conditional branches such as CBZ or CBNZ.


  Commit: 067b6d90b64e8f43c9a2388530b7f98911d77421
      https://github.com/llvm/llvm-project/commit/067b6d90b64e8f43c9a2388530b7f98911d77421
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    A orc-rt/test/unit/BedrockTestUtils.h
    M orc-rt/test/unit/CMakeLists.txt
    M orc-rt/test/unit/CommonTestUtils.h
    M orc-rt/test/unit/bedrock/BootstrapInfoTest.cpp
    M orc-rt/test/unit/bedrock/InProcessControllerAccessTest.cpp
    M orc-rt/test/unit/bedrock/NativeDylibManagerTest.cpp
    M orc-rt/test/unit/bedrock/SessionTest.cpp
    M orc-rt/test/unit/bedrock/SimpleNativeMemoryMapTest.cpp
    M orc-rt/test/unit/bedrock/sps/NativeDylibManagerSPSCITest.cpp
    M orc-rt/test/unit/bedrock/sps/SimpleNativeMemoryMapSPSCITest.cpp
    M orc-rt/test/unit/bedrock/sps/SimpleRemoteCATest.cpp
    M orc-rt/test/unit/support/ProxyTest.cpp

  Log Message:
  -----------
  [orc-rt] Split unit tests into SupportTests and BedrockTests (#221562)

Replace CoreTests with one test binary per layer. SupportTests links the
Support object library and nothing else, so a new support-to-bedrock
dependency fails to link rather than going unnoticed.

Making that work required splitting CommonTestUtils.h: its
Bedrock-dependent helpers move to a new BedrockTestUtils.h, so that no
SupportTests translation unit includes a Bedrock header. That in turn
lets ProxyTest join SupportTests -- Proxy.h only forward-declares
Session, so the test can define its own instead of constructing a real
one.


  Commit: b1f20dd48e11439d5a592662b407e07d8213ffee
      https://github.com/llvm/llvm-project/commit/b1f20dd48e11439d5a592662b407e07d8213ffee
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-09-06 (Sun, 06 Sep 2026)

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

  Log Message:
  -----------
  [TableGen] Escape single quotes when emitting a string table as char literals (#221612)

Fix a latent bug in StringToOffsetTable, which led to breakage after
#218845

```
C:\_work\llvm-project\llvm-project\build\tools\clang\include\clang/Options/Options.inc(135,18): error: expected expression
C:\_work\llvm-project\llvm-project\build\tools\clang\include\clang/Options/Options.inc(135,24): warning: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wreserved-user-defined-literal]
  135 |   'D', 'o', 'n', ''', 't', ' ', 'e', 'm', 'i', 't', ' ', 'e', 'r', 'r', 'o', 'r', 's', ' ', 'o', 'n', ' ', 'i', 'n', 'v', 'a', 'l', 'i', 'd', ' ', 'a', 'n', 'a', 'l', 'y', 'z', 'e', 'r', '-', 'c', 'o', 'n', 'f', 'i', 'g', ' ', 'i', 'n', 'p', 'u', 't', 's', '\0',
      |                        ^
```


  Commit: 91d3532e2261e168e85ebcf5c5112419b47ef530
      https://github.com/llvm/llvm-project/commit/91d3532e2261e168e85ebcf5c5112419b47ef530
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/include/clang/Basic/ABIVersions.def
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/Targets/X86.cpp
    A clang/test/CodeGen/X86/x86_64-unnamed-bitfield-abi-compat.c
    M llvm/include/llvm/ABI/TargetInfo.h
    M llvm/lib/ABI/Targets/X86.cpp

  Log Message:
  -----------
  [Clang][X86] Add Clang23Compat for __int128 bit-field ABI change (#220788)

Follow up of #216777.

Assisted-by: Claude Opus 4.8


  Commit: c6fd19f0fe4eb4f9ddd978eb9a6dbc8039acc3dd
      https://github.com/llvm/llvm-project/commit/c6fd19f0fe4eb4f9ddd978eb9a6dbc8039acc3dd
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

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

  Log Message:
  -----------
  [VPlan] Make m_False and m_True matchers stateless. NFC (#221581)

is_zero_int and is_one avoid storage unlike is_specific_int, and allow
the match function to be an inlined isZero/isOne call instead of
APInt::isSameValue.

Improves compile time:
https://llvm-compile-time-tracker.com/compare.php?from=8f7d3ba08f14c3d54b8b407d1758dbd1da01bb38&to=c766163e82ec7a377efc7a26ef1e6db38e0dec1d&stat=instructions:u


  Commit: 2fb183588d6a5067f9a782b822968ddd0f6b4472
      https://github.com/llvm/llvm-project/commit/2fb183588d6a5067f9a782b822968ddd0f6b4472
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M lld/ELF/EhFrame.cpp
    M lld/ELF/EhFrame.h
    M lld/ELF/SyntheticSections.cpp
    M lld/test/ELF/eh-frame-fde-encoding.s
    R lld/test/ELF/eh-frame-hdr-zero-range.s
    M lld/test/ELF/eh-frame-negative-pcrel-sdata2.s
    M lld/test/ELF/eh-frame-negative-pcrel-sdata4.s

  Log Message:
  -----------
  Revert "[ELF] Omit zero-range FDEs from .eh_frame_hdr" (#221624)

Reverts llvm/llvm-project#220492

This causes the RISC-V buildbots to fail in the exception handling
tests, see https://lab.llvm.org/buildbot/#/builders/210/builds/12623 for
the gauntlet build logs

Apologies this revert is coming in so late, there is a proposed fix at
https://github.com/llvm/llvm-project/pull/221342 but it looks like it
might require additional rounds of review so reverting to get the
buildbots back to green for now

cc @MaskRay @Prabhuk


  Commit: 98baf03a3ca629fa2d690286fb751a05c9fd6965
      https://github.com/llvm/llvm-project/commit/98baf03a3ca629fa2d690286fb751a05c9fd6965
  Author: Dan Shan <3shandan at gmail.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M libcxx/docs/Status/Cxx26Issues.csv
    M libcxx/include/__optional/comparison.h
    M libcxx/test/std/utilities/optional/optional.comp_with_t/equal.pass.cpp
    M libcxx/test/std/utilities/optional/optional.comp_with_t/greater.pass.cpp
    M libcxx/test/std/utilities/optional/optional.comp_with_t/greater_equal.pass.cpp
    M libcxx/test/std/utilities/optional/optional.comp_with_t/less_equal.pass.cpp
    M libcxx/test/std/utilities/optional/optional.comp_with_t/less_than.pass.cpp
    M libcxx/test/std/utilities/optional/optional.comp_with_t/not_equal.pass.cpp

  Log Message:
  -----------
  [libc++] Implement LWG4072: std::optional comparisons: constrain harder (#209968)

Resolves #118345.

Previously, the heterogeneous comparison operators (`==`, `!=`, `<`,
`<=`, `>`, `>=`) for arguments `T` and `U` don't check that `T` or `U`
are not a `std::optional` themselves. This allowed the operators to
cause ambiguous overload resolution instead of falling back to
`optional`'s own operators, which possibly caused hard error when there
should not be a matched overload.

This patch implements the resolution by adding
`!__is_std_optional_v<_Up>` (and the `_Tp` equivalent for the reversed)
to the constraints in all twelve involved operators.

As required by the LLVM Project's AI use policy:
- The fix and test processes were revised and verified with AI
assistance.


  Commit: 4edfeaddedd4a1b337a1c17af571127c63f2bbd6
      https://github.com/llvm/llvm-project/commit/4edfeaddedd4a1b337a1c17af571127c63f2bbd6
  Author: Madhur Amilkanthwar <madhura at nvidia.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/lib/CodeGen/InterleavedLoadCombinePass.cpp
    A llvm/test/CodeGen/AArch64/interleaved-load-combine-many-candidates.ll

  Log Message:
  -----------
  [InterleavedLoadCombine] Index candidates to avoid quadratic matching (#213053)

Matching scanned every candidate against every other candidate, which
got very slow on functions with many interleaved loads. Index by address
offset and look up neighbors instead.

llc's Compile-time drops from 212s to ~2s on a Grace machine for the
test case in the issue.
[ Compile-time remains flat

](https://llvm-compile-time-tracker.com/?config=Overview&stat=instructions%3Au&remote=madhur13490)

Fixes #162299.

Assisted by Cursor.


  Commit: 210e20a4967c19199ab3fe6eae7e9a2a52845459
      https://github.com/llvm/llvm-project/commit/210e20a4967c19199ab3fe6eae7e9a2a52845459
  Author: Madhur Amilkanthwar <madhura at nvidia.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

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

  Log Message:
  -----------
  [SLP][modularisation][NFC] Move getNumberOfParts, isAllowedNonPowerOf2VF (#220827)

Move the following BoUpSLP-independent type/width helpers out of
SLPVectorizer.cpp into SLPVectorizer/SLPTypeUtils.{h,cpp}:

  getNumberOfParts
  isAllowedNonPowerOf2VF

Both read a file-local cl::opt (SLPReVec and VectorizeNonPowerOf2
respectively). The options stay static in SLPVectorizer.cpp; the moved
helpers take their values as explicit bool parameters. Behavior is
unchanged.

Part of the SLPVectorizer.cpp modularization effort:
https://discourse.llvm.org/t/modularizing-slpvectorizer-cpp/90922


  Commit: 18a91e03873c3f8c189e84f446040d7abd2abd66
      https://github.com/llvm/llvm-project/commit/18a91e03873c3f8c189e84f446040d7abd2abd66
  Author: Jim Lin <jim at andestech.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVProcessors.td
    M llvm/test/CodeGen/RISCV/memcpy.ll

  Log Message:
  -----------
  [RISCV] Andes: model fast unaligned accesses for the 45-series (#221166)

The 45-series cores support unaligned scalar accesses. Add
FeatureUnalignedScalarMem to each 45-series processor (andes-n45,
andes-nx45, andes-a45, andes-ax45 and andes-ax45mpv), so that it is
selected by -mcpu rather than -mtune. Other processors declare it this
way too. The feature is somewhat architectural: -mtune is only supposed
to affect performance, but reaching it through tune features lets -mtune
introduce unaligned accesses that crash on a CPU which does not support
them.

Cover this in memcpy.ll using -mcpu=andes-a45/-mcpu=andes-ax45. The new
RUN lines pass -mtune=rocket so that the 45-series scheduling model does
not reorder the output, letting them reuse the existing check lines.

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


  Commit: 1f74b1a7093113a10d6e8762bad779be2cddfe8f
      https://github.com/llvm/llvm-project/commit/1f74b1a7093113a10d6e8762bad779be2cddfe8f
  Author: Vikram Hegde <Vikram.Hegde at amd.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
    M llvm/lib/Target/AMDGPU/AMDGPUPreLegalizerCombiner.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/amdgpu-prelegalizer-combiner-crash.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-add-nullptr.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fabs-fneg.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-redundant-and.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-rot.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-zext-trunc.mir

  Log Message:
  -----------
  [AMDGPU][GIsel][NPM] Port "AMDGPUPreLegalizerCombiner" to NPM (#217222)

same as https://github.com/llvm/llvm-project/pull/215759


  Commit: 2362eeb5f75560740146975e9eabe84c6bd25a0d
      https://github.com/llvm/llvm-project/commit/2362eeb5f75560740146975e9eabe84c6bd25a0d
  Author: Oliver Hunt <oliver at apple.com>
  Date:   2026-09-06 (Sun, 06 Sep 2026)

  Changed paths:
    M clang/lib/Sema/SemaCUDA.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    A clang/test/SemaCUDA/attr-instantiation-duplication-amdgpu.cu
    A clang/test/SemaCUDA/attr-instantiation-duplication-spirv.cu

  Log Message:
  -----------
  [clang][Sema][CUDA,SPIRV] Instantiating function templates duplicates GPU attrs (#218582)

A number of GPU related attributes were incorrectly falling back to the
generic attribute instatiation logic which resulted in duplicating the
attributes. The duplicates were also not correctly instantiated.

This also exposed a failure to prevent duplicate addition in
handleGlobalAttr as well.


  Commit: b0aa16f2613e45acdaa5cb82db40bfb6359e6fda
      https://github.com/llvm/llvm-project/commit/b0aa16f2613e45acdaa5cb82db40bfb6359e6fda
  Author: Madhur Amilkanthwar <madhura at nvidia.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

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

  Log Message:
  -----------
  [SLP][modularisation][NFC] Move isFixedVectorShuffle to SLPUtils (#221639)

Move the BoUpSLP-independent shuffle helper out of SLPVectorizer.cpp
into SLPVectorizer/SLPUtils.{h,cpp}:

  isFixedVectorShuffle

It sits with the existing shuffle/mask helpers. Behavior is unchanged.

Part of the SLPVectorizer.cpp modularization effort:
https://discourse.llvm.org/t/modularizing-slpvectorizer-cpp/90922


  Commit: bfdc7668ae617a228d7d96604580fffc99d239ff
      https://github.com/llvm/llvm-project/commit/bfdc7668ae617a228d7d96604580fffc99d239ff
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M orc-rt/lib/bedrock/CMakeLists.txt
    M orc-rt/lib/support/CMakeLists.txt
    M orc-rt/test/unit/CMakeLists.txt

  Log Message:
  -----------
  [orc-rt] Compose Bedrock from object libraries (#221650)

Add orc-rt-bedrock-objects, and rename orc-rt-support to
orc-rt-support-objects, leaving orc-rt-bedrock as a shipped library with
no sources of its own that is composed from both. The -objects suffix
marks targets that produce no artifact.

The unit tests now link the object libraries directly rather than the
shipped library. This will allow them to continue working when Bedrock
becomes buildable as a dylib with no C++ API exported.


  Commit: 8878fda06d6885971a4b2fc18d76546583b6dd0d
      https://github.com/llvm/llvm-project/commit/8878fda06d6885971a4b2fc18d76546583b6dd0d
  Author: Akimasa Watanuki <mencotton0410 at gmail.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    A clang/test/CIR/CodeGen/spirv-target-lowering-as.cpp
    M clang/test/CIR/CodeGenOpenCL/address-space-conversions.cl
    M clang/test/CIR/CodeGenOpenCL/address-spaces.cl
    M clang/test/CIR/Lowering/address-space.cir

  Log Message:
  -----------
  [CIR][OpenCL][NFC] Add language address-space lowering coverage (#219900)

Expand coverage for lowering OpenCL language address spaces through
target-specific CIR and LLVM IR, including comparison with classic
CodeGen.

Assisted-by: Codex / GPT-5.6 Sol


  Commit: e81ab5ffd45b8d870fad4c8a0e14aea7d47f62cf
      https://github.com/llvm/llvm-project/commit/e81ab5ffd45b8d870fad4c8a0e14aea7d47f62cf
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/CallingConvLower.h

  Log Message:
  -----------
  [CodeGen] Increase CCState::UsedRegs inline capacity (NFC) (#221259)

CCState::UsedRegs holds one bit per target register. Its inline capacity
of 16 x 32-bit words only covers 512 registers, causing heap allocations
for AArch64 (895), RISCV (645), and PowerPC (612). Increase it to 32,
covering up to 1024 registers and keeping the storage inline for these
targets.

Assisted-by: codex


  Commit: a9e273890dc99a3c2662fb14f244fa0acdb1155b
      https://github.com/llvm/llvm-project/commit/a9e273890dc99a3c2662fb14f244fa0acdb1155b
  Author: Steffen Larsen <sholstla at amd.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
    A clang/test/CIR/CodeGenHIP/builtin-bool-result.hip

  Log Message:
  -----------
  [CIR] Convert i1 intrinsic results for bool-returning builtins (#220576)

A target builtin with no special case is emitted through the generic
intrinsic path, which returns the intrinsic's own result type. For a
builtin declared to return bool that type is i1, which CIR models as
!cir.int<u, 1> rather than !cir.bool. cir.if accepts only !cir.bool, so
CIR builtin handling needs to convert i1 results to !cir.bool when used
in this context.

This is verified using __builtin_amdgcn_is_shared.

---------

Signed-off-by: Steffen Holst Larsen <sholstla at amd.com>


  Commit: 8ca2e679a9b3cc149e766e6a04645d7efc50f4f1
      https://github.com/llvm/llvm-project/commit/8ca2e679a9b3cc149e766e6a04645d7efc50f4f1
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

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

  Log Message:
  -----------
  [CodeGen] Avoid temporary SmallVector for single memops (NFC) (#221254)

Assisted-by: codex


  Commit: d93b10ea300fa0e86a736b3f0aac8605b23caeb9
      https://github.com/llvm/llvm-project/commit/d93b10ea300fa0e86a736b3f0aac8605b23caeb9
  Author: Rong "Mantle" Bao <rong.bao at csmantle.top>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M bolt/unittests/Core/BinaryContext.cpp
    M bolt/unittests/Core/MCPlusBuilder.cpp
    M bolt/unittests/Core/MemoryMaps.cpp
    M bolt/unittests/Profile/PerfScripts.cpp

  Log Message:
  -----------
  [BOLT][test] Allow uninstantiated tests when no matching targets are enabled (#217604)

When neither X86 nor AArch64 is enabled, e.g. when only enabling the
RISCV target, `check-bolt-unit` triggers GTest's uninstantiated suite
errors on the following cases:

```plain-text
BOLT-Unit :: Core/./CoreTests/GoogleTestVerification/UninstantiatedParameterizedTestSuite<BinaryContextTester>
BOLT-Unit :: Core/./CoreTests/GoogleTestVerification/UninstantiatedParameterizedTestSuite<MCPlusBuilderTester>
BOLT-Unit :: Core/./CoreTests/GoogleTestVerification/UninstantiatedParameterizedTestSuite<MemoryMapsTester>
BOLT-Unit :: Profile/./ProfileTests/GoogleTestVerification/UninstantiatedParameterizedTestSuite<PerfScriptTestHelper>
```

... which looks like the following:

```plain-text
********************                                                                                                                                                20:28 [95/2055]
FAIL: BOLT-Unit :: Core/./CoreTests/6/9 (7 of 12)
******************** TEST 'BOLT-Unit :: Core/./CoreTests/6/9' FAILED ********************
Script(shard):
--
GTEST_OUTPUT=json:/home/csmantle/workspace/llvm-project/build/tools/bolt/unittests/Core/./CoreTests-BOLT-Unit-718646-6-9.json GTEST_SHUFFLE=0 GTEST_TOTAL_SHARDS=9 GTEST_SHARD_INDE
X=6 /home/csmantle/workspace/llvm-project/build/tools/bolt/unittests/Core/./CoreTests
--

Script:
--
/home/csmantle/workspace/llvm-project/build/tools/bolt/unittests/Core/./CoreTests --gtest_filter=GoogleTestVerification.UninstantiatedParameterizedTestSuite<BinaryContextTester>
--
/home/csmantle/workspace/llvm-project/bolt/unittests/Core/BinaryContext.cpp:211: Failure
Parameterized test suite BinaryContextTester is defined via TEST_P, but never instantiated. None of the test cases will run. Either no INSTANTIATE_TEST_SUITE_P is provided or the
only ones provided expand to nothing.

Ideally, TEST_P definitions should only ever be included as part of binaries that intend to use them. (As opposed to, for example, being placed in a library that may be linked in
to get other utilities.)

To suppress this error for this test suite, insert the following line (in a non-header) in the namespace it is defined in:

GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(BinaryContextTester);


/home/csmantle/workspace/llvm-project/bolt/unittests/Core/BinaryContext.cpp:211
Parameterized test suite BinaryContextTester is defined via TEST_P, but never instantiated. None of the test cases will run. Either no INSTANTIATE_TEST_SUITE_P is provided or the
only ones provided expand to nothing.

Ideally, TEST_P definitions should only ever be included as part of binaries that intend to use them. (As opposed to, for example, being placed in a library that may be linked in
to get other utilities.)

To suppress this error for this test suite, insert the following line (in a non-header) in the namespace it is defined in:

GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST(BinaryContextTester);
```

Add gated `GTEST_ALLOW_UNINSTANTIATED_PARAMETERIZED_TEST` to suppress
such warnings until appropriate tests have been implemented.


  Commit: 2cb4f837f087d7ed38aad292b5037cabcb2fcd4c
      https://github.com/llvm/llvm-project/commit/2cb4f837f087d7ed38aad292b5037cabcb2fcd4c
  Author: Mariusz Sikora <mariusz.sikora at amd.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/test/MC/AMDGPU/gfx13_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop1_dpp16.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop1_dpp8.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop3_from_vop1.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop3_from_vop1_dpp16.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop3_from_vop1_dpp8.s

  Log Message:
  -----------
  [AMDGPU][NFC] Add gfx13 MC tests for v_mov_b16 and v_swap_b16 (#220863)

Both instructions were already supported on gfx13 but had limited MC
tests coverage.


  Commit: b966c71b74e498c3a9570c790a71a5a1a2fe0e2f
      https://github.com/llvm/llvm-project/commit/b966c71b74e498c3a9570c790a71a5a1a2fe0e2f
  Author: Barbara Mitic <Barbara.Mitic at amd.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/test/CodeGen/AMDGPU/global-load-xcnt.ll
    M llvm/test/CodeGen/AMDGPU/pack-half-to-lshl-or.ll

  Log Message:
  -----------
  [AMDGPU] Fix true16 high-half packing when the low operand is not a VGPR (#220843)

The true16 (hi << 16) | z pattern used v_or_b16 and EXTRACT_SUBREG hi16
on z. That is only valid when z is a VGPR. When z is an immediate (e.g.
0x3c00), EXTRACT_SUBREG hi16 does not isolate the high 16 bits, so the
whole constant is ORed into hi: we get (hi | 0x3c00) << 16 instead of hi
<< 16.

Select v_lshl_or_b32 instead, with z as VSrc_b32, matching the fake16
path.


  Commit: 5950bbf1e12fa2445c9de948c3f602f03ba12d62
      https://github.com/llvm/llvm-project/commit/5950bbf1e12fa2445c9de948c3f602f03ba12d62
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/replicate-region-branch-weights.ll

  Log Message:
  -----------
  [VPlan] Fix merged replicate region frequency when only one is known. (#221607)

When merging two replicate regions guarded by the same mask, the merged
region's entry frequency should be the higher of the two original
frequencies, since it now fires whenever either original region did.

The existing check only updated the frequency when both were known,
leaving the second region's own (possibly much lower) frequency in place
whenever the first was unknown. This means we might set a misleadingly
low frequency. Conservatively set to unknown instead.


  Commit: d1a653eadd3a0b314388965edcbd26fd6890f744
      https://github.com/llvm/llvm-project/commit/d1a653eadd3a0b314388965edcbd26fd6890f744
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/lib/Target/Sparc/DelaySlotFiller.cpp
    M llvm/lib/Target/Sparc/SparcInstrInfo.cpp
    M llvm/lib/Target/Sparc/SparcInstrInfo.h

  Log Message:
  -----------
  [Sparc] Fix instruction size for delay slot with UNIMP (#220955)

Sparc currently reports all instructions with delay slots as having
twice the size. However, there is a special case for struct returns,
where there is an extra UNIMP instruction. Move needsUnimp() into
SparcInstrInfo, and account for it in the instruction size calculation.

Part of enabling instruction size verification by default.


  Commit: 90bc5b106b5f36fd6c6fffd7eb914946ce75b4a3
      https://github.com/llvm/llvm-project/commit/90bc5b106b5f36fd6c6fffd7eb914946ce75b4a3
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    A llvm/test/tools/gold/X86/Inputs/multiple-data-section-ordering.txt
    M llvm/test/tools/gold/X86/multiple-data.s
    M llvm/test/tools/gold/X86/multiple-sections.ll
    M llvm/test/tools/gold/lit.local.cfg

  Log Message:
  -----------
  [gold] Switch section-ordering-file tests to use ld.bfd (#219150)

ld.bfd supports `--section-ordering-file` since 2.43. Use it if the
binutils version is sufficiently recent.

The implementation in ld.bfd is significantly different, with the
section ordering file looking more like an incomplete linker script,
rather than a plain section listing.

The addresses of the sections are also slightly different than with
ld.gold. Use hex matches + arithmetic to just check the correct
order/offsets instead of hardcoding the exact choice of address.

ld.bfd also supports --start-lib/--end-lib since 2.47, but it seems like
those don't actually work with linker plugins, so I'm not migrating them
(https://sourceware.org/bugzilla/show_bug.cgi?id=34572).

Followup to https://github.com/llvm/llvm-project/pull/130981.


  Commit: 7a67a1ab6f3f6d716462872114a5e12f28cdb42a
      https://github.com/llvm/llvm-project/commit/7a67a1ab6f3f6d716462872114a5e12f28cdb42a
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/test/Transforms/InstCombine/ptr-int-cast.ll
    M llvm/test/Transforms/InstSimplify/ptrtoint.ll

  Log Message:
  -----------
  [InstSimplify] Don't fold ptrtoint of ptradd of sub (#221188)

Don't fold `ptrtoint (ptradd (Ptr, X - ptrtoint(Ptr))) -> X`. While
valid by itself, the fact that LLVM currently does not properly model
the ptrtoint side effect means that we lose the provenance exposure of
Ptr. This results in end-to-end miscompiles that led to the revert of
#210729.

We can still perform the optimization for ptrtoaddr, which does not
expose provenance.


  Commit: 9707960f6f229118dc4500e5c3f1be239fd7efb2
      https://github.com/llvm/llvm-project/commit/9707960f6f229118dc4500e5c3f1be239fd7efb2
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
    M llvm/test/Transforms/ConstraintElimination/and-implied-by-operands.ll
    A llvm/test/Transforms/ConstraintElimination/induction-exit-condition-or-and.ll

  Log Message:
  -----------
  [ConstraintElim] Handle single And/Or as exit condition in loop. (#221228)

In some cases, exits conditions in the loop are And/Or of and IV-based
condition and another condition. If the loop continues only if all
conditions are true (AND + true successor is the header, OR + false
successor is the header), we can still use the IV based condition to
bound the IV.

For now, just peels a single AND/OR.

This enables folds in a few additional cases:
https://github.com/dtcxzyw/llvm-opt-benchmark-nightly/pull/1193.

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


  Commit: ccfc54aa053e1e0614660cc5f3ff0122eff02ab9
      https://github.com/llvm/llvm-project/commit/ccfc54aa053e1e0614660cc5f3ff0122eff02ab9
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/include/llvm/IR/Attributes.h
    M llvm/lib/IR/AttributeImpl.h
    M llvm/lib/IR/Attributes.cpp
    M llvm/lib/IR/LLVMContextImpl.h

  Log Message:
  -----------
  [IR] Split the attribute pool by kind. NFC (#221620)

Change Attribute::get overloads to use fine-grained hash-consing pools
(Enum/Int/String/Type), avoiding FoldingSetNodeID serialization
overhead. Use a flat array for Enum attributes, which carry no value.

The two ConstantRange kinds keep using FoldingSet: they are not used
often, and UniquingSet cannot be used with custom UniquingSetInfo
(`APInt::operator==` asserts identical BitWidth).

Aided by Opus 5


  Commit: c5a85b9c6996b2459c169ef6a410c501980c9ea0
      https://github.com/llvm/llvm-project/commit/c5a85b9c6996b2459c169ef6a410c501980c9ea0
  Author: Mariya Podchishchaeva <Mariya.Podchishchaeva at amd.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/CodeGen/TargetInfo.h
    M clang/lib/CIR/CodeGen/Targets/SPIRV.cpp
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerModule.cpp
    M clang/test/CIR/CodeGenOpenCL/address-space-local-var.clcpp
    M clang/test/CIR/CodeGenOpenCL/address-spaces.cl

  Log Message:
  -----------
  [CIR] Fix address space issues related to SPIR/SPIR-V targets (#220982)

This adds support for address space lowering for spir/spir64 (not v)
which are still widely used in OpenCL testing despite spirv32/spirv64
targets existence. This also corrects alloca address space for all
mentioned targets from default to private which is semantically correct
for them and avoids emission of spurious address space casts.

Assisted-by: claude in test cases updating


  Commit: fc3ad3f8c655e0f74bb763a2d320e2792a96f0b5
      https://github.com/llvm/llvm-project/commit/fc3ad3f8c655e0f74bb763a2d320e2792a96f0b5
  Author: Henrich Lauko <xlauko at mail.muni.cz>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/test/CIR/CodeGenBuiltins/builtin-fpclassify.c
    M clang/test/CIR/CodeGenBuiltins/builtin-isfpclass.c
    M clang/test/CIR/CodeGenBuiltins/builtin-isinf-sign.c
    M clang/test/CIR/IR/enum-attrs.cir

  Log Message:
  -----------
  [CIR] Migrate the FPClassTest bit enum and unquote its flags (#220888)

cir.is_fp_class printed its flags inconsistently. Single-bit values came
out
bare, as in `fcSNan`, while group values and combinations came out
quoted, as
in `"fcInf"` and `"fcSNan|fcNegInf"`. That comes from I32BitEnumAttr
setting
printBitEnumQuoted, which EnumAttr.td keeps only for backwards
compatibility.

Clearing the bit and using the `enum` directive selects the
separator-aware
parser and printer, so every value now spells unquoted:

  cir.is_fp_class %x, fcSNan|fcNegInf : (!cir.float) -> !cir.bool

The enum also drops its specialized IntegerAttr for a CIR_EnumAttr
wrapper,
giving it the standalone spelling `#cir.fp_class<fcSNan|fcNegInf>`.


  Commit: ae814d03d870475d03446ad9195c305912f062ea
      https://github.com/llvm/llvm-project/commit/ae814d03d870475d03446ad9195c305912f062ea
  Author: Vimal Patel <vimal.patel at arm.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/test/Transforms/InstSimplify/call.ll

  Log Message:
  -----------
  [InstSimplify] Improve coverage for zero-shift-guard folding for rotate (#217033)

The current logic responsible to fold zero-shift-guard performed the
folding only when the shift amount is exactly zero. But, the guard could
be eliminated as long as the funnel shift instruction is performing a
bitwise rotate and the shift amount is a multiple of the bitwidth of the
value being rotated. This commit makes this change.


  Commit: 345dd01072956b7ddc36dbdfe39df2d991193e07
      https://github.com/llvm/llvm-project/commit/345dd01072956b7ddc36dbdfe39df2d991193e07
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/docs/StandardCPlusPlusModules.md
    M clang/include/clang/DependencyScanning/ModuleDepCollector.h
    M clang/include/clang/Lex/PreprocessorOptions.h
    M clang/lib/DependencyScanning/ModuleDepCollector.cpp
    M clang/lib/Lex/PPDirectives.cpp
    M clang/lib/Tooling/DependencyScanningTool.cpp
    M clang/test/ClangScanDeps/P1689.cppm
    A clang/test/ClangScanDeps/p1689-module-map.cppm

  Log Message:
  -----------
  [C++20] [Modules] [ScanDeps] Scan results for module map file (#221652)

Previously we described the trick to use module map to import std module
implicitly. But in practice, this may not work as build tools can't get
the dependencies.

In this patch, we updated clang-scan-deps to report the dependencies
between consumers and the corresponding module described in module map
file in P1689 format. The P1689 format in clang-scan-deps is the defacto
dependency description between compiler and build tools. This helps end
users to use the trick without waiting for the support from various
build tools.


  Commit: 1191f353cefe3c7ceb8e76fd03296e082a247685
      https://github.com/llvm/llvm-project/commit/1191f353cefe3c7ceb8e76fd03296e082a247685
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/test/CodeGen/glibc_ptr_align.c
    M clang/test/CodeGen/ptr-subtract-stable.c
    M clang/test/CodeGen/vla.c
    M clang/test/CodeGenCUDA/managed-var.cu
    M clang/test/CodeGenOpenCL/address-spaces-conversions.cl
    M clang/test/CodeGenOpenCL/nullptr.cl
    M clang/test/CodeGenOpenCL/size_t.cl
    M clang/test/OpenMP/depobj_codegen.cpp
    M clang/test/OpenMP/for_range_loop_codegen.cpp
    M clang/test/OpenMP/fuse_codegen.cpp
    M clang/test/OpenMP/interchange_codegen.cpp
    M clang/test/OpenMP/parallel_for_codegen.cpp
    M clang/test/OpenMP/reverse_codegen.cpp
    M clang/test/OpenMP/split_codegen.cpp
    M clang/test/OpenMP/stripe_codegen.cpp
    M clang/test/OpenMP/tile_codegen.cpp

  Log Message:
  -----------
  Reapply [Clang][CodeGen] Use ptrtoaddr for pointer diff (#210729) (#221675)

Reapply https://github.com/llvm/llvm-project/pull/210729 without change
after https://github.com/llvm/llvm-project/pull/221188, which should fix
the miscompiles this change exposed.

-----

We don't have to expose the provenance of pointers for pointer
subtraction, so use ptrtoaddr instead of ptrtoint if -fwrapv-pointer is
not set.

Co-authored-by: Alexis Engelke <engelke at in.tum.de>


  Commit: 038e968a7ec08ba7d9a262059f8fab91853656ea
      https://github.com/llvm/llvm-project/commit/038e968a7ec08ba7d9a262059f8fab91853656ea
  Author: Raphael Isemann <rise at apple.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    A lldb/test/API/commands/watchpoints/watchpoint_set_errors/Makefile
    A lldb/test/API/commands/watchpoints/watchpoint_set_errors/TestWatchpointSetErrors.py
    A lldb/test/API/commands/watchpoints/watchpoint_set_errors/main.c
    R lldb/test/Shell/Watchpoint/Inputs/main.cpp
    R lldb/test/Shell/Watchpoint/SetErrorCases.test

  Log Message:
  -----------
  [lldb][test] Rewrite Watchpoint/SetErrorCases as API test (#221563)

This test is randomly failing on macOS bots with this error:
```
error: Command requires a process which is currently stopped.
```

There is no test logic in shell tests that can diagnose what is going on
with the process, so this patch rewrites this test as an API test where
we have better error handling.


  Commit: 41a09be5d09b14c9f06a2b46f903b388a671546a
      https://github.com/llvm/llvm-project/commit/41a09be5d09b14c9f06a2b46f903b388a671546a
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

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

  Log Message:
  -----------
  [VPlan] Don't recompute getPlan in simplifyRecipes. NFC (#221582)

getPlan involves a traversal, so avoid doing it on every recipe
simplified.

Improves compile time:
https://llvm-compile-time-tracker.com/compare.php?from=8f7d3ba08f14c3d54b8b407d1758dbd1da01bb38&to=aaeebfa47f57bbf1bc9f26ce9a4e777939f46352&stat=instructions:u


  Commit: 544171da142fd5a380a943c9f7ea5150b9f2a293
      https://github.com/llvm/llvm-project/commit/544171da142fd5a380a943c9f7ea5150b9f2a293
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/MustExecute.h
    M llvm/lib/Analysis/MustExecute.cpp
    M llvm/lib/Transforms/Scalar/LICM.cpp
    M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
    M llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
    M llvm/lib/Transforms/Utils/LoopUnrollAndJam.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp

  Log Message:
  -----------
  [LoopSafetyInfo] Store Loop and automatically compute (NFC) (#221238)

This makes two changes:

* LoopSafetyInfo is bound to a single loop. Store the Loop in the ctor,
so it does not need to be passed to individual queries.
* Automatically compute LoopSafetyInfo on construction, instead of in a
separate call. This is mostly to clarify that (contrary to the doc
comment) nobody is actually trying to invalidate LoopSafetyInfo by
rerunning computeLoopSafetyInfo().

This makes it easier to change implementation details, like computing
information lazily.


  Commit: 8d9c175633eb6a6100bdd1b6b67ff780cfc5d1b2
      https://github.com/llvm/llvm-project/commit/8d9c175633eb6a6100bdd1b6b67ff780cfc5d1b2
  Author: Henrich Lauko <xlauko at mail.muni.cz>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
    M clang/include/clang/CIR/Dialect/IR/CIRCUDAAttrs.td
    M clang/include/clang/CIR/Dialect/IR/CIREnumAttr.td
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/Dialect/IR/CIRTypes.td
    M clang/test/CIR/IR/invalid-call.cir
    M clang/test/CIR/IR/invalid-lang-attr.cir

  Log Message:
  -----------
  [CIR] Move the CIR enums off the legacy EnumAttrInfo hierarchy (#220889)

MLIR has two enum hierarchies. `EnumAttrInfo` doubles as an
`IntegerAttr`
constraint, so every CIR enum had to clear `genSpecializedAttr` to say
it did
not want one. `EnumInfo` describes a C++ enum and nothing more.

Derive the CIR bases from `I32Enum`, `I64Enum` and `I32BitEnum`, and
widen
`CIR_EnumAttr` to the `EnumInfo` that upstream `EnumAttr` already takes.
The
flag no longer exists to clear. `FPClassTestEnum` gets unquoted printing
from
`BitEnumBase` rather than overriding `printBitEnumQuoted`, and
`CIR_KnownFuncKind` drops a `parameterPrinter` the generated
`operator<<`
now covers, still spelling `#cir.func_identity<"std::find">`.


  Commit: 2fd8d41d7b8824637be32d569c1e1482128b057b
      https://github.com/llvm/llvm-project/commit/2fd8d41d7b8824637be32d569c1e1482128b057b
  Author: Akash Manna <akash.manna.mymail at gmail.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
    A llvm/test/CodeGen/X86/pr216504.ll

  Log Message:
  -----------
  [X86] Don't fold loads from non-fixed stack objects into tail calls (#221243)

Fixes #216504

The callee of a tail call can be folded into the jump as a memory
operand (`TCRETURNmi64`). That jump runs after the epilogue, so the
operand is resolved relative to the incoming stack pointer, which only
works for fixed objects such as incoming arguments. Here the callee was
a `volatile` local, so the load stayed on the stack and got folded,
while a variable-index extract from a 256-bit vector went through a
32-byte stack temporary and forced dynamic realignment. Once the stack
is realigned a local has no static offset from the incoming stack
pointer, and PEI tripped the assertion. The sibcall eligibility check
does look at realignment, but it runs before legalization, so it never
saw the temporary. Spill slots created during register allocation can
cause the same thing, so no check at that point can be complete.

The fold is now refused whenever the load's address may use a non-fixed
frame index, in `checkTCRetEnoughRegs`, which gates both the
`TCRETURNmi` patterns and the callee-load hoisting in
`PreprocessISelDAG`. The callee is loaded into a register before the
epilogue and the call is still emitted as a tail call. Loads from fixed
objects fold as before. As a side effect this also stops the jump from
reading a slot below the restored stack pointer, which was only safe
inside the red zone.


  Commit: 73344b523c93f25c9dafcabf803295e92bf5cb5f
      https://github.com/llvm/llvm-project/commit/73344b523c93f25c9dafcabf803295e92bf5cb5f
  Author: Clemens Wasser <clemens.wasser at gmail.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M clang/test/DebugInfo/Generic/debug-label-inline.c
    M llvm/lib/IR/DebugLoc.cpp
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    M llvm/test/DebugInfo/Generic/assignment-tracking/inline/id.ll
    M llvm/test/DebugInfo/Generic/inline-dbg-values.ll
    M llvm/test/DebugInfo/Generic/inline-debug-info-multiret.ll
    M llvm/test/DebugInfo/Generic/inline-debug-info.ll
    M llvm/test/DebugInfo/Generic/inline-no-debug-info.ll
    M llvm/test/DebugInfo/KeyInstructions/Generic/inline.ll
    M llvm/test/Transforms/CodeExtractor/PartialInlineDebug.ll
    M llvm/test/Transforms/CodeExtractor/PartialInlineVarArgsDebug.ll
    M llvm/test/Transforms/Inline/X86/inline-landing-pad.ll
    M llvm/test/Transforms/Inline/debug-invoke.ll
    M llvm/test/Transforms/Inline/dilocation-loop-metadata-update.ll
    M llvm/test/Transforms/Inline/inline_dbg_declare.ll
    M llvm/test/Transforms/SafeStack/ARM/debug.ll
    M llvm/test/Transforms/SampleProfile/pseudo-probe-emit-inline.ll

  Log Message:
  -----------
  [Inliner] Use distinct DILocations and cache inlineDebugLoc by OrigDL (#204817)

Found while profiling clang compiling `SLPVectorizer.cpp`.
The call chain `DILocation::get` -> `DILocation::getImpl` ->
`llvm::getUniqued` caused lots of expensive `DenseSet` `find_as` and
`grow` operations due to the cache being really inefficient. Switch to
`DILocation::getDistinct` and cache `inlineDebugLoc` by `OrigDL` for a
more efficient cache.


  Commit: 34c0dc0bbf96ed16f47115b1c9033a450ad2bcf4
      https://github.com/llvm/llvm-project/commit/34c0dc0bbf96ed16f47115b1c9033a450ad2bcf4
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/tools/llvm-readobj/COFFDumper.cpp

  Log Message:
  -----------
  [llvm][llvm-readobj][NFC] clang-format COFFDumper.cpp (#221688)

Prior to changes to it in #221224.

This formats the whole file, and when it's landed I'll add the commit
hash to .git-blame-ignore-revs.


  Commit: 39daa556ccaa69f6a2db45f414f33fad128e5d48
      https://github.com/llvm/llvm-project/commit/39daa556ccaa69f6a2db45f414f33fad128e5d48
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp

  Log Message:
  -----------
  AArch64: Drop AllowFPOpFusion from isProfitableToHoist (#221402)


  Commit: abbc159932f12e00ae4ee834ab662951811be772
      https://github.com/llvm/llvm-project/commit/abbc159932f12e00ae4ee834ab662951811be772
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M .git-blame-ignore-revs

  Log Message:
  -----------
  [llvm][llvm-readobj][NFC] Add formatting commit to ignore revs (#221693)

See #221688.


  Commit: 8727da4880d069d0feb0c4346b902dc917500083
      https://github.com/llvm/llvm-project/commit/8727da4880d069d0feb0c4346b902dc917500083
  Author: Zeyi Xu <mitchell.xu2 at gmail.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    A clang-tools-extra/docs/clang-tidy/checks/readability/ambiguous-smartptr-reset-call.md
    R clang-tools-extra/docs/clang-tidy/checks/readability/ambiguous-smartptr-reset-call.rst
    A clang-tools-extra/docs/clang-tidy/checks/readability/avoid-return-with-void-value.md
    R clang-tools-extra/docs/clang-tidy/checks/readability/avoid-return-with-void-value.rst
    A clang-tools-extra/docs/clang-tidy/checks/readability/avoid-unconditional-preprocessor-if.md
    R clang-tools-extra/docs/clang-tidy/checks/readability/avoid-unconditional-preprocessor-if.rst
    A clang-tools-extra/docs/clang-tidy/checks/readability/braces-around-statements.md
    R clang-tools-extra/docs/clang-tidy/checks/readability/braces-around-statements.rst
    A clang-tools-extra/docs/clang-tidy/checks/readability/const-return-type.md
    R clang-tools-extra/docs/clang-tidy/checks/readability/const-return-type.rst
    A clang-tools-extra/docs/clang-tidy/checks/readability/container-contains.md
    R clang-tools-extra/docs/clang-tidy/checks/readability/container-contains.rst
    A clang-tools-extra/docs/clang-tidy/checks/readability/container-size-empty.md
    R clang-tools-extra/docs/clang-tidy/checks/readability/container-size-empty.rst
    A clang-tools-extra/docs/clang-tidy/checks/readability/duplicate-include.md
    R clang-tools-extra/docs/clang-tidy/checks/readability/duplicate-include.rst
    A clang-tools-extra/docs/clang-tidy/checks/readability/else-after-return.md
    R clang-tools-extra/docs/clang-tidy/checks/readability/else-after-return.rst
    A clang-tools-extra/docs/clang-tidy/checks/readability/enum-initial-value.md
    R clang-tools-extra/docs/clang-tidy/checks/readability/enum-initial-value.rst

  Log Message:
  -----------
  [clang-tidy][docs] Rename readability check docs to Markdown [1/5] (#221446)

Tracking issue: #201242

See the [migration guide] for more information.

[migration guide]:

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

This is the first part of the mechanical rename of the check
documentations in readability module.
The rewrite is provided by the next PR in this stack.


  Commit: 76a090dfd9d81761087453de3ada2eb7ff2528f7
      https://github.com/llvm/llvm-project/commit/76a090dfd9d81761087453de3ada2eb7ff2528f7
  Author: Zeyi Xu <mitchell.xu2 at gmail.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M clang-tools-extra/docs/clang-tidy/checks/readability/ambiguous-smartptr-reset-call.md
    M clang-tools-extra/docs/clang-tidy/checks/readability/avoid-return-with-void-value.md
    M clang-tools-extra/docs/clang-tidy/checks/readability/avoid-unconditional-preprocessor-if.md
    M clang-tools-extra/docs/clang-tidy/checks/readability/braces-around-statements.md
    M clang-tools-extra/docs/clang-tidy/checks/readability/const-return-type.md
    M clang-tools-extra/docs/clang-tidy/checks/readability/container-contains.md
    M clang-tools-extra/docs/clang-tidy/checks/readability/container-size-empty.md
    M clang-tools-extra/docs/clang-tidy/checks/readability/duplicate-include.md
    M clang-tools-extra/docs/clang-tidy/checks/readability/else-after-return.md
    M clang-tools-extra/docs/clang-tidy/checks/readability/enum-initial-value.md

  Log Message:
  -----------
  [clang-tidy][docs] Rewrite readability check docs to Markdown [1/5] (#221447)

Tracking issue: #201242

See the [migration guide] for more information.

[migration guide]:

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

This is the first part of rewriting check documentations in readability
module from reST to MyST Markdown.

AI Usage: This was prepared with rnk's fork of rst2myst and
GPT5.6-assisted cleanup.
I manually verified that the documentation renders as expected.

Preview site:
https://broken.life/llvm-staging/readability-markdown-port/index.html

---------

Co-authored-by: EugeneZelenko <eugene.zelenko at gmail.com>


  Commit: d268cdb7d1fdb5fbc595426092991f9885d18dbf
      https://github.com/llvm/llvm-project/commit/d268cdb7d1fdb5fbc595426092991f9885d18dbf
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/arm64-irtranslator-fmuladd.ll

  Log Message:
  -----------
  CodeGen: Drop AllowFPOpFusion check from fmuladd lowering (#221667)


  Commit: 2e30c8e267256e3a2b43985d9be68831c412a1b5
      https://github.com/llvm/llvm-project/commit/2e30c8e267256e3a2b43985d9be68831c412a1b5
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    A flang/include/flang/Evaluate/char.h
    M flang/include/flang/Evaluate/complex.h
    M flang/include/flang/Evaluate/initial-image.h
    M flang/include/flang/Evaluate/integer.h
    M flang/include/flang/Evaluate/logical.h
    M flang/include/flang/Evaluate/real.h
    M flang/lib/Evaluate/host.h
    M flang/lib/Evaluate/initial-image.cpp

  Log Message:
  -----------
  [Flang][NFCI] Use abstraction for binary scalar data (#212956)

There is currently the assumption that the binary representation of the
scalar data classes (Integer, Real, Complex, Logical) is identical to
the binary representation of native types. For instance `Integer<64>`
can be reinterpret-casted to a `int64_t` or serialized using `memcpy`.
This will not be the case anymore with #206907. This first PR introduces
`LoadRawBytes` and `StoreRawBytes` abstractions that can be adapted when
the binary data layout of the scalar data classes change. No functional
change intended.

The binary representation is assumed for these uses:

1. Data serialization in initial-image.h/.cpp

2. Calling native math functions to constant-fold functions such as
`sin` in intrinsics-library.cpp. An abstraction layer has been created
in host.h/host.cpp to convert between host-native types and the scalar
data classes.


Some implementation notes:
* I originally used `CharacterUtils` but it is in a private header file.
Instead I created `CharacterValue` which similar to what #216960 will
introduce to allow a consistent interface between the scalar value
classes (such as `kind()` returning the current runtime kind)
* `bytesStored` is another such common interface. It it meant to
resemble `llvm::DataLayout::getTypeStoreSize` (there is also
`getTypeAllocSize`, `llvm::Type::getPrimitiveSizeInBits()`,
`llvm::Type::getScalarSizeInBits()`) and must match
`common::TypeSizeInBytes`.
* `Real<10>` uses 16-byte alignment regardless what the host compiler
thinks what `long double` should be. The padding is unitialized data in
`X87IntegerContainer`. Even though x87 is the classic example where
"allocation size" and "store size" would be different, Flang does not
differentiate between them and treats all bytes also as stored bytes,
see `common::TypeSizeInBytes`. As a consequence, `Complex<10>` is 32
bytes. initial-image.h/.cpp will even load/store/compare that
uninitialized data. host.h/host.cpp instead reads/writes the floats
separately to translate to whatever the host compiler does.
* initial-image.cpp/.h is inconsistent when it uses number of bytes and
when it uses number of characters
* For the case the image does not have sufficient bytes to read, I did
not want to insert checks whether another byte can be read into every
ReadRawBytes function, and instead add zero-padding explicitly when
necessary.

Assisted-by: AI


  Commit: d9bcffd284812c3e29805af27d32fdedd82c5acc
      https://github.com/llvm/llvm-project/commit/d9bcffd284812c3e29805af27d32fdedd82c5acc
  Author: Romanov Vlad <Vladislav.Romanov at amd.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUCoExecSchedStrategy.cpp
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.h
    M llvm/test/CodeGen/AMDGPU/agpr-csr.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-no-agprs-violations.ll
    A llvm/test/CodeGen/AMDGPU/coexec-sched-agpr-excess.mir
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.iglp.opt.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sched.group.barrier.ll
    M llvm/test/CodeGen/AMDGPU/machine-scheduler-sink-trivial-remats-attr.mir
    M llvm/test/CodeGen/AMDGPU/mfma-cd-select.ll
    M llvm/test/CodeGen/AMDGPU/mfma-no-register-aliasing.ll
    M llvm/test/CodeGen/AMDGPU/spill-agpr.ll

  Log Message:
  -----------
  [AMDGPU] Add AGPR pressure tracking (#214745)

Add AGPR pressure tacking in RPDelta.


  Commit: 11a9127fbe072d84571712bb5e2aa9ebd964a802
      https://github.com/llvm/llvm-project/commit/11a9127fbe072d84571712bb5e2aa9ebd964a802
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M lld/test/COFF/arm64ec-export-thunks.test
    M lld/test/COFF/arm64ec-import.test
    M lld/test/COFF/baserel.test
    M lld/test/COFF/code-merge.s
    M lld/test/COFF/common-replacement.s
    M lld/test/COFF/merge-data-bss.test
    M lld/test/COFF/nodbgdirmerge.test
    M lld/test/COFF/secrel-common.s
    M lldb/test/Shell/SymbolFile/NativePDB/globals-bss.cpp
    M llvm/test/MC/AArch64/seh-large-func-multi-epilog.s
    M llvm/test/MC/AArch64/seh-large-func.s
    M llvm/test/MC/AArch64/seh.s
    M llvm/test/MC/AArch64/win-import-call-optimization.s
    M llvm/test/MC/ARM/seh.s
    M llvm/test/MC/COFF/addrsig.s
    M llvm/test/MC/COFF/align-nops.s
    M llvm/test/MC/COFF/basic-coff-64.s
    M llvm/test/MC/COFF/basic-coff.s
    M llvm/test/MC/COFF/bss.s
    M llvm/test/MC/COFF/cgprofile.s
    M llvm/test/MC/COFF/module-asm.ll
    M llvm/test/MC/COFF/section.s
    M llvm/test/MC/COFF/seh-align1.s
    M llvm/test/MC/COFF/seh-align2.s
    M llvm/test/MC/COFF/seh-align3.s
    M llvm/test/MC/COFF/seh-section.s
    M llvm/test/MC/COFF/seh.s
    M llvm/test/MC/COFF/symbol-fragment-offset-64.s
    M llvm/test/MC/COFF/symbol-fragment-offset.s
    M llvm/test/MC/X86/win-import-call-optimization.s
    M llvm/test/tools/llvm-ar/arm64x-split.yaml
    M llvm/test/tools/llvm-objcopy/COFF/add-gnu-debuglink.test
    M llvm/test/tools/llvm-objcopy/COFF/add-section-and-set-flags.test
    M llvm/test/tools/llvm-objcopy/COFF/empty-sections.s
    M llvm/test/tools/llvm-objcopy/COFF/only-keep-debug-rdata.test
    M llvm/test/tools/llvm-objcopy/COFF/only-keep-debug.test
    M llvm/test/tools/llvm-objcopy/COFF/update-section.test
    M llvm/test/tools/llvm-offload-wrapper/coff-opt-ref.ll
    M llvm/test/tools/llvm-readobj/COFF/arm64x-hybridobj.yaml
    M llvm/test/tools/llvm-readobj/COFF/bigobj.test
    M llvm/test/tools/llvm-readobj/COFF/sections-ext.test
    M llvm/test/tools/llvm-readobj/COFF/sections.test
    M llvm/test/tools/yaml2obj/COFF/xrelocs.yaml
    M llvm/tools/llvm-readobj/COFFDumper.cpp

  Log Message:
  -----------
  [llvm][llvm-readobj] Print COFF RawDataSize as hex (#221224)

To match VirtualSize, and Microsoft's dumpbin which prints both as hex:
SECTION HEADER #1
   .text name
   440B4 virtual size
    1000 virtual address (0000000140001000 to 00000001400450B3)
   44200 size of raw data

llvm-readobj before this change:
    VirtualSize: 0x3478
    VirtualAddress: 0x74000
    RawDataSize: 3584

And after:
    VirtualSize: 0x3478
    VirtualAddress: 0x74000
    RawDataSize: 0xe00

This was pointed out on
https://github.com/llvm/llvm-project/issues/220618, where I was having
to manually convert the numbers to compare them.


  Commit: 65b2748a68c9d20ec4303c3e9bf1ca0398be8777
      https://github.com/llvm/llvm-project/commit/65b2748a68c9d20ec4303c3e9bf1ca0398be8777
  Author: Tapiwa Gonga <126596199+tapiwagonga at users.noreply.github.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M libc/CMakeLists.txt
    A libc/docs/dev/code_coverage.md
    M libc/docs/dev/index.md

  Log Message:
  -----------
  [libc] Enable code coverage using continuous instrumentation profiling (#213271)

This patch adds coverage to LLVM-libc using Clang continuous
instrumentation.

The `LIBC_ENABLE_COVERAGE` CMake option enables
`-fprofile-instr-generate=libc_cov_%c%p.profraw`, `-fcoverage-mapping`,
and `-fprofile-continuous` for Clang overlay builds, and is limited to
overlay build.

Developer documentation and usage instructions are added in
`libc/docs/dev/code_coverage.md` and indexed in
`libc/docs/dev/index.md`.

Assisted-by: Automated tooling, human reviewed.


  Commit: bb577f620571ce3bb97f2e717b53500574a9cf27
      https://github.com/llvm/llvm-project/commit/bb577f620571ce3bb97f2e717b53500574a9cf27
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/preselect-process-phis.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/select-bitcast.mir

  Log Message:
  -----------
  [AArch64][GlobalISel] Select i16/f16 cross-bank bitcasts (#220612)

Test bitcast_to_half in
llvm/test/CodeGen/AArch64/GlobalISel/arm64-atomic.ll crashes with

  H0 = COPY W8
  unimplemented reg-to-reg copy
  UNREACHABLE executed at

/home/culrho01/llvm-project/llvm/lib/Target/AArch64/AArch64InstrInfo.cpp:6363!

when type-based RegBankSelect (#199040) is enabled. Normal RBS keeps
both operands on GPR and moves to FPR afterward. This extends
instruction select to support bitcasts where src/dst reg bank doens't
match.

Assisted-by: codex


  Commit: bf7aaf77d0916adaa3cd043fc0966a33c1364e2c
      https://github.com/llvm/llvm-project/commit/bf7aaf77d0916adaa3cd043fc0966a33c1364e2c
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/ValueTracking.h
    A llvm/test/Transforms/DeadStoreElimination/wide-pointer-index-offset.ll

  Log Message:
  -----------
  [ValueTracking] Handle idx widths > 64 bit in GetPointerBaseWithConst. (#221692)

GetPointerBaseWithConstantOffset may be called for GEPs with indices
that do not fit into 64 bit. Use trySExtValue to avoid assertions in the
newly added tests.

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


  Commit: afb42af9cc18d0dd08ccac3577310e049095700b
      https://github.com/llvm/llvm-project/commit/afb42af9cc18d0dd08ccac3577310e049095700b
  Author: Srinivasa Ravi <srinivasar at nvidia.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinNVPTX.cpp
    M clang/lib/CodeGen/TargetBuiltins/NVPTX.cpp
    M clang/test/CIR/CodeGenCUDA/builtins-nvvm-math.cu
    M clang/test/CodeGen/builtins-nvptx.c
    M llvm/docs/NVPTXUsage.md
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/include/llvm/IR/NVVMIntrinsicUtils.h
    M llvm/lib/Analysis/ConstantFolding.cpp
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/IR/NVVMIntrinsicUtils.cpp
    M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp
    M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.h
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/test/Assembler/auto_upgrade_nvvm_intrinsics.ll
    A llvm/test/CodeGen/NVPTX/bf16-add.ll
    A llvm/test/CodeGen/NVPTX/bf16-sub.ll
    R llvm/test/CodeGen/NVPTX/f16-add-sat.ll
    A llvm/test/CodeGen/NVPTX/f16-add.ll
    R llvm/test/CodeGen/NVPTX/f16-sub-sat.ll
    A llvm/test/CodeGen/NVPTX/f16-sub.ll
    A llvm/test/CodeGen/NVPTX/fp-add-f32x2.ll
    A llvm/test/CodeGen/NVPTX/fp-add-invalid.ll
    M llvm/test/CodeGen/NVPTX/fp-arith-sat.ll
    A llvm/test/CodeGen/NVPTX/fp-fold-sub-f32x2.ll
    M llvm/test/CodeGen/NVPTX/fp-fold-sub.ll
    M llvm/test/CodeGen/NVPTX/mixed-precision-fp.ll
    M llvm/test/Transforms/InstCombine/NVPTX/nvvm-intrins.ll
    M llvm/test/Transforms/InstSimplify/const-fold-nvvm-add.ll
    A llvm/test/Verifier/NVPTX/fadd.ll
    M llvm/unittests/IR/IntrinsicsTest.cpp
    M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
    M mlir/lib/Target/LLVMIR/Dialect/NVVM/NVVMToLLVMIRTranslation.cpp
    M mlir/test/Target/LLVMIR/nvvm/addf/addf.mlir
    M mlir/test/Target/LLVMIR/nvvm/addf/addf_invalid.mlir
    M mlir/test/Target/LLVMIR/nvvm/addf/addf_vector.mlir
    M mlir/test/Target/LLVMIR/nvvm/subf/subf.mlir
    M mlir/test/Target/LLVMIR/nvvm/subf/subf_invalid.mlir
    M mlir/test/Target/LLVMIR/nvvm/subf/subf_vector.mlir

  Log Message:
  -----------
  [clang][NVPTX][MLIR][NVVM] Add overloaded fadd intrinsics (#221681)

This change adds the following overloaded `fadd` intrinsics with
NVPTX codegen:

- `llvm.nvvm.fadd`
- `llvm.nvvm.fadd.ftz`
- `llvm.nvvm.fadd.sat`
- `llvm.nvvm.fadd.ftz.sat`

The rounding mode is passed in as an `i32` immediate operand.

Auto-upgrades the older non-overloaded intrinsics to the new
ones, and updates clang builtins, CIR codegen, and MLIR NVVM ops
to lower to the new intrinsics.

In the interest of completion, this also:
- Adds intrinsics support for lowering some half-precision additions 
that were omitted earlier (`f16/f16x2` without saturation, and
`bf16/bf16x2` additions), and support for the `f32x2` type.
- Extends the DAG combine pattern for lowering `fneg + add-intrinsic`
to `sub` instructions to all supported types.
- Adds tests for constant folding of these intrinsics with the newly
supported scalar types.

PTX Spec Reference:
https://docs.nvidia.com/cuda/developer-preview/13.4/parallel-thread-execution/index.html#floating-point-instructions-add

Assisted-by: Claude Opus 5


  Commit: 41235ec98c8a152d5be53f78437faf36fe9d2a15
      https://github.com/llvm/llvm-project/commit/41235ec98c8a152d5be53f78437faf36fe9d2a15
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

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

  Log Message:
  -----------
  [LV] Bring isLegalGatherOrScatter in line with existing method (NFC) (#221698)

Bring isLegalGatherOrScatter in line with isLegalMaskedLoadOrStore in
prepartion to widen gathers/scatters in VPlan.


  Commit: be0fa604519d749fdd6e3f3b943f85a9cbdb13bf
      https://github.com/llvm/llvm-project/commit/be0fa604519d749fdd6e3f3b943f85a9cbdb13bf
  Author: Jonas Hahnfeld <jonas.hahnfeld at cern.ch>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M clang/lib/AST/ExternalASTSource.cpp
    M clang/unittests/AST/ExternalASTSourceTest.cpp

  Log Message:
  -----------
  [clang][AST] Fix generation with multiple external sources (#219189)

ExternalASTSource::incrementGeneration returns the OldGeneration,
which must be taken into account in case it is delegated to the topmost
external source.

This obsoletes a long-standing downstream patch in Cling that was
previously submitted in https://reviews.llvm.org/D39714.

Test proposed by Vassil Vassilev, assisted by Claude.


  Commit: 102073935c094577b0f88c7be8e432211d74cfb0
      https://github.com/llvm/llvm-project/commit/102073935c094577b0f88c7be8e432211d74cfb0
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M orc-rt/CMakeLists.txt
    M orc-rt/lib/bedrock/CMakeLists.txt
    M orc-rt/lib/support/CMakeLists.txt

  Log Message:
  -----------
  [orc-rt] Add ORC_RT_ENABLE_PIC, default on. (#221705)

An upcoming patch will add support for building bedrock as a dylib. In
preparation for this, add ORC_RT_ENABLE_PIC option, and use it to set
POSITION_INDEPENDENT_CODE (needed for shared library builds) on the
bedrock and support object libraries.


  Commit: cd3a2657c7193abbdba4620649ff5b8f7409e47a
      https://github.com/llvm/llvm-project/commit/cd3a2657c7193abbdba4620649ff5b8f7409e47a
  Author: Zeyi Xu <mitchell.xu2 at gmail.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/MacroParenthesesCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.md
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/macro-parentheses.cpp

  Log Message:
  -----------
  [clang-tidy] Fix bugprone-macro-parentheses false positives for alias names (#219955)

Fixes #219922.


  Commit: 24319927cb0c4acbe9fb3f2bd042b07dad2a4f9f
      https://github.com/llvm/llvm-project/commit/24319927cb0c4acbe9fb3f2bd042b07dad2a4f9f
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
    M mlir/test/Dialect/LLVMIR/nvvm.mlir

  Log Message:
  -----------
  [mlir][NVVM] Reject f16 WGMMA accumulators for BF16 inputs (#220869)

WGMMA supports an f32 accumulator for BF16 multiplicands. The verifier
also accepted an f16 accumulator, allowing an unsupported operation
through dialect verification.

Restrict the BF16 case to f32 and add verifier coverage to the existing
NVVM dialect test.

Found by Coverity.

Assisted-by: Codex


  Commit: ef23a997b4e0f555d467158c0ac47357c41b1314
      https://github.com/llvm/llvm-project/commit/ef23a997b4e0f555d467158c0ac47357c41b1314
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

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

  Log Message:
  -----------
  [LifetimeSafety] Gate lifetime checks behind per-diagnostic opts (#221610)

Granular Lifetime Safety Check Gating

We split `IsLifetimeSafetyEnabled` into individual check functions in
`SemaLifetimeSafety.h`.

These properties are stored in `LifetimeSafetyOpts`, which are then
checked inside the `Checker` to avoid invoking expensive reporting
functions mapping to diagnostics that are disabled.

`reportMisplacedLifetimebound` was found to be the most expensive
(possibly because it iterates on redecls).


  Commit: 9fcc880e5a724c7fb95b646595eb081033a601d7
      https://github.com/llvm/llvm-project/commit/9fcc880e5a724c7fb95b646595eb081033a601d7
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
    M llvm/test/Transforms/ConstraintElimination/induction-condition-in-loop-exit-postinc.ll
    M llvm/test/Transforms/ConstraintElimination/induction-relational-predicate-latch.ll
    M llvm/test/Transforms/ConstraintElimination/induction-symbolic-start-postinc.ll

  Log Message:
  -----------
  [ConstraintElim] Support loops where header is also latch. (#221494)

Remove the bail out for header == latch. We now support deriving facts
from the latch condition and the restriction is no longer necessary.

This enables inferring additional flags in a number of cases, and a few
additional folds in practice:
https://github.com/dtcxzyw/llvm-opt-benchmark-nightly/pull/1200.

It also removes a surprising limitation when writing manual tests.

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


  Commit: 34dff487dd711a6a6d6a22f474ce475bce757b47
      https://github.com/llvm/llvm-project/commit/34dff487dd711a6a6d6a22f474ce475bce757b47
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer/SLPCompatibilityAnalysis.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer/SLPCompatibilityAnalysis.h
    M llvm/test/Transforms/SLPVectorizer/AArch64/loop-accumulator-reduction.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/many-uses-fma-candidate.ll
    M llvm/test/Transforms/SLPVectorizer/AMDGPU/reduction.ll
    M llvm/test/Transforms/SLPVectorizer/X86/fma-operand-index.ll
    M llvm/test/Transforms/SLPVectorizer/X86/horizontal-fadd-with-sub.ll
    M llvm/test/Transforms/SLPVectorizer/X86/horizontal-list.ll
    M llvm/test/Transforms/SLPVectorizer/X86/loop-accumulator-reduction.ll
    M llvm/test/Transforms/SLPVectorizer/X86/ordered-reduction-replaced.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduction-fadd-reassoc.ll

  Log Message:
  -----------
  [SLP]Flatten fsub/fneg chains into fadd reductions with per-operand signs

For unordered fadd reductions, reassociable (reassoc+nsz) fsub/fneg
chain links are recursed into and their leaves tracked with a flipped
sign, which is part of the grouping key, so reduced-values groups are
sign-uniform by construction. If per-value signs cannot model the
chain, the analysis restarts once without the flattening. Negated
parts are combined with vector fsub (may form per-lane fma) and
subtracted once in the final combine; no extra negations are emitted.

Fixes #211521

Reviewers: hiraditya, RKSimon

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


  Commit: 0fc0c614130666dbf626db6650285f83340b7c17
      https://github.com/llvm/llvm-project/commit/0fc0c614130666dbf626db6650285f83340b7c17
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/test/Analysis/CostModel/AMDGPU/fused_costs.ll
    M llvm/test/CodeGen/AArch64/PBQP-chain.ll
    M llvm/test/CodeGen/AArch64/PBQP-coalesce-benefit.ll
    M llvm/test/CodeGen/AArch64/PBQP-csr.ll
    M llvm/test/CodeGen/AArch64/arithmetic_fence.ll
    M llvm/test/CodeGen/AArch64/arm64-2013-01-13-ffast-fcmp.ll
    M llvm/test/CodeGen/AArch64/arm64-extract-insert-varidx.ll
    M llvm/test/CodeGen/AArch64/arm64-fml-combines.ll
    M llvm/test/CodeGen/AArch64/arm64-neon-2velem-high.ll
    M llvm/test/CodeGen/AArch64/arm64-neon-scalar-by-elem-mul.ll
    M llvm/test/CodeGen/AArch64/arm64-neon-select_cc.ll
    M llvm/test/CodeGen/AArch64/arm64-neon-vector-list-spill.ll
    M llvm/test/CodeGen/AArch64/fnmul.ll
    M llvm/test/CodeGen/AArch64/fp16-fmla.ll
    M llvm/test/CodeGen/AArch64/neon-fpextend_f16.ll
    M llvm/test/CodeGen/AArch64/neon-fpround_f128.ll
    M llvm/test/CodeGen/AArch64/neon-scalar-by-elem-fma.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-ext-fma.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-fma-mul.ll
    M llvm/test/CodeGen/AMDGPU/fdot2.ll
    M llvm/test/CodeGen/AMDGPU/prevent-fmul-hoist-ir.ll
    M llvm/test/CodeGen/Hexagon/swp-epilog-reuse.ll
    M llvm/test/CodeGen/Hexagon/swp-epilog-reuse2.ll
    M llvm/test/CodeGen/Hexagon/swp-loop-carried.ll
    M llvm/test/CodeGen/Hexagon/swp-max-stage3.ll
    M llvm/test/CodeGen/Hexagon/swp-memrefs-epilog.ll
    M llvm/test/CodeGen/Hexagon/swp-rename-dead-phi.ll
    M llvm/test/CodeGen/Hexagon/swp-reuse-phi.ll
    M llvm/test/CodeGen/PowerPC/fma-mutate-duplicate-vreg.ll

  Log Message:
  -----------
  CodeGen: Drop inert -fp-contract flags from tests (#221710)

-fp-contract is nearly dead, but referenced in tests. These have
no output change with or without the flag now.

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


  Commit: bbed4e22becfb7f271ad11d9e408e43b2500e459
      https://github.com/llvm/llvm-project/commit/bbed4e22becfb7f271ad11d9e408e43b2500e459
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/clmul-vector-256.ll
    M llvm/test/CodeGen/X86/clmul-vector-512.ll
    M llvm/test/CodeGen/X86/clmul-vector.ll

  Log Message:
  -----------
  [X86] LowerCLMUL - improve CLMULH vXi32 codegen (#221668)

Extension to #221289 - adds CLMULH handling by ensuring we zero out the
upper 64-bits of the PCLMULQDQ input and extract the upper i32 element
during unpacking the vector result back together


  Commit: 8436dd4a2bfe57d0b3fb6c9c11c69d75c1d1bccb
      https://github.com/llvm/llvm-project/commit/8436dd4a2bfe57d0b3fb6c9c11c69d75c1d1bccb
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp

  Log Message:
  -----------
  [mlir][NVVM] Move MMA verifier type sets (NFC) (#221712)

Build the fixed-size operand type collection by moving the locally
computed allowed-type sets. The verifier does not use the individual
sets afterward, so copying their nested vectors is unnecessary.

Found by Coverity.

Assisted-by: Codex


  Commit: e5f39fb259ea9c6d52fe9b2cd4213c17b7f11a56
      https://github.com/llvm/llvm-project/commit/e5f39fb259ea9c6d52fe9b2cd4213c17b7f11a56
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/AArch64/splat-gather-subtree-store-chain.ll

  Log Message:
  -----------
  [SLP][NFC]Add a test with the regression in SLP perf, NFC



Reviewers: 

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


  Commit: ac129cd8965f557bbc361011c3c28a378b86c969
      https://github.com/llvm/llvm-project/commit/ac129cd8965f557bbc361011c3c28a378b86c969
  Author: Mariya Podchishchaeva <Mariya.Podchishchaeva at amd.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M clang/test/CIR/CodeGen/ptrdiff.c
    M clang/test/CIR/CodeGen/ptrdiff.cpp

  Log Message:
  -----------
  [CIR] Fix ptrdiff tests after 1191f353cefe3c7ceb8e76fd03296e082a247685 (#221703)


  Commit: 42b846980eeacd8052d7a463e1aea8bb91aff248
      https://github.com/llvm/llvm-project/commit/42b846980eeacd8052d7a463e1aea8bb91aff248
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/split-node-struct-type.ll

  Log Message:
  -----------
  [SLP]Fix crash in canBuildSplitNode on struct-typed scalars

Split nodes require plain vector types for the cost model and codegen,
but getWidenedType on a struct scalar type returns a struct-of-vectors,
so the cast<VectorType> asserted. Bail out on struct-typed scalars, they
are not supported.

Fixes #221715

Reviewers: 

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


  Commit: cb9654f7491d429d03eaf3fd5c01c45c90c32200
      https://github.com/llvm/llvm-project/commit/cb9654f7491d429d03eaf3fd5c01c45c90c32200
  Author: Raphael Isemann <rise at apple.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/lldbtest.py

  Log Message:
  -----------
  [lldb][test] Bump utility expression timeout to 10 minutes (#221691)

LLDB needs to sometimes run utility expressions such as loading
libraries via a call to `dlopen`. These utility expressions have a
timeout associated with them which is only 15 seconds (and 60 on
sanitized builds).

I suspect our expressions reaching this timeout is the reason why
TestLoadUsingPaths.py sometimes fails to load libraries and produces
this error:

```
  File "../TestLoadUsingPaths.py", line 78, in test_load_using_paths
      self.assertNotEqual(token, lldb.LLDB_INVALID_IMAGE_TOKEN, "Got a valid token")
```

This patch bumps the timeout to 10 minutes. There is no good reason why
this timeout should exist in the first place on test bots, and maybe we
should remove them or make them fatal errors on the test bots. But for
now this patch should at least fix the test randomly failing on very
slow bots.


  Commit: e30a45f88b003e3baaf268040e85b80826a83394
      https://github.com/llvm/llvm-project/commit/e30a45f88b003e3baaf268040e85b80826a83394
  Author: Raphael Isemann <rise at apple.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M lldb/unittests/Core/MangledTest.cpp

  Log Message:
  -----------
  [lldb][test] Merge demangling tests into one test (#221214)

The XML test report that LIT generates describes the outcome of every
test in the test suite. Currently, the test report for the LLDB unit
tests alone is about 5MiB of which 4.7MiB (about 94%) are used to
describe all 30'000 DemanglingInfoCorrectnessTest instances names (they
don't have any output on success, so this is just used to describe the
test names).

This patch merges all these test instances into one. To make test
failures still easy to parse, this patch changes test function to use a
gtest scrope (which annotates failures with the mangled name) and use
non-fatal checks to continue testing when one test fails.

This reduces the test report size overhead of these tests from 4.7MiB to
about 100B.

assisted-by: claude


  Commit: b9b5fb9fec7a078e9d5471db19fccc681eb3559a
      https://github.com/llvm/llvm-project/commit/b9b5fb9fec7a078e9d5471db19fccc681eb3559a
  Author: Kareem Ergawy <kergawy at nvidia.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M flang/lib/Lower/PFTBuilder.cpp

  Log Message:
  -----------
  [flang] Enable wrap-unstructured-constructs-in-execute-region by default (#221637)

More extensive testing since the flag was introduced, with the
regressions it uncovered now fixed, see:
* https://github.com/llvm/llvm-project/pull/218674
* https://github.com/llvm/llvm-project/pull/217220
* https://github.com/llvm/llvm-project/pull/217842
* https://github.com/llvm/llvm-project/pull/216280


  Commit: 59f30df017e98a45ae2d209f71f95f6ac168151d
      https://github.com/llvm/llvm-project/commit/59f30df017e98a45ae2d209f71f95f6ac168151d
  Author: Davide Grohmann <davide.grohmann at arm.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/Transforms/Passes.td
    M mlir/lib/Dialect/Tosa/Transforms/TosaNarrowTypes.cpp
    A mlir/test/Dialect/Tosa/tosa-narrow-f32-to-f16-aggressive.mlir
    A mlir/test/Dialect/Tosa/tosa-narrow-f32-to-f16.mlir

  Log Message:
  -----------
  [mlir][tosa] Add F32 to F16 type narrowing pass (#218900)

Add `tosa-narrow-f32-to-f16`, extending the shared TOSA type narrowing
infrastructure with support for destructively converting F32 tensors,
scalar attributes, dense constants, and resource-backed constants to
F16.

The pass supports conservative and aggressive rewriting, optional
function-boundary conversion, and optional preservation of F32
accumulator types.

Add coverage for constant precision loss, function boundaries, regions,
dense resources, aggressive rewriting, and accumulator-type
preservation.

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


  Commit: 7987830e776411a0de84c0c75e9f1059acadceb5
      https://github.com/llvm/llvm-project/commit/7987830e776411a0de84c0c75e9f1059acadceb5
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M clang/include/clang/Driver/Driver.h
    M clang/include/clang/Driver/Types.h
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/Types.cpp
    A clang/test/Driver/Inputs/object0.o
    M clang/test/Driver/aix-ld.c
    A clang/test/Driver/pch-inputs.h

  Log Message:
  -----------
  [Clang][Driver] Final phase also determined by input (#218802)

Before this PR, `getFinalPhase` assumed that when no option is give then
the final phase will a linking step. This is objectively wrong: For
instance passing a header file as input (`-x c-header` or `-x
c++-header`) triggers precompilation, not linking. Other inputs that do
not have a link phase as specified by `Types.def`
are `.dxo`, `.ifs`, and `.hlsl` files.

Instead of defaulting to link in the absence of any action flag, this PR
uses the last phase that `Types.def` specifies for the given input
files. The effect of this is relevant when handling linking options
which are categorized as "input" like any other file.
Usually these should be filtered out if
there is no linking step. But, since `getFinalPhase` says there is a
linking flag, those are forwarded to the precompile handling which gets
confused with such "inputs". An accurate determination of the final
phase filters out those non-applicable linker options.

Note that the second condition of
`clang::diag::warn_drv_input_file_unused` was inverted: It would print

> clang: warning: -lfoo: 'linker' input unused when '' is present
[-Wunused-command-line-argument]

when passing a linker option to a non-link command that is not the
result of an action command flag. Inversely, when a non-link action flag
was used, it wasn't mentioned in the diagnostic message.


  Commit: 1871cb232f00d67193c3ef085e26b67b56029d21
      https://github.com/llvm/llvm-project/commit/1871cb232f00d67193c3ef085e26b67b56029d21
  Author: Baranov Victor <bar.victor.2002 at gmail.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/.clang-tidy

  Log Message:
  -----------
  [clang-tidy][NFC] Convert check list to yaml format (#221411)

Yaml format was introduced in 19-20 release which is old enough to
safely transition our file to new version since we are on 23 release
already.


  Commit: 71036f99e0dcc24b12cbcbcc2088b8d715465e0f
      https://github.com/llvm/llvm-project/commit/71036f99e0dcc24b12cbcbcc2088b8d715465e0f
  Author: Abid Qadeer <haqadeer at amd.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp

  Log Message:
  -----------
  [NFC] Stop relying on the LocationDescription conversion in unit tests. (#221004)

`LocationDescription` has an implicit conversion from a bare insertion
point, and it leaves DL default-constructed. `OpenMPIRBuilderTest`
depends on that in a number of places, either by naming an insertion
point directly or by handing `Builder.saveIP()` to an entry point that
takes a `LocationDescription`.

Spell out what each of those sites means instead. Where a live builder
is already sitting at the insertion point it is passed directly, and
where the test names an insertion point of its own the empty location is
written out, which is what it was getting before, so no test changes
behavior.

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


  Commit: 137d8e684984df207576c8f24bd8743ddb71c5c9
      https://github.com/llvm/llvm-project/commit/137d8e684984df207576c8f24bd8743ddb71c5c9
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86RegisterInfo.cpp
    M llvm/test/CodeGen/X86/avx512f-large-stack.ll
    A llvm/test/CodeGen/X86/huge-frame-index.ll

  Log Message:
  -----------
  [X86] Fix eliminateFrameIndex dropping existing index register for huge frame offsets

When the frame offset does not fit in disp32 and the address mode already
uses an index register, the register-scavenging path overwrote the index
operand with the scratch register, silently dropping the index from the
effective address (and applying the stale scale to the frame offset).
Fold the offset into the base register with an LEA in this case instead.

Fixes #213960

Assisted-by: Cursor

Reviewers: RKSimon, qcolombet

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


  Commit: b9871b325ed34e4dea7ea81e8ec5c72fd6e1f0e7
      https://github.com/llvm/llvm-project/commit/b9871b325ed34e4dea7ea81e8ec5c72fd6e1f0e7
  Author: Andrzej WarzyƄski <andrzej.warzynski at arm.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    R clang/test/CIR/CodeGenBuiltins/AArch64/acle_sve_dup.c
    R clang/test/CIR/CodeGenBuiltins/AArch64/acle_sve_len.c
    M clang/test/CodeGen/AArch64/lit.local.cfg
    A clang/test/CodeGen/AArch64/sve/dup.c
    A clang/test/CodeGen/AArch64/sve/len.c

  Log Message:
  -----------
  [clang][CIR][AArch64] Move and reformat SVE test (#220599)

Adapts SVE tests to match the approach that we took for Neon. In
particular, test are moved to:
  * "clang/test/CodeGen/AArch64/sve"

There is no change in test coverage.


  Commit: 759e1fff9e41cf4ad313c117cd024650b4566a71
      https://github.com/llvm/llvm-project/commit/759e1fff9e41cf4ad313c117cd024650b4566a71
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/wide-vscale-range-max-runtime-vf.ll

  Log Message:
  -----------
  [LV] Use getMaxRuntimeElementCount for MaxPowerOf2RuntimeVF. (#221219)

Use new getMaxRuntimeElementCount to compute MaxPowerOf2RuntimeVF to
avoid overflow by performing computations in uint64_t.

This fixes an overflow in the test added in #219290. We now correctly
determine that a tail is needed for a low trip count loop.

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


  Commit: 972cd3ddf3d58ecb79a4e6b62b35147513f3aeea
      https://github.com/llvm/llvm-project/commit/972cd3ddf3d58ecb79a4e6b62b35147513f3aeea
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

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

  Log Message:
  -----------
  [lldb][Windows] Silence unused variable warning on Windows on Arm (#221176)

<...>/llvm-project/lldb/source/Plugins/Process/Windows/Common/NativeProcessWindows.cpp(507,8):
warning: unused variable 'log' [-Wunused-variable]
  507 |   Log *log = GetLog(WindowsLog::Exception);
      |        ^~~

Move that line into the `#ifndef __aarch64__` block to fix this.


  Commit: c84706fd8cab200aa460b7737fa5412a0c1628d8
      https://github.com/llvm/llvm-project/commit/c84706fd8cab200aa460b7737fa5412a0c1628d8
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/load.ll
    M llvm/test/CodeGen/AArch64/neon-extadd-extract.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-gather.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-scatter.ll
    M llvm/test/CodeGen/AArch64/sve-insert-vector-to-predicate-load.ll

  Log Message:
  -----------
  [AArch64][SVE] Lower extended v2i8 loads using SVE. (#217006)

Loads of v2i8 are promoted to v2i32, which requires two extend
operations; v2i8 -> v2i16, then v2i16 -> v2i32. This comes largely for
free when using SVE's extending loads.


  Commit: 330bb868b4a5d6035a1511169dacc72e913d009f
      https://github.com/llvm/llvm-project/commit/330bb868b4a5d6035a1511169dacc72e913d009f
  Author: Mikhail Titov <42744001+Anchels at users.noreply.github.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/docs/LibFuzzer.md

  Log Message:
  -----------
  [docs][libFuzzer] Fix formatting and collapsed definition lists (#206709)

This PR fixes broken formatting and collapsed definition lists in the
libFuzzer documentation by adding missing blank lines.

Closes #206706

Signed-off-by: Anchels <mishtitov at gmail.com>


  Commit: 95de5eb9942a20285afd59f7c197ba005a9b937b
      https://github.com/llvm/llvm-project/commit/95de5eb9942a20285afd59f7c197ba005a9b937b
  Author: Henrich Lauko <xlauko at mail.muni.cz>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIREnumAttr.td
    M clang/include/clang/CIR/Dialect/IR/CIROps.td

  Log Message:
  -----------
  [CIR] Drop dead ceremony around the CIR enum attributes (#220890)

Five things that no longer earn their place in the CIR enum attribute
machinery.

CIR_CleanupKindAttr carried three. Its cppClassName restated the default
AttrDef already derives. Its skipDefaultBuilders plus hand-written
AttrBuilder existed only to default $value to CleanupKind::All, which no
caller relies on, so the generated builders stayed suppressed for
nothing.
And its summary and description restated the name, overriding the enum's
own
"cleanup kind" that EnumAttr would otherwise inherit. The isNormal, isEH
and
isNormalAndEH helpers stay.

CIR_TLSModelAttr's summary restated its name the same way, so only that
goes.
CIR_DefaultValuedEnumParameter has never had a user.


  Commit: d246c5ee925edc79ed12e6269faa296b83362075
      https://github.com/llvm/llvm-project/commit/d246c5ee925edc79ed12e6269faa296b83362075
  Author: Madhur Amilkanthwar <madhura at nvidia.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

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

  Log Message:
  -----------
  [SLP][modularisation][NFC] Move order/mask helpers to SLPUtils (#221663)

Move the following BoUpSLP-independent order/mask helpers out of
SLPVectorizer.cpp into SLPVectorizer/SLPUtils.{h,cpp}:

  reorderReuses
  reorderOrder
  isReverseOrder
  isRepeatedNonIdentityClusteredMask
  combineOrders

They sit with the existing permutation helpers. Behavior is unchanged.

Part of the SLPVectorizer.cpp modularization effort:
https://discourse.llvm.org/t/modularizing-slpvectorizer-cpp/90922


  Commit: 07f6736c8a7ee21c51466f09cb2458f35d665597
      https://github.com/llvm/llvm-project/commit/07f6736c8a7ee21c51466f09cb2458f35d665597
  Author: Iasonas Karaprodromidis <iaskarapro at gmail.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M lldb/include/lldb/Target/Language.h
    M lldb/source/Plugins/Language/CMakeLists.txt
    A lldb/source/Plugins/Language/Fortran/CMakeLists.txt
    A lldb/source/Plugins/Language/Fortran/FortranLanguage.cpp
    A lldb/source/Plugins/Language/Fortran/FortranLanguage.h
    M lldb/source/Target/Language.cpp
    M lldb/unittests/Language/CMakeLists.txt
    A lldb/unittests/Language/Fortran/CMakeLists.txt
    A lldb/unittests/Language/Fortran/FortranLanguageTest.cpp

  Log Message:
  -----------
  [lldb][Fortran] Add Fortran language plugin to LLDB (#221301)

This PR adds the Plugin necessary for LLDB to recognise Fortran.
Subsequent PRs will add the TypeSystem and the DWARFASTParser for
Fortran.

Changes:
- Adds Fortran language Plugin.
- Adds LanguageIsFortran function to the Language class to help identify
Fortran.

Testing:
- Check if language Plugin is registered.

Part of the Add Fortran support to LLDB GSoC 2026 project.

Relates to #109119.

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


  Commit: f16746ae332fed263a69464e38085706e96dad9b
      https://github.com/llvm/llvm-project/commit/f16746ae332fed263a69464e38085706e96dad9b
  Author: Kazu Hirata <kazu at google.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUInstrInfo.h
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp

  Log Message:
  -----------
  [AMDGPU] Remove dead D16ImageDimIntrinsic and lookupD16ImageDimIntrinsic (NFC) (#221660)

The corresponding TableGen table and callers were removed on June 21,
2018 in commit 7a9c03f484fee744b1cbcc45e77f949b4ebfcbee, leaving behind
the struct, the declaration, and the unused macro definition.

Assisted-by: Antigravity


  Commit: e92c19abae25beb03234bfbf6cfa1a431c6d380a
      https://github.com/llvm/llvm-project/commit/e92c19abae25beb03234bfbf6cfa1a431c6d380a
  Author: Jeff Bailey <jbailey at raspberryginger.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M libc/src/__support/CPP/CMakeLists.txt
    M libc/src/__support/CPP/algorithm.h
    M libc/src/__support/CPP/utility.h
    A libc/src/__support/CPP/utility/swap.h
    M libc/src/__support/math/CMakeLists.txt
    M libc/src/__support/math/powf.h
    M libc/src/__support/wctype/CMakeLists.txt
    M libc/src/__support/wctype/perfect_hash_map.h
    M libc/src/stdio/scanf_core/CMakeLists.txt
    M libc/src/stdio/scanf_core/parser.h
    M libc/src/stdlib/CMakeLists.txt
    M libc/src/stdlib/qsort_data.h
    M libc/test/src/__support/CPP/CMakeLists.txt
    M libc/test/src/__support/CPP/algorithm_test.cpp
    A libc/test/src/__support/CPP/swap_test.cpp
    M libc/test/src/stdio/scanf_core/parser_test.cpp

  Log Message:
  -----------
  [libc] Add cpp::swap and cpp::clamp utilities (#221236)

Added cpp::swap to src/__support/CPP/utility/swap.h with move semantics
and array support, and cpp::clamp to src/__support/CPP/algorithm.h with
comparator support.

Included unit tests in swap_test.cpp and algorithm_test.cpp.

Adopted the new utilities in initial callsites:
* stdlib: Used cpp::swap in qsort_data.h
* wctype: Used cpp::swap in perfect_hash_map.h
* math: Used cpp::clamp in powf.h
* scanf_core: Used cpp::min and cpp::max in parser.h

Also fixed sign extension when parsing scanset specifiers in parser.h:
signed characters greater than or equal to 128 produced negative values,
inverting comparisons and causing out-of-bounds writes in the bitset.
Scanset characters are now cast through uint8_t, and non-ASCII tests
were added to parser_test.cpp.

Assisted-by: Automated tooling, human reviewed.


  Commit: 10a37889d4d14a30a7fef19e61acf8b8808ddeae
      https://github.com/llvm/llvm-project/commit/10a37889d4d14a30a7fef19e61acf8b8808ddeae
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

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

  Log Message:
  -----------
  [RISCV] Add VPatBinaryVL_R_VX to share between VRSUB.VX and VDOT4AUS.VX. NFC (#221284)

Assisted-by: Claude


  Commit: 1ce91bb26f31a773979c813cd8c2904f9076295c
      https://github.com/llvm/llvm-project/commit/1ce91bb26f31a773979c813cd8c2904f9076295c
  Author: Timur Baidusenov <timurbaidusenov at gmail.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    A llvm/test/Transforms/SimplifyCFG/preserve-unpredictable-switch-create.ll

  Log Message:
  -----------
  [SimplifyCFG] Preserve !unpredictable when forming a switch (#221580)

SimplifyCFG turns a chain of equality comparisons into a switch in two
places, performValueComparisonIntoPredecessorFolding() and
simplifyBranchOnICmpChain(), and neither propagated !unpredictable. The
hint was therefore dropped even though it is valid on a switch and the
reverse transform, simplifySwitchOfCmpIntrinsic(), already preserves it.

Propagate the metadata in both. Folding a comparison into a predecessor
merges two decisions into a single switch, so the result is only marked
unpredictable when both of the folded comparisons were. That also makes
chains longer than two blocks work: the fold runs once per predecessor
and reads the metadata back off the switch it built on the previous
iteration.

simplifyBranchOnICmpChain() also emits a range check instead of a switch
when the case values are contiguous. That branch is an exact replacement
for the original one, so it inherits the metadata unconditionally, and
the flag now survives into the machine IR.

Fixes #42658.


  Commit: ce27ca449c564f8b38a60ea8db28e10a76cfb4ef
      https://github.com/llvm/llvm-project/commit/ce27ca449c564f8b38a60ea8db28e10a76cfb4ef
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    A llvm/test/Analysis/ScalarEvolution/ext-addrec-wrap-flags.ll
    R llvm/test/Analysis/ScalarEvolution/incorrect-nsw.ll

  Log Message:
  -----------
  [SCEV] Add test coverage for ext-nusw/nsuw inference (#218943)

Complete the existing incorrect-nsw test, showing that zext-addrec nusw
is not implied by nw on the pre-inc AR, and that sext-addrec nsuw is not
implied by nw on the pre-inc AR. See also: #217405 and #217362.

Assisted-by: AI


  Commit: 1afead77810533576bc2bc2c0c900afba82cb6af
      https://github.com/llvm/llvm-project/commit/1afead77810533576bc2bc2c0c900afba82cb6af
  Author: theRonShark <ron.lieberman at amd.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/lib/CodeGen/RegAllocPBQP.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURewriteAGPRCopyMFMA.cpp
    M llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp

  Log Message:
  -----------
  Revert "[CodeGen] Use RegisterClassInfo for remaining allocation-order users" (#221749)

Reverts llvm/llvm-project#216510

breaks tests MIOpen/CK shard 1-4 in CI

queueing this up in case we want to save a bit of time


  Commit: c5fc98310a8897773e188d1c6a0d76db92384ab8
      https://github.com/llvm/llvm-project/commit/c5fc98310a8897773e188d1c6a0d76db92384ab8
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/pr1505b.ll

  Log Message:
  -----------
  [X86] pr1505b.ll - regenerate test checks (#221774)


  Commit: b1a72e31f29d4d5ede41f42443a34a2e6a1396b6
      https://github.com/llvm/llvm-project/commit/b1a72e31f29d4d5ede41f42443a34a2e6a1396b6
  Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

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

  Log Message:
  -----------
  [Bazel] Fixes e92c19a (#221761)

This fixes e92c19abae25beb03234bfbf6cfa1a431c6d380a (#221236).

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

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


  Commit: 271af38dfc3aa02e329821daf46730686e52fb1c
      https://github.com/llvm/llvm-project/commit/271af38dfc3aa02e329821daf46730686e52fb1c
  Author: Vikram Hegde <Vikram.Hegde at amd.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
    M llvm/lib/Target/AMDGPU/AMDGPURegBankSelect.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-mui-regbankselect.mir

  Log Message:
  -----------
  [AMDGPU][GIsel][NPM] Port "AMDGPURegBankSelect" to NPM (#217321)

Assisted-by: Opus-4.8


  Commit: 0c553f573a076091f60df21618494584e9641e96
      https://github.com/llvm/llvm-project/commit/0c553f573a076091f60df21618494584e9641e96
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/test/Transforms/InstCombine/trunc.ll

  Log Message:
  -----------
  [InstCombine] Use common flags for shl in shl/trunc fold. (#221769)

As pointed out post-commit in
https://github.com/llvm/llvm-project/pull/219443, whether the flags from
the trunc can be transferred directly to the shl depends on the involved
types: https://alive2.llvm.org/ce/z/zN_TFq

For now, just use the common flags.

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


  Commit: 2bd26099ecf9b58f17c829738bb3c6e533106071
      https://github.com/llvm/llvm-project/commit/2bd26099ecf9b58f17c829738bb3c6e533106071
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-09-07 (Mon, 07 Sep 2026)

  Changed paths:
    M .git-blame-ignore-revs
    M bolt/unittests/Core/BinaryContext.cpp
    M bolt/unittests/Core/MCPlusBuilder.cpp
    M bolt/unittests/Core/MemoryMaps.cpp
    M bolt/unittests/Profile/PerfScripts.cpp
    M clang-tools-extra/clang-tidy/.clang-tidy
    M clang-tools-extra/clang-tidy/bugprone/MacroParenthesesCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.md
    A clang-tools-extra/docs/clang-tidy/checks/readability/ambiguous-smartptr-reset-call.md
    R clang-tools-extra/docs/clang-tidy/checks/readability/ambiguous-smartptr-reset-call.rst
    A clang-tools-extra/docs/clang-tidy/checks/readability/avoid-return-with-void-value.md
    R clang-tools-extra/docs/clang-tidy/checks/readability/avoid-return-with-void-value.rst
    A clang-tools-extra/docs/clang-tidy/checks/readability/avoid-unconditional-preprocessor-if.md
    R clang-tools-extra/docs/clang-tidy/checks/readability/avoid-unconditional-preprocessor-if.rst
    A clang-tools-extra/docs/clang-tidy/checks/readability/braces-around-statements.md
    R clang-tools-extra/docs/clang-tidy/checks/readability/braces-around-statements.rst
    A clang-tools-extra/docs/clang-tidy/checks/readability/const-return-type.md
    R clang-tools-extra/docs/clang-tidy/checks/readability/const-return-type.rst
    A clang-tools-extra/docs/clang-tidy/checks/readability/container-contains.md
    R clang-tools-extra/docs/clang-tidy/checks/readability/container-contains.rst
    A clang-tools-extra/docs/clang-tidy/checks/readability/container-size-empty.md
    R clang-tools-extra/docs/clang-tidy/checks/readability/container-size-empty.rst
    A clang-tools-extra/docs/clang-tidy/checks/readability/duplicate-include.md
    R clang-tools-extra/docs/clang-tidy/checks/readability/duplicate-include.rst
    A clang-tools-extra/docs/clang-tidy/checks/readability/else-after-return.md
    R clang-tools-extra/docs/clang-tidy/checks/readability/else-after-return.rst
    A clang-tools-extra/docs/clang-tidy/checks/readability/enum-initial-value.md
    R clang-tools-extra/docs/clang-tidy/checks/readability/enum-initial-value.rst
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/macro-parentheses.cpp
    M clang/docs/ReleaseNotes.md
    M clang/docs/StandardCPlusPlusModules.md
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeSafety.h
    M clang/include/clang/Basic/ABIVersions.def
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
    M clang/include/clang/CIR/Dialect/IR/CIRCUDAAttrs.td
    M clang/include/clang/CIR/Dialect/IR/CIREnumAttr.td
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/Dialect/IR/CIRTypes.td
    M clang/include/clang/DependencyScanning/ModuleDepCollector.h
    M clang/include/clang/Driver/Driver.h
    M clang/include/clang/Driver/Types.h
    M clang/include/clang/Lex/PreprocessorOptions.h
    M clang/lib/AST/ExternalASTSource.cpp
    M clang/lib/Analysis/LifetimeSafety/Checker.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuiltinNVPTX.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/CodeGen/TargetInfo.h
    M clang/lib/CIR/CodeGen/Targets/SPIRV.cpp
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerModule.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/TargetBuiltins/NVPTX.cpp
    M clang/lib/CodeGen/Targets/X86.cpp
    M clang/lib/DependencyScanning/ModuleDepCollector.cpp
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/Types.cpp
    M clang/lib/Lex/PPDirectives.cpp
    M clang/lib/Sema/SemaCUDA.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaLifetimeSafety.h
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Tooling/DependencyScanningTool.cpp
    M clang/test/CIR/CodeGen/ptrdiff.c
    M clang/test/CIR/CodeGen/ptrdiff.cpp
    A clang/test/CIR/CodeGen/spirv-target-lowering-as.cpp
    R clang/test/CIR/CodeGenBuiltins/AArch64/acle_sve_dup.c
    R clang/test/CIR/CodeGenBuiltins/AArch64/acle_sve_len.c
    M clang/test/CIR/CodeGenBuiltins/builtin-fpclassify.c
    M clang/test/CIR/CodeGenBuiltins/builtin-isfpclass.c
    M clang/test/CIR/CodeGenBuiltins/builtin-isinf-sign.c
    M clang/test/CIR/CodeGenCUDA/builtins-nvvm-math.cu
    A clang/test/CIR/CodeGenHIP/builtin-bool-result.hip
    M clang/test/CIR/CodeGenOpenCL/address-space-conversions.cl
    M clang/test/CIR/CodeGenOpenCL/address-space-local-var.clcpp
    M clang/test/CIR/CodeGenOpenCL/address-spaces.cl
    M clang/test/CIR/IR/enum-attrs.cir
    M clang/test/CIR/IR/invalid-call.cir
    M clang/test/CIR/IR/invalid-lang-attr.cir
    M clang/test/CIR/Lowering/address-space.cir
    M clang/test/ClangScanDeps/P1689.cppm
    A clang/test/ClangScanDeps/p1689-module-map.cppm
    M clang/test/CodeGen/AArch64/lit.local.cfg
    A clang/test/CodeGen/AArch64/sve/dup.c
    A clang/test/CodeGen/AArch64/sve/len.c
    A clang/test/CodeGen/X86/x86_64-unnamed-bitfield-abi-compat.c
    M clang/test/CodeGen/builtins-nvptx.c
    M clang/test/CodeGen/glibc_ptr_align.c
    M clang/test/CodeGen/ptr-subtract-stable.c
    M clang/test/CodeGen/vla.c
    M clang/test/CodeGenCUDA/managed-var.cu
    M clang/test/CodeGenOpenCL/address-spaces-conversions.cl
    M clang/test/CodeGenOpenCL/nullptr.cl
    M clang/test/CodeGenOpenCL/size_t.cl
    M clang/test/DebugInfo/CXX/limited-ctor.cpp
    M clang/test/DebugInfo/Generic/debug-label-inline.c
    A clang/test/Driver/Inputs/object0.o
    M clang/test/Driver/aix-ld.c
    A clang/test/Driver/pch-inputs.h
    M clang/test/OpenMP/depobj_codegen.cpp
    M clang/test/OpenMP/for_range_loop_codegen.cpp
    M clang/test/OpenMP/fuse_codegen.cpp
    M clang/test/OpenMP/interchange_codegen.cpp
    M clang/test/OpenMP/parallel_for_codegen.cpp
    M clang/test/OpenMP/reverse_codegen.cpp
    M clang/test/OpenMP/split_codegen.cpp
    M clang/test/OpenMP/stripe_codegen.cpp
    M clang/test/OpenMP/tile_codegen.cpp
    A clang/test/SemaCUDA/attr-instantiation-duplication-amdgpu.cu
    A clang/test/SemaCUDA/attr-instantiation-duplication-spirv.cu
    M clang/unittests/AST/ExternalASTSourceTest.cpp
    A flang/include/flang/Evaluate/char.h
    M flang/include/flang/Evaluate/complex.h
    M flang/include/flang/Evaluate/initial-image.h
    M flang/include/flang/Evaluate/integer.h
    M flang/include/flang/Evaluate/logical.h
    M flang/include/flang/Evaluate/real.h
    M flang/lib/Evaluate/host.h
    M flang/lib/Evaluate/initial-image.cpp
    M flang/lib/Lower/PFTBuilder.cpp
    M libc/CMakeLists.txt
    A libc/docs/dev/code_coverage.md
    M libc/docs/dev/index.md
    M libc/src/__support/CPP/CMakeLists.txt
    M libc/src/__support/CPP/algorithm.h
    M libc/src/__support/CPP/utility.h
    A libc/src/__support/CPP/utility/swap.h
    M libc/src/__support/math/CMakeLists.txt
    M libc/src/__support/math/powf.h
    M libc/src/__support/wctype/CMakeLists.txt
    M libc/src/__support/wctype/perfect_hash_map.h
    M libc/src/stdio/scanf_core/CMakeLists.txt
    M libc/src/stdio/scanf_core/parser.h
    M libc/src/stdlib/CMakeLists.txt
    M libc/src/stdlib/qsort_data.h
    M libc/test/src/__support/CPP/CMakeLists.txt
    M libc/test/src/__support/CPP/algorithm_test.cpp
    A libc/test/src/__support/CPP/swap_test.cpp
    M libc/test/src/stdio/scanf_core/parser_test.cpp
    M libcxx/docs/Status/Cxx26Issues.csv
    M libcxx/include/__optional/comparison.h
    M libcxx/test/std/utilities/optional/optional.comp_with_t/equal.pass.cpp
    M libcxx/test/std/utilities/optional/optional.comp_with_t/greater.pass.cpp
    M libcxx/test/std/utilities/optional/optional.comp_with_t/greater_equal.pass.cpp
    M libcxx/test/std/utilities/optional/optional.comp_with_t/less_equal.pass.cpp
    M libcxx/test/std/utilities/optional/optional.comp_with_t/less_than.pass.cpp
    M libcxx/test/std/utilities/optional/optional.comp_with_t/not_equal.pass.cpp
    M lld/ELF/EhFrame.cpp
    M lld/ELF/EhFrame.h
    M lld/ELF/SyntheticSections.cpp
    M lld/test/COFF/arm64ec-export-thunks.test
    M lld/test/COFF/arm64ec-import.test
    M lld/test/COFF/baserel.test
    M lld/test/COFF/code-merge.s
    M lld/test/COFF/common-replacement.s
    M lld/test/COFF/merge-data-bss.test
    M lld/test/COFF/nodbgdirmerge.test
    M lld/test/COFF/secrel-common.s
    M lld/test/ELF/eh-frame-fde-encoding.s
    R lld/test/ELF/eh-frame-hdr-zero-range.s
    M lld/test/ELF/eh-frame-negative-pcrel-sdata2.s
    M lld/test/ELF/eh-frame-negative-pcrel-sdata4.s
    M lldb/include/lldb/Target/Language.h
    M lldb/packages/Python/lldbsuite/test/lldbtest.py
    M lldb/source/Plugins/Language/CMakeLists.txt
    A lldb/source/Plugins/Language/Fortran/CMakeLists.txt
    A lldb/source/Plugins/Language/Fortran/FortranLanguage.cpp
    A lldb/source/Plugins/Language/Fortran/FortranLanguage.h
    M lldb/source/Plugins/Process/Windows/Common/NativeProcessWindows.cpp
    M lldb/source/Target/Language.cpp
    A lldb/test/API/commands/watchpoints/watchpoint_set_errors/Makefile
    A lldb/test/API/commands/watchpoints/watchpoint_set_errors/TestWatchpointSetErrors.py
    A lldb/test/API/commands/watchpoints/watchpoint_set_errors/main.c
    M lldb/test/Shell/SymbolFile/NativePDB/globals-bss.cpp
    R lldb/test/Shell/Watchpoint/Inputs/main.cpp
    R lldb/test/Shell/Watchpoint/SetErrorCases.test
    M lldb/unittests/Core/MangledTest.cpp
    M lldb/unittests/Language/CMakeLists.txt
    A lldb/unittests/Language/Fortran/CMakeLists.txt
    A lldb/unittests/Language/Fortran/FortranLanguageTest.cpp
    M llvm/docs/LibFuzzer.md
    M llvm/docs/NVPTXUsage.md
    M llvm/include/llvm/ABI/TargetInfo.h
    M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
    M llvm/include/llvm/Analysis/MustExecute.h
    M llvm/include/llvm/Analysis/ValueTracking.h
    M llvm/include/llvm/CodeGen/CallingConvLower.h
    M llvm/include/llvm/CodeGen/MachineOutliner.h
    M llvm/include/llvm/CodeGen/TargetInstrInfo.h
    M llvm/include/llvm/IR/Attributes.h
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/include/llvm/IR/NVVMIntrinsicUtils.h
    M llvm/lib/ABI/Targets/X86.cpp
    M llvm/lib/Analysis/ConstantFolding.cpp
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    M llvm/lib/Analysis/MustExecute.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/InterleavedLoadCombinePass.cpp
    M llvm/lib/CodeGen/MachineInstr.cpp
    M llvm/lib/CodeGen/MachineOutliner.cpp
    M llvm/lib/CodeGen/RegAllocPBQP.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/IR/AttributeImpl.h
    M llvm/lib/IR/Attributes.cpp
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/IR/DebugLoc.cpp
    M llvm/lib/IR/LLVMContextImpl.h
    M llvm/lib/IR/NVVMIntrinsicUtils.cpp
    M llvm/lib/TableGen/StringToOffsetTable.cpp
    M llvm/lib/Target/AArch64/AArch64ConditionalCompares.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    M llvm/lib/Target/AMDGPU/AMDGPUCoExecSchedStrategy.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstrInfo.h
    M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
    M llvm/lib/Target/AMDGPU/AMDGPUPreLegalizerCombiner.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegBankSelect.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURewriteAGPRCopyMFMA.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.h
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
    M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp
    M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.h
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvdot4a8i.td
    M llvm/lib/Target/RISCV/RISCVProcessors.td
    M llvm/lib/Target/Sparc/DelaySlotFiller.cpp
    M llvm/lib/Target/Sparc/SparcInstrInfo.cpp
    M llvm/lib/Target/Sparc/SparcInstrInfo.h
    M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86RegisterInfo.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
    M llvm/lib/Transforms/Scalar/LICM.cpp
    M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
    M llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    M llvm/lib/Transforms/Utils/LoopUnrollAndJam.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.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/SLPVectorizer/SLPCompatibilityAnalysis.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer/SLPCompatibilityAnalysis.h
    M llvm/lib/Transforms/Vectorize/SLPVectorizer/SLPTypeUtils.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer/SLPTypeUtils.h
    M llvm/lib/Transforms/Vectorize/SLPVectorizer/SLPUtils.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer/SLPUtils.h
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Analysis/CostModel/AMDGPU/fused_costs.ll
    M llvm/test/Analysis/LoopAccessAnalysis/all-ones-null-pointer.ll
    M llvm/test/Analysis/LoopAccessAnalysis/evaluate-at-symbolic-max-backedge-taken-count-may-wrap.ll
    M llvm/test/Analysis/LoopAccessAnalysis/negative-step-deref-off-by-eltsize.ll
    M llvm/test/Analysis/LoopAccessAnalysis/retry-runtime-checks-after-dependence-analysis-forked-pointers.ll
    M llvm/test/Analysis/LoopAccessAnalysis/symbolic-stride.ll
    A llvm/test/Analysis/ScalarEvolution/ext-addrec-wrap-flags.ll
    R llvm/test/Analysis/ScalarEvolution/incorrect-nsw.ll
    M llvm/test/Assembler/auto_upgrade_nvvm_intrinsics.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/arm64-irtranslator-fmuladd.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/preselect-process-phis.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/select-bitcast.mir
    M llvm/test/CodeGen/AArch64/PBQP-chain.ll
    M llvm/test/CodeGen/AArch64/PBQP-coalesce-benefit.ll
    M llvm/test/CodeGen/AArch64/PBQP-csr.ll
    M llvm/test/CodeGen/AArch64/arithmetic_fence.ll
    M llvm/test/CodeGen/AArch64/arm64-2013-01-13-ffast-fcmp.ll
    M llvm/test/CodeGen/AArch64/arm64-extract-insert-varidx.ll
    M llvm/test/CodeGen/AArch64/arm64-fml-combines.ll
    M llvm/test/CodeGen/AArch64/arm64-neon-2velem-high.ll
    M llvm/test/CodeGen/AArch64/arm64-neon-scalar-by-elem-mul.ll
    M llvm/test/CodeGen/AArch64/arm64-neon-select_cc.ll
    M llvm/test/CodeGen/AArch64/arm64-neon-vector-list-spill.ll
    A llvm/test/CodeGen/AArch64/cmpbr-ccmp.ll
    A llvm/test/CodeGen/AArch64/cmpbr-ccmp.mir
    M llvm/test/CodeGen/AArch64/fnmul.ll
    M llvm/test/CodeGen/AArch64/fp16-fmla.ll
    A llvm/test/CodeGen/AArch64/interleaved-load-combine-many-candidates.ll
    M llvm/test/CodeGen/AArch64/load.ll
    A llvm/test/CodeGen/AArch64/machine-outliner-debug-admission.mir
    M llvm/test/CodeGen/AArch64/machine-outliner-macho-compact-unwind-frame.mir
    M llvm/test/CodeGen/AArch64/machine-outliner-mapper-stats.mir
    M llvm/test/CodeGen/AArch64/machine-outliner-mapping-stats.mir
    A llvm/test/CodeGen/AArch64/machine-outliner-range-debug.mir
    M llvm/test/CodeGen/AArch64/neon-extadd-extract.ll
    M llvm/test/CodeGen/AArch64/neon-fpextend_f16.ll
    M llvm/test/CodeGen/AArch64/neon-fpround_f128.ll
    M llvm/test/CodeGen/AArch64/neon-scalar-by-elem-fma.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-gather.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-scatter.ll
    M llvm/test/CodeGen/AArch64/sve-insert-vector-to-predicate-load.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/amdgpu-prelegalizer-combiner-crash.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-add-nullptr.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fabs-fneg.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-ext-fma.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-fma-mul.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-redundant-and.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-rot.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-zext-trunc.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-mui-regbankselect.mir
    M llvm/test/CodeGen/AMDGPU/agpr-csr.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-no-agprs-violations.ll
    A llvm/test/CodeGen/AMDGPU/coexec-sched-agpr-excess.mir
    M llvm/test/CodeGen/AMDGPU/fdot2.ll
    M llvm/test/CodeGen/AMDGPU/global-load-xcnt.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.iglp.opt.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sched.group.barrier.ll
    M llvm/test/CodeGen/AMDGPU/machine-scheduler-sink-trivial-remats-attr.mir
    M llvm/test/CodeGen/AMDGPU/mfma-cd-select.ll
    M llvm/test/CodeGen/AMDGPU/mfma-no-register-aliasing.ll
    M llvm/test/CodeGen/AMDGPU/pack-half-to-lshl-or.ll
    M llvm/test/CodeGen/AMDGPU/prevent-fmul-hoist-ir.ll
    M llvm/test/CodeGen/AMDGPU/spill-agpr.ll
    M llvm/test/CodeGen/Hexagon/sffms.ll
    M llvm/test/CodeGen/Hexagon/swp-epilog-reuse.ll
    M llvm/test/CodeGen/Hexagon/swp-epilog-reuse2.ll
    M llvm/test/CodeGen/Hexagon/swp-loop-carried.ll
    M llvm/test/CodeGen/Hexagon/swp-max-stage3.ll
    M llvm/test/CodeGen/Hexagon/swp-memrefs-epilog.ll
    M llvm/test/CodeGen/Hexagon/swp-rename-dead-phi.ll
    M llvm/test/CodeGen/Hexagon/swp-reuse-phi.ll
    A llvm/test/CodeGen/NVPTX/bf16-add.ll
    A llvm/test/CodeGen/NVPTX/bf16-sub.ll
    R llvm/test/CodeGen/NVPTX/f16-add-sat.ll
    A llvm/test/CodeGen/NVPTX/f16-add.ll
    R llvm/test/CodeGen/NVPTX/f16-sub-sat.ll
    A llvm/test/CodeGen/NVPTX/f16-sub.ll
    A llvm/test/CodeGen/NVPTX/fp-add-f32x2.ll
    A llvm/test/CodeGen/NVPTX/fp-add-invalid.ll
    M llvm/test/CodeGen/NVPTX/fp-arith-sat.ll
    A llvm/test/CodeGen/NVPTX/fp-fold-sub-f32x2.ll
    M llvm/test/CodeGen/NVPTX/fp-fold-sub.ll
    M llvm/test/CodeGen/NVPTX/mixed-precision-fp.ll
    M llvm/test/CodeGen/PowerPC/fma-mutate-duplicate-vreg.ll
    A llvm/test/CodeGen/RISCV/machine-outliner-debug-codegen.mir
    A llvm/test/CodeGen/RISCV/machine-outliner-mapper-debug-state.mir
    M llvm/test/CodeGen/RISCV/memcpy.ll
    M llvm/test/CodeGen/X86/avx512f-large-stack.ll
    M llvm/test/CodeGen/X86/clmul-vector-256.ll
    M llvm/test/CodeGen/X86/clmul-vector-512.ll
    M llvm/test/CodeGen/X86/clmul-vector.ll
    A llvm/test/CodeGen/X86/huge-frame-index.ll
    M llvm/test/CodeGen/X86/pr1505b.ll
    A llvm/test/CodeGen/X86/pr216504.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/inline/id.ll
    M llvm/test/DebugInfo/Generic/inline-dbg-values.ll
    M llvm/test/DebugInfo/Generic/inline-debug-info-multiret.ll
    M llvm/test/DebugInfo/Generic/inline-debug-info.ll
    M llvm/test/DebugInfo/Generic/inline-no-debug-info.ll
    M llvm/test/DebugInfo/KeyInstructions/Generic/inline.ll
    M llvm/test/MC/AArch64/seh-large-func-multi-epilog.s
    M llvm/test/MC/AArch64/seh-large-func.s
    M llvm/test/MC/AArch64/seh.s
    M llvm/test/MC/AArch64/win-import-call-optimization.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop1_dpp16.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop1_dpp8.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop3_from_vop1.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop3_from_vop1_dpp16.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop3_from_vop1_dpp8.s
    M llvm/test/MC/ARM/seh.s
    M llvm/test/MC/COFF/addrsig.s
    M llvm/test/MC/COFF/align-nops.s
    M llvm/test/MC/COFF/basic-coff-64.s
    M llvm/test/MC/COFF/basic-coff.s
    M llvm/test/MC/COFF/bss.s
    M llvm/test/MC/COFF/cgprofile.s
    M llvm/test/MC/COFF/module-asm.ll
    M llvm/test/MC/COFF/section.s
    M llvm/test/MC/COFF/seh-align1.s
    M llvm/test/MC/COFF/seh-align2.s
    M llvm/test/MC/COFF/seh-align3.s
    M llvm/test/MC/COFF/seh-section.s
    M llvm/test/MC/COFF/seh.s
    M llvm/test/MC/COFF/symbol-fragment-offset-64.s
    M llvm/test/MC/COFF/symbol-fragment-offset.s
    M llvm/test/MC/X86/win-import-call-optimization.s
    M llvm/test/Transforms/CodeExtractor/PartialInlineDebug.ll
    M llvm/test/Transforms/CodeExtractor/PartialInlineVarArgsDebug.ll
    M llvm/test/Transforms/ConstraintElimination/and-implied-by-operands.ll
    M llvm/test/Transforms/ConstraintElimination/induction-condition-in-loop-exit-postinc.ll
    A llvm/test/Transforms/ConstraintElimination/induction-exit-condition-or-and.ll
    M llvm/test/Transforms/ConstraintElimination/induction-relational-predicate-latch.ll
    M llvm/test/Transforms/ConstraintElimination/induction-symbolic-start-postinc.ll
    A llvm/test/Transforms/DeadStoreElimination/wide-pointer-index-offset.ll
    M llvm/test/Transforms/Inline/X86/inline-landing-pad.ll
    M llvm/test/Transforms/Inline/debug-invoke.ll
    M llvm/test/Transforms/Inline/dilocation-loop-metadata-update.ll
    M llvm/test/Transforms/Inline/inline_dbg_declare.ll
    M llvm/test/Transforms/InstCombine/NVPTX/nvvm-intrins.ll
    M llvm/test/Transforms/InstCombine/icmp-power2-and-icmp-shifted-mask.ll
    M llvm/test/Transforms/InstCombine/nested-select.ll
    M llvm/test/Transforms/InstCombine/overflow-mul.ll
    M llvm/test/Transforms/InstCombine/ptr-int-cast.ll
    M llvm/test/Transforms/InstCombine/saturating-add-sub.ll
    M llvm/test/Transforms/InstCombine/trunc.ll
    M llvm/test/Transforms/InstCombine/uadd-with-overflow.ll
    M llvm/test/Transforms/InstSimplify/call.ll
    M llvm/test/Transforms/InstSimplify/const-fold-nvvm-add.ll
    M llvm/test/Transforms/InstSimplify/ptrtoint.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/wide-vscale-range-max-runtime-vf.ll
    M llvm/test/Transforms/LoopVectorize/replicate-region-branch-weights.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/loop-accumulator-reduction.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/many-uses-fma-candidate.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/splat-gather-subtree-store-chain.ll
    M llvm/test/Transforms/SLPVectorizer/AMDGPU/reduction.ll
    M llvm/test/Transforms/SLPVectorizer/X86/fma-operand-index.ll
    M llvm/test/Transforms/SLPVectorizer/X86/horizontal-fadd-with-sub.ll
    M llvm/test/Transforms/SLPVectorizer/X86/horizontal-list.ll
    M llvm/test/Transforms/SLPVectorizer/X86/loop-accumulator-reduction.ll
    M llvm/test/Transforms/SLPVectorizer/X86/ordered-reduction-replaced.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduction-fadd-reassoc.ll
    A llvm/test/Transforms/SLPVectorizer/X86/split-node-struct-type.ll
    M llvm/test/Transforms/SafeStack/ARM/debug.ll
    M llvm/test/Transforms/SampleProfile/pseudo-probe-emit-inline.ll
    A llvm/test/Transforms/SimplifyCFG/preserve-unpredictable-switch-create.ll
    A llvm/test/Verifier/NVPTX/fadd.ll
    A llvm/test/tools/gold/X86/Inputs/multiple-data-section-ordering.txt
    M llvm/test/tools/gold/X86/multiple-data.s
    M llvm/test/tools/gold/X86/multiple-sections.ll
    M llvm/test/tools/gold/lit.local.cfg
    M llvm/test/tools/llvm-ar/arm64x-split.yaml
    M llvm/test/tools/llvm-objcopy/COFF/add-gnu-debuglink.test
    M llvm/test/tools/llvm-objcopy/COFF/add-section-and-set-flags.test
    M llvm/test/tools/llvm-objcopy/COFF/empty-sections.s
    M llvm/test/tools/llvm-objcopy/COFF/only-keep-debug-rdata.test
    M llvm/test/tools/llvm-objcopy/COFF/only-keep-debug.test
    M llvm/test/tools/llvm-objcopy/COFF/update-section.test
    M llvm/test/tools/llvm-offload-wrapper/coff-opt-ref.ll
    M llvm/test/tools/llvm-readobj/COFF/arm64x-hybridobj.yaml
    M llvm/test/tools/llvm-readobj/COFF/bigobj.test
    M llvm/test/tools/llvm-readobj/COFF/sections-ext.test
    M llvm/test/tools/llvm-readobj/COFF/sections.test
    M llvm/test/tools/yaml2obj/COFF/xrelocs.yaml
    M llvm/tools/llvm-readobj/COFFDumper.cpp
    M llvm/unittests/Analysis/ValueTrackingTest.cpp
    M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
    M llvm/unittests/IR/IntrinsicsTest.cpp
    M mlir/include/mlir/Dialect/Tosa/Transforms/Passes.td
    M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaNarrowTypes.cpp
    M mlir/lib/Target/LLVMIR/Dialect/NVVM/NVVMToLLVMIRTranslation.cpp
    M mlir/test/Dialect/LLVMIR/nvvm.mlir
    A mlir/test/Dialect/Tosa/tosa-narrow-f32-to-f16-aggressive.mlir
    A mlir/test/Dialect/Tosa/tosa-narrow-f32-to-f16.mlir
    M mlir/test/Target/LLVMIR/nvvm/addf/addf.mlir
    M mlir/test/Target/LLVMIR/nvvm/addf/addf_invalid.mlir
    M mlir/test/Target/LLVMIR/nvvm/addf/addf_vector.mlir
    M mlir/test/Target/LLVMIR/nvvm/subf/subf.mlir
    M mlir/test/Target/LLVMIR/nvvm/subf/subf_invalid.mlir
    M mlir/test/Target/LLVMIR/nvvm/subf/subf_vector.mlir
    M orc-rt/CMakeLists.txt
    M orc-rt/lib/bedrock/CMakeLists.txt
    M orc-rt/lib/support/CMakeLists.txt
    A orc-rt/test/unit/BedrockTestUtils.h
    M orc-rt/test/unit/CMakeLists.txt
    M orc-rt/test/unit/CommonTestUtils.h
    M orc-rt/test/unit/bedrock/BootstrapInfoTest.cpp
    M orc-rt/test/unit/bedrock/InProcessControllerAccessTest.cpp
    M orc-rt/test/unit/bedrock/NativeDylibManagerTest.cpp
    M orc-rt/test/unit/bedrock/SessionTest.cpp
    M orc-rt/test/unit/bedrock/SimpleNativeMemoryMapTest.cpp
    M orc-rt/test/unit/bedrock/sps/NativeDylibManagerSPSCITest.cpp
    M orc-rt/test/unit/bedrock/sps/SimpleNativeMemoryMapSPSCITest.cpp
    M orc-rt/test/unit/bedrock/sps/SimpleRemoteCATest.cpp
    M orc-rt/test/unit/support/ProxyTest.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  Rebase

Created using spr 1.3.7


Compare: https://github.com/llvm/llvm-project/compare/ca6485493ddd...2bd26099ecf9

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