[all-commits] [llvm/llvm-project] 21fe3d: [X86] avx512vlfp16intrin.h.h - allow _mm_cvtsh_h/_...

Marco Elver via All-commits all-commits at lists.llvm.org
Tue Oct 7 11:25:47 PDT 2025


  Branch: refs/heads/users/melver/spr/main.alloctoken-clang-implement-typehashpointersplit-mode
  Home:   https://github.com/llvm/llvm-project
  Commit: 21fe3d1dbb7d2041498f43429e6f5804bb28383b
      https://github.com/llvm/llvm-project/commit/21fe3d1dbb7d2041498f43429e6f5804bb28383b
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M clang/lib/Headers/avx512vlfp16intrin.h
    M clang/test/CodeGen/X86/avx512vlfp16-builtins.c

  Log Message:
  -----------
  [X86] avx512vlfp16intrin.h.h - allow _mm_cvtsh_h/_mm256_cvtsh_h to be used in constexpr (#162275)

This was missed in the earlier f16c/fp16 constexpr patches


  Commit: f2de174ef9bae18a25671d3a51729bebe1385bb3
      https://github.com/llvm/llvm-project/commit/f2de174ef9bae18a25671d3a51729bebe1385bb3
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M llvm/test/Transforms/InstSimplify/ptrtoint.ll

  Log Message:
  -----------
  [InstSimplify] Add test for incorrect handling of wide pointers (NFC)

The intermediate integer type is too small to hold the full value.


  Commit: b717f839a3a3c205f7b254523569cefb9e8c999c
      https://github.com/llvm/llvm-project/commit/b717f839a3a3c205f7b254523569cefb9e8c999c
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M libcxx/include/any
    M libcxx/test/libcxx/transitive_includes/cxx26.csv
    R libcxx/test/libcxx/utilities/any/allocator.pass.cpp
    A libcxx/test/std/utilities/any/any.class/allocator.pass.cpp

  Log Message:
  -----------
  [libc++] Don't use std::allocator inside <any> (#161061)

There isn't much of a reason to use the allocator abstraction facilities
inside `<any>`. We can improve compile times a bit by avoiding them and
using `__libcpp_{,de}allocate` directly. IMO this also significantly
improves readability here.


  Commit: a798a104344deb8d30d6569564079fe06203d31d
      https://github.com/llvm/llvm-project/commit/a798a104344deb8d30d6569564079fe06203d31d
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M libcxx/include/__vector/vector_bool.h
    M libcxx/test/benchmarks/containers/sequence/vector_bool.bench.cpp

  Log Message:
  -----------
  [libc++] Optimize vector<bool>(const vector<bool>&) (#161672)

```
Benchmark                   Baseline    Candidate    Difference    % Difference
------------------------  ----------  -----------  ------------  --------------
BM_vector_bool_copy_ctor       56.93        10.93        -46.00          -80.80
BM_vector_bool_size_ctor        7.99         8.01          0.02            0.22
```


  Commit: 17efa572c3827fe12e37d0f1f28d20a8e44890c7
      https://github.com/llvm/llvm-project/commit/17efa572c3827fe12e37d0f1f28d20a8e44890c7
  Author: Lewis Crawford <lcrawford at nvidia.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/CodeGen/AMDGPU/fcanonicalize-elimination.ll
    M llvm/test/CodeGen/AMDGPU/fneg-combines.new.ll
    M llvm/test/Transforms/InstCombine/AMDGPU/fmed3.ll
    M llvm/test/Transforms/InstSimplify/fminmax-folds.ll

  Log Message:
  -----------
  [InstSimplify] Optimize maximumnum and minimumnum (#139581)

Add support for the new maximumnum and minimumnum intrinsics in various
optimizations in InstSimplify.

Also, change the behavior of optimizing maxnum(sNaN, x) to simplify to
qNaN instead of x to better match the LLVM IR spec, and add more tests
for sNaN behavior for all 3 max/min intrinsic types.


  Commit: 4154c1863f42d0eaafcc6d405e57fde369a97ef2
      https://github.com/llvm/llvm-project/commit/4154c1863f42d0eaafcc6d405e57fde369a97ef2
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M clang/lib/Sema/SemaConcept.cpp
    A clang/test/SemaCXX/GH161671.cpp

  Log Message:
  -----------
  [Clang] Fix another concept cache bug (#162272)

We previously failed to profile dependent CallExprs; this patch corrects
that behavior. We now also profile canonical types whenever possible,
since type sugar has little impact on hash computation.


  Commit: 2818df54a0084915e45f2116d8d362245df9c0e0
      https://github.com/llvm/llvm-project/commit/2818df54a0084915e45f2116d8d362245df9c0e0
  Author: Nico Weber <thakis at chromium.org>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/tools/llvm-profdata/BUILD.gn

  Log Message:
  -----------
  [gn] port 3f52eefcc2


  Commit: 2f66bcce13d85f82db8b56cd680a4851397bff34
      https://github.com/llvm/llvm-project/commit/2f66bcce13d85f82db8b56cd680a4851397bff34
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M llvm/docs/OptBisect.rst

  Log Message:
  -----------
  [llvm] Proofread OptBisect.rst (#162225)


  Commit: f7f49ee40e9e75983a8d36b0a5a91dbb50f3be06
      https://github.com/llvm/llvm-project/commit/f7f49ee40e9e75983a8d36b0a5a91dbb50f3be06
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

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

  Log Message:
  -----------
  [VPlan] Improve code around WidenPHI's constructor (NFC) (#162277)


  Commit: 107940f3bea8c37033f3ada2a10169b29993acb3
      https://github.com/llvm/llvm-project/commit/107940f3bea8c37033f3ada2a10169b29993acb3
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

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

  Log Message:
  -----------
  [VPlan] Improve binary matchers in two places (NFC) (#162268)


  Commit: b94a66d08fb3e8e74b52248ec989f607554a24aa
      https://github.com/llvm/llvm-project/commit/b94a66d08fb3e8e74b52248ec989f607554a24aa
  Author: Michael Liao <michael.hliao at gmail.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.h

  Log Message:
  -----------
  [clang] Fix '-Woverloaded-virtual='. NFC


  Commit: 8498a097b8089022e40742c749a85a3ff5237afa
      https://github.com/llvm/llvm-project/commit/8498a097b8089022e40742c749a85a3ff5237afa
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M llvm/utils/gn/secondary/bolt/lib/Passes/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 32eaf5b59c2d


  Commit: 7bcbdc5b0ddc6d48209e50fac1608841461b1a96
      https://github.com/llvm/llvm-project/commit/7bcbdc5b0ddc6d48209e50fac1608841461b1a96
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/TargetProcess/BUILD.gn

  Log Message:
  -----------
  [gn build] Port e05d80ec7b8b


  Commit: 0797bb7bdd5609eff06d0428bd45b0bf86eb6f54
      https://github.com/llvm/llvm-project/commit/0797bb7bdd5609eff06d0428bd45b0bf86eb6f54
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/tools/llvm-reduce/BUILD.gn

  Log Message:
  -----------
  [gn build] Port ff394cd0f675


  Commit: 6ae658308919e1c01cb4221f8cd07365c7ce6fc2
      https://github.com/llvm/llvm-project/commit/6ae658308919e1c01cb4221f8cd07365c7ce6fc2
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/LiveRangeEdit.h
    M llvm/lib/CodeGen/InlineSpiller.cpp
    M llvm/lib/CodeGen/LiveRangeEdit.cpp
    M llvm/lib/CodeGen/SplitKit.cpp

  Log Message:
  -----------
  [CodeGen] Finish untangling LRE::scanRemattable [nfc] (#161963)

This is an attempt to simplify the rematerialization logic in
InlineSpiller and SplitKit. I'd earlier done the same for
RegisterCoalescer in 57b673.

The basic idea of this change is that we don't need to check whether an
instruction is rematerializable early. Instead, we can defer the check
to the point where we're actually trying to materialize something. We
also don't need to indirect that query through a VNI key, and can
instead just check the instruction directly at the use site.


  Commit: 459472eef056ba5119a5da37a5cbb789fac531ae
      https://github.com/llvm/llvm-project/commit/459472eef056ba5119a5da37a5cbb789fac531ae
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

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

  Log Message:
  -----------
  [LRE] Adjust order of cases in eliminateDeadDefs (#162108)

If we have a rematerializable instruction without live virtual register
uses (that we didn't heuristically decide to shrink), but with a physreg
use, we were creating a kill to keep the physreg operand liveness
unchanged. This meant we *weren't* keeping around the remat instruction,
and thus inhibiting future remat within the original live interval. If
we keep the remat instruction, that *also* keeps the physreg use, and
thus we can achieve both objectives at once.

Noticed this via inspection, and we don't currently seem to have any
rematerializable instructions which could observe the difference. This
could in theory happen for both trivial and non-trivial remat, but
requires the rematerialization of an instruction with a physreg use.


  Commit: 95144b176fd12c882d50dfe7330cbce667744930
      https://github.com/llvm/llvm-project/commit/95144b176fd12c882d50dfe7330cbce667744930
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

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

  Log Message:
  -----------
  [NFC][DFAJT] Place `cl::opt`s in the llvm namespace (#162212)

Along the lines of [#161240](vscode-file://vscode-app/Applications/Visual%20Studio%20Code.app/Contents/Resources/app/out/vs/code/electron-browser/workbench/workbench.html "Open Issue or Pull Request #161240 on GitHub")


  Commit: 7e3080f0c197316ff06725c446bc59e67f80f069
      https://github.com/llvm/llvm-project/commit/7e3080f0c197316ff06725c446bc59e67f80f069
  Author: Boaz Brickner <brickner at google.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M clang/include/clang/Sema/Overload.h
    M clang/lib/Sema/SemaOverload.cpp

  Log Message:
  -----------
  [clang] Mark `OverloadCandidateSet::OperatorRewriteInfo` methods as const (#162271)

They don't mutate the object and this makes them easier to use and
allows better const correctness when using Clang as a library.


  Commit: b36e762cdb2e90e29f65c7abffc00541addfed3f
      https://github.com/llvm/llvm-project/commit/b36e762cdb2e90e29f65c7abffc00541addfed3f
  Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M llvm/include/llvm/Support/CrashRecoveryContext.h

  Log Message:
  -----------
  [llvm][NFC] Remove a couple unused member functions in `CrashRecoveryContext` (#162246)

They're not used anywhere, and don't really offer anything beyond the
functions they wrap.


  Commit: 6d44b9082e42b918a152098ec70ed409c4da8c79
      https://github.com/llvm/llvm-project/commit/6d44b9082e42b918a152098ec70ed409c4da8c79
  Author: Joel E. Denny <jdenny.ornl at gmail.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M llvm/lib/Transforms/Utils/LoopUnrollRuntime.cpp
    M llvm/test/DebugInfo/KeyInstructions/Generic/loop-unroll-runtime.ll
    M llvm/test/Transforms/HardwareLoops/ARM/structure.ll
    M llvm/test/Transforms/LoopUnroll/AArch64/apple-unrolling.ll
    M llvm/test/Transforms/LoopUnroll/AArch64/runtime-unroll-generic.ll
    M llvm/test/Transforms/LoopUnroll/AArch64/vector.ll
    M llvm/test/Transforms/LoopUnroll/AMDGPU/unroll-runtime.ll
    M llvm/test/Transforms/LoopUnroll/ARM/multi-blocks.ll
    M llvm/test/Transforms/LoopUnroll/Hexagon/reuse-lcssa-phi-scev-expansion.ll
    M llvm/test/Transforms/LoopUnroll/PowerPC/p8-unrolling-legalize-vectors-inseltpoison.ll
    M llvm/test/Transforms/LoopUnroll/PowerPC/p8-unrolling-legalize-vectors.ll
    M llvm/test/Transforms/LoopUnroll/RISCV/vector.ll
    M llvm/test/Transforms/LoopUnroll/WebAssembly/basic-unrolling.ll
    M llvm/test/Transforms/LoopUnroll/convergent.controlled.ll
    M llvm/test/Transforms/LoopUnroll/followup.ll
    M llvm/test/Transforms/LoopUnroll/runtime-epilog-debuginfo.ll
    M llvm/test/Transforms/LoopUnroll/runtime-exit-phi-scev-invalidation.ll
    M llvm/test/Transforms/LoopUnroll/runtime-i128.ll
    M llvm/test/Transforms/LoopUnroll/runtime-loop-at-most-two-exits.ll
    M llvm/test/Transforms/LoopUnroll/runtime-loop-branchweight.ll
    M llvm/test/Transforms/LoopUnroll/runtime-loop-multiple-exits.ll
    M llvm/test/Transforms/LoopUnroll/runtime-loop.ll
    M llvm/test/Transforms/LoopUnroll/runtime-loop1.ll
    M llvm/test/Transforms/LoopUnroll/runtime-loop2.ll
    M llvm/test/Transforms/LoopUnroll/runtime-loop5.ll
    M llvm/test/Transforms/LoopUnroll/runtime-multiexit-heuristic.ll
    M llvm/test/Transforms/LoopUnroll/runtime-unroll-assume-no-remainder.ll
    M llvm/test/Transforms/LoopUnroll/runtime-unroll-reductions.ll
    M llvm/test/Transforms/LoopUnroll/runtime-unroll-remainder.ll
    M llvm/test/Transforms/LoopUnroll/scev-invalidation-lcssa.ll
    M llvm/test/Transforms/LoopUnroll/tripcount-overflow.ll
    M llvm/test/Transforms/LoopUnroll/unroll-heuristics-pgo.ll
    M llvm/test/Transforms/LoopUnroll/unroll-loads-cse.ll
    M llvm/test/Transforms/LoopUnrollAndJam/dependencies_visit_order.ll
    M llvm/test/Transforms/LoopUnrollAndJam/followup.ll
    M llvm/test/Transforms/LoopUnrollAndJam/unroll-and-jam.ll
    M llvm/test/Transforms/LoopVectorize/X86/float-induction-x86.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/extra-unroll-simplifications.ll

  Log Message:
  -----------
  [LoopUnroll] Skip remainder loop guard if skip unrolled loop (#156549)

The original loop (OL) that serves as input to LoopUnroll has basic
blocks that are arranged as follows:

```
OLPreHeader
OLHeader <-.
...        |
OLLatch ---'
OLExit
```

In this depiction, every block has an implicit edge to the next block
below, so any explicit edge indicates a conditional branch.

Given OL and unroll count N, LoopUnroll sometimes creates an unrolled
loop (UL) with a remainder loop (RL) epilogue arranged like this:

```
,-- ULGuard
|   ULPreHeader
|   ULHeader <-.
|   ...        |
|   ULLatch ---'
|   ULExit
`-> RLGuard -----.
    RLPreHeader  |
,-> RLHeader     |
|   ...          |
`-- RLLatch      |
    RLExit       |
    OLExit <-----'
```

Each UL iteration executes N OL iterations, but each RL iteration
executes 1 OL iteration. ULGuard or RLGuard checks whether the first
iteration of UL or RL should execute, respectively. If so, ULLatch or
RLLatch checks whether to execute each subsequent iteration.

Once reached, OL always executes its first iteration but not necessarily
the next N-1 iterations. Thus, ULGuard is always required before the
first UL iteration. However, when control flows from ULGuard directly to
RLGuard, the first OL iteration has yet to execute, so RLGuard is then
redundant before the first RL iteration.

Thus, this patch makes the following changes:
- Adjust ULGuard to branch to RLPreHeader instead of RLGuard, thus
eliminating RLGuard's unnecessary branch instruction for that path.
- Eliminate the creation of RLGuard phi node poison values. Without this
patch, RLGuard has such a phi node for each value that is defined by any
OL iteration and used in OLExit. The poison value is required where
ULGuard is the predecessor. The poison value indicates that control flow
from ULGuard to RLGuard to Exit has no counterpart in OL because the
first OL iteration must execute either in UL or RL.
- Simplify the CFG by not splitting ULExit and RLGuard because, without
the ULGuard predecessor, the single block can now be a dedicated UL
exit.
- To RLPreHeader, add an `llvm.assume` call that asserts the RL trip
count is non-zero. Without this patch, RLPreHeader is reachable only
when RLGuard guarantees that assertion is true. With this patch, RLGuard
guarantees it only when RLGuard is the predecessor, and the OL structure
guarantees it when ULGuard is the predecessor. If RL itself is unrolled
later, this guarantee somehow prevents ScalarEvolution from giving up
when trying to compute a maximum trip count for RL. That maximum trip
count enables the branch instruction in the final unrolled instance of
RLLatch to be eliminated. Without the `llvm.assume` call, some existing
unroll tests start to fail because that instruction is not eliminated.

The original motivation for this patch is to facilitate later patches
that fix LoopUnroll's computation of branch weights so that they
maintain the block frequency of OL's body (see #135812). Specifically,
this patch ensures RLGuard's branch weights do not affect RL's
contribution to the block frequency of OL's body in the case that
ULGuard skips UL.


  Commit: 01f4510118b8a9a3ca1f7f1e4b19bd2e918c7dc0
      https://github.com/llvm/llvm-project/commit/01f4510118b8a9a3ca1f7f1e4b19bd2e918c7dc0
  Author: AMS21 <AMS21.github at gmail.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm-c/Core.h
    M llvm/lib/IR/Core.cpp
    M llvm/unittests/IR/FunctionTest.cpp

  Log Message:
  -----------
  [LLVM-C] Upstream `LLVMGetOrInsertFunction` from rustc (#162235)

Add `LLVMGetOrInsertFunction` to the C API as a thin wrapper over
`Module::getOrInsertFunction`, upstreamed from
[rustc](https://github.com/rust-lang/rust/blob/d773bd07d63a74adcf25ea5f4aae986be94cac5e/compiler/rustc_llvm/llvm-wrapper/RustWrapper.cpp#L203).
It provides a single-call way to get or create a function declaration,
avoiding `LLVMGetNamedFunction` + `LLVMAddFunction` and is more
idiomatic.


  Commit: b256d0a7aa00079e7ff0e64d52b8055ed6440682
      https://github.com/llvm/llvm-project/commit/b256d0a7aa00079e7ff0e64d52b8055ed6440682
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

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

  Log Message:
  -----------
  [NFC][LLVM] Cleanup namespace usage in DFAJumpThreading.cpp (#162179)


  Commit: 3f6240775501945fd36f7b66fb23de0648b07f90
      https://github.com/llvm/llvm-project/commit/3f6240775501945fd36f7b66fb23de0648b07f90
  Author: ravil-mobile <ravil.aviva.com at gmail.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
    M mlir/test/Dialect/LLVMIR/rocdl.mlir
    M mlir/test/Target/LLVMIR/rocdl.mlir

  Log Message:
  -----------
  [ROCDL] Added rocdl.cvt.scale.sr.pk8 ops (#162244)

This patch introduces some missing FP conversion instructions in the
ROCDL dialect for the GFX1250 arch.

Specifically:

Downscaling 8x packed F16, Bf16, Fp32 values to Fp8, Bf8, Fp4 with
stochastic rounding
Tests:

Added lit-tests to check MLIR -> LLVM lowering


  Commit: e40ff72df1b0e03b17e2abad40c4b97e7ae447d7
      https://github.com/llvm/llvm-project/commit/e40ff72df1b0e03b17e2abad40c4b97e7ae447d7
  Author: Dan Blackwell <dan_blackwell at apple.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M compiler-rt/test/tsan/Darwin/os_unfair_lock.c

  Log Message:
  -----------
  [TSan][test-only] Make TSan os_unfair_lock.c test check the weak symbol before usage (#161173)

The os_unfair_lock.c test can currently fail with a null dereference if
compiled on a platform with `os_unfair_lock_lock_with_flags`, but then
executed on a platform without the function.

This patch fixes this by first checking whether the symbol exists, and
falls back to `os_unfair_lock_lock` if not.

rdar://160596542


  Commit: 7e5bb1e58a5c1c96974f7984bd1a2d70bc360d4f
      https://github.com/llvm/llvm-project/commit/7e5bb1e58a5c1c96974f7984bd1a2d70bc360d4f
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M clang/test/CodeGen/catch-nullptr-and-nonzero-offset.c
    M clang/test/CodeGenCXX/builtin-invoke.cpp
    M llvm/include/llvm/IR/InstrTypes.h
    M llvm/lib/Analysis/ConstantFolding.cpp
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/IR/ConstantFold.cpp
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/test/Assembler/ConstantExprFold.ll
    M llvm/test/Transforms/GlobalOpt/cleanup-pointer-root-users-gep-constexpr.ll
    M llvm/test/Transforms/InstSimplify/ptrtoint.ll
    M llvm/test/Transforms/LowerTypeTests/simple.ll
    M llvm/test/Transforms/SCCP/binaryops-constexprs.ll
    M llvm/unittests/IR/InstructionsTest.cpp

  Log Message:
  -----------
  [IR] Require DataLayout for pointer cast elimination (#162279)

isEliminableCastPair() currently tries to support elimination of
ptrtoint/inttoptr cast pairs by assuming that the maximum possible
pointer size is 64 bits. Of course, this is no longer the case nowadays.

This PR changes isEliminableCastPair() to accept an optional DataLayout
argument, which is required to eliminate pointer casts.

This means that we no longer eliminate these cast pairs during ConstExpr
construction, and instead only do it during DL-aware constant folding.
This had a lot of annoying fallout on tests, most of which I've
addressed in advance of this change.


  Commit: b98ac0698129e422870260d7ca98f2edd6227aed
      https://github.com/llvm/llvm-project/commit/b98ac0698129e422870260d7ca98f2edd6227aed
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M clang/lib/Basic/Diagnostic.cpp

  Log Message:
  -----------
  [NFC][clang] Don't sort sections of SpecialCaseList (#162166)

Sorting was introduced in #112517.

But it's not needed after #140127. `SpecialCaseList` stores
sections in a vector now, to preserve declaration order.

And don't remove default section, just skip it.
Probably faster, but unlikely makes a difference.


  Commit: 5960f5cf550cfd5376a18d0f2c551422d302f919
      https://github.com/llvm/llvm-project/commit/5960f5cf550cfd5376a18d0f2c551422d302f919
  Author: Andrew Haberlandt <ndrewh at users.noreply.github.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
    M compiler-rt/lib/tsan/rtl/tsan_platform_mac.cpp

  Log Message:
  -----------
  [sanitizers][Darwin][NFC] Insert missing void* casts for printf %p (#161282)

Add some missing void* casts where we were passing an int for %p on some
platforms.

rdar://161174839


  Commit: 2499fe1ac40f7a50e71bf93c26921f93df2bcc52
      https://github.com/llvm/llvm-project/commit/2499fe1ac40f7a50e71bf93c26921f93df2bcc52
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    R clang/docs/ClangOffloadPackager.rst
    M clang/lib/Driver/Action.cpp
    M clang/lib/Driver/ToolChains/Clang.h
    M clang/test/CMakeLists.txt
    M clang/test/Driver/amdgpu-openmp-sanitize-options.c
    M clang/test/Driver/amdgpu-openmp-toolchain.c
    M clang/test/Driver/cuda-phases.cu
    M clang/test/Driver/hip-phases.hip
    M clang/test/Driver/hip-toolchain-no-rdc.hip
    M clang/test/Driver/linker-wrapper-image.c
    M clang/test/Driver/linker-wrapper.c
    M clang/test/Driver/offload-packager.c
    M clang/test/Driver/openmp-offload-gpu.c
    M clang/test/Driver/openmp-offload-jit.c
    M clang/test/Driver/openmp-offload.c
    M clang/test/Driver/spirv-openmp-toolchain.c
    M clang/test/Driver/sycl-offload-jit.cpp
    M clang/test/Tooling/clang-linker-wrapper-spirv-elf.cpp
    M clang/test/lit.cfg.py
    M clang/tools/CMakeLists.txt
    R clang/tools/clang-offload-packager/CMakeLists.txt
    R clang/tools/clang-offload-packager/ClangOffloadPackager.cpp
    M flang/test/Driver/omp-driver-offload.f90
    M llvm/docs/CommandGuide/index.rst
    A llvm/docs/CommandGuide/llvm-offload-binary.rst
    M llvm/runtimes/CMakeLists.txt
    M llvm/test/CMakeLists.txt
    A llvm/test/tools/llvm-offload-binary/llvm-offload-binary.ll
    A llvm/tools/llvm-offload-binary/CMakeLists.txt
    A llvm/tools/llvm-offload-binary/llvm-offload-binary.cpp
    R llvm/utils/gn/secondary/clang/tools/clang-offload-packager/BUILD.gn
    M llvm/utils/gn/secondary/clang/tools/driver/BUILD.gn

  Log Message:
  -----------
  [Offload] Rename and move 'clang-offload-packager' -> 'llvm-offload-binary' (#161438)

Summary:
This tool is pretty much a generic interface into creating and managing
the offloading binary format. The binary format itself is just a fat
binary block used to create heterogeneous objects. This should be made
more general than just `clang` since it's likely going to be used for
larger offloading projects and is the expected way to extract
heterogeneous objects from offloading code.

Relatively straightforward rename, a few tweaks and documentation
changes. Kept in `clang-offload-packager` for legacy compatibility as we
looked this tool up by name in places, will probably delete it next
release.


  Commit: ddef9ad6a11094277fe93ef1b9401b0739348b7f
      https://github.com/llvm/llvm-project/commit/ddef9ad6a11094277fe93ef1b9401b0739348b7f
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/CodeGen/CIRGenCXXABI.h
    M clang/lib/CIR/CodeGen/CIRGenCleanup.h
    M clang/lib/CIR/CodeGen/CIRGenException.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
    M clang/lib/CIR/CodeGen/EHScopeStack.h
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/test/CIR/CodeGen/throws.cpp

  Log Message:
  -----------
  [CIR] Upstream Exception ThrowOp with subexpr (#161818)

Upstream the support for ThrowOp with subexpr

Issue #154992


  Commit: 5821446d8746a75de9c5ce6f31bfc44b721df98b
      https://github.com/llvm/llvm-project/commit/5821446d8746a75de9c5ce6f31bfc44b721df98b
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/Dialect/IR/CIRTypeConstraints.td
    M clang/test/CIR/CodeGen/complex.cpp

  Log Message:
  -----------
  [CIR] Update ComplexReal/Imag Ops to work on boolean type (#161956)

Update ComplexRealOp and ComplexImagOp to work on the boolean type.

Issue #160568


  Commit: 7c5ad22878d014877f83e303e34e34e2ff77bc5c
      https://github.com/llvm/llvm-project/commit/7c5ad22878d014877f83e303e34e34e2ff77bc5c
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M clang/lib/Basic/SanitizerSpecialCaseList.cpp
    M llvm/include/llvm/Support/SpecialCaseList.h
    M llvm/lib/Support/SpecialCaseList.cpp

  Log Message:
  -----------
  [NFC][SpecialCaseList] Remove unnecessary indirection (#162211)


  Commit: 6267e7176d0225bb79ec1456aa66b7041b694e11
      https://github.com/llvm/llvm-project/commit/6267e7176d0225bb79ec1456aa66b7041b694e11
  Author: James Y Knight <jyknight at google.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

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

  Log Message:
  -----------
  Bazel: fix after "[llvm-driver] Remove llvm-profdata from the driver (#162191)"


  Commit: 2f4275b195af536dd81f9eb0dee17169a5a3063b
      https://github.com/llvm/llvm-project/commit/2f4275b195af536dd81f9eb0dee17169a5a3063b
  Author: James Y Knight <jyknight at google.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

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

  Log Message:
  -----------
  AMDGPU: skip AMDGPUAttributor and AMDGPUImageIntrinsicOptimizerPass on R600. (#162207)

These passes call `getSubtarget<GCNSubtarget>`, which doesn't work on
R600 targets, as that uses an `R600Subtarget` type, instead.
Unfortunately, `TargetMachine::getSubtarget<ST>` does an unchecked
static_cast to `ST&`, which makes it easy for this error to go
undetected.

The modifications here were verified by running check-llvm with an
assert added to getSubtarget. However, that asssert requires that RTTI
is enabled, which LLVM doesn't use, so I've reverted the assert before
sending this fix upstream.

These errors have been present for some time, but were detected after
#162040 caused an uninitialized memory read to be reported by asan/msan.


  Commit: 051fa18cb4e3dd69754e0f6e0c5733960c0aaa60
      https://github.com/llvm/llvm-project/commit/051fa18cb4e3dd69754e0f6e0c5733960c0aaa60
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-10-08 (Wed, 08 Oct 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
    M llvm/test/CodeGen/AMDGPU/addrspacecast-constantexpr.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa-call.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features.ll
    M llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit-undefined-behavior.ll
    M llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit.ll
    M llvm/test/CodeGen/AMDGPU/direct-indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/duplicate-attribute-indirect.ll
    M llvm/test/CodeGen/AMDGPU/implicitarg-offset-attributes.ll
    M llvm/test/CodeGen/AMDGPU/indirect-call-set-from-other-function.ll
    M llvm/test/CodeGen/AMDGPU/issue120256-annotate-constexpr-addrspacecast.ll
    M llvm/test/CodeGen/AMDGPU/propagate-flat-work-group-size.ll
    M llvm/test/CodeGen/AMDGPU/propagate-waves-per-eu.ll
    M llvm/test/CodeGen/AMDGPU/recursive_global_initializer.ll
    M llvm/test/CodeGen/AMDGPU/remove-no-kernel-id-attribute.ll
    M llvm/test/CodeGen/AMDGPU/simple-indirect-call-2.ll
    M llvm/test/CodeGen/AMDGPU/simple-indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-attribute-missing.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-multistep.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-nested-function-calls.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-prevent-attribute-propagation.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-propagate-attribute.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-recursion-test.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-test.ll

  Log Message:
  -----------
  AMDGPU: Stop inferring amdgpu-agpr-alloc on irrelevant targets (#161957)

This only matters for subtargets with configurable AGPR allocation.


  Commit: 278a99e8e9f0baf17b99f4989d2bfa3777fa4d6f
      https://github.com/llvm/llvm-project/commit/278a99e8e9f0baf17b99f4989d2bfa3777fa4d6f
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M llvm/lib/Transforms/Scalar/DFAJumpThreading.cpp
    M llvm/test/Transforms/DFAJumpThreading/dfa-jump-threading-analysis.ll
    M llvm/test/Transforms/DFAJumpThreading/dfa-jump-threading-transform.ll
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [DFAJT][profcheck] Propagate `select` -> `br` profile metadata (#162213)

Issue #147390


  Commit: 93097b2d47c87bf5eee0a2612d961c7a01831eab
      https://github.com/llvm/llvm-project/commit/93097b2d47c87bf5eee0a2612d961c7a01831eab
  Author: Maksim Levental <maksim.levental at gmail.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M .ci/all_requirements.txt
    M mlir/cmake/modules/AddMLIRPython.cmake
    M mlir/cmake/modules/MLIRDetectPythonEnv.cmake
    M mlir/docs/Dialects/Linalg/OpDSL.md
    M mlir/examples/standalone/pyproject.toml
    M mlir/examples/standalone/python/CMakeLists.txt
    A mlir/examples/standalone/python/StandaloneExtensionPybind11.cpp
    A mlir/examples/standalone/python/mlir_standalone/dialects/standalone_pybind11.py
    M mlir/examples/standalone/test/python/smoketest.py
    A mlir/include/mlir/Bindings/Python/PybindAdaptors.h
    M mlir/python/CMakeLists.txt
    M mlir/python/mlir/dialects/python_test.py
    M mlir/python/requirements.txt
    M mlir/test/python/dialects/python_test.py
    M mlir/test/python/lib/CMakeLists.txt
    A mlir/test/python/lib/PythonTestModulePybind11.cpp
    M mlir/tools/mlir-linalg-ods-gen/update_core_linalg_named_ops.sh.in
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  Revert "[MLIR][Python] use `FetchContent_Declare` for nanobind and remove pybind (#161230)" (#162309)

This reverts commit 84a214856ad989f37af19f5e8aaa9ec2346dde6f.

This gives us more time to work out the alternative and also people to
migrate


  Commit: a280db60c8cc8f10225fee3e2385ff1704528b6e
      https://github.com/llvm/llvm-project/commit/a280db60c8cc8f10225fee3e2385ff1704528b6e
  Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/DSInstructions.td
    M llvm/lib/Target/AMDGPU/FLATInstructions.td
    M llvm/test/CodeGen/AMDGPU/atomic_load_local.ll
    M llvm/test/CodeGen/AMDGPU/atomic_store_local.ll
    M llvm/test/CodeGen/AMDGPU/bf16.ll
    M llvm/test/CodeGen/AMDGPU/calling-conventions.ll
    M llvm/test/CodeGen/AMDGPU/fptrunc.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.rcp.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.rsq.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tanh.ll
    M llvm/test/CodeGen/AMDGPU/min.ll
    M llvm/test/CodeGen/AMDGPU/minmax.ll

  Log Message:
  -----------
  [AMDGPU] Use true16 loads with +real-true16 and sram-ecc (#161256)

When sram-ecc is enabled 16-bit loads clobber full 32-bit VGPR.
A load into a just 16-bit VGPR is not possible. Do a 16-bit
extending load and extract a 16-bit subreg in this situation.

Also fixes lack of 16-bit store patterns with this combination.

Fixes: SC1-6072


  Commit: f43721a4185c75b2800e59c102778916dca31c5c
      https://github.com/llvm/llvm-project/commit/f43721a4185c75b2800e59c102778916dca31c5c
  Author: Andrey Ali Khan Bolshakov <bolsh.andrey at yandex.ru>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/DeclPrinter.cpp
    M clang/test/AST/ast-print-record-decl.c
    M clang/unittests/AST/DeclPrinterTest.cpp

  Log Message:
  -----------
  [clang][AST] Pretty-print default template template args (#162134)


  Commit: 09f0f38f3622eacf4320ba5ac28972012d1e818c
      https://github.com/llvm/llvm-project/commit/09f0f38f3622eacf4320ba5ac28972012d1e818c
  Author: jiang1997 <jieke at live.cn>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenCXXABI.cpp
    M clang/lib/CIR/CodeGen/CIRGenCXXABI.h
    M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/test/CIR/CodeGen/new.cpp

  Log Message:
  -----------
  [CIR] Add limited support for array new (#161095)

This change adds initial support for array new expressions where the
array size is constant and the element does not require a cookie.

Ported from ClangIR incubator PR [#1286
](https://github.com/llvm/clangir/pull/1286).
This is the first PR in a series intended to close #160383.


  Commit: f0ae4b3bd2daac4ba5aea616b9481e59e0b63293
      https://github.com/llvm/llvm-project/commit/f0ae4b3bd2daac4ba5aea616b9481e59e0b63293
  Author: James Y Knight <jyknight at google.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

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

  Log Message:
  -----------
  Bazel: fix after "[Offload] Rename and move clang-offload-packager -> llvm-offload-binary (#161438)"


  Commit: a0668a4915f70a920e0e691df5f4cf0946146b4a
      https://github.com/llvm/llvm-project/commit/a0668a4915f70a920e0e691df5f4cf0946146b4a
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/Dialect/IR/CIRTypeConstraints.td
    M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    A clang/test/CIR/IR/dynamic-cast.cir
    A clang/test/CIR/IR/invalid-dyn-cast.cir

  Log Message:
  -----------
  [CIR] Upstream DynamicCastOp (#161734)

This adds the dialect handling for CIR_DynamicCastOp and
CIR_DynamicCastInfoAttr. Support for generating these operations from
source will be added in a later change.


  Commit: f015c7fababe25766b5108adc392826969524658
      https://github.com/llvm/llvm-project/commit/f015c7fababe25766b5108adc392826969524658
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

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

  Log Message:
  -----------
  [NFC] Typo in EquivalenceClasses.h: determinstic->deterministic (#162314)


  Commit: ea02eda911960623bc6f79796e7757439ffdfa3b
      https://github.com/llvm/llvm-project/commit/ea02eda911960623bc6f79796e7757439ffdfa3b
  Author: Thurston Dang <thurston at google.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M compiler-rt/test/sanitizer_common/TestCases/Linux/getpwnam_r_invalid_user.cpp

  Log Message:
  -----------
  [sanitizer][test] Print result in getpwnam_r_invalid_user.cpp (#162217)

This test has been flaky failing on sanitizer-ppc64le-linux since at
least 9 days ago
(https://lab.llvm.org/buildbot/#/builders/72/builds/15257), but the
exact cause is unclear because the only output is that `assert(res == 0
|| res == ENOENT);` failed.

To aid debugging, this patch prints out the result of the `getpwnam_r`
call.


  Commit: 3fca16eee05f4ea5694755f83cf7cfb19f597b88
      https://github.com/llvm/llvm-project/commit/3fca16eee05f4ea5694755f83cf7cfb19f597b88
  Author: Anchu Rajendran S <asudhaku at amd.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M flang/test/Lower/OpenMP/atomic-control-options.f90

  Log Message:
  -----------
  [flang][mlir] Cleaning up the atomic-control testcase (#162149)

The testcase tests atomicupdate header which is not required for testing
atomic control attributes. This induces failures due to unrelated
changes (like changes in atomic update clauses). This PR removes the
unrelated test to keep it minimal.


  Commit: 88d9f699530c7c349ae266faad47687da2ee745e
      https://github.com/llvm/llvm-project/commit/88d9f699530c7c349ae266faad47687da2ee745e
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/HeatUtils.h
    M llvm/lib/Analysis/HeatUtils.cpp

  Log Message:
  -----------
  [NFC][LLVM] Code cleanup in Analysis/HeatUtils (#162283)

Follow LLVM Coding Standards for variable names, and remove `namespace
llvm` surrounding all the code.


  Commit: 3b14414cbdb8bd37ff861862a99a47104b87765b
      https://github.com/llvm/llvm-project/commit/3b14414cbdb8bd37ff861862a99a47104b87765b
  Author: nerix <nerixdev at outlook.de>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.h
    M lldb/test/Shell/SymbolFile/NativePDB/break-by-function.cpp
    M lldb/test/Shell/SymbolFile/NativePDB/break-by-line.cpp
    A lldb/test/Shell/SymbolFile/NativePDB/c-calling-conventions.cpp
    M lldb/test/Shell/SymbolFile/NativePDB/disassembly.cpp
    M lldb/test/Shell/SymbolFile/NativePDB/find-functions.cpp
    M lldb/test/Shell/SymbolFile/NativePDB/local-variables.cpp
    M lldb/test/Shell/SymbolFile/NativePDB/stack_unwinding01.cpp
    M lldb/test/Shell/SymbolFile/PDB/function-nested-block.test
    M lldb/test/Shell/SymbolFile/PDB/variables.test

  Log Message:
  -----------
  Reland "[LLDB][NativePDB] Create functions with mangled name" (#161678)

Relands #149701 which was reverted in
https://github.com/llvm/llvm-project/commit/185ae5cdc695248b58ae017508cc764c19bee5b7
because it broke demangling of Itanium symbols on i386.

The last commit in this PR adds the fix for this (discussed in #160930).
On x86 environments, the prefix of `__cdecl` functions will now be
removed to match DWARF. I opened #161676 to discuss this for the other
calling conventions.


  Commit: 675be0df29d305edd6137de7efcb85035028f731
      https://github.com/llvm/llvm-project/commit/675be0df29d305edd6137de7efcb85035028f731
  Author: Nico Weber <thakis at chromium.org>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M llvm/utils/gn/secondary/clang/test/BUILD.gn
    M llvm/utils/gn/secondary/llvm/test/BUILD.gn
    A llvm/utils/gn/secondary/llvm/tools/llvm-offload-binary/BUILD.gn

  Log Message:
  -----------
  [gn] port 2499fe1ac40f (llvm-offload-binary)

2499fe1ac40f did remove clang-offload-packager from the GN build,
but it didn't add the new tool. This commit does that.


  Commit: 6bbd7eaf0aa0b75b73d843d9f56ab6d7226018ef
      https://github.com/llvm/llvm-project/commit/6bbd7eaf0aa0b75b73d843d9f56ab6d7226018ef
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/LifetimeSafety.h
    M clang/lib/Analysis/LifetimeSafety.cpp
    A clang/lib/Analysis/LifetimeSafety.md
    M clang/test/Analysis/LifetimeSafety/benchmark.py
    M clang/test/Sema/warn-lifetime-safety.cpp
    M clang/unittests/Analysis/LifetimeSafetyTest.cpp

  Log Message:
  -----------
  [LifetimeSafety] Introduce a liveness-based lifetime policy (#159991)

This PR replaces the forward `ExpiredLoansAnalysis` with a backward
`LiveOriginAnalysis` that tracks which origins are live at each program
point, along with confidence levels (Definite or Maybe). The new
approach:

- Tracks liveness of origins rather than expiration of loans
- Uses a backward dataflow analysis to determine which origins are live
at each point.
- Provides more precise confidence levels for use-after-free warnings
and avoids previous false-positives

The `LifetimeChecker` now checks for use-after-free by examining if an
origin is live when a loan expires, rather than checking if a loan is
expired when an origin is used.

More details describing the design flaw in using `ExpiredLoans` is
mentioned in
https://github.com/llvm/llvm-project/issues/156959#issuecomment-3281917701

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

(With this, we can build LLVM with no false-positives 🎉 )

<details>

<summary>
Benchmark report
</summary>

# Lifetime Analysis Performance Report
> Generated on: 2025-09-24 13:08:03 

---

## Test Case: Pointer Cycle in Loop

**Timing Results:**

| N (Input Size) | Total Time | Analysis Time (%) | Fact Generator (%) |
Loan Propagation (%) | Live Origins (%) |

|:---------------|-----------:|------------------:|-------------------:|---------------------:|------------------:|
| 50 | 54.12 ms | 80.80% | 0.00% | 80.42% | 0.00% |
| 75 | 150.22 ms | 91.54% | 0.00% | 91.19% | 0.00% |
| 100 | 317.12 ms | 94.90% | 0.00% | 94.77% | 0.00% |
| 200 | 2.40 s | 98.58% | 0.00% | 98.54% | 0.03% |
| 300 | 9.85 s | 99.25% | 0.00% | 99.24% | 0.01% |

**Complexity Analysis:**

| Analysis Phase    | Complexity O(n<sup>k</sup>) | 
|:------------------|:--------------------------|
| Total Analysis    | O(n<sup>3.47</sup> ± 0.06) |
| FactGenerator     | (Negligible)              |
| LoanPropagation   | O(n<sup>3.47</sup> ± 0.06) |
| LiveOrigins       | (Negligible)              |

---

## Test Case: CFG Merges

**Timing Results:**

| N (Input Size) | Total Time | Analysis Time (%) | Fact Generator (%) |
Loan Propagation (%) | Live Origins (%) |

|:---------------|-----------:|------------------:|-------------------:|---------------------:|------------------:|
| 400 | 105.22 ms | 72.61% | 0.68% | 71.38% | 0.52% |
| 1000 | 610.74 ms | 88.88% | 0.33% | 88.32% | 0.23% |
| 2000 | 2.50 s | 95.32% | 0.21% | 94.99% | 0.11% |
| 5000 | 17.20 s | 98.20% | 0.14% | 98.01% | 0.05% |

**Complexity Analysis:**

| Analysis Phase    | Complexity O(n<sup>k</sup>) | 
|:------------------|:--------------------------|
| Total Analysis    | O(n<sup>2.14</sup> ± 0.00) |
| FactGenerator     | O(n<sup>1.59</sup> ± 0.05) |
| LoanPropagation   | O(n<sup>2.14</sup> ± 0.00) |
| LiveOrigins       | O(n<sup>1.19</sup> ± 0.04) |

---

## Test Case: Deeply Nested Loops

**Timing Results:**

| N (Input Size) | Total Time | Analysis Time (%) | Fact Generator (%) |
Loan Propagation (%) | Live Origins (%) |

|:---------------|-----------:|------------------:|-------------------:|---------------------:|------------------:|
| 50 | 141.95 ms | 91.14% | 0.00% | 90.99% | 0.00% |
| 100 | 1.09 s | 98.17% | 0.00% | 98.13% | 0.00% |
| 150 | 3.87 s | 99.28% | 0.00% | 99.27% | 0.00% |
| 200 | 9.81 s | 99.61% | 0.00% | 99.60% | 0.00% |

**Complexity Analysis:**

| Analysis Phase    | Complexity O(n<sup>k</sup>) | 
|:------------------|:--------------------------|
| Total Analysis    | O(n<sup>3.23</sup> ± 0.02) |
| FactGenerator     | (Negligible)              |
| LoanPropagation   | O(n<sup>3.23</sup> ± 0.02) |
| LiveOrigins       | (Negligible)              |

---

## Test Case: Switch Fan-out

**Timing Results:**

| N (Input Size) | Total Time | Analysis Time (%) | Fact Generator (%) |
Loan Propagation (%) | Live Origins (%) |

|:---------------|-----------:|------------------:|-------------------:|---------------------:|------------------:|
| 500 | 155.10 ms | 72.03% | 0.47% | 67.49% | 4.06% |
| 1000 | 568.40 ms | 85.60% | 0.24% | 80.53% | 4.83% |
| 2000 | 2.25 s | 93.00% | 0.13% | 86.99% | 5.88% |
| 4000 | 9.06 s | 96.62% | 0.10% | 89.68% | 6.84% |

**Complexity Analysis:**

| Analysis Phase    | Complexity O(n<sup>k</sup>) | 
|:------------------|:--------------------------|
| Total Analysis    | O(n<sup>2.07</sup> ± 0.01) |
| FactGenerator     | O(n<sup>1.52</sup> ± 0.13) |
| LoanPropagation   | O(n<sup>2.06</sup> ± 0.01) |
| LiveOrigins       | O(n<sup>2.23</sup> ± 0.00) |

---

<details>


  Commit: d09d63a7d53a0cda602944c5336ad8b8c10cd687
      https://github.com/llvm/llvm-project/commit/d09d63a7d53a0cda602944c5336ad8b8c10cd687
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M llvm/test/tools/llvm-offload-binary/llvm-offload-binary.ll
    M llvm/tools/llvm-offload-binary/llvm-offload-binary.cpp

  Log Message:
  -----------
  [Offload] Let binary utility take empty arguments (#162317)

Summary:
There's no real reason to restrict people if they don't want to use
`triple`. It's important for the normal pipeline but I can see people
using these for other purposes.


  Commit: c16d25282e7169cb8a19d9fa385cf7220dd65ac5
      https://github.com/llvm/llvm-project/commit/c16d25282e7169cb8a19d9fa385cf7220dd65ac5
  Author: nerix <nerixdev at outlook.de>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M lldb/test/Shell/SymbolFile/NativePDB/c-calling-conventions.cpp

  Log Message:
  -----------
  [LLDB] Require target-x86/x86_64 for MSVC C mangling test (#162335)

Fixes the test failure from
https://github.com/llvm/llvm-project/pull/161678#issuecomment-3377949862.


  Commit: 93f2e0a4433f5f7ede3aeccda0a44c8482c3022d
      https://github.com/llvm/llvm-project/commit/93f2e0a4433f5f7ede3aeccda0a44c8482c3022d
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M .ci/cache_lit_timing_files.py

  Log Message:
  -----------
  [CI] Make cache_lit_timing_files.py Script Gracefully Fail (#162316)

This is a performance optimization and does not impact test fidelity.
There have been some flakes where this script will fail to download
files, exit with code 1, causing the job to fail before it even starts
running tests. This is undesirable as the tests will only run 10-15%
slower without this, so catch the exceptions and emit a warning we can
track later in the rare case we cannot download the timing files.

This fixes #162294.


  Commit: 0cee4db636ae802e6d2ecf2e53c4538f3354736e
      https://github.com/llvm/llvm-project/commit/0cee4db636ae802e6d2ecf2e53c4538f3354736e
  Author: Marco Elver <elver at google.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M clang/include/clang/Basic/Sanitizers.def
    M clang/lib/CodeGen/CodeGenFunction.cpp

  Log Message:
  -----------
  [Clang][CodeGen] Introduce the AllocToken SanitizerKind (#162098)

Introduce the "alloc-token" sanitizer kind, in preparation of wiring it
up. Currently this is a no-op, and any attempt to enable it will result
in failure:

clang: error: unsupported option '-fsanitize=alloc-token' for target
'x86_64-unknown-linux-gnu'

In this step we can already wire up the `sanitize_alloc_token` IR
attribute where the instrumentation is enabled. Subsequent changes will
complete wiring up the AllocToken pass.

---

This change is part of the following series:
  1. https://github.com/llvm/llvm-project/pull/160131
  2. https://github.com/llvm/llvm-project/pull/156838
  3. https://github.com/llvm/llvm-project/pull/162098
  4. https://github.com/llvm/llvm-project/pull/162099
  5. https://github.com/llvm/llvm-project/pull/156839
  6. https://github.com/llvm/llvm-project/pull/156840
  7. https://github.com/llvm/llvm-project/pull/156841
  8. https://github.com/llvm/llvm-project/pull/156842


  Commit: 5e9458cd7c1b295700f89041a286bca1c5d2b6f1
      https://github.com/llvm/llvm-project/commit/5e9458cd7c1b295700f89041a286bca1c5d2b6f1
  Author: Marco Elver <elver at google.com>
  Date:   2025-10-07 (Tue, 07 Oct 2025)

  Changed paths:
    M .ci/all_requirements.txt
    M .ci/cache_lit_timing_files.py
    R clang/docs/ClangOffloadPackager.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Analysis/Analyses/LifetimeSafety.h
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/Dialect/IR/CIRTypeConstraints.td
    M clang/include/clang/Sema/Overload.h
    M clang/lib/AST/DeclPrinter.cpp
    M clang/lib/Analysis/LifetimeSafety.cpp
    A clang/lib/Analysis/LifetimeSafety.md
    M clang/lib/Basic/Diagnostic.cpp
    M clang/lib/Basic/SanitizerSpecialCaseList.cpp
    M clang/lib/CIR/CodeGen/CIRGenCXXABI.cpp
    M clang/lib/CIR/CodeGen/CIRGenCXXABI.h
    M clang/lib/CIR/CodeGen/CIRGenCleanup.h
    M clang/lib/CIR/CodeGen/CIRGenException.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
    M clang/lib/CIR/CodeGen/EHScopeStack.h
    M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.h
    M clang/lib/Driver/Action.cpp
    M clang/lib/Driver/ToolChains/Clang.h
    M clang/lib/Headers/avx512vlfp16intrin.h
    M clang/lib/Sema/SemaConcept.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/test/AST/ast-print-record-decl.c
    M clang/test/Analysis/LifetimeSafety/benchmark.py
    M clang/test/CIR/CodeGen/complex.cpp
    M clang/test/CIR/CodeGen/new.cpp
    M clang/test/CIR/CodeGen/throws.cpp
    A clang/test/CIR/IR/dynamic-cast.cir
    A clang/test/CIR/IR/invalid-dyn-cast.cir
    M clang/test/CMakeLists.txt
    M clang/test/CodeGen/X86/avx512vlfp16-builtins.c
    M clang/test/CodeGen/catch-nullptr-and-nonzero-offset.c
    M clang/test/CodeGenCXX/builtin-invoke.cpp
    M clang/test/Driver/amdgpu-openmp-sanitize-options.c
    M clang/test/Driver/amdgpu-openmp-toolchain.c
    M clang/test/Driver/cuda-phases.cu
    M clang/test/Driver/hip-phases.hip
    M clang/test/Driver/hip-toolchain-no-rdc.hip
    M clang/test/Driver/linker-wrapper-image.c
    M clang/test/Driver/linker-wrapper.c
    M clang/test/Driver/offload-packager.c
    M clang/test/Driver/openmp-offload-gpu.c
    M clang/test/Driver/openmp-offload-jit.c
    M clang/test/Driver/openmp-offload.c
    M clang/test/Driver/spirv-openmp-toolchain.c
    M clang/test/Driver/sycl-offload-jit.cpp
    M clang/test/Sema/warn-lifetime-safety.cpp
    A clang/test/SemaCXX/GH161671.cpp
    M clang/test/Tooling/clang-linker-wrapper-spirv-elf.cpp
    M clang/test/lit.cfg.py
    M clang/tools/CMakeLists.txt
    R clang/tools/clang-offload-packager/CMakeLists.txt
    R clang/tools/clang-offload-packager/ClangOffloadPackager.cpp
    M clang/unittests/AST/DeclPrinterTest.cpp
    M clang/unittests/Analysis/LifetimeSafetyTest.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
    M compiler-rt/lib/tsan/rtl/tsan_platform_mac.cpp
    M compiler-rt/test/sanitizer_common/TestCases/Linux/getpwnam_r_invalid_user.cpp
    M compiler-rt/test/tsan/Darwin/os_unfair_lock.c
    M flang/test/Driver/omp-driver-offload.f90
    M flang/test/Lower/OpenMP/atomic-control-options.f90
    M libcxx/include/__vector/vector_bool.h
    M libcxx/include/any
    M libcxx/test/benchmarks/containers/sequence/vector_bool.bench.cpp
    M libcxx/test/libcxx/transitive_includes/cxx26.csv
    R libcxx/test/libcxx/utilities/any/allocator.pass.cpp
    A libcxx/test/std/utilities/any/any.class/allocator.pass.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.h
    M lldb/test/Shell/SymbolFile/NativePDB/break-by-function.cpp
    M lldb/test/Shell/SymbolFile/NativePDB/break-by-line.cpp
    A lldb/test/Shell/SymbolFile/NativePDB/c-calling-conventions.cpp
    M lldb/test/Shell/SymbolFile/NativePDB/disassembly.cpp
    M lldb/test/Shell/SymbolFile/NativePDB/find-functions.cpp
    M lldb/test/Shell/SymbolFile/NativePDB/local-variables.cpp
    M lldb/test/Shell/SymbolFile/NativePDB/stack_unwinding01.cpp
    M lldb/test/Shell/SymbolFile/PDB/function-nested-block.test
    M lldb/test/Shell/SymbolFile/PDB/variables.test
    M llvm/docs/CommandGuide/index.rst
    A llvm/docs/CommandGuide/llvm-offload-binary.rst
    M llvm/docs/OptBisect.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm-c/Core.h
    M llvm/include/llvm/ADT/EquivalenceClasses.h
    M llvm/include/llvm/Analysis/HeatUtils.h
    M llvm/include/llvm/CodeGen/LiveRangeEdit.h
    M llvm/include/llvm/IR/InstrTypes.h
    M llvm/include/llvm/Support/CrashRecoveryContext.h
    M llvm/include/llvm/Support/SpecialCaseList.h
    M llvm/lib/Analysis/ConstantFolding.cpp
    M llvm/lib/Analysis/HeatUtils.cpp
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/CodeGen/InlineSpiller.cpp
    M llvm/lib/CodeGen/LiveRangeEdit.cpp
    M llvm/lib/CodeGen/SplitKit.cpp
    M llvm/lib/IR/ConstantFold.cpp
    M llvm/lib/IR/Core.cpp
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/Support/SpecialCaseList.cpp
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/DSInstructions.td
    M llvm/lib/Target/AMDGPU/FLATInstructions.td
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/lib/Transforms/Scalar/DFAJumpThreading.cpp
    M llvm/lib/Transforms/Utils/LoopUnrollRuntime.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/runtimes/CMakeLists.txt
    M llvm/test/Assembler/ConstantExprFold.ll
    M llvm/test/CMakeLists.txt
    M llvm/test/CodeGen/AMDGPU/addrspacecast-constantexpr.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa-call.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features.ll
    M llvm/test/CodeGen/AMDGPU/atomic_load_local.ll
    M llvm/test/CodeGen/AMDGPU/atomic_store_local.ll
    M llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit-undefined-behavior.ll
    M llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit.ll
    M llvm/test/CodeGen/AMDGPU/bf16.ll
    M llvm/test/CodeGen/AMDGPU/calling-conventions.ll
    M llvm/test/CodeGen/AMDGPU/direct-indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/duplicate-attribute-indirect.ll
    M llvm/test/CodeGen/AMDGPU/fcanonicalize-elimination.ll
    M llvm/test/CodeGen/AMDGPU/fneg-combines.new.ll
    M llvm/test/CodeGen/AMDGPU/fptrunc.f16.ll
    M llvm/test/CodeGen/AMDGPU/implicitarg-offset-attributes.ll
    M llvm/test/CodeGen/AMDGPU/indirect-call-set-from-other-function.ll
    M llvm/test/CodeGen/AMDGPU/issue120256-annotate-constexpr-addrspacecast.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.rcp.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.rsq.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tanh.ll
    M llvm/test/CodeGen/AMDGPU/min.ll
    M llvm/test/CodeGen/AMDGPU/minmax.ll
    M llvm/test/CodeGen/AMDGPU/propagate-flat-work-group-size.ll
    M llvm/test/CodeGen/AMDGPU/propagate-waves-per-eu.ll
    M llvm/test/CodeGen/AMDGPU/recursive_global_initializer.ll
    M llvm/test/CodeGen/AMDGPU/remove-no-kernel-id-attribute.ll
    M llvm/test/CodeGen/AMDGPU/simple-indirect-call-2.ll
    M llvm/test/CodeGen/AMDGPU/simple-indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-attribute-missing.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-multistep.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-nested-function-calls.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-prevent-attribute-propagation.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-propagate-attribute.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-recursion-test.ll
    M llvm/test/CodeGen/AMDGPU/uniform-work-group-test.ll
    M llvm/test/DebugInfo/KeyInstructions/Generic/loop-unroll-runtime.ll
    M llvm/test/Transforms/DFAJumpThreading/dfa-jump-threading-analysis.ll
    M llvm/test/Transforms/DFAJumpThreading/dfa-jump-threading-transform.ll
    M llvm/test/Transforms/GlobalOpt/cleanup-pointer-root-users-gep-constexpr.ll
    M llvm/test/Transforms/HardwareLoops/ARM/structure.ll
    M llvm/test/Transforms/InstCombine/AMDGPU/fmed3.ll
    M llvm/test/Transforms/InstSimplify/fminmax-folds.ll
    M llvm/test/Transforms/InstSimplify/ptrtoint.ll
    M llvm/test/Transforms/LoopUnroll/AArch64/apple-unrolling.ll
    M llvm/test/Transforms/LoopUnroll/AArch64/runtime-unroll-generic.ll
    M llvm/test/Transforms/LoopUnroll/AArch64/vector.ll
    M llvm/test/Transforms/LoopUnroll/AMDGPU/unroll-runtime.ll
    M llvm/test/Transforms/LoopUnroll/ARM/multi-blocks.ll
    M llvm/test/Transforms/LoopUnroll/Hexagon/reuse-lcssa-phi-scev-expansion.ll
    M llvm/test/Transforms/LoopUnroll/PowerPC/p8-unrolling-legalize-vectors-inseltpoison.ll
    M llvm/test/Transforms/LoopUnroll/PowerPC/p8-unrolling-legalize-vectors.ll
    M llvm/test/Transforms/LoopUnroll/RISCV/vector.ll
    M llvm/test/Transforms/LoopUnroll/WebAssembly/basic-unrolling.ll
    M llvm/test/Transforms/LoopUnroll/convergent.controlled.ll
    M llvm/test/Transforms/LoopUnroll/followup.ll
    M llvm/test/Transforms/LoopUnroll/runtime-epilog-debuginfo.ll
    M llvm/test/Transforms/LoopUnroll/runtime-exit-phi-scev-invalidation.ll
    M llvm/test/Transforms/LoopUnroll/runtime-i128.ll
    M llvm/test/Transforms/LoopUnroll/runtime-loop-at-most-two-exits.ll
    M llvm/test/Transforms/LoopUnroll/runtime-loop-branchweight.ll
    M llvm/test/Transforms/LoopUnroll/runtime-loop-multiple-exits.ll
    M llvm/test/Transforms/LoopUnroll/runtime-loop.ll
    M llvm/test/Transforms/LoopUnroll/runtime-loop1.ll
    M llvm/test/Transforms/LoopUnroll/runtime-loop2.ll
    M llvm/test/Transforms/LoopUnroll/runtime-loop5.ll
    M llvm/test/Transforms/LoopUnroll/runtime-multiexit-heuristic.ll
    M llvm/test/Transforms/LoopUnroll/runtime-unroll-assume-no-remainder.ll
    M llvm/test/Transforms/LoopUnroll/runtime-unroll-reductions.ll
    M llvm/test/Transforms/LoopUnroll/runtime-unroll-remainder.ll
    M llvm/test/Transforms/LoopUnroll/scev-invalidation-lcssa.ll
    M llvm/test/Transforms/LoopUnroll/tripcount-overflow.ll
    M llvm/test/Transforms/LoopUnroll/unroll-heuristics-pgo.ll
    M llvm/test/Transforms/LoopUnroll/unroll-loads-cse.ll
    M llvm/test/Transforms/LoopUnrollAndJam/dependencies_visit_order.ll
    M llvm/test/Transforms/LoopUnrollAndJam/followup.ll
    M llvm/test/Transforms/LoopUnrollAndJam/unroll-and-jam.ll
    M llvm/test/Transforms/LoopVectorize/X86/float-induction-x86.ll
    M llvm/test/Transforms/LowerTypeTests/simple.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/extra-unroll-simplifications.ll
    M llvm/test/Transforms/SCCP/binaryops-constexprs.ll
    A llvm/test/tools/llvm-offload-binary/llvm-offload-binary.ll
    A llvm/tools/llvm-offload-binary/CMakeLists.txt
    A llvm/tools/llvm-offload-binary/llvm-offload-binary.cpp
    M llvm/unittests/IR/FunctionTest.cpp
    M llvm/unittests/IR/InstructionsTest.cpp
    M llvm/utils/gn/secondary/bolt/lib/Passes/BUILD.gn
    M llvm/utils/gn/secondary/clang/test/BUILD.gn
    R llvm/utils/gn/secondary/clang/tools/clang-offload-packager/BUILD.gn
    M llvm/utils/gn/secondary/clang/tools/driver/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/TargetProcess/BUILD.gn
    M llvm/utils/gn/secondary/llvm/test/BUILD.gn
    A llvm/utils/gn/secondary/llvm/tools/llvm-offload-binary/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-profdata/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-reduce/BUILD.gn
    M llvm/utils/profcheck-xfail.txt
    M mlir/cmake/modules/AddMLIRPython.cmake
    M mlir/cmake/modules/MLIRDetectPythonEnv.cmake
    M mlir/docs/Dialects/Linalg/OpDSL.md
    M mlir/examples/standalone/pyproject.toml
    M mlir/examples/standalone/python/CMakeLists.txt
    A mlir/examples/standalone/python/StandaloneExtensionPybind11.cpp
    A mlir/examples/standalone/python/mlir_standalone/dialects/standalone_pybind11.py
    M mlir/examples/standalone/test/python/smoketest.py
    A mlir/include/mlir/Bindings/Python/PybindAdaptors.h
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
    M mlir/python/CMakeLists.txt
    M mlir/python/mlir/dialects/python_test.py
    M mlir/python/requirements.txt
    M mlir/test/Dialect/LLVMIR/rocdl.mlir
    M mlir/test/Target/LLVMIR/rocdl.mlir
    M mlir/test/python/dialects/python_test.py
    M mlir/test/python/lib/CMakeLists.txt
    A mlir/test/python/lib/PythonTestModulePybind11.cpp
    M mlir/tools/mlir-linalg-ods-gen/update_core_linalg_named_ops.sh.in
    M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/driver.bzl
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.8-beta.1

[skip ci]


Compare: https://github.com/llvm/llvm-project/compare/8502fcf65490...5e9458cd7c1b

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