[all-commits] [llvm/llvm-project] 916e6a: [CodeGen] Fix InstructionCount remarks for MI bund...

Fangrui Song via All-commits all-commits at lists.llvm.org
Fri Oct 11 21:39:43 PDT 2024


  Branch: refs/heads/users/aaupov/spr/main.boltnfc-speedup-batwritemaps
  Home:   https://github.com/llvm/llvm-project
  Commit: 916e6ad7d0608a1de6b570483a82509640b210b8
      https://github.com/llvm/llvm-project/commit/916e6ad7d0608a1de6b570483a82509640b210b8
  Author: Francis Visoiu Mistrih <890283+francisvm at users.noreply.github.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    A llvm/test/CodeGen/RISCV/instruction-count-remark.mir

  Log Message:
  -----------
  [CodeGen] Fix InstructionCount remarks for MI bundles (#107621)

For MI bundles, the instruction count remark doesn't count the
instructions inside the bundle.


  Commit: 45ad1ac4a343b95540c22d074a8ed8f17958505d
      https://github.com/llvm/llvm-project/commit/45ad1ac4a343b95540c22d074a8ed8f17958505d
  Author: Christopher Di Bella <cjdb at google.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/SelectionDAG.h
    M llvm/include/llvm/Passes/StandardInstrumentations.h
    M llvm/include/llvm/Support/GenericDomTreeConstruction.h
    M llvm/include/llvm/Transforms/Scalar/JumpThreading.h
    M llvm/include/llvm/Transforms/Scalar/LoopPassManager.h
    M llvm/include/llvm/Transforms/Utils/ScalarEvolutionExpander.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/Passes/StandardInstrumentations.cpp
    M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
    M mlir/include/mlir/Analysis/Presburger/PresburgerSpace.h
    M mlir/include/mlir/Dialect/Transform/Interfaces/TransformInterfaces.h
    M mlir/include/mlir/IR/PDLPatternMatch.h.inc
    M mlir/lib/Dialect/Transform/Interfaces/TransformInterfaces.cpp

  Log Message:
  -----------
  Revert "Fix LLVM_ENABLE_ABI_BREAKING_CHECKS macro check: use #if inst… (#110923)

…ead of #ifdef (#110883)"

This reverts commit 1905cdbf4ef15565504036c52725cb0622ee64ef, which
causes lots of failures where LLVM doesn't have the right header guards.
The errors can be seen on
[BuildKite](https://buildkite.com/llvm-project/upstream-bazel/builds/112362#01924eae-231c-4d06-ba87-2c538cf40e04),
where the source uses `#ifndef NDEBUG`, but the content in question is
defined when `LLVM_ENABLE_ABI_BREAKING_CHECKS == 1`.

For example, `llvm/include/llvm/Support/GenericDomTreeConstruction.h`
has the following:

```cpp
// Helper struct used during edge insertions.
struct InsertionInfo {
  // ...
#ifdef LLVM_ENABLE_ABI_BREAKING_CHECKS
  SmallVector<TreeNodePtr, 8> VisitedUnaffected;
#endif
};

// ...

InsertionInfo II;
// ...
#ifndef NDEBUG
            II.VisitedUnaffected.push_back(SuccTN);
#endif
```


  Commit: d24fdcecbb7791c8b12a308b0cac8501e85ef19b
      https://github.com/llvm/llvm-project/commit/d24fdcecbb7791c8b12a308b0cac8501e85ef19b
  Author: Benoit Jacob <jacob.benoit.1 at gmail.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

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

  Log Message:
  -----------
  Bazel: Add vector dialect dependency. (#110927)

Following up on https://github.com/llvm/llvm-project/pull/110904.

Signed-off-by: Benoit Jacob <jacob.benoit.1 at gmail.com>


  Commit: e379b4b67f760e743d8bc826cc6de00a27109dbd
      https://github.com/llvm/llvm-project/commit/e379b4b67f760e743d8bc826cc6de00a27109dbd
  Author: Zequan Wu <zequanwu at google.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M lldb/unittests/SymbolFile/DWARF/SymbolFileDWARFTests.cpp

  Log Message:
  -----------
  [lldb] Fix compile failure on SymbolFileDWARFTests.cpp with gcc

We need to explicitly specify template argument for llvm::ArrayRef when building with gcc.


  Commit: f4b758db30281707ec3836e9d55eaf8cb3936dfe
      https://github.com/llvm/llvm-project/commit/f4b758db30281707ec3836e9d55eaf8cb3936dfe
  Author: Volodymyr Sapsai <vsapsai at apple.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

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

  Log Message:
  -----------
  [Modules] Add missing headers to fix the modular build. (#110924)


  Commit: 41eb186fbb024898bacc2577fa3b88db0510ba1f
      https://github.com/llvm/llvm-project/commit/41eb186fbb024898bacc2577fa3b88db0510ba1f
  Author: Christopher Di Bella <cjdb at google.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Affine/IR/ValueBoundsOpInterfaceImpl.h
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  adds missing header, removes Bazel unnecessary dependency (#110932)

The missing header is necessary to keep building with Bazel happy, and the dependency was erroneously added.


  Commit: 076392b0aac2b4d2aed243adb4b35aba2603512c
      https://github.com/llvm/llvm-project/commit/076392b0aac2b4d2aed243adb4b35aba2603512c
  Author: Koakuma <koachan at protonmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

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

  Log Message:
  -----------
  [SPARC] Fix regression from UpgradeDataLayoutString change (#110608)

It turns out that we cannot rely on the presence of `-i64:64` as a
position reference when adding the `-i128:128` datalayout string due to
some custom datalayout strings lacking it (e.g ones used by bugpoint,
among other things).
Do not add the `-i128:128` string in that case.

This fixes the regression introduced in
https://github.com/llvm/llvm-project/pull/106951.


  Commit: e3686f1e44676fa28789c6732076b8998be23527
      https://github.com/llvm/llvm-project/commit/e3686f1e44676fa28789c6732076b8998be23527
  Author: Mateusz Sokół <8431159+mtsokol at users.noreply.github.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M mlir/test/Integration/Dialect/SparseTensor/python/test_output.py

  Log Message:
  -----------
  [MLIR][sparse] Fix SparseTensor `test_output.py` test (#110882)

This PR fixes a test failure introduced in
https://github.com/llvm/llvm-project/pull/109135


  Commit: 6c7a3f80e75de36f2642110a077664e948d9e7e3
      https://github.com/llvm/llvm-project/commit/6c7a3f80e75de36f2642110a077664e948d9e7e3
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/SelectionDAG.h
    M llvm/include/llvm/Passes/StandardInstrumentations.h
    M llvm/include/llvm/Support/GenericDomTreeConstruction.h
    M llvm/include/llvm/Transforms/Scalar/JumpThreading.h
    M llvm/include/llvm/Transforms/Scalar/LoopPassManager.h
    M llvm/include/llvm/Transforms/Utils/ScalarEvolutionExpander.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/Passes/StandardInstrumentations.cpp
    M llvm/lib/Transforms/Scalar/IndVarSimplify.cpp
    M llvm/lib/Transforms/Scalar/LoopPassManager.cpp
    M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
    M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
    M llvm/lib/Transforms/Utils/SimplifyIndVar.cpp
    M mlir/include/mlir/Analysis/Presburger/PresburgerSpace.h
    M mlir/include/mlir/Dialect/Transform/Interfaces/TransformInterfaces.h
    M mlir/include/mlir/IR/PDLPatternMatch.h.inc
    M mlir/lib/Analysis/Presburger/PresburgerSpace.cpp
    M mlir/lib/Dialect/Transform/Interfaces/TransformInterfaces.cpp

  Log Message:
  -----------
  Fix LLVM_ENABLE_ABI_BREAKING_CHECKS macro check: use #if instead of #ifdef (#110938)

This macros is always defined: either 0 or 1. The correct pattern is to
use #if.

Re-apply #110185 with more fixes for debug build with the ABI breaking
checks disabled.


  Commit: f35c213c816c9dd40d8ed4c3d155030bfd3e75e6
      https://github.com/llvm/llvm-project/commit/f35c213c816c9dd40d8ed4c3d155030bfd3e75e6
  Author: Jorge Gorbe Moya <jgorbe at google.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/Pass.h
    M llvm/include/llvm/SandboxIR/PassManager.h
    M llvm/lib/SandboxIR/PassManager.cpp
    M llvm/unittests/SandboxIR/PassTest.cpp

  Log Message:
  -----------
  [SandboxIR] Add RegionPass/RegionPassManager (#110933)

These classes mirror the existing FunctionPass/FunctionPassManager, and
will be used by the sandbox vectorizer to run a pipeline of region
passes.


  Commit: ca57e8f23ff042c0ae996b040f364ced433b7507
      https://github.com/llvm/llvm-project/commit/ca57e8f23ff042c0ae996b040f364ced433b7507
  Author: Keith Packard <keithp at keithp.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/CodeGen/stack-protector-guard.c
    M clang/test/Driver/stack-protector-guard.c
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    A llvm/test/CodeGen/RISCV/stack-guard-global.ll
    A llvm/test/CodeGen/RISCV/stack-guard-tls.ll

  Log Message:
  -----------
  [RISCV] Support -mstack-protector-guard=tls (#108942)

Add support for using a thread-local variable with a specified offset
for holding the stack guard canary value.

Closes: #46685


  Commit: a268bda0dafd8ffa048e6892c5501313d01d4a40
      https://github.com/llvm/llvm-project/commit/a268bda0dafd8ffa048e6892c5501313d01d4a40
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp
    M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.cpp
    M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.h
    M llvm/test/MC/WebAssembly/basic-assembly.s
    A llvm/test/MC/WebAssembly/block-assembly.s
    M llvm/test/MC/WebAssembly/reference-types.s
    M llvm/test/MC/WebAssembly/type-checker-errors.s

  Log Message:
  -----------
  [WebAssembly] Handle block and polymorphic stack in AsmTypeCheck (#110770)

This makes the type checker handle blocks with input parameters and
return types, branches, and polymorphic stacks correctly.

We maintain the stack of "block info", which contains its input
parameter type, return type, and whether it is a loop or not. And this
is used when checking the validity of the value stack at the `end`
marker and all branches targeting the block.

`StackType` now supports a new variant `Polymorphic`, which indicates
the stack is in the polymorphic state. `Polymorphic`s are not popped
even when `popType` is executed; they are only popped when the current
block ends.

When popping from the value stack, we ensure we don't pop more than we
are allowed to at the given block level and print appropriate error
messages instead. Also after a block ends, the value stack is guaranteed
to have the right types based on the block return type. For example,
```wast
block i32
  unreachable
end_block
;; You can expect to have an i32 on the stack here
```

This also adds handling for `br_if`. Previously only `br`s were checked.

`checkEnd` and `checkBr` were removed and their contents have been
inlined to the main `typeCheck` function, because they are called only
from a single callsite.

This also fixes two existing bugs in AsmParser, which were required to
make the tests passing. I added Github comments about them inline.

This modifies several existing invalid tests, those that passed
(incorrectly) before but do not pass with the new type checker anymore.

Fixes #107524.


  Commit: db33d82026b8742b2719289547e3cb9910c8d7d1
      https://github.com/llvm/llvm-project/commit/db33d82026b8742b2719289547e3cb9910c8d7d1
  Author: Daniel Paoliello <danpao at microsoft.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrCompiler.td
    M llvm/test/CodeGen/X86/x86-win64-shrink-wrapping.ll

  Log Message:
  -----------
  [llvm] Mark win x64 SEH pseudo instruction as meta instructions (#110889)

When adding new SEH pseudo instructions in #110024 I noticed that some
of the tests were changing their output since these new instructions
were counting towards thresholds for branching versus folding decisions.

These instructions do not result in real machine instructions being
emitted, so they should be marked as meta instructions.


  Commit: 7fe43ada28c31a9e9d82a76650d987a8b209755e
      https://github.com/llvm/llvm-project/commit/7fe43ada28c31a9e9d82a76650d987a8b209755e
  Author: Doug Wyatt <doug at sonosphere.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/Type.h
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Serialization/ASTBitCodes.h
    M clang/include/clang/Serialization/ASTReader.h
    M clang/include/clang/Serialization/ASTWriter.h
    M clang/lib/AST/Type.cpp
    M clang/lib/Sema/CMakeLists.txt
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExpr.cpp
    A clang/lib/Sema/SemaFunctionEffects.cpp
    M clang/lib/Sema/SemaLambda.cpp
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/test/Headers/Inputs/include/setjmp.h
    M clang/test/Misc/warning-wall.c
    A clang/test/Sema/attr-nonblocking-constraints-ms.cpp
    A clang/test/Sema/attr-nonblocking-constraints.c
    A clang/test/Sema/attr-nonblocking-constraints.cpp
    M clang/test/Sema/attr-nonblocking-sema.cpp
    M clang/test/Sema/attr-nonblocking-syntax.cpp
    A clang/test/SemaObjCXX/attr-nonblocking-constraints.mm

  Log Message:
  -----------
  [Clang] nonblocking/nonallocating attributes: 2nd pass caller/callee analysis (#99656)

- In Sema, when encountering Decls with function effects needing
verification, add them to a vector, DeclsWithEffectsToVerify.
- Update AST serialization to include DeclsWithEffectsToVerify.
- In AnalysisBasedWarnings, use DeclsWithEffectsToVerify as a work
queue, verifying functions with declared effects, and inferring (when
permitted and necessary) whether their callees have effects.

---------

Co-authored-by: Doug Wyatt <dwyatt at apple.com>
Co-authored-by: Sirraide <aeternalmail at gmail.com>
Co-authored-by: Erich Keane <ekeane at nvidia.com>


  Commit: 5064c4c4f8f5b09c51bab9b18f62a5c3012989c0
      https://github.com/llvm/llvm-project/commit/5064c4c4f8f5b09c51bab9b18f62a5c3012989c0
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M clang/lib/Sema/SemaConcept.cpp
    M clang/test/SemaTemplate/concepts-lambda.cpp

  Log Message:
  -----------
  [Clang][Sema] Bump the instantiated index when skipping past non-init-captures (#110887)

Otherwise, we would probably have an unmatched instantiated declaration
for init-captures when they come after a non-init capture.

No release note because the bug only affects the trunk so far.

Fixes #110721


  Commit: 5762bd60d64ed63f2f1774c41b31a84f7a677524
      https://github.com/llvm/llvm-project/commit/5762bd60d64ed63f2f1774c41b31a84f7a677524
  Author: Alex Rice <alexrice999 at hotmail.co.uk>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M mlir/include/mlir/IR/OpBase.td
    M mlir/test/tblgen-to-irdl/TestDialect.td
    M mlir/tools/tblgen-to-irdl/OpDefinitionsGen.cpp

  Log Message:
  -----------
  [mlir] [tblgen-to-irdl] Add region support (#110512)

Adds support to exporting regions.


  Commit: 6a3468403e0e42aa053e78591b7b24052a58db1e
      https://github.com/llvm/llvm-project/commit/6a3468403e0e42aa053e78591b7b24052a58db1e
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/Sema/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 7fe43ada28c3


  Commit: a5876bef61e44453b915e1f79366ca1bbfdba371
      https://github.com/llvm/llvm-project/commit/a5876bef61e44453b915e1f79366ca1bbfdba371
  Author: Adrian Vogelsgesang <avogelsgesang at salesforce.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
    M lldb/test/API/tools/lldb-dap/completions/TestDAP_completions.py
    M lldb/tools/lldb-dap/DAP.cpp
    M lldb/tools/lldb-dap/DAP.h
    M lldb/tools/lldb-dap/README.md
    M lldb/tools/lldb-dap/lldb-dap.cpp

  Log Message:
  -----------
  [lldb-dap] Correct auto-completion based on ReplMode and escape char (#110784)

This commit improves the auto-completion in the Debug Console provided
by VS-Code.

So far, we were always suggesting completions for both LLDB commands and
for variables / expressions, even if the heuristic already determined
how the given string will be executed, e.g., because the user explicitly
typed the escape prefix. Furthermore, auto-completion after the escape
character was broken, since the offsets were not adjusted correctly.
With this commit we now correctly take this into account.

Even with this commit, auto-completion does not always work reliably:

* VS Code only requests auto-completion after typing the first
alphabetic character, but not after punctuation characters. This means
that no completions are provided after typing "`"
* LLDB does not provide autocompletions if a string is an exact match.
This means if a user types `l` (which is a valid command), LLDB will not
provide "language" and "log" as potential completions. Even worse, VS
Code caches the completion and does client-side filtering. Hence, even
after typing `la`, no auto-completion for "language" is shown in the UI.

Those issues might be fixed in follow-up commits. Also with those known
issues, the experience is already much better with this commit.

Furthermore, I updated the README since I noticed that it was slightly
inaccurate.


  Commit: 6ae14c0505e92cceefc1757467e4a2eb797429e6
      https://github.com/llvm/llvm-project/commit/6ae14c0505e92cceefc1757467e4a2eb797429e6
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp

  Log Message:
  -----------
  [clang-format] Annotate the l_paren of function pointer types (#109229)

Fixes #109146.


  Commit: 98281da29f7e36e22ff1e20b9cfefda8c31dbe56
      https://github.com/llvm/llvm-project/commit/98281da29f7e36e22ff1e20b9cfefda8c31dbe56
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp

  Log Message:
  -----------
  [clang-format] Correctly annotate */& in if condition with braced init (#109505)

Fixes #109371.


  Commit: 688bc958bd4167512f0d45e1fd008c9551de1c75
      https://github.com/llvm/llvm-project/commit/688bc958bd4167512f0d45e1fd008c9551de1c75
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M clang/docs/ClangFormatStyleOptions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Format/Format.h
    M clang/lib/Format/Format.cpp
    M clang/lib/Format/FormatToken.h
    M clang/lib/Format/FormatTokenLexer.cpp
    M clang/lib/Format/FormatTokenLexer.h
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp

  Log Message:
  -----------
  [clang-format] Add TemplateNames option to help parse C++ angles (#109916)

Closes #109912.


  Commit: b91a25ef58160acd296e87cf89a92fafd26b64ef
      https://github.com/llvm/llvm-project/commit/b91a25ef58160acd296e87cf89a92fafd26b64ef
  Author: Yusuke MINATO <minato.yusuke at fujitsu.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M flang/docs/Extensions.md
    M flang/include/flang/Lower/LoweringOptions.def
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    M flang/lib/Lower/ConvertCall.cpp
    M flang/lib/Lower/ConvertExprToHLFIR.cpp
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    A flang/test/Lower/nsw.f90
    M flang/tools/bbc/bbc.cpp
    M flang/unittests/Optimizer/Builder/FIRBuilderTest.cpp

  Log Message:
  -----------
  [flang] add nsw to operations in subscripts (#110060)

This patch adds nsw to operations when lowering subscripts.

See also the discussion in the following discourse post.
https://discourse.llvm.org/t/rfc-add-nsw-flags-to-arithmetic-integer-operations-using-the-option-fno-wrapv/77584/9


  Commit: 14e1fef73625daf9fad1a2c51b16f67b3152a675
      https://github.com/llvm/llvm-project/commit/14e1fef73625daf9fad1a2c51b16f67b3152a675
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp

  Log Message:
  -----------
  [clang-format] Handle template closer followed by empty paretheses (#110408)

Fixes #109925.


  Commit: c1343a29216f08ec762b3e58572e5c3e41f6f285
      https://github.com/llvm/llvm-project/commit/c1343a29216f08ec762b3e58572e5c3e41f6f285
  Author: Max Winkler <max.enrico.winkler at gmail.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M clang/lib/Driver/Driver.cpp
    M clang/test/Driver/cl-options.c
    M clang/test/Driver/clang_f_opts.c
    M clang/test/Driver/lto.c
    M clang/test/Driver/thinlto.c
    M clang/test/Driver/thinlto.cu

  Log Message:
  -----------
  [clang] [Driver] Ensure we error on lto with link.exe and target `*-windows-msvc` on non cl driver modes (#109607)

Similar to previous PRs I've done to change some `IsCLMode` checks to
`isWindowsMSVCEnvironment`.
I stumbled into this one accidentally last week. I did some greps and I
think this is the last one for now. All the remaining `IsCLMode` checks
are only valid for the cl driver mode.

For the `*-windows-msvc` target MSVC link.exe and lld are supported. LTO
isn't supported with MSVC link.exe and so we error when lto is enabled
but MSVC link.exe is being used. However we only error if the driver
mode is cl.
If we are using the clang driver with the `*-windows-msvc` target then
ensure an error is also emitted when LTO and MSVC link.exe are used
together.


  Commit: e7a43ca84fabeab386ba4d402167244dac27b265
      https://github.com/llvm/llvm-project/commit/e7a43ca84fabeab386ba4d402167244dac27b265
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

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

  Log Message:
  -----------
  [lldb-dap] Fix a warning

This patch fixes:

  lldb/tools/lldb-dap/lldb-dap.cpp:1405:16: error: comparison of
  integers of different signs: 'int64_t' (aka 'long') and 'size_type'
  (aka 'unsigned long') [-Werror,-Wsign-compare]


  Commit: d15e53c1e4a05f6f4876f25813c57b37d4887a70
      https://github.com/llvm/llvm-project/commit/d15e53c1e4a05f6f4876f25813c57b37d4887a70
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
    M llvm/test/CodeGen/RISCV/rvv/rvv-peephole-vmerge-to-vmv.mir

  Log Message:
  -----------
  [RISCV] Check vmerge's true is in same block in vmerge -> vmv.v.v peephole (#110861)

The peepholes in RISCVVectorPeephole need to be local and we were
failing to check if the true operand was in the same block as the
vmerge.

Fixes #110832


  Commit: 882457a2eedbe6d53161b2f78fcf769fc9a93e8a
      https://github.com/llvm/llvm-project/commit/882457a2eedbe6d53161b2f78fcf769fc9a93e8a
  Author: Jan Hendrik Farr <Cydox at users.noreply.github.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M clang/lib/CodeGen/CGExpr.cpp
    A clang/test/CodeGen/attr-counted-by-pr110385.c
    M clang/test/CodeGen/attr-counted-by.c

  Log Message:
  -----------
  [Clang] Fix 'counted_by' for nested struct pointers (#110497)

Fix counted_by attribute for cases where the flexible array member is
accessed through struct pointer inside another struct:

```
struct variable {
        int a;
        int b;
        int length;
        short array[] __attribute__((counted_by(length)));
};

struct bucket {
        int a;
        struct variable *growable;
        int b;
};
```

__builtin_dynamic_object_size(p->growable->array, 0);

This commit makes sure that if the StructBase is both a MemberExpr and a
pointer, it is treated as a pointer. Otherwise clang will generate to
code to access the address of p->growable intead of loading the value of
p->growable->length.

Fixes #110385


  Commit: 56736c7937504692cd0de1254300fee568976121
      https://github.com/llvm/llvm-project/commit/56736c7937504692cd0de1254300fee568976121
  Author: Andrei Safronov <andrei.safronov at espressif.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/lib/Target/Xtensa/XtensaISelLowering.cpp
    M llvm/lib/Target/Xtensa/XtensaInstrInfo.td
    M llvm/test/CodeGen/Xtensa/blockaddress.ll
    A llvm/test/CodeGen/Xtensa/volatile.ll

  Log Message:
  -----------
  [Xtensa] Implement volatile load/store. (#110292)

Add a memory wait "MEMW" instruction before volatile load/store
operations, as implemented in GCC.


  Commit: 8a57d8212000a6611b24f79aa4d28af17cef7150
      https://github.com/llvm/llvm-project/commit/8a57d8212000a6611b24f79aa4d28af17cef7150
  Author: Jack Frankland <jack.frankland at arm.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M mlir/lib/Conversion/TosaToLinalg/TosaToLinalgNamed.cpp
    M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-named.mlir

  Log Message:
  -----------
  [mlir] Add Scalar Broadcast TOSA Depthwise Conv (#110806)

Support broadcasting of depthwise conv2d bias in tosa->linalg named
lowering in the case that bias is a rank-1 tensor with exactly 1
element. In this case TOSA specifies the value should first be broadcast
across the bias dimension and then across the result tensor.

Add `lit` tests for depthwise conv2d with scalar bias and for conv3d
which was already supported but missing coverage.

Signed-off-by: Jack Frankland <jack.frankland at arm.com>


  Commit: aec87a2143c01039578ceaed752ca2cb1dc83ff7
      https://github.com/llvm/llvm-project/commit/aec87a2143c01039578ceaed752ca2cb1dc83ff7
  Author: NimishMishra <42909663+NimishMishra at users.noreply.github.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M flang/lib/Lower/DirectivesCommon.h
    A flang/test/Integration/OpenMP/atomic-capture-complex.f90
    A flang/test/Integration/OpenMP/atomic-update-complex.f90
    R flang/test/Lower/OpenMP/Todo/atomic-complex.f90
    A llvm/include/llvm/Frontend/Atomic/Atomic.h
    M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
    A llvm/lib/Frontend/Atomic/Atomic.cpp
    A llvm/lib/Frontend/Atomic/CMakeLists.txt
    M llvm/lib/Frontend/CMakeLists.txt
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/test/Target/LLVMIR/openmp-llvm.mlir

  Log Message:
  -----------
  [llvm][mlir][flang][OpenMP] Emit __atomic_load and __atomic_compare_exchange libcalls for complex types in atomic update (#92364)

This patch adds functionality to emit relevant libcalls in case
atomicrmw instruction can not be emitted (for instance, in case of
complex types). The IRBuilder is modified to directly emit __atomic_load
and __atomic_compare_exchange libcalls. The added functions follow a
similar codegen path as Clang, so that LLVM Flang generates almost
similar IR as Clang.

Fixes https://github.com/llvm/llvm-project/issues/83760 and
https://github.com/llvm/llvm-project/issues/75138

Co-authored-by: Michael Kruse <llvm-project at meinersbur.de>


  Commit: a2994ded60c7476e30107a851d61647ccf02d5de
      https://github.com/llvm/llvm-project/commit/a2994ded60c7476e30107a851d61647ccf02d5de
  Author: Piyou Chen <piyou.chen at sifive.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/lib/TargetParser/RISCVISAInfo.cpp

  Log Message:
  -----------
  [RISCV] Fix RISCVBitPositions typo (#110953)

This patch updates  `{"zve64x", 0, 63},` into `{"zve64f", 0, 63},`.

Base on
https://github.com/riscv-non-isa/riscv-c-api-doc/blob/main/src/c-api.adoc#extension-bitmask-definitions


  Commit: 650c41aad2eb43c634a05b2b5799a0c13a73b92f
      https://github.com/llvm/llvm-project/commit/650c41aad2eb43c634a05b2b5799a0c13a73b92f
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
    R llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-load-store-pointers.ll
    R llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-global-old-legalization.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-local.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-constant.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-flat.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-global.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-local.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-private.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-store-global.mir

  Log Message:
  -----------
  Revert "[AMDGPU][GlobalISel] Fix load/store of pointer vectors, buffer.*.pN (#110714)"

Some builders has been failing tests.
```
Failed Tests (2):
  LLVM :: CodeGen/AMDGPU/GlobalISel/inst-select-load-global-old-legalization.mir
  LLVM :: CodeGen/AMDGPU/GlobalISel/inst-select-load-local.mir
```

This reverts commit ae5bd2a9f292037c605b2ec0ee31200581bd8701.
(llvmorg-20-init-7805-gae5bd2a9f292)


  Commit: 6c25604df2f669a0403a17dbdbe5c081db1e80a1
      https://github.com/llvm/llvm-project/commit/6c25604df2f669a0403a17dbdbe5c081db1e80a1
  Author: Adam Siemieniuk <adam.siemieniuk at intel.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M mlir/lib/Conversion/VectorToXeGPU/VectorToXeGPU.cpp
    A mlir/test/Conversion/VectorToXeGPU/load-to-xegpu.mlir
    A mlir/test/Conversion/VectorToXeGPU/store-to-xegpu.mlir

  Log Message:
  -----------
  [mlir][xegpu] Convert Vector load and store to XeGPU (#110826)

Adds patterns to lower vector.load|store to XeGPU operations.


  Commit: b0b1a113053deae5315a57f2e9a1a689473525f7
      https://github.com/llvm/llvm-project/commit/b0b1a113053deae5315a57f2e9a1a689473525f7
  Author: David Green <david.green at arm.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/test/CodeGen/AArch64/fexplog.ll
    M llvm/test/CodeGen/AArch64/fpow.ll
    M llvm/test/CodeGen/AArch64/fsincos.ll

  Log Message:
  -----------
  [AArch64] Add libcall for fp128 pow/log/sin/cos/etc.

As with other operations, this adds libcall support for fp128 G_FPOW,
G_FLOG/G_FEXP/etc, and G_FSIN/G_FCOS/etc operations.


  Commit: 944f4adcd2c7aa92e757984502774bd12508bfe9
      https://github.com/llvm/llvm-project/commit/944f4adcd2c7aa92e757984502774bd12508bfe9
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/test/CodeGen/RISCV/rv32zbs.ll
    M llvm/test/CodeGen/RISCV/rv64zbs.ll

  Log Message:
  -----------
  [RISCV][ISel] Select `binvi` for pattern `icmp eq/ne X, pow2` (#110957)

This patch selects `binvi` for pattern `icmp eq/ne X, pow2` when zbs is
available.


  Commit: 1701895c362176cb898eba509b18e8d72d8095c9
      https://github.com/llvm/llvm-project/commit/1701895c362176cb898eba509b18e8d72d8095c9
  Author: Balázs Kéri <balazs.keri at ericsson.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/FixedAddressChecker.cpp
    M clang/test/Analysis/ptr-arith.c

  Log Message:
  -----------
  [clang][analyzer] Less redundant warnings from FixedAddressChecker (#110458)

If a fixed value is assigned to a pointer variable, the checker did emit
a warning. If the pointer variable is assigned to another pointer
variable, this resulted in another warning. The checker now emits
warning only if a value with non-pointer type is assigned (to a pointer
variable).


  Commit: 3736ef0da8d0be12ec2fdaf4580a98a317d666ea
      https://github.com/llvm/llvm-project/commit/3736ef0da8d0be12ec2fdaf4580a98a317d666ea
  Author: Danial Klimkin <dklimkin at google.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

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

  Log Message:
  -----------
  [bazel] Fix build past aec87a2143c01039578ceaed752ca2cb1dc83ff7 (#110967)


  Commit: 8ecbad7e416b7c2a8eadf02be553a1caf328a14f
      https://github.com/llvm/llvm-project/commit/8ecbad7e416b7c2a8eadf02be553a1caf328a14f
  Author: David Green <david.green at arm.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/test/CodeGen/AArch64/fpowi.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Add fpowi fp128 libcall legalization.


  Commit: eb4a91dcea7703480b7d8ac818710c1aba3499c5
      https://github.com/llvm/llvm-project/commit/eb4a91dcea7703480b7d8ac818710c1aba3499c5
  Author: David Green <david.green at arm.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/test/CodeGen/AArch64/frem.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Add frem fp128 libcall legalization.

Like other operations, these need to be marked as libcall.


  Commit: e984d11d7257343da366d9fa03749a43a6d6af72
      https://github.com/llvm/llvm-project/commit/e984d11d7257343da366d9fa03749a43a6d6af72
  Author: Congcong Cai <congcongcai0907 at 163.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/modernize/LoopConvertUtils.cpp
    M clang-tools-extra/clang-tidy/modernize/LoopConvertUtils.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-basic.cpp

  Log Message:
  -----------
  [clang-tidy] loop convert can handle lambda init capture (#109159)

Fixes: #109083
Current implement ignore the whole lambda capture. This patch wants to
do traverse for capture init expr also


  Commit: 612760ede66142b89f626336b4ba7b2964641afb
      https://github.com/llvm/llvm-project/commit/612760ede66142b89f626336b4ba7b2964641afb
  Author: NimishMishra <42909663+NimishMishra at users.noreply.github.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    R flang/test/Integration/OpenMP/atomic-capture-complex.f90

  Log Message:
  -----------
  [flang] Fix aarch64 CI failures from #92364 (#110969)

An integration test added in #92364 causes aarch64 buildbot failures.
Reverting the same. The relevant functionality added in #92364 is still
tested by the MLIR tests added in that PR, which pass on the relevant
aarch64 builds.


  Commit: 7ad566d575b9a3657f2bfd37005ef475154dd86d
      https://github.com/llvm/llvm-project/commit/7ad566d575b9a3657f2bfd37005ef475154dd86d
  Author: Perry Gibson <Wheest at users.noreply.github.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M mlir/lib/Transforms/RemoveDeadValues.cpp
    M mlir/test/Transforms/remove-dead-values.mlir

  Log Message:
  -----------
  [mlir] Fix `remove-dead-values` pass throws error when module has a name (#109990)

Fixes #107870.

We can allow the enclosing Module operation to have a symbol.
The check was likely originally not considering this case and intended
to catch symbols inside the region, not accounting that the walk would
visit the enclosing operation.


  Commit: 1cc3ffab4076ad727a2346b17b34486d848da9f6
      https://github.com/llvm/llvm-project/commit/1cc3ffab4076ad727a2346b17b34486d848da9f6
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenPGO.cpp

  Log Message:
  -----------
  clangCodeGen: Reformat and refactor. NFC.


  Commit: 6c331e50e4bfb4158d16ec3fe17ad7bb5c739e9f
      https://github.com/llvm/llvm-project/commit/6c331e50e4bfb4158d16ec3fe17ad7bb5c739e9f
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
    M llvm/test/Instrumentation/InstrProfiling/mcdc.ll

  Log Message:
  -----------
  [MC/DC] Rework tvbitmap.update to get rid of the inlined function (#110792)

Per the discussion in #102542, it is safe to insert BBs under
`lowerIntrinsics()` since #69535 has made tolerant of modifying BBs.

So, I can get rid of using the inlined function `rmw_or`, introduced in
#96040.


  Commit: 870bdc6ea7d98538a2ac80b85d97b7dd1e5ad42d
      https://github.com/llvm/llvm-project/commit/870bdc6ea7d98538a2ac80b85d97b7dd1e5ad42d
  Author: vikashgu <Vikash.Gupta at amd.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
    M llvm/test/CodeGen/AMDGPU/preserve-wwm-copy-dst-reg.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-regalloc-flags.ll
    M llvm/test/CodeGen/AMDGPU/si-lower-sgpr-spills-vgpr-lanes-usage.mir
    M llvm/test/CodeGen/AMDGPU/spill-scavenge-offset.ll

  Log Message:
  -----------
  Reapply "[AMDGPU]Optimize SGPR spills (#93668)"

This reverts commit c2fc7f75f67039bb1ed577bc0edbd699a850cd9d. As the
dependent patch about split vgpr regalloc pipeline solved the issue(#96353).


  Commit: 94cf80d6fd612b36d5a21bf655643e46af2b8802
      https://github.com/llvm/llvm-project/commit/94cf80d6fd612b36d5a21bf655643e46af2b8802
  Author: Rolf Morel <rolf.morel at intel.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td
    M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/Linalg/Transforms/FoldAddIntoDest.cpp
    A mlir/test/Dialect/Linalg/fold-add-into-dest.mlir

  Log Message:
  -----------
  [MLIR][Linalg] Pattern to fold AddOp to accumulation via contraction op's dest (#110514)

Replaces a linalg.add with one operand the single user of a contraction,
which has a zero-filled, "identity-mapped" destination and is dominated
by the `other` operand, by the contraction with `other` as its dest.

Benefits include elision of an elementwise op, namely the linalg.add,
and removing a tensor.empty as a destination which is likely to require
an allocation upon bufferization.


  Commit: a017ed04cc9bcc75b3c3ef35c923dbe7dc4606f8
      https://github.com/llvm/llvm-project/commit/a017ed04cc9bcc75b3c3ef35c923dbe7dc4606f8
  Author: Pavel Skripkin <paskripkin at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/StaticAnalyzer/Checkers/BuiltinFunctionChecker.cpp
    A clang/test/Analysis/builtin_overflow.c
    A clang/test/Analysis/builtin_overflow_notes.c
    M clang/test/Analysis/out-of-bounds-diagnostics.c
    M clang/test/Analysis/taint-tester.c

  Log Message:
  -----------
  [analyzer] Model overflow builtins (#102602)

Add basic support for `builtin_*_overflow`  primitives.
 
These helps a lot for checking custom calloc-like functions with
inlinable body. Without such support code like

```c
#include <stddef.h>
#include <stdlib.h>

static void *myMalloc(size_t a1, size_t a2)
{
    size_t res;

    if (__builtin_mul_overflow(a1, a2, &res))
        return NULL;
    return malloc(res);
}

void test(void)
{
    char *ptr = myMalloc(10, 1);
    ptr[20] = 10;
}
````

does not trigger any warnings.


  Commit: 200dd6fb1764389cd57dc09575c7883d8fb02764
      https://github.com/llvm/llvm-project/commit/200dd6fb1764389cd57dc09575c7883d8fb02764
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M clang/test/CodeGen/X86/sse-builtins-constrained-cmp.c
    M clang/test/CodeGen/X86/sse-builtins-constrained.c
    M clang/test/CodeGen/X86/sse-builtins-dbg.c
    M clang/test/CodeGen/X86/sse-builtins.c
    M clang/test/CodeGen/X86/sse2-builtins-constrained-cmp.c
    M clang/test/CodeGen/X86/sse2-builtins.c
    M clang/test/CodeGen/X86/sse3-builtins.c
    M clang/test/CodeGen/X86/ssse3-builtins.c

  Log Message:
  -----------
  [clang][x86] Update SSE1/2/3 intrinsic tests for both C/C++

Requires some better checking of labels and some call instructions to handle additional markers


  Commit: 1ba19d6c49663a35baf5d6cdc4a149e2aca9ae6c
      https://github.com/llvm/llvm-project/commit/1ba19d6c49663a35baf5d6cdc4a149e2aca9ae6c
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M clang/test/CodeGen/X86/sse4a-builtins.c

  Log Message:
  -----------
  [clang][x86] Update SSE4A intrinsic tests for both C/C++

Requires some better checking of labels and some call instructions to handle additional markers


  Commit: 7506872afc6c1cc7556eed5128a2030b6eb8ca29
      https://github.com/llvm/llvm-project/commit/7506872afc6c1cc7556eed5128a2030b6eb8ca29
  Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
    A llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-large-width.ll

  Log Message:
  -----------
  [DebugInfo][LSR] Fix assertion failure salvaging IV with offset > 64 bits wide (#110979)

Fixes #110494


  Commit: d283705829ecbdf4d1c214a88166d5750f992255
      https://github.com/llvm/llvm-project/commit/d283705829ecbdf4d1c214a88166d5750f992255
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M clang/include/clang/Basic/arm_sve.td
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_cvt-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_cvtnt.c
    M llvm/include/llvm/IR/IntrinsicsAArch64.td
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/SVEInstrFormats.td
    M llvm/test/CodeGen/AArch64/sve-intrinsics-bfloat.ll
    M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-comb-all-active-lanes-cvt.ll
    M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-comb-no-active-lanes-cvt.ll

  Log Message:
  -----------
  [AArch64][SVE] Fix definition of bfloat fcvt intrinsics. (#110281)

Affected intrinsics:
  llvm.aarch64.sve.fcvt.bf16f32
  llvm.aarch64.sve.fcvtnt.bf16f32
    
The named intrinsics took a predicate based on the smallest element type
when it should be based on the largest. The intrinsics have been replace
by v2 equivalents and affected code ported to use them.
    
Patch includes changes to getSVEPredicateBitCast() that ensure the
generated code for the auto-upgraded old intrinsics is unchanged.


  Commit: d5f6e886ff0df8265d44ab0646afcb4a06e6475a
      https://github.com/llvm/llvm-project/commit/d5f6e886ff0df8265d44ab0646afcb4a06e6475a
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/TestDataFormatterLibcxxStringSimulator.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/main.cpp

  Log Message:
  -----------
  [lldb][test] TestDataFormatterLibcxxStringSimulator.py: add new padding layout (#108375)

Depends on https://github.com/llvm/llvm-project/pull/108362 and
https://github.com/llvm/llvm-project/pull/108343.

Adds new layout for https://github.com/llvm/llvm-project/pull/105865.


  Commit: 5901463ada16fa54959a7c9c63ccf089dfc085c2
      https://github.com/llvm/llvm-project/commit/5901463ada16fa54959a7c9c63ccf089dfc085c2
  Author: Han-Kuan Chen <hankuan.chen at sifive.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

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

  Log Message:
  -----------
  [SLP] NFC. BaseIndex is not used for getSameOpcode. (#110948)


  Commit: 8d13e7b8c382499c1cf0c2a3184b483e760f266b
      https://github.com/llvm/llvm-project/commit/8d13e7b8c382499c1cf0c2a3184b483e760f266b
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUAsanInstrumentation.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUImageIntrinsicOptimizer.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULateCodeGenPrepare.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerKernelAttributes.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.h
    M llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPerfHintAnalysis.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPrintfRuntimeBinding.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSwLowerLDS.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUUnifyMetadata.cpp
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
    M llvm/lib/Target/AMDGPU/GCNDPPCombine.cpp
    M llvm/lib/Target/AMDGPU/GCNILPSched.cpp
    M llvm/lib/Target/AMDGPU/GCNIterativeScheduler.cpp
    M llvm/lib/Target/AMDGPU/GCNMinRegStrategy.cpp
    M llvm/lib/Target/AMDGPU/GCNNSAReassign.cpp
    M llvm/lib/Target/AMDGPU/GCNRegPressure.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCExpr.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCKernelDescriptor.cpp
    M llvm/lib/Target/AMDGPU/R600OpenCLImageTypeLoweringPass.cpp
    M llvm/lib/Target/AMDGPU/SIFixSGPRCopies.cpp
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/AMDGPU/SILateBranchLowering.cpp
    M llvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
    M llvm/lib/Target/AMDGPU/SIOptimizeExecMaskingPreRA.cpp
    M llvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp
    M llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
    M llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUPALMetadata.cpp

  Log Message:
  -----------
  [AMDGPU] Qualify auto. NFC. (#110878)

Generated automatically with:
$ clang-tidy -fix -checks=-*,llvm-qualified-auto $(find
lib/Target/AMDGPU/ -type f)


  Commit: a62a80cc80b7ad835a10047c970171f6f310e26b
      https://github.com/llvm/llvm-project/commit/a62a80cc80b7ad835a10047c970171f6f310e26b
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M clang/test/CodeGen/X86/sse42-builtins.c

  Log Message:
  -----------
  [clang][x86] Update SSE42 intrinsic tests for both C/C++

Requires some better checking of labels and some call instructions to handle additional markers


  Commit: 7c50c1e73bc959246933d294319391e762bb05d5
      https://github.com/llvm/llvm-project/commit/7c50c1e73bc959246933d294319391e762bb05d5
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    A clang/test/CodeGen/X86/pr51324.c
    A clang/test/CodeGen/X86/pr60006.c
    M clang/test/CodeGen/X86/sse41-builtins.c

  Log Message:
  -----------
  [clang][x86] Pull out PR51324 / PR60006 test cases into their own codegen test files


  Commit: 44df106cb182d2316b4b0b8596d3745f62c17ba6
      https://github.com/llvm/llvm-project/commit/44df106cb182d2316b4b0b8596d3745f62c17ba6
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M clang/test/CodeGen/X86/sse41-builtins.c

  Log Message:
  -----------
  [clang][x86] Update SSE41 intrinsic tests for both C/C++

Requires some better checking of labels and some call instructions to handle additional markers


  Commit: 19c6958d24acf5beaba1946ad3e1e5fc538e3a2d
      https://github.com/llvm/llvm-project/commit/19c6958d24acf5beaba1946ad3e1e5fc538e3a2d
  Author: A. Jiang <de34 at live.cn>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx23Issues.csv
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__memory/construct_at.h
    M libcxx/include/__memory/shared_ptr.h
    M libcxx/include/__memory/uninitialized_algorithms.h
    R libcxx/include/__memory/voidify.h
    M libcxx/include/module.modulemap
    M libcxx/include/optional
    M libcxx/test/std/utilities/memory/specialized.algorithms/specialized.construct/construct_at.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/specialized.construct/ranges_construct_at.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.construct.default/ranges_uninitialized_default_construct.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.construct.default/ranges_uninitialized_default_construct_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.construct.value/ranges_uninitialized_value_construct.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.construct.value/ranges_uninitialized_value_construct_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.copy/ranges_uninitialized_copy.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.copy/ranges_uninitialized_copy_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.fill.n/ranges_uninitialized_fill_n.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.fill/ranges_uninitialized_fill.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.move/ranges_uninitialized_move.pass.cpp
    M libcxx/test/std/utilities/memory/specialized.algorithms/uninitialized.move/ranges_uninitialized_move_n.pass.cpp
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn

  Log Message:
  -----------
  [libc++] Re-apply LWG3870: Remove `voidify` (#110944)

This reverts commit f3d58f4161b86a479f68acb453e9622911c688a0.

Relands #110355.


  Commit: 82f5acfbec65e1a645d902f746253eeaf0bd2d70
      https://github.com/llvm/llvm-project/commit/82f5acfbec65e1a645d902f746253eeaf0bd2d70
  Author: Danial Klimkin <dklimkin at google.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

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

  Log Message:
  -----------
  [bazel] Fix build past 2026501cf107fcb3cbd51026ba25fda3af823941 (#110991)


  Commit: 121ed5c1985356436d0040dbe81bca26992b1fae
      https://github.com/llvm/llvm-project/commit/121ed5c1985356436d0040dbe81bca26992b1fae
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_for_token_pred.pass.cpp
    M libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_token_pred.pass.cpp
    M libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_until_token_pred.pass.cpp
    M libcxx/test/std/thread/thread.jthread/assign.move.pass.cpp
    M libcxx/test/std/thread/thread.jthread/cons.default.pass.cpp
    M libcxx/test/std/thread/thread.jthread/cons.func.token.pass.cpp
    M libcxx/test/std/thread/thread.jthread/cons.move.pass.cpp
    M libcxx/test/std/thread/thread.jthread/copy.delete.compile.pass.cpp
    M libcxx/test/std/thread/thread.jthread/detach.pass.cpp
    M libcxx/test/std/thread/thread.jthread/dtor.pass.cpp
    M libcxx/test/std/thread/thread.jthread/get_id.pass.cpp
    M libcxx/test/std/thread/thread.jthread/get_stop_source.pass.cpp
    M libcxx/test/std/thread/thread.jthread/get_stop_token.pass.cpp
    M libcxx/test/std/thread/thread.jthread/hardware_concurrency.pass.cpp
    M libcxx/test/std/thread/thread.jthread/join.deadlock.pass.cpp
    M libcxx/test/std/thread/thread.jthread/join.pass.cpp
    M libcxx/test/std/thread/thread.jthread/joinable.pass.cpp
    M libcxx/test/std/thread/thread.jthread/nodiscard.verify.cpp
    M libcxx/test/std/thread/thread.jthread/request_stop.pass.cpp
    M libcxx/test/std/thread/thread.jthread/swap.free.pass.cpp
    M libcxx/test/std/thread/thread.jthread/swap.member.pass.cpp
    M libcxx/test/std/thread/thread.jthread/type.compile.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/nostopstate/cons.default.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stopcallback/cons.const.token.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stopcallback/cons.rvalue.token.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stopcallback/copy.move.compile.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stopcallback/ctad.compile.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stopcallback/dtor.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stopcallback/typedef.compile.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stopsource/assign.copy.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stopsource/cons.copy.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stopsource/cons.default.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stopsource/cons.move.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stopsource/cons.nostopstate.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stopsource/equals.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stopsource/get_token.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stopsource/move.copy.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stopsource/nodiscard.verify.cpp
    M libcxx/test/std/thread/thread.stoptoken/stopsource/request_stop.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stopsource/stop_possible.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stopsource/stop_requested.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stopsource/swap.free.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stopsource/swap.member.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stoptoken/assign.copy.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stoptoken/assign.move.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stoptoken/cons.copy.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stoptoken/cons.default.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stoptoken/cons.move.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stoptoken/equals.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stoptoken/nodiscard.verify.cpp
    M libcxx/test/std/thread/thread.stoptoken/stoptoken/stop_possible.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stoptoken/stop_requested.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stoptoken/swap.free.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stoptoken/swap.member.pass.cpp
    M libcxx/utils/libcxx/test/params.py

  Log Message:
  -----------
  [libc++] Remove test suite annotations for experimental stop_token (#110890)

<stop_token> is not experimental anymore, so its tests shouldn't be
guarded by libcpp-has-no-experimental-stop_token.


  Commit: bfb3a442b83a5e9fc4b3d3919d845dc8bded810f
      https://github.com/llvm/llvm-project/commit/bfb3a442b83a5e9fc4b3d3919d845dc8bded810f
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M libcxx/test/libcxx/gdb/gdb_pretty_printer_test.sh.cpp
    M libcxx/utils/gdb/libcxx/printers.py

  Log Message:
  -----------
  [libc++] Index from 0 in GDB pretty printers (#110881)

Fixes #62168


  Commit: 4f82f27ccdd1839bd502c9c1a79e5de2fb28e07b
      https://github.com/llvm/llvm-project/commit/4f82f27ccdd1839bd502c9c1a79e5de2fb28e07b
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaOpenACC.cpp
    M clang/test/SemaOpenACC/loop-construct-collapse-clause.cpp

  Log Message:
  -----------
  [OpenACC] 'collapse' clause 'force' tag (#110906)

The 'force' tag permits intervening code on the applicable 'loop'
construct,
 so this implements the restriction when the 'force' tag isn't present.


  Commit: ea62db0c0398ec2e7d7c4c6561feb3b4ace98050
      https://github.com/llvm/llvm-project/commit/ea62db0c0398ec2e7d7c4c6561feb3b4ace98050
  Author: Brian Cain <bcain at quicinc.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    A clang/cmake/caches/hexagon-unknown-linux-musl-clang-cross.cmake
    A clang/cmake/caches/hexagon-unknown-linux-musl-clang.cmake
    A compiler-rt/cmake/caches/hexagon-linux-builtins.cmake
    A compiler-rt/cmake/caches/hexagon-linux-clangrt.cmake
    A libcxx/cmake/caches/hexagon-linux-runtimes.cmake

  Log Message:
  -----------
  [cmake] Add hexagon-linux cmake cache files (#98712)

These can be used to create a fully-bootstrapped toolchain to target
hexagon {baremetal,linux} with scripts like the ones in
https://github.com/quic/toolchain_for_hexagon


  Commit: 8bcf79914b9395048d2ef11b6dc5f95fddb9747a
      https://github.com/llvm/llvm-project/commit/8bcf79914b9395048d2ef11b6dc5f95fddb9747a
  Author: William Moses <gh at wsmoses.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/lib/Support/Unix/Threading.inc

  Log Message:
  -----------
  Fix have pthread_getname for some system (#110854)

I'm on a system that has have_pthread_getname_np defined but set to 0.
The correct behavior here is not to use the function, but presently the
macros will attempt to use a non-existing function.

This previously worked before
https://github.com/llvm/llvm-project/pull/106486/files


  Commit: 241f93658a8a9509216b841d3272194bd34fed36
      https://github.com/llvm/llvm-project/commit/241f93658a8a9509216b841d3272194bd34fed36
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/include/llvm/TableGen/Record.h
    M llvm/lib/TableGen/Record.cpp
    M llvm/lib/TableGen/TGParser.cpp
    A llvm/test/TableGen/anonymous-location.td

  Log Message:
  -----------
  [TableGen] Fix source location for anonymous records (#110935)

Fix source location for anonymous records to be the one of the locations
where that record is instantiated as opposed to the location of the
class that was anonymously instantiated.

Currently, when a record is anonymously instantiated (via
`VarDefInit::instantiate`), we use the location of the class for the
record, which is not correct. Instead, pass in the `SMLoc` for the
location where the anonymous instantiation happens and use that location
when the record is instantiated. If there are multiple anonymous
instantiations with the same parameters, the location for the (single)
record created will be one of these instantiation locations as opposed
to the class location.


  Commit: e813750354bbc08551cf23ff559a54b4a9ea1f29
      https://github.com/llvm/llvm-project/commit/e813750354bbc08551cf23ff559a54b4a9ea1f29
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M mlir/include/mlir/TableGen/GenInfo.h
    M mlir/tools/mlir-tblgen/DialectGen.cpp
    M mlir/tools/mlir-tblgen/DirectiveCommonGen.cpp
    M mlir/tools/mlir-tblgen/EnumPythonBindingGen.cpp
    M mlir/tools/mlir-tblgen/EnumsGen.cpp
    M mlir/tools/mlir-tblgen/LLVMIRConversionGen.cpp
    M mlir/tools/mlir-tblgen/OmpOpGen.cpp
    M mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
    M mlir/tools/mlir-tblgen/OpDocGen.cpp
    M mlir/tools/mlir-tblgen/OpGenHelpers.cpp
    M mlir/tools/mlir-tblgen/OpGenHelpers.h
    M mlir/tools/mlir-tblgen/OpInterfacesGen.cpp
    M mlir/tools/mlir-tblgen/PassDocGen.cpp
    M mlir/tools/mlir-tblgen/PassGen.cpp
    M mlir/tools/mlir-tblgen/RewriterGen.cpp
    M mlir/tools/mlir-tblgen/SPIRVUtilsGen.cpp
    M mlir/tools/tblgen-to-irdl/OpDefinitionsGen.cpp

  Log Message:
  -----------
  [NFC] Rename variable `recordKeeper` to `records` (#110989)


  Commit: 4547d6042ac2e88b12936b1f81beee1ea580d63d
      https://github.com/llvm/llvm-project/commit/4547d6042ac2e88b12936b1f81beee1ea580d63d
  Author: davidtrevelyan <davidtrevelyan at users.noreply.github.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/RealtimeSanitizer.cpp
    A llvm/test/Instrumentation/RealtimeSanitizer/rtsan_unsafe.ll

  Log Message:
  -----------
  [llvm][rtsan] Add transform pass for sanitize_realtime_unsafe (#109543)


  Commit: eafa15009e95c1c7eed3026218a73f09e1da3288
      https://github.com/llvm/llvm-project/commit/eafa15009e95c1c7eed3026218a73f09e1da3288
  Author: NimishMishra <42909663+NimishMishra at users.noreply.github.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
    M flang/test/Lower/OpenMP/simd.f90

  Log Message:
  -----------
  [flang][OpenMP] Enable lastprivate on simd (#93786)

This PR enables the lowering of lastprivate when defined on simd
construct


  Commit: 8e049fa327111ac6b6904638366528f7e07a8462
      https://github.com/llvm/llvm-project/commit/8e049fa327111ac6b6904638366528f7e07a8462
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M libcxx/include/__ranges/chunk_by_view.h
    M libcxx/include/__ranges/drop_view.h
    M libcxx/include/__ranges/drop_while_view.h
    M libcxx/include/__ranges/filter_view.h
    M libcxx/include/__ranges/lazy_split_view.h
    M libcxx/include/__ranges/range_adaptor.h
    M libcxx/include/__ranges/split_view.h
    M libcxx/include/__ranges/take_view.h
    M libcxx/include/__ranges/take_while_view.h
    M libcxx/include/__ranges/to.h
    M libcxx/include/__ranges/transform_view.h

  Log Message:
  -----------
  [libc++] Rename __range_adaptor_closure_t (#110886)

The name __range_adaptor_closure_t can easily be confused with
__range_adaptor_closure, so something more distinct is preferable.

Fixes #67611


  Commit: 34d0c99d82791607d96db18b94218269106ef3b8
      https://github.com/llvm/llvm-project/commit/34d0c99d82791607d96db18b94218269106ef3b8
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M libcxx/lib/abi/CHANGELOG.TXT
    M libcxx/lib/abi/arm64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
    R libcxx/lib/libc++unexp.exp
    M libcxx/src/CMakeLists.txt

  Log Message:
  -----------
  [libc++] Stop trying to avoid exporting some typeinfo names (#110925)

When the library was initially written, it was not built with hidden
visibility. In an attempt to reduce the number of symbols exported from
libc++, an explicit list of symbols to avoid exporting was passed to the
linker. This was only done on Apple platforms.

Since then, the library has moved on in several ways. First, we now
build with hidden visibility by default, so arbitrary symbols don't get
exported from the library for no reason. Second, we have proper
visibility control via source annotations, so we export exactly what we
want to, and we do that from the sources.

This patch removes the explicit list of symbols to avoid exporting from
the library, which at this point doesn't cover much anyways. The only
symbols we will now be exporting that we were not before are some
typeinfo names for implementation-detail types. While we technically
wouldn't have to export those (I don't think any user can get their
hands on those typeinfo names), that makes the library more consistent
on all platforms.


  Commit: ee4dd147baff8f971f3ec5aad5a216ca9837a732
      https://github.com/llvm/llvm-project/commit/ee4dd147baff8f971f3ec5aad5a216ca9837a732
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/TestDataFormatterLibcxxStringSimulator.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/main.cpp

  Log Message:
  -----------
  Revert "[lldb][test] TestDataFormatterLibcxxStringSimulator.py: add new padding layout (#108375)"

This reverts commit d5f6e886ff0df8265d44ab0646afcb4a06e6475a.

Caused failure on Windows CI. Following test failed:
```
Config=aarch64-C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\build\bin\clang.exe

======================================================================

FAIL: test_r5_c2_ALTERNATE_LAYOUT (TestDataFormatterLibcxxStringSimulator.LibcxxStringDataFormatterSimulatorTestCase.test_r5_c2_ALTERNATE_LAYOUT)

    partial(func, *args, **keywords) - new function with partial application

----------------------------------------------------------------------

Traceback (most recent call last):

  File "C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\test\API\functionalities\data-formatter\data-formatter-stl\libcxx-simulators\string\TestDataFormatterLibcxxStringSimulator.py", line 23, in _run_test

    self.expect_var_path("longstring", summary='"I am a very long string"')

  File "C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\packages\Python\lldbsuite\test\lldbtest.py", line 2552, in expect_var_path

    value_check.check_value(self, eval_result, str(eval_result))

  File "C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\packages\Python\lldbsuite\test\lldbtest.py", line 321, in check_value

    test_base.assertEqual(

AssertionError: '"I am a very long string"' != '""'

- "I am a very long string"

+ ""

 : (std::__lldb::string) longstring = ""

Checking SBValue: (std::__lldb::string) longstring = ""
```

We may need to use `msvc::no_unique_address` around the simulators.


  Commit: d0d12fc78a3c552e6bf4158825d4917645911f6e
      https://github.com/llvm/llvm-project/commit/d0d12fc78a3c552e6bf4158825d4917645911f6e
  Author: Marina Taylor <marina_taylor at apple.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    A llvm/test/Transforms/InstCombine/icmp-equality-test.ll

  Log Message:
  -----------
  [InstCombine] Fold (X==Z) ? (Y==Z) : (!(Y==Z) && X==Y) --> X==Y (#108619)

This corresponds to the canonicalized form of some logic that was
seen in Swift-generated code for comparing optional pointers:
`(X==Z || Y==Z) ? (X==Z && Y==Z) : X==Y --> X==Y`
where `Z` was the constant `0`.

https://alive2.llvm.org/ce/z/J_3aa9


  Commit: 9fd75233ca757cf172d10703ac82fc162ef8ec0e
      https://github.com/llvm/llvm-project/commit/9fd75233ca757cf172d10703ac82fc162ef8ec0e
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/DAGCombine_vscale.ll
    M llvm/test/CodeGen/AArch64/llvm-ir-to-intrinsic.ll
    M llvm/test/CodeGen/AArch64/sme-disable-rematerialize-with-streaming-mode-changes.ll
    M llvm/test/CodeGen/AArch64/sve-adr.ll
    M llvm/test/CodeGen/AArch64/sve-cmp-folds.ll
    M llvm/test/CodeGen/AArch64/sve-dead-masked-store.ll
    M llvm/test/CodeGen/AArch64/sve-extract-fixed-vector.ll
    M llvm/test/CodeGen/AArch64/sve-extract-scalable-vector.ll
    M llvm/test/CodeGen/AArch64/sve-fadda-select.ll
    M llvm/test/CodeGen/AArch64/sve-fold-loadext-and-splat-vector.ll
    M llvm/test/CodeGen/AArch64/sve-fp-immediates-merging.ll
    M llvm/test/CodeGen/AArch64/sve-gather-scatter-addr-opts.ll
    M llvm/test/CodeGen/AArch64/sve-insert-vector.ll
    M llvm/test/CodeGen/AArch64/sve-int-arith-imm.ll
    M llvm/test/CodeGen/AArch64/sve-int-imm.ll
    M llvm/test/CodeGen/AArch64/sve-int-log-imm.ll
    M llvm/test/CodeGen/AArch64/sve-int-mulh-pred.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-fp-arith-imm.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-index.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-int-arith-imm-zero.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-int-arith-imm.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-int-arith-undef.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-int-compares-with-imm.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-logical-undef.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-reinterpret-no-streaming.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-shifts-undef.ll
    M llvm/test/CodeGen/AArch64/sve-knownbits.ll
    M llvm/test/CodeGen/AArch64/sve-splat-one-and-ptrue.ll
    M llvm/test/CodeGen/AArch64/sve-splat-sext.ll
    M llvm/test/CodeGen/AArch64/sve-st1-addressing-mode-reg-imm.ll
    M llvm/test/CodeGen/AArch64/sve-stepvector.ll
    M llvm/test/CodeGen/AArch64/sve-vecreduce-fold.ll
    M llvm/test/CodeGen/AArch64/sve-vector-splat.ll
    M llvm/test/CodeGen/AArch64/sve2-int-mul.ll
    M llvm/test/CodeGen/AArch64/sve2-int-mulh.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-int-arith-imm.ll
    M llvm/test/CodeGen/AArch64/sve2-sra.ll

  Log Message:
  -----------
  [LLVM] Port SVE tests in llvm/test/CodeGen/AArch64 to use splat()

This is preparation work towards making such splats use Constant{Int,FP}
by default for scalable vectors.


  Commit: dce5bf8efc13896ebf0ababfda00393eaa5cc99d
      https://github.com/llvm/llvm-project/commit/dce5bf8efc13896ebf0ababfda00393eaa5cc99d
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info.ll

  Log Message:
  -----------
  [ValueTracking] AllowEphemerals for alignment assumptions. (#108632)

Allow AllowEphemerals in isValidAssumeForContext, as the CxtI might
be the producer of the pointer in the bundle. At the moment, align
assumptions aren't optimized away.

This allows using the assumption in the computeKnownBits call in
getConstantMultipleImpl.

We could extend the computeKnownBits API to allow callers to specify if
ephemerals are allowed, if the info from computeKnownBitsFromContext is
used to remove alignment assumptions.

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


  Commit: 79b32bcda662a3e7789ad2835a021020fd2a5158
      https://github.com/llvm/llvm-project/commit/79b32bcda662a3e7789ad2835a021020fd2a5158
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Utils/CloneFunction.cpp
    M llvm/test/Transforms/Inline/memprof_inline2.ll

  Log Message:
  -----------
  [MemProf] Strip callsite metadata when inlining an unprofiled callsite (#110998)

We weren't flagging inlined callee functions with callsite but not
memprof metadata correctly, leading to the callsite metadata not being
stripped when that function was inlined into a callsite that didn't
itself have callsite metadata.

In practice, this meant that we went into the LTO link with many more
calls than necessary having callsite metadata / summary records, which
in turn made the graph larger than necessary.

Fixing this oversight resulted in huge reductions in the thin link of a
large target:
99% fewer duplicated context ids (recall we have to duplicate when
callsites containing the same stack ids are in different functions)
71% fewer graph edges
17% fewer graph nodes
13% fewer functions cloned
44% smaller peak memory
47% smaller time


  Commit: a78359c2ed68489b2dde558c2660515e481ae60f
      https://github.com/llvm/llvm-project/commit/a78359c2ed68489b2dde558c2660515e481ae60f
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M flang/include/flang/Optimizer/Dialect/FIROps.td
    M flang/lib/Lower/ConvertCall.cpp
    M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
    M flang/lib/Optimizer/Transforms/AbstractResult.cpp
    M flang/lib/Optimizer/Transforms/PolymorphicOpConversion.cpp
    M flang/test/Fir/dispatch.f90
    M flang/test/Fir/fir-ops.fir
    M flang/test/Lower/polymorphic.f90

  Log Message:
  -----------
  [flang] add procedure flags to fir.dispatch (#110970)

Currently, it is not possible to distinguish between BIND(C) from
non-BIND(C) type bound procedure call at the FIR level.
This will be a problem when dealing with derived type BIND(C) function
where the ABI differ between BIND(C)/non-BIND(C) but the FIR signature
looks like the same at the FIR level.

Fix this by adding the Fortran procedure attributes to fir.distpatch,
and propagating it until the related fir.call is generated in
fir.dispatch codegen.


  Commit: c4204c0b29a6721267b1bcbaeedd7b1118e42396
      https://github.com/llvm/llvm-project/commit/c4204c0b29a6721267b1bcbaeedd7b1118e42396
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M flang/include/flang/Optimizer/Builder/Complex.h
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/include/flang/Optimizer/Builder/Runtime/RTBuilder.h
    M flang/include/flang/Optimizer/Dialect/FIROps.td
    M flang/include/flang/Optimizer/Dialect/FIRType.h
    M flang/include/flang/Optimizer/Dialect/FIRTypes.td
    M flang/include/flang/Optimizer/Support/Utils.h
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/ConvertConstant.cpp
    M flang/lib/Lower/ConvertExpr.cpp
    M flang/lib/Lower/ConvertExprToHLFIR.cpp
    M flang/lib/Lower/ConvertType.cpp
    M flang/lib/Lower/ConvertVariable.cpp
    M flang/lib/Lower/IO.cpp
    M flang/lib/Lower/OpenACC.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ReductionProcessor.cpp
    M flang/lib/Optimizer/Builder/Complex.cpp
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/lib/Optimizer/CodeGen/Target.cpp
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp
    M flang/lib/Optimizer/Transforms/CufOpConversion.cpp
    M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
    M flang/lib/Optimizer/Transforms/LoopVersioning.cpp
    M flang/test/Fir/array-copies-pointers.fir
    M flang/test/Fir/compare.fir
    M flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
    M flang/test/Fir/convert-to-llvm.fir
    M flang/test/Fir/convert.fir
    M flang/test/Fir/fir-ops.fir
    M flang/test/Fir/fir-types.fir
    M flang/test/Fir/rebox.fir
    M flang/test/Fir/struct-passing-x86-64-byval.fir
    M flang/test/Fir/target-complex16.f90
    M flang/test/Fir/target-rewrite-arg-position.fir
    M flang/test/Fir/target-rewrite-complex-10-x86.fir
    M flang/test/Fir/target-rewrite-complex.fir
    M flang/test/Fir/target-rewrite-complex16.fir
    M flang/test/Fir/target-rewrite-selective.fir
    M flang/test/Fir/target.fir
    M flang/test/Fir/types-to-llvm.fir
    M flang/test/Fir/undo-complex-pattern.fir
    M flang/test/HLFIR/assign-codegen.fir
    M flang/test/HLFIR/assign.fir
    M flang/test/HLFIR/associate.fir
    M flang/test/HLFIR/assumed_shape_with_value_keyword.f90
    M flang/test/HLFIR/designate-codegen-complex-part.fir
    M flang/test/HLFIR/designate.fir
    M flang/test/HLFIR/invalid.fir
    M flang/test/HLFIR/opt-scalar-assign.fir
    M flang/test/Intrinsics/math-codegen.fir
    M flang/test/Lower/HLFIR/array-ctor-as-inlined-temp.f90
    M flang/test/Lower/HLFIR/assignment-intrinsics.f90
    M flang/test/Lower/HLFIR/binary-ops.f90
    M flang/test/Lower/HLFIR/calls-f77.f90
    M flang/test/Lower/HLFIR/calls-percent-val-ref.f90
    M flang/test/Lower/HLFIR/constant.f90
    M flang/test/Lower/HLFIR/conversion-ops.f90
    M flang/test/Lower/HLFIR/designators-component-ref.f90
    M flang/test/Lower/HLFIR/designators.f90
    M flang/test/Lower/HLFIR/entry_return.f90
    M flang/test/Lower/HLFIR/implicit-call-mismatch.f90
    M flang/test/Lower/HLFIR/implicit-type-conversion-allocatable.f90
    M flang/test/Lower/HLFIR/initial-target-component.f90
    M flang/test/Lower/HLFIR/intrinsic-dynamically-optional.f90
    M flang/test/Lower/HLFIR/unary-ops.f90
    M flang/test/Lower/HLFIR/user-defined-assignment.f90
    M flang/test/Lower/HLFIR/vector-subscript-as-value.f90
    M flang/test/Lower/Intrinsics/abs.f90
    M flang/test/Lower/Intrinsics/acos.f90
    M flang/test/Lower/Intrinsics/acos_complex16.f90
    M flang/test/Lower/Intrinsics/acosh.f90
    M flang/test/Lower/Intrinsics/acosh_complex16.f90
    M flang/test/Lower/Intrinsics/asin.f90
    M flang/test/Lower/Intrinsics/asin_complex16.f90
    M flang/test/Lower/Intrinsics/asinh.f90
    M flang/test/Lower/Intrinsics/asinh_complex16.f90
    M flang/test/Lower/Intrinsics/atan.f90
    M flang/test/Lower/Intrinsics/atan_complex16.f90
    M flang/test/Lower/Intrinsics/atanh.f90
    M flang/test/Lower/Intrinsics/atanh_complex16.f90
    M flang/test/Lower/Intrinsics/cabs_real16.f90
    M flang/test/Lower/Intrinsics/cmplx.f90
    M flang/test/Lower/Intrinsics/cos_complex16.f90
    M flang/test/Lower/Intrinsics/cosh_complex16.f90
    M flang/test/Lower/Intrinsics/dconjg.f90
    M flang/test/Lower/Intrinsics/dimag.f90
    M flang/test/Lower/Intrinsics/dot_product.f90
    M flang/test/Lower/Intrinsics/dreal.f90
    M flang/test/Lower/Intrinsics/exp.f90
    M flang/test/Lower/Intrinsics/exp_complex16.f90
    M flang/test/Lower/Intrinsics/log.f90
    M flang/test/Lower/Intrinsics/log_complex16.f90
    M flang/test/Lower/Intrinsics/pow_complex16.f90
    M flang/test/Lower/Intrinsics/pow_complex16i.f90
    M flang/test/Lower/Intrinsics/pow_complex16k.f90
    M flang/test/Lower/Intrinsics/product.f90
    M flang/test/Lower/Intrinsics/sin_complex16.f90
    M flang/test/Lower/Intrinsics/sinh_complex16.f90
    M flang/test/Lower/Intrinsics/sqrt_complex16.f90
    M flang/test/Lower/Intrinsics/sum.f90
    M flang/test/Lower/Intrinsics/tan_complex16.f90
    M flang/test/Lower/Intrinsics/tanh_complex16.f90
    M flang/test/Lower/OpenACC/acc-reduction.f90
    M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-multiple-variables.f90
    M flang/test/Lower/OpenMP/copyprivate.f90
    M flang/test/Lower/OpenMP/lastprivate-allocatable.f90
    M flang/test/Lower/OpenMP/parallel-firstprivate-clause-scalar.f90
    M flang/test/Lower/OpenMP/parallel-private-clause.f90
    M flang/test/Lower/OpenMP/parallel-reduction-complex-mul.f90
    M flang/test/Lower/OpenMP/parallel-reduction-complex.f90
    M flang/test/Lower/OpenMP/private-commonblock.f90
    M flang/test/Lower/OpenMP/task.f90
    M flang/test/Lower/OpenMP/threadprivate-commonblock.f90
    M flang/test/Lower/OpenMP/threadprivate-non-global.f90
    M flang/test/Lower/OpenMP/threadprivate-real-logical-complex-derivedtype.f90
    M flang/test/Lower/array-constructor-1.f90
    M flang/test/Lower/array-elemental-calls-2.f90
    M flang/test/Lower/array-elemental-subroutines.f90
    M flang/test/Lower/array.f90
    M flang/test/Lower/assignment.f90
    M flang/test/Lower/basic-function.f90
    M flang/test/Lower/call-bindc.f90
    M flang/test/Lower/call-by-value.f90
    M flang/test/Lower/complex-operations.f90
    M flang/test/Lower/complex-real.f90
    M flang/test/Lower/derived-assignments.f90
    M flang/test/Lower/dummy-procedure.f90
    M flang/test/Lower/entry-statement.f90
    M flang/test/Lower/implicit-call-mismatch.f90
    M flang/test/Lower/math-lowering/abs.f90
    M flang/test/Lower/pointer.f90
    M flang/test/Lower/polymorphic.f90
    M flang/test/Lower/sqrt.f90
    M flang/test/Lower/trigonometric-intrinsics.f90
    M flang/test/Lower/vector-subscript-io.f90
    M flang/test/Transforms/debug-90683.fir
    M flang/test/Transforms/debug-complex-1.fir
    M flang/test/Transforms/debug-derived-type-1.fir
    M flang/test/Transforms/loop-versioning.fir
    M flang/test/Transforms/omp-map-info-finalization.fir
    M flang/test/Transforms/simplifyintrinsics.fir
    M flang/unittests/Optimizer/Builder/ComplexTest.cpp
    M flang/unittests/Optimizer/Builder/Runtime/RuntimeCallTestBase.h
    M flang/unittests/Optimizer/FIRTypesTest.cpp
    M flang/unittests/Optimizer/RTBuilder.cpp

  Log Message:
  -----------
  [flang] replace fir.complex usages with mlir complex (#110850)

Core patch of
https://discourse.llvm.org/t/rfc-flang-replace-usages-of-fir-complex-by-mlir-complex-type/82292.
After that, the last step is to remove fir.complex from FIR types.


  Commit: b9bb77f0c76be88d824e87c713ae8457046b1ac6
      https://github.com/llvm/llvm-project/commit/b9bb77f0c76be88d824e87c713ae8457046b1ac6
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/branch-condition-and.ll

  Log Message:
  -----------
  [AMDGPU] Update branch-condition-and.ll to auto-generated checks (#110860)


  Commit: 01a1398971addb812fabc558b75b8dd7a78d7d44
      https://github.com/llvm/llvm-project/commit/01a1398971addb812fabc558b75b8dd7a78d7d44
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/AArch64/veclib-function-calls.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/veclib-intrinsic-calls.ll

  Log Message:
  -----------
  [AArch64][Test] Update test variable names (NFC) (#110667)

Simply by running update_test_checks.py with no changes. This is to make
updating these tests for later changes easier.


  Commit: b78bfe7169f325d016b817111b3b8a66113ff77d
      https://github.com/llvm/llvm-project/commit/b78bfe7169f325d016b817111b3b8a66113ff77d
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/include/llvm/TableGen/Record.h
    M llvm/lib/TableGen/Record.cpp

  Log Message:
  -----------
  [TableGen] Delete non-const overloads of `getAllDerivedDefinitions` (#110990)

Now that all TableGen backends have transitioned to const versions of
these functions, we do not need the non-const versions anymore.

This is a part of effort to have better const correctness in TableGen
backends:


https://discourse.llvm.org/t/psa-planned-changes-to-tablegen-getallderiveddefinitions-api-potential-downstream-breakages/81089


  Commit: 667815ccf49bc415544484f1b717bb7551cd9c93
      https://github.com/llvm/llvm-project/commit/667815ccf49bc415544484f1b717bb7551cd9c93
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/include/llvm/TableGen/Record.h
    M llvm/lib/TableGen/Record.cpp
    M llvm/lib/TableGen/SetTheory.cpp
    M llvm/lib/TableGen/TGParser.cpp
    M llvm/unittests/TableGen/ParserEntryPointTest.cpp
    M llvm/utils/TableGen/Common/CodeGenSchedule.cpp

  Log Message:
  -----------
  [NFC][TableGen] Change `RecordKeeper::getDef()` to return const pointer (#110992)

This is a part of effort to have better const correctness in TableGen
backends:


https://discourse.llvm.org/t/psa-planned-changes-to-tablegen-getallderiveddefinitions-api-potential-downstream-breakages/81089


  Commit: 133c1224de0004558d74ad1787873cfd26ceaf9f
      https://github.com/llvm/llvm-project/commit/133c1224de0004558d74ad1787873cfd26ceaf9f
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/reused-mask-with-poison-index.ll

  Log Message:
  -----------
  [SLP]Fix a crash on accessing element with index -1 for reused mask with PoisonMaskElem

Need to check if the index from the ReuseShuffleIndices mask is not
equal to PoisonMaskElem before trying to access the element by index.


  Commit: bf3deb17cbfe8d777890cd54fde48d68150d1738
      https://github.com/llvm/llvm-project/commit/bf3deb17cbfe8d777890cd54fde48d68150d1738
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M clang/lib/AST/ASTContext.cpp

  Log Message:
  -----------
  [AST] Avoid repeated hash lookups (NFC) (#110947)


  Commit: 28733ed686c4ca54042d6a9b8ae318c8f3b7b287
      https://github.com/llvm/llvm-project/commit/28733ed686c4ca54042d6a9b8ae318c8f3b7b287
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M clang/lib/Analysis/ExprMutationAnalyzer.cpp

  Log Message:
  -----------
  [Analysis] Avoid repeated hash lookups (NFC) (#110949)


  Commit: 20d402ab087f2369c0099f151b5480efb1b7fecf
      https://github.com/llvm/llvm-project/commit/20d402ab087f2369c0099f151b5480efb1b7fecf
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M clang/lib/Serialization/GlobalModuleIndex.cpp

  Log Message:
  -----------
  [Serialization] Avoid repeated hash lookups (NFC) (#110950)


  Commit: 66f846d753be6ac62f613bd98ca791050ba3c4a5
      https://github.com/llvm/llvm-project/commit/66f846d753be6ac62f613bd98ca791050ba3c4a5
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

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

  Log Message:
  -----------
  [Sema] Avoid repeated hash lookups (NFC) (#110951)


  Commit: 66227bf7ee2cd674e0306d9a1e9f1d86bc75123f
      https://github.com/llvm/llvm-project/commit/66227bf7ee2cd674e0306d9a1e9f1d86bc75123f
  Author: Tyler Nowicki <tyler.nowicki at amd.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Coroutines/CoroSplit.h
    A llvm/lib/Transforms/Coroutines/ABI.h
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
    M llvm/lib/Transforms/Coroutines/CoroInternal.h
    M llvm/lib/Transforms/Coroutines/CoroShape.h
    M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
    M llvm/lib/Transforms/Coroutines/Coroutines.cpp

  Log Message:
  -----------
  [Coroutines] ABI Objects to improve code separation between different ABIs, users and utilities. (#109713)

This patch re-lands https://github.com/llvm/llvm-project/pull/109338 and
fixes the various test failures.

--- Original description ---

* Adds an ABI object class hierarchy to implement the coroutine ABIs
(Switch, Asyc, and Retcon{Once})
* The ABI object improves the separation of the code related to users,
ABIs and utilities.
* No code changes are required by any existing users.
* Each ABI overrides delegate methods for initialization, building the
coroutine frame and splitting the coroutine, other methods may be added
later.
* CoroSplit invokes a generator lambda to instantiate the ABI object and
calls the ABI object to carry out its primary operations. In a follow-up
change this will be used to instantiated customized ABIs according to a
new intrinsic llvm.coro.begin.custom.abi.
* Note, in a follow-up change additional constructors will be added to
the ABI objects (Switch, Asyc, and AnyRetcon) to allow a set of
generator lambdas to be passed in from a CoroSplit constructor that will
also be added. The init() method is separate from the constructor to
avoid duplication of its code. It is a virtual method so it can be
invoked by CreateAndInitABI or potentially CoroSplit::run(). I wasn't
sure if we should call init() from within CoroSplit::run(),
CreateAndInitABI, or perhaps hard code a call in each constructor. One
consideration is that init() can change the IR, so perhaps it should
appear in CoroSplit::run(), but this looks a bit odd. Invoking init() in
the constructor would result in the call appearing 4 times per ABI
(after adding the new constructors). Invoking it in CreateAndInitABI
seems to be a balance between these.

See RFC for more info:
https://discourse.llvm.org/t/rfc-abi-objects-for-coroutines/81057


  Commit: d412cea8c4f26f451aee46641e384e8df62a5904
      https://github.com/llvm/llvm-project/commit/d412cea8c4f26f451aee46641e384e8df62a5904
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M clang/include/clang/AST/ComputeDependence.h
    M clang/include/clang/AST/Expr.h
    M clang/include/clang/AST/JSONNodeDumper.h
    M clang/include/clang/AST/OpenACCClause.h
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/AST/TextNodeDumper.h
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/OpenACCClauses.def
    M clang/include/clang/Basic/StmtNodes.td
    M clang/include/clang/Parse/Parser.h
    M clang/include/clang/Sema/SemaOpenACC.h
    M clang/include/clang/Serialization/ASTBitCodes.h
    M clang/lib/AST/ComputeDependence.cpp
    M clang/lib/AST/Expr.cpp
    M clang/lib/AST/ExprClassification.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/AST/JSONNodeDumper.cpp
    M clang/lib/AST/OpenACCClause.cpp
    M clang/lib/AST/StmtPrinter.cpp
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/Parse/ParseOpenACC.cpp
    M clang/lib/Sema/SemaExceptionSpec.cpp
    M clang/lib/Sema/SemaOpenACC.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    M clang/test/AST/ast-print-openacc-loop-construct.cpp
    M clang/test/ParserOpenACC/parse-clauses.c
    M clang/test/SemaOpenACC/compute-construct-device_type-clause.c
    M clang/test/SemaOpenACC/loop-construct-auto_seq_independent-clauses.c
    M clang/test/SemaOpenACC/loop-construct-device_type-clause.c
    A clang/test/SemaOpenACC/loop-construct-tile-ast.cpp
    A clang/test/SemaOpenACC/loop-construct-tile-clause.cpp
    M clang/tools/libclang/CIndex.cpp
    M clang/tools/libclang/CXCursor.cpp

  Log Message:
  -----------
  [OpenACC] Implement 'tile' attribute AST (#110999)

The 'tile' clause shares quite a bit of the rules with 'collapse', so a
followup patch will add those tests/behaviors. This patch deals with
adding the AST node.

The 'tile' clause takes a series of integer constant expressions, or *.
The asterisk is now represented by a new OpenACCAsteriskSizeExpr node,
else this clause is very similar to others.


  Commit: 313ad85dfa40a18f2edefd7ce2edc0528d5a554a
      https://github.com/llvm/llvm-project/commit/313ad85dfa40a18f2edefd7ce2edc0528d5a554a
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Coroutines/CoroSplit.h
    M llvm/lib/Transforms/Coroutines/CoroSplit.cpp

  Log Message:
  -----------
  [Coroutines] Fix warnings

This patch fixes:

  llvm/include/llvm/Transforms/Coroutines/CoroSplit.h:26:1: note: did
  you mean struct here?

  llvm/lib/Transforms/Coroutines/CoroSplit.cpp:2225:16: error: moving
  a local object in a return statement prevents copy elision
  [-Werror,-Wpessimizing-move]

  llvm/lib/Transforms/Coroutines/CoroSplit.cpp:2236:16: error: moving
  a local object in a return statement prevents copy elision
  [-Werror,-Wpessimizing-move]


  Commit: 848b20de76def980d02bb17bcb0bdc95381876df
      https://github.com/llvm/llvm-project/commit/848b20de76def980d02bb17bcb0bdc95381876df
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M libcxx/include/__memory/array_cookie.h
    M libcxx/include/__memory/unique_ptr.h
    M libcxx/test/std/utilities/smartptr/unique.ptr/unique.ptr.class/unique.ptr.observers/assert.subscript.pass.cpp
    M libcxx/test/std/utilities/smartptr/unique.ptr/unique.ptr.class/unique.ptr.observers/op_subscript.runtime.pass.cpp

  Log Message:
  -----------
  [libc++] Correctly handle custom deleters in hardened unique_ptr<T[]> (#110685)

It turns out that we can never do bounds-checking for unique_ptrs with
custom deleters, except when converting from a unique_ptr with a default
deleter to one with a custom deleter.

If we had an API like `std::make_unique` that allowed passing a custom
deleter, we could at least get bounds checking when the unique_ptr is
created through those APIs, but for now that is not possible.

Fixes #110683


  Commit: def9550c9b389eaa3adbac3089acf06a61a6fdb5
      https://github.com/llvm/llvm-project/commit/def9550c9b389eaa3adbac3089acf06a61a6fdb5
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

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

  Log Message:
  -----------
  [Hashing] Remove Clang<=11 -fno-pic workaround (#110952)

If the LLVM build and an API user have different
`(!defined(__clang__) || __clang_major__ > 11)` values, we will have a
non-benign ODR violation and some users prefer a clear error to silent
breakage.

The Clang<=11 -fno-pic x86-64 workaround is likely not useful anyway
because builds are mostly PIC (`POSITION_INDEPENDENT_CODE` or
LLVM_ENABLE_PIC).


  Commit: caa265e01cfc943752ff2c4da61a4ccc161938a1
      https://github.com/llvm/llvm-project/commit/caa265e01cfc943752ff2c4da61a4ccc161938a1
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    A llvm/test/Transforms/InstCombine/new-inst-dbgloc-overwrite.ll

  Log Message:
  -----------
  [DebugInfo][InstCombine] Do not overwrite prior DILocation for new Insts (#108565)

When InstCombine replaces an old instruction with a new instruction, it
copies !dbg and !annotation metadata from old to new. For some
InstCombine patterns we set a specific DILocation on the new instruction
prior to insertion, however, which more accurately reflects the new
instruction. This more specific DILocation may be overwritten on
insertion by a less appropriate one, resulting in a less correct line
mapping. This patch changes this behaviour to only copy the DILocation
from old to new if the new instruction has no existing DILocation (which
will always be the case for a new instruction unless InstCombine has
specifically set one).


  Commit: 487686b82e9a20bd090704e04c8cbf7207dd6527
      https://github.com/llvm/llvm-project/commit/487686b82e9a20bd090704e04c8cbf7207dd6527
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/RISCV/reduce-fadd.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-fp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vreductions-fp-vp.ll

  Log Message:
  -----------
  [SDAG][RISCV] Don't promote VP_REDUCE_{FADD,FMUL} (#111000)

In https://reviews.llvm.org/D153848, promotion was added for a variety
of f16 ops with zvfhmin, including VP reductions.

However I don't believe it's correct to promote f16 fadd or fmul
reductions to f32 since we need to round the intermediate results.

Today if we lower @llvm.vp.reduce.fadd.nxv1f16 on RISC-V, we'll get two
different results depending on whether we compiled with +zvfh or
+zvfhmin, for example with a 3 element reduction:

	; v9 = [0.1563, 5.97e-8, 0.00006104]

	; zvfh
	vsetivli x0, 3, e16, m1, ta, ma
	vmv.v.i v8, 0
	vfredosum.vs v8, v9, v8
	vfmv.f.s fa0, v8
	; fa0 = 0.1563

	; zvfhmin
	vsetivli x0, 3, e16, m1, ta, ma
	vfwcvt.f.f.v v10, v9
	vsetivli x0, 3, e32, m1, ta, ma
	vmv.v.i v8, 0
	vfredosum.vs v8, v10, v8
	vfmv.f.s fa0, v8
	fcvt.h.s fa0, fa0
	; fa0 = 0.1564

This same thing happens with reassociative reductions e.g. vfredusum.vs,
and this also applies for bf16.

I couldn't find anything in the LangRef for reductions that suggest the
excess precision is allowed. There may be something we can do in Clang
with -fexcess-precision=fast, but I haven't looked into this yet.

I presume the same precision issue occurs with fmul, but not with
fmin/fmax/fminimum/fmaximum.

I can't think of another way of lowering these other than scalarizing,
and we can't scalarize scalable vectors, so this just removes the
promotion and adjusts the cost model to return an invalid cost. (It
looks like we also don't currently cost fmul reductions, so presumably
they also have an invalid cost?)

I think this should be enough to stop the loop vectorizer or SLP from
emitting these intrinsics.


  Commit: 06c8210a67a47a3693e7c8932e8ace0302bd1eb7
      https://github.com/llvm/llvm-project/commit/06c8210a67a47a3693e7c8932e8ace0302bd1eb7
  Author: RolandF77 <55763885+RolandF77 at users.noreply.github.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/PowerPC/vsr_load_32_64.ll

  Log Message:
  -----------
  update P7 32-bit partial vector load cost (#108261)

Update cost model to reflect codegen change to use lfiwzx 
for 32-bit partial vector loads on pwr7 with
https://github.com/llvm/llvm-project/pull/104507.


  Commit: 81fcdc63594d94aa2111422e758a24eb9fc88066
      https://github.com/llvm/llvm-project/commit/81fcdc63594d94aa2111422e758a24eb9fc88066
  Author: Tor Shepherd <tor.aksel.shepherd at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M clang-tools-extra/clangd/refactor/tweaks/CMakeLists.txt
    A clang-tools-extra/clangd/refactor/tweaks/SwapBinaryOperands.cpp
    M clang-tools-extra/clangd/unittests/CMakeLists.txt
    A clang-tools-extra/clangd/unittests/tweaks/SwapBinaryOperandsTests.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M llvm/utils/gn/secondary/clang-tools-extra/clangd/refactor/tweaks/BUILD.gn
    M llvm/utils/gn/secondary/clang-tools-extra/clangd/unittests/BUILD.gn

  Log Message:
  -----------
  [clangd] Add CodeAction to swap operands to binary operators (#78999)

This MR resolves https://github.com/llvm/llvm-project/issues/78998


  Commit: 43d51d63af7e51853898528be0000cbc421dcafa
      https://github.com/llvm/llvm-project/commit/43d51d63af7e51853898528be0000cbc421dcafa
  Author: vporpo <vporpodas at google.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/Instruction.h
    A llvm/include/llvm/SandboxIR/IntrinsicInst.h
    M llvm/include/llvm/SandboxIR/Value.h
    M llvm/unittests/SandboxIR/CMakeLists.txt
    A llvm/unittests/SandboxIR/IntrinsicInstTest.cpp

  Log Message:
  -----------
  [SandboxIR] Implement IntrinsicInst (#110900)

This patch implements sandboxir::IntrinsicInst mirroring
llvm::IntrinsicInst.


  Commit: ef66936df4e4746c4af0f224796e0070b0f14138
      https://github.com/llvm/llvm-project/commit/ef66936df4e4746c4af0f224796e0070b0f14138
  Author: Michael Jones <michaelrj at google.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M libc/src/sys/socket/linux/recv.cpp
    M libc/src/sys/socket/linux/recvfrom.cpp
    M libc/src/sys/socket/linux/recvmsg.cpp
    M libc/src/sys/socket/linux/send.cpp
    M libc/src/sys/socket/linux/sendmsg.cpp
    M libc/src/sys/socket/linux/sendto.cpp
    M libc/src/sys/socket/recvfrom.h

  Log Message:
  -----------
  [libc] Fix send and recv functions (#110936)

There were some errors in the implementation. Oops. This patch fixes
those.


  Commit: 2396c469994e094f7a146f4fa9f29990904ed73b
      https://github.com/llvm/llvm-project/commit/2396c469994e094f7a146f4fa9f29990904ed73b
  Author: Fabio D'Urso <fdurso at google.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/aarch64/headers.txt
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/arm/headers.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/riscv/headers.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/config/linux/x86_64/headers.txt
    M libc/include/CMakeLists.txt
    M libc/include/llvm-libc-macros/CMakeLists.txt
    A libc/include/llvm-libc-macros/malloc-macros.h
    A libc/include/malloc.h.def
    A libc/newhdrgen/yaml/malloc.yaml
    M libc/spec/gnu_ext.td
    M libc/src/stdlib/CMakeLists.txt

  Log Message:
  -----------
  [libc] Add malloc.h header defining mallopt (#110908)

This patch adds the malloc.h header, declaring Scudo's mallopt
entrypoint when built LLVM_LIBC_INCLUDE_SCUDO, as well as two
constants that can be passed to it (M_PURGE and M_PURGE_ALL).

Due to limitations of the current build system, only the declaration
of mallopt is gated by LLVM_LIBC_INCLUDE_SCUDO, and the two new
constants are defined irrespectively of it. We may need to refine
this in the future.

Note that some allocators other than Scudo may offer a mallopt
implementation too (e.g. man 3 mallopt), albeit with different
supported input values. This patch only supports the specific case of
LLVM_LIBC_INCLUDE_SCUDO.


  Commit: 144dc4c3b152ccc7da340c0493da0308a577e5ad
      https://github.com/llvm/llvm-project/commit/144dc4c3b152ccc7da340c0493da0308a577e5ad
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

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

  Log Message:
  -----------
  [RISCV][GISel] Remove some unneeded isel patterns.

These use riscv_ SDNodes that don't have GISel equivalents yet or
for extensions that we haven't added tests for yet.


  Commit: b0c9f023066e5ee9ca023dc0a94b30ed5e4f8362
      https://github.com/llvm/llvm-project/commit/b0c9f023066e5ee9ca023dc0a94b30ed5e4f8362
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/unittests/SandboxIR/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 43d51d63af7e


  Commit: a4516da49f8bda1b99d21dae7e1caba772d7182c
      https://github.com/llvm/llvm-project/commit/a4516da49f8bda1b99d21dae7e1caba772d7182c
  Author: Jorge Botto <Jorge.botto.16 at ucl.ac.uk>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    A llvm/test/CodeGen/AArch64/icmp-ult-eq-fold.ll
    M llvm/test/CodeGen/AArch64/signed-truncation-check.ll

  Log Message:
  -----------
  [AArch64] - Fold and and cmp into tst (#110347)

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

https://godbolt.org/z/nfj8xsb1Y

The following pattern:

```
%2 = and i32 %0, 254
%3 = icmp eq i32 %2, 0
```
is optimised by instcombine into:

```%3 = icmp ult i32 %0, 2```

However, post instcombine leads to worse aarch64 than the unoptimised version.

Pre instcombine:
```
        tst     w0, #0xfe
        cset    w0, eq
        ret
```
Post instcombine:
```
        and     w8, w0, #0xff
        cmp     w8, #2
        cset    w0, lo
        ret
```


In the unoptimised version, SelectionDAG converts `SETCC (AND X 254) 0 EQ` into `CSEL 0 1 1 (ANDS X 254)`, which gets emitted as a `tst`.

In the optimised version, SelectionDAG converts `SETCC (AND X 255) 2 ULT` into `CSEL 0 1 2 (SUBS (AND X 255) 2)`, which gets emitted as an `and`/`cmp`.

This PR adds an optimisation to `AArch64ISelLowering`, converting `SETCC (AND X Y) Z ULT` into `SETCC (AND X (Y & ~(Z - 1))) 0 EQ` when `Z` is a power of two. This makes SelectionDAG/Codegen produce the same optimised code for both examples.


  Commit: a72248cb65a74aff3cc5aef8d2807fc7efb4fb75
      https://github.com/llvm/llvm-project/commit/a72248cb65a74aff3cc5aef8d2807fc7efb4fb75
  Author: Paul Robinson <pogo.work at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M clang/test/CodeGen/X86/x86-intrinsics-imm.c

  Log Message:
  -----------
  Drop dangling comments from a recent test


  Commit: c1959813d6a650de7626ef9b7a7313369277f49e
      https://github.com/llvm/llvm-project/commit/c1959813d6a650de7626ef9b7a7313369277f49e
  Author: Kyungwoo Lee <kyulee at meta.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M clang/lib/CodeGen/BackendUtil.cpp
    M llvm/include/llvm/LTO/LTOBackend.h
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/LTO/LTOBackend.cpp

  Log Message:
  -----------
  [CGData][ThinLTO][NFC] Prep for two-codegen rounds (#90934)

This is NFC for https://github.com/llvm/llvm-project/pull/90933.

- Create a lambda function, `RunBackends`, to group the backend
operations into a single function.
- Explicitly pass the `CodeGenOnly` argument to thinBackend, instead of
depending on a configuration value.

Depends on https://github.com/llvm/llvm-project/pull/90304.
This is a patch for
https://discourse.llvm.org/t/rfc-enhanced-machine-outliner-part-2-thinlto-nolto/78753.


  Commit: 00c1989a01f4dfdaa118bbfc300165b6507712e6
      https://github.com/llvm/llvm-project/commit/00c1989a01f4dfdaa118bbfc300165b6507712e6
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M lldb/source/Plugins/UnwindAssembly/x86/x86AssemblyInspectionEngine.cpp
    M lldb/unittests/UnwindAssembly/x86/Testx86AssemblyInspectionEngine.cpp

  Log Message:
  -----------
  [lldb] Improve mid-function epilogue scanning for x86 (#110965)

The x86 assembly instruction scanner creates incorrect UnwindPlans when
a mid-function epilogue has a non-epilogue instruction in it.

The x86 instruction analysis which creates an UnwindPlan handles
mid-function epilogues by tracking "epilogue instructions" (register
loads from stack, stack pointer increasing, etc) and any UnwindPlan
updates which are NOT epilogue instructions update the "prologue
UnwindPlan" saved row. It detects a LEAVE/RET/unconditional JMP out of
the function and after that instruction, re-instates the "prologue Row".

There's a parallel piece of data tracked across the duration of the
function, current_sp_bytes_offset_from_fa, and we reflect the "value
after prologue instructions" in
prologue_completed_sp_bytes_offset_from_cfa. When the CFA is calculated
in terms of the frame pointer ($ebp/$rbp), we don't add changes to the
stack pointer to the UnwindPlan, so this separate mechanism is used for
the "current value" and the "last value at prologue setup".

(the x86 UnwindPlan generated writes "sp=CFA+0" as a register rule which
is formally correct, but it could also track the stack pointer value as
sp=$rsp+<x> and update this register rule every time $rsp is modified.)

This leads to a bug when there is an instruction in an epilogue which
isn't recognzied as an epilogue instruction.
prologue_completed_sp_bytes_offset_from_cfa is always set to the value
of current_sp_bytes_offset_from_fa unless the current instruction is an
epilogue instruction. With a non-epilogue instruction in the middle of
the epilogue, we suddenly copy a current_sp_bytes_offset_from_fa value
from the middle of the epilogue into this
prologue_completed_sp_bytes_offset_from_cfa. Once the epilogue is
finished, we restore the "prologue Row" and
prologue_completed_sp_bytes_offset_from_cfa. But now $rsp has a very
incorrect value in it.

This patch tracks when we've updated current_sp_bytes_offset_from_fa in
the current instruction analysis. If it was updated looking at an
epilogue instruction, `is_epilogue` will be set correctly. Otherwise
it's a "prologue" instruction and we should update
prologue_completed_sp_bytes_offset_from_cfa. Any instruction that is
unrecognized will leave prologue_completed_sp_bytes_offset_from_cfa
unmodified.

The actual instruction we hit this with was a BTRQ but I added a NOP to
the unit test which is only 1 byte and made the update to the unit test
a little simpler. This bug is hit with a NOP just as well.

UnwindAssemblyInstEmulation has a much better algorithm for handling
mid-function epilogues, which "forward" the current unwind state Row
when it sees branches within the function, to the target instruction
offset. This avoids detecting prologue/epilogue instructions altogether.

rdar://137153323


  Commit: 2e89312419c5f7875c947fcf79ea0446cf65a287
      https://github.com/llvm/llvm-project/commit/2e89312419c5f7875c947fcf79ea0446cf65a287
  Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M lldb/docs/man/lldb-server.rst
    M lldb/docs/resources/qemu-testing.rst
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerPlatform.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerPlatform.h
    M lldb/test/API/commands/platform/launchgdbserver/TestPlatformLaunchGDBServer.py
    R lldb/test/Shell/lldb-server/TestGdbserverPort.test
    R lldb/tools/lldb-server/Acceptor.cpp
    R lldb/tools/lldb-server/Acceptor.h
    M lldb/tools/lldb-server/CMakeLists.txt
    M lldb/tools/lldb-server/lldb-gdbserver.cpp
    M lldb/tools/lldb-server/lldb-platform.cpp
    M lldb/unittests/Process/gdb-remote/CMakeLists.txt
    R lldb/unittests/Process/gdb-remote/PortMapTest.cpp

  Log Message:
  -----------
  [lldb] Removed gdbserver ports map from lldb-server (#104238)

Listen to gdbserver-port, accept the connection and run `lldb-server gdbserver --fd` on all platforms.
Parameters --min-gdbserver-port and --max-gdbserver-port are deprecated now.

This is the part 2 of #101283.

Fixes #97537.


  Commit: 8789a7ef7ce56d95e97cc3f11d37d9937b3d8017
      https://github.com/llvm/llvm-project/commit/8789a7ef7ce56d95e97cc3f11d37d9937b3d8017
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

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

  Log Message:
  -----------
  [gn build] Port 2e89312419c5


  Commit: 4f0ad8d80a04faabc715d355744ba887c74e37f1
      https://github.com/llvm/llvm-project/commit/4f0ad8d80a04faabc715d355744ba887c74e37f1
  Author: Julian Schmidt <git.julian.schmidt at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/ClangTidy.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/infrastructure/verify-config.cpp

  Log Message:
  -----------
  [clang-tidy] support static analyzer checker configuration in `--verify-config` (#109523)

Previously the configuration options for the Clang Static Analyzer
checkers were not recognized for the verification of the configuration
with `--verify-config`.
Add all available configuration options of CSA checkers as possible
configuration options in a clang-tidy config.


  Commit: 1b4b0c4c45edbb40b23d2c6c19744713f6e49202
      https://github.com/llvm/llvm-project/commit/1b4b0c4c45edbb40b23d2c6c19744713f6e49202
  Author: Ilya V <152324710+joviliast at users.noreply.github.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/test/Dialect/LLVMIR/invalid.mlir
    M mlir/test/Dialect/LLVMIR/roundtrip.mlir
    M mlir/test/Target/LLVMIR/llvmir.mlir

  Log Message:
  -----------
  Allow fixed vector operand for LLVM_AtomicRMWOp (#110553)

This PR fixes `LLVM_AtomicRMWOp` allowed semantics and verifier logic to
enable building of `LLVM_AtomicRMWOp` with fixed vectors of compatible
fp values
as operands for fp rmw operation.

See also: https://llvm.org/docs/LangRef.html#id231

Signed-off-by: Ilya Veselov <iveselov.nn at gmail.com>


  Commit: c098435eaa5d6bf2a00ac0e674914cd97790ab5b
      https://github.com/llvm/llvm-project/commit/c098435eaa5d6bf2a00ac0e674914cd97790ab5b
  Author: Joshua Batista <jbatista at microsoft.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/lib/Sema/SemaInit.cpp
    A clang/test/CodeGenHLSL/builtins/cross.hlsl
    A clang/test/SemaHLSL/BuiltIns/cross-errors.hlsl
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    A llvm/test/CodeGen/DirectX/cross.ll
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/cross.ll

  Log Message:
  -----------
  Add cross builtins and cross HLSL function to DirectX and SPIR-V backend (#109180)

This PR adds the step intrinsic and an HLSL function that uses it.
The SPIRV backend is also implemented.

Used https://github.com/llvm/llvm-project/pull/106471 as a reference.
Fixes https://github.com/llvm/llvm-project/issues/99095


  Commit: 759a7b5933654b67b9b7089d9aef2ca287cc38fa
      https://github.com/llvm/llvm-project/commit/759a7b5933654b67b9b7089d9aef2ca287cc38fa
  Author: Aman LaChapelle <aman.lachapelle at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M mlir/include/mlir/IR/AttrTypeBase.td
    M mlir/include/mlir/IR/Attributes.h
    M mlir/include/mlir/IR/BuiltinLocationAttributes.td
    M mlir/include/mlir/IR/Location.h
    M mlir/lib/AsmParser/Parser.cpp
    M mlir/lib/IR/AsmPrinter.cpp
    M mlir/lib/IR/Location.cpp
    M mlir/test/IR/invalid-locations.mlir
    M mlir/test/IR/locations.mlir
    M mlir/test/IR/pretty-locations.mlir
    M mlir/test/lib/Dialect/Test/TestAttrDefs.td
    M mlir/unittests/IR/CMakeLists.txt
    A mlir/unittests/IR/LocationTest.cpp

  Log Message:
  -----------
  [mlir] Add the ability to define dialect-specific location attrs. (#105584)

This patch adds the capability to define dialect-specific location
attrs. This is useful in particular for defining location structure that
doesn't necessarily fit within the core MLIR location hierarchy, but
doesn't make sense to push upstream (i.e. a custom use case).

This patch adds an AttributeTrait, `IsLocation`, which is tagged onto
all the builtin location attrs, as well as the test location attribute.
This is necessary because previously LocationAttr::classof only returned
true if the attribute was one of the builtin location attributes, and
well, the point of this patch is to allow dialects to define their own
location attributes.

There was an alternate implementation I considered wherein LocationAttr
becomes an AttrInterface, but that was discarded because there are
likely to be *many* locations in a single program, and I was concerned
that forcing every MLIR user to pay the cost of the additional
lookup/dispatch was unacceptable. It also would have been a *much* more
invasive change. It would have allowed for more flexibility in terms of
pretty printing, but it's unclear how useful/necessary that flexibility
would be given how much customizability there already is for attribute
definitions.


  Commit: 9c99e07175c946e989b481a2a1342f0a395f10ca
      https://github.com/llvm/llvm-project/commit/9c99e07175c946e989b481a2a1342f0a395f10ca
  Author: Adrian Vogelsgesang <avogelsgesang at salesforce.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M lldb/tools/lldb-dap/README.md

  Log Message:
  -----------
  [lldb-dap][docs] Fix README (#110982)

Apparently, the markdown parser used by the VSCode Marketplace does not
support escaped backticks the same way that Github does. This leads to
the table of launch / attach options to be rendered as an unformatted
blob instead of as a table.

See https://marketplace.visualstudio.com/items?itemName=llvm-vs-code-extensions.lldb-dap

This commit fixes the issue by completely avoiding escaped backticks in
the README.

While at it, I also fixed a couple of typos / small wording issues.
Also, I reordered the ways to procure the `lldb-dap` binary in priority
order: Most users should prefer the toolchain-provided binary over
building it from source.


  Commit: 45582ed2406fa3c094033da69d11e0d26156da15
      https://github.com/llvm/llvm-project/commit/45582ed2406fa3c094033da69d11e0d26156da15
  Author: Vasileios Porpodas <vporpodas at google.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp

  Log Message:
  -----------
  [SandboxVec][DAG][NFC] Rename isMemDepCandidate() to isMemDepNodeCandidate()


  Commit: a1ff427558fc348d4ac9632e75872e7425a8df31
      https://github.com/llvm/llvm-project/commit/a1ff427558fc348d4ac9632e75872e7425a8df31
  Author: vporpo <vporpodas at google.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/Utils.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
    M llvm/unittests/SandboxIR/UtilsTest.cpp

  Log Message:
  -----------
  [SandboxIR][NFC] Move intrinsic code to Utils::isMemIntrinsic() (#111019)

This patch moves the intrinsic specific code from
Utils::isMemDepCandidate() to a new function: Utils::isMemIntrinsic().


  Commit: 36929955f5f0ff9b7ab1314dcbbb374d52f18a42
      https://github.com/llvm/llvm-project/commit/36929955f5f0ff9b7ab1314dcbbb374d52f18a42
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp

  Log Message:
  -----------
  [CodeGen] Fix warnings

This patch fixes:

  clang/lib/CodeGen/CGBuiltin.cpp:18677:11: error: unused variable
  'XVecTy1' [-Werror,-Wunused-variable]

  clang/lib/CodeGen/CGBuiltin.cpp:18678:11: error: unused variable
  'XVecTy2' [-Werror,-Wunused-variable]


  Commit: c08d7b3de7409aecadd7f9edfe0f3a1ce28a6374
      https://github.com/llvm/llvm-project/commit/c08d7b3de7409aecadd7f9edfe0f3a1ce28a6374
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/isel-amdgcn-cs-chain-intrinsic-w32.ll
    M llvm/test/CodeGen/AMDGPU/isel-amdgcn-cs-chain-intrinsic-w64.ll
    A llvm/test/CodeGen/AMDGPU/tail-call-uniform-target-in-vgprs-issue110930.ll

  Log Message:
  -----------
  AMDGPU: Fix verifier error on tail call target in vgprs (#110984)

We allow tail calls of known uniform function pointers. This
would produce a verifier error if the uniform value is in VGPRs.
Insert readfirstlanes just in case this occurs, which will fold
out later if it is unnecessary.

GlobalISel should need a similar fix, but it currently does not
attempt tail calls of indirect calls.

Fixes #107447
Fixes subissue of #110930


  Commit: 6c137b75f3f62c97678efced23943fee1081fb2f
      https://github.com/llvm/llvm-project/commit/6c137b75f3f62c97678efced23943fee1081fb2f
  Author: Adrian Vogelsgesang <avogelsgesang at salesforce.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M lldb/docs/resources/lldbdap.md
    M lldb/tools/lldb-dap/README.md
    M lldb/tools/lldb-dap/package.json

  Log Message:
  -----------
  [lldb-dap][docs] Improve documentation for contributors (#110987)

This commit extends the developer docs for `lldb-dap`. It also adds a
short "Contributing" section to the user-facing README.

Last but not least, it updates the `repository` in the package.json to
point to the actual source of truth for the source code, instead of
pointing to its mirrored repository. I hope that the VS Code Marketplace
properly supports the `directory` property. Unfortunately, I have no way
to test this before merging this Pull Request.


  Commit: 61f8a7f618901797ee8663389a29722f29216a96
      https://github.com/llvm/llvm-project/commit/61f8a7f618901797ee8663389a29722f29216a96
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

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

  Log Message:
  -----------
  [bazel] Port 4f0ad8d80a04faabc715d355744ba887c74e37f1 (#111034)


  Commit: cd6858c74ee76f3270d39f110a31ef1b8852695f
      https://github.com/llvm/llvm-project/commit/cd6858c74ee76f3270d39f110a31ef1b8852695f
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    A llvm/test/Transforms/InstCombine/icmp-signmask.ll

  Log Message:
  -----------
  [InstCombine] Add tests for folding `(icmp eq/ne (and X, -P2), INT_MIN)`; NFC


  Commit: a64643688526114b50c25b3eda8a57855bd2be87
      https://github.com/llvm/llvm-project/commit/a64643688526114b50c25b3eda8a57855bd2be87
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/test/Transforms/InstCombine/icmp-signmask.ll
    M llvm/test/Transforms/InstCombine/icmp.ll

  Log Message:
  -----------
  [InstCombine] Folding `(icmp eq/ne (and X, -P2), INT_MIN)`

Folds to `(icmp slt/sge X, (INT_MIN + P2))`

Proofs: https://alive2.llvm.org/ce/z/vpNFY5

Closes #110880


  Commit: 5114758b1cacb9c93c6a3c5b842d67b06d1152f7
      https://github.com/llvm/llvm-project/commit/5114758b1cacb9c93c6a3c5b842d67b06d1152f7
  Author: Steven Perron <stevenperron at google.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/docs/SPIRVUsage.rst
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVDuplicatesTracker.h
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
    A llvm/test/CodeGen/SPIRV/ShaderBufferImage.ll
    A llvm/test/CodeGen/SPIRV/ShaderImage.ll

  Log Message:
  -----------
  [SPIRV] Make access qualifier optional for spirv.Image type (#110852)

The SPIRV backend has a special type named `spirv.Image`. This type is
meant to correspond to the OpTypeImage instruction in SPIR-V, but there
is one difference. The access qualifier operand in OpTypeImage is
optional. On top of that, the access qualifiers are only valid for
kernels, and not for shaders.

We want to reuse this type when generating shader from HLSL, but we
can't use the access qualifier. This commit make the access qualifer
optional in the target extension type.

The same is done for `spirv.SampledImage`.

Contributes to #81036


  Commit: 9abb97f9663a27fe5b8e346ed557b3435aa9ec2f
      https://github.com/llvm/llvm-project/commit/9abb97f9663a27fe5b8e346ed557b3435aa9ec2f
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/test/CXX/temp/temp.arg/temp.arg.template/p3-0x.cpp
    M clang/test/CXX/temp/temp.fct.spec/temp.deduct/temp.deduct.type/p9-0x.cpp
    M clang/test/SemaTemplate/cwg2398.cpp
    M clang/test/SemaTemplate/temp_arg_template_p0522.cpp
    M libcxx/test/libcxx/type_traits/is_specialization.verify.cpp

  Log Message:
  -----------
  [clang] Handle template argument conversions for non-pack param to pack argument (#110963)

This fixes a regression introduced in #96023, reported in
https://github.com/llvm/llvm-project/issues/110231#issuecomment-2389131854


  Commit: 000e790be35b77a01872851646d54432a203542c
      https://github.com/llvm/llvm-project/commit/000e790be35b77a01872851646d54432a203542c
  Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

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

  Log Message:
  -----------
  [lldb] Fixed IPv6 host formatting in #104238 (#111033)

This patch fixes the following problems
https://lab.llvm.org/buildbot/#/builders/162/builds/7720


  Commit: 6f20c3099e733afb56e1d2fb9b45bbd1802a4864
      https://github.com/llvm/llvm-project/commit/6f20c3099e733afb56e1d2fb9b45bbd1802a4864
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/docs/CommandGuide/lit.rst
    M llvm/test/TableGen/anonymous-location.td
    M llvm/utils/lit/lit/TestRunner.py
    A llvm/utils/lit/tests/substitutions.py

  Log Message:
  -----------
  [LIT] Add support for `%basename_s` to get base name of source file (#110993)

Add support for `%basename_s` pattern in the RUN commands to get the
base name of the source file, and adopt it in a TableGen LIT test.


  Commit: 6a1bdd9a2e2a089c85d24dd5d934681fa22cf9ed
      https://github.com/llvm/llvm-project/commit/6a1bdd9a2e2a089c85d24dd5d934681fa22cf9ed
  Author: Mike Hommey <mh at glandium.org>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M lld/COFF/Driver.cpp
    M lld/COFF/SymbolTable.cpp
    M lld/COFF/SymbolTable.h
    A lld/test/COFF/undefined_lazy.test

  Log Message:
  -----------
  [LLD][COFF] Do as many passes of resolveRemainingUndefines as necessary for undefined lazy symbols (#109082)


  Commit: 428ae0f12e29eff1ddcaf59bdcce904ec056963e
      https://github.com/llvm/llvm-project/commit/428ae0f12e29eff1ddcaf59bdcce904ec056963e
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.h
    M llvm/test/CodeGen/AMDGPU/isel-amdgcn-cs-chain-intrinsic-w32.ll
    M llvm/test/CodeGen/AMDGPU/isel-amdgcn-cs-chain-intrinsic-w64.ll
    A llvm/test/CodeGen/AMDGPU/tail-call-inreg-arguments.error.ll
    A llvm/test/CodeGen/AMDGPU/tail-call-inreg-arguments.ll

  Log Message:
  -----------
  AMDGPU: Do not tail call if an inreg argument requires waterfalling (#111002)

If we have a divergent value passed to an outgoing inreg argument,
the call needs to be executed in a waterfall loop and thus cannot
be tail called.

The waterfall handling of arbitrary calls is broken on the selectiondag
path, so some of these cases still hit an error later.

I also noticed the argument evaluation code in isEligibleForTailCallOptimization
is not correctly accounting for implicit argument assignments. It also seems
inreg codegen is generally broken; we are assigning arguments to the reserved
private resource descriptor.


  Commit: fc4b1a303b296d02f6243a083510c4ee7f290ab0
      https://github.com/llvm/llvm-project/commit/fc4b1a303b296d02f6243a083510c4ee7f290ab0
  Author: Abid Qadeer <haqadeer at amd.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
    M flang/lib/Optimizer/Transforms/DebugTypeGenerator.h
    M flang/test/Integration/debug-assumed-size-array.f90
    M flang/test/Integration/debug-fixed-array-type-2.f90
    A flang/test/Integration/debug-variable-array-dim.f90
    M flang/test/Transforms/debug-107988.fir
    A flang/test/Transforms/debug-assumed-shape-array-2.fir
    M flang/test/Transforms/debug-assumed-size-array.fir
    M flang/test/Transforms/debug-fixed-array-type.fir
    A flang/test/Transforms/debug-variable-array-dim.fir
    M flang/test/Transforms/debug-variable-char-len.fir

  Log Message:
  -----------
  [flang][debug] Handle array types with variable size/bounds. (#110686)

The debug information generated by flang did not handle the cases where
dimension or lower bounds of the arrays were variable. This PR fixes
this issue. It will help distinguish assumed size arrays from cases
where array size are variable. It also handles the variable lower bounds
for assumed shape arrays.
    
Fixes #98879.


  Commit: 47ff13b45b52a2b0372aa47d5a0f4035ecdcfa86
      https://github.com/llvm/llvm-project/commit/47ff13b45b52a2b0372aa47d5a0f4035ecdcfa86
  Author: Augusto Noronha <augusto2112 at me.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/optimized/TestDAP_optimized.py

  Log Message:
  -----------
  [lldb-dap] Disable TestDAP_optimized under ASAN (#111063)

This test is failing on green dragon and I couldn't figure out why,
disabling it for now under ASAN to get the bot green.

Opened an issue (https://github.com/llvm/llvm-project/issues/111061) to
track the problem.


  Commit: 8ee7d911efb2d3353adcc825e112f55021920846
      https://github.com/llvm/llvm-project/commit/8ee7d911efb2d3353adcc825e112f55021920846
  Author: Youngsuk Kim <youngsuk.kim at hpe.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M clang/lib/CodeGen/MicrosoftCXXABI.cpp

  Log Message:
  -----------
  [clang][MicrosoftCXXABI] Avoid Type::getPointerTo() (NFC) (#110915)

`llvm::Type::getPointerTo()` is to be deprecated & removed soon.


  Commit: b977ec6c1fc37c5a4e787554d0f2ce0ef243daa8
      https://github.com/llvm/llvm-project/commit/b977ec6c1fc37c5a4e787554d0f2ce0ef243daa8
  Author: ChiaHungDuan <chiahungduan at google.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/primary64.h

  Log Message:
  -----------
  [scudo] Fix the loading of a signed value to an unsigned storage (#111039)


  Commit: c20b90ab8557b38efe8e8e993d41d8c08b798267
      https://github.com/llvm/llvm-project/commit/c20b90ab8557b38efe8e8e993d41d8c08b798267
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M lldb/tools/debugserver/source/DNB.cpp

  Log Message:
  -----------
  [lldb][debugserver] Check if Rosetta debugserver exists (#110943)

If lldb tries to attach to a process that is marked 'Translated' with
debugserver, it will exec the Rosetta debugserver to handle the debug
session without checking if it is present. If there is a configuration
that is somehow missing this, it will fail poorly.

rdar://135641680


  Commit: cdfdc857cbab0418b7e5116fd4255eb5566588bd
      https://github.com/llvm/llvm-project/commit/cdfdc857cbab0418b7e5116fd4255eb5566588bd
  Author: Michael Jones <michaelrj at google.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M libc/newhdrgen/yaml/sys/socket.yaml
    M libc/src/sys/socket/linux/recv.cpp
    M libc/src/sys/socket/linux/recvfrom.cpp
    M libc/src/sys/socket/linux/recvmsg.cpp
    M libc/src/sys/socket/recv.h
    M libc/src/sys/socket/recvfrom.h
    M libc/src/sys/socket/recvmsg.h

  Log Message:
  -----------
  [libc] Small recvfrom fixes (yaml, unpoison) (#111020)

Forgot to update the newhdrgen yaml (old headergen is fine) and forgot
to unpoison addrlen. This patch fixes those.


  Commit: 7b9c6a7c3c6441bfea4214fa2221235819c22f7a
      https://github.com/llvm/llvm-project/commit/7b9c6a7c3c6441bfea4214fa2221235819c22f7a
  Author: vporpo <vporpodas at google.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/Utils.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
    M llvm/unittests/SandboxIR/UtilsTest.cpp
    M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp

  Log Message:
  -----------
  [SandboxVec][DAG][NFC] Move functions from Utils to DependencyGraph (#111031)

This patch moves:
- Utils::isStackSaveOrRestoreIntrinsic()
- Utils::isMemIntrinsic()
- Utils::isMemDepCandidate()

to DGNode because they no longer require LLVM IR access and are used
only by the DAG.


  Commit: ae635d6f997a28c81a01bfffe70fd849d0eafcca
      https://github.com/llvm/llvm-project/commit/ae635d6f997a28c81a01bfffe70fd849d0eafcca
  Author: William G Hatch <william at hatch.uno>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
    M llvm/test/DebugInfo/NVPTX/cu-range-hole.ll
    M llvm/test/DebugInfo/NVPTX/dbg-declare-alloca.ll
    M llvm/test/DebugInfo/NVPTX/debug-addr-class.ll
    M llvm/test/DebugInfo/NVPTX/debug-empty.ll
    M llvm/test/DebugInfo/NVPTX/debug-file-loc.ll
    M llvm/test/DebugInfo/NVPTX/debug-info.ll
    M llvm/test/DebugInfo/NVPTX/debug-loc-offset.ll

  Log Message:
  -----------
  [NVPTX] add support for .debug_loc section (#110905)

Enable .debug_loc section for NVPTX backend.

This commit makes NVPTX omit DW_AT_low_pc (and DW_AT_high_pc) for
DW_TAG_compile_unit. This is because cuda-gdb uses the compile unit's
low_pc as a base address, and adds the addresses in the debug_loc
section to it. Removing low_pc is equivalent to setting that base
address to zero, so addition doesn't break the location ranges.
Additionally, this patch forces debug_loc label emission to emit single
labels with no subtraction or base. This would not be necessary if we
could emit `label1 - label2` expressions in PTX. The PTX documentation
at
https://docs.nvidia.com/cuda/parallel-thread-execution/index.html#debugging-directives-section
makes it seem like this is supported, but it doesn't actually work. I
believe when that documentation says that you can subtract “label
addresses between labels in the same dwarf section”, it doesn't merely
mean that the labels need to be in the same section as each other, but
in fact they need to be in the same section as the use. If support for
label subtraction is supported such that in the debug_loc section you
can subtract labels from the main code section, then we can remove the
workarounds added in this PR.

Also, since this now emits valid .debug_loc sections, it replaces the
empty .debug_loc to force existence of at least one debug section with
an empty .debug_macinfo section, which matches what nvcc does.


  Commit: 635db5ee97d5b3c53aea1fce8ba26ac388157187
      https://github.com/llvm/llvm-project/commit/635db5ee97d5b3c53aea1fce8ba26ac388157187
  Author: vporpo <vporpodas at google.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/Instruction.h
    M llvm/lib/SandboxIR/Instruction.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp

  Log Message:
  -----------
  [SandboxIR] Implement InsertPosition (#110730)

This patch implements the InsertPosition class that is used to specify
where an instruction should be placed.

It also switches a couple of create() functions from the old API to the
new one that uses InsertPosition.


  Commit: 1753d169d5a650a29c4bb01940048a5c6c7871c4
      https://github.com/llvm/llvm-project/commit/1753d169d5a650a29c4bb01940048a5c6c7871c4
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp
    A llvm/test/MC/WebAssembly/annotations-typecheck.s

  Log Message:
  -----------
  [WebAssembly] Print instructions with type checking errors (#111067)

When there was a type checking error, we didn't run `InstPrinter`. This
can be confusing because when there is an error in, say, block parameter
type, `InstPrinter` doesn't run even if it has nothing to do with block
parameter types, and all those updates to `ControlFlowStack` or
`TryStack` do not happen:

https://github.com/llvm/llvm-project/blob/c20b90ab8557b38efe8e8e993d41d8c08b798267/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyInstPrinter.cpp#L135-L151

For example,
```wast
block (i32) -> () ;; Block input parameter error
end_block         ;; Now this errors out as "End marker mismatch"
```
This is confusing because there is a `block` and the `end_block` is not
a mismatch. Only that `block` has a type checking error, but that's not
an end marker mismatch.

I think we can just print the instruction whether we had a type checking
error or not, and this will be less confusing.


  Commit: 83e3779473bf7e68a4030286cfc218ab3a1a31b8
      https://github.com/llvm/llvm-project/commit/83e3779473bf7e68a4030286cfc218ab3a1a31b8
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/test/MC/WebAssembly/type-checker-errors.s

  Log Message:
  -----------
  [WebAssembly] Add intentations to type-checker-error.s (#111071)


  Commit: e1434a8764207d6750c0d0569acb4feb94baf99c
      https://github.com/llvm/llvm-project/commit/e1434a8764207d6750c0d0569acb4feb94baf99c
  Author: vporpo <vporpodas at google.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/Instruction.h
    M llvm/lib/SandboxIR/Instruction.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp
    M llvm/unittests/SandboxIR/TrackerTest.cpp

  Log Message:
  -----------
  [SandboxIR] Switch more Instruction::create() functions to InsertPosition (#111075)


  Commit: 876f661dbeb42a76767edfb1f36214baacb27fd4
      https://github.com/llvm/llvm-project/commit/876f661dbeb42a76767edfb1f36214baacb27fd4
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M llvm/docs/CommandGuide/lit.rst
    M llvm/test/TableGen/anonymous-location.td
    M llvm/utils/lit/lit/TestRunner.py
    M llvm/utils/lit/tests/substitutions.py

  Log Message:
  -----------
  [LIT] Rename substitution `%basename_s` to `%{s:basename}` (#111062)

Also added `%{t:stem}` as an alias for `%basename_t` and modified unit
test to test these new substitutions.


  Commit: eaff3a743406ff1636e6328e1ba1bc66318d53cb
      https://github.com/llvm/llvm-project/commit/eaff3a743406ff1636e6328e1ba1bc66318d53cb
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp

  Log Message:
  -----------
  [clang-format] Fix a bug that misannotates binary operators */&/&& (#110945)

Fixes #110879.


  Commit: 7ab488e92c39c813a50cb4fd6587e7afc161c7d5
      https://github.com/llvm/llvm-project/commit/7ab488e92c39c813a50cb4fd6587e7afc161c7d5
  Author: Piyou Chen <piyou.chen at sifive.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    A clang/test/CodeGen/attr-target-version-riscv-invalid.c
    A clang/test/CodeGen/attr-target-version-riscv.c
    A clang/test/CodeGenCXX/attr-target-version-riscv.cpp
    A clang/test/SemaCXX/attr-target-version-riscv.cpp

  Log Message:
  -----------
  [RISCV][FMV] Support target_version (#99040)

This patch enable `target_version` attribute for RISC-V target.

The proposal of `target_version` syntax can be found at the
https://github.com/riscv-non-isa/riscv-c-api-doc/pull/48 (which has
landed), as modified by the proposed
https://github.com/riscv-non-isa/riscv-c-api-doc/pull/85 (which adds the
priority syntax).

`target_version` attribute will trigger the function multi-versioning
feature and act like `target_clones` attribute. See
https://github.com/llvm/llvm-project/pull/85786 for the implementation
of `target_clones`.


  Commit: 359006895004c588efe615ae2422b3e068ceff1a
      https://github.com/llvm/llvm-project/commit/359006895004c588efe615ae2422b3e068ceff1a
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/Driver.cpp
    M lld/ELF/LinkerScript.cpp
    M lld/ELF/OutputSections.cpp
    M lld/ELF/OutputSections.h
    M lld/ELF/Relocations.cpp
    M lld/ELF/ScriptParser.cpp
    M lld/ELF/Writer.cpp

  Log Message:
  -----------
  [ELF] Pass Ctx & to OutputSections


  Commit: e9b7a093417bda7e0bed2bd62bcaeb7c2a662665
      https://github.com/llvm/llvm-project/commit/e9b7a093417bda7e0bed2bd62bcaeb7c2a662665
  Author: goldsteinn <35538541+goldsteinn at users.noreply.github.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M mlir/lib/Interfaces/Utils/InferIntRangeCommon.cpp
    M mlir/test/Dialect/Arith/int-range-interface.mlir

  Log Message:
  -----------
  [MLIR] Unconditionally take min of max lhs/rhs value in inferRemU (#110169)

- **[MLIR] Add test for inferring range of remu; NFC**
- **[MLIR] Unconditionally take min of max lhs/rhs value in inferRemU**

`arith.remu` cannot be larger than (rhs - 1) or lhs.


  Commit: 1f391a75af8685e6bba89421443d72ac6a186599
      https://github.com/llvm/llvm-project/commit/1f391a75af8685e6bba89421443d72ac6a186599
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/InputSection.h
    M lld/ELF/OutputSections.cpp
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h
    M lld/ELF/Writer.cpp

  Log Message:
  -----------
  [ELF] Pass Ctx & to SyntheticSection::finalizeContents


  Commit: 7a5b9ef54eb96abd8415fd893576c42e51fd95db
      https://github.com/llvm/llvm-project/commit/7a5b9ef54eb96abd8415fd893576c42e51fd95db
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M lld/ELF/AArch64ErrataFix.cpp
    M lld/ELF/ARMErrataFix.cpp
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/Arch/RISCV.cpp
    M lld/ELF/InputSection.h
    M lld/ELF/OutputSections.cpp
    M lld/ELF/OutputSections.h
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h
    M lld/ELF/Writer.cpp

  Log Message:
  -----------
  [ELF] Pass Ctx & to SyntheticSection::writeTo


  Commit: 1e5e153485b817422c311f9326e80781a83ea7bc
      https://github.com/llvm/llvm-project/commit/1e5e153485b817422c311f9326e80781a83ea7bc
  Author: Piyou Chen <piyou.chen at sifive.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    R clang/test/CodeGen/attr-target-version-riscv-invalid.c
    R clang/test/CodeGen/attr-target-version-riscv.c
    R clang/test/CodeGenCXX/attr-target-version-riscv.cpp
    R clang/test/SemaCXX/attr-target-version-riscv.cpp

  Log Message:
  -----------
  Revert "[RISCV][FMV] Support target_version" (#111096)

Reverts llvm/llvm-project#99040 due to https://lab.llvm.org/buildbot/#/builders/190/builds/7052


  Commit: ec06471c8317487a3f69fac89545253f139a9416
      https://github.com/llvm/llvm-project/commit/ec06471c8317487a3f69fac89545253f139a9416
  Author: Alexey Samsonov <vonosmas at gmail.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M utils/bazel/llvm-project-overlay/libc/test/libc_test_rules.bzl

  Log Message:
  -----------
  Stop disabling link_llvmlibc feature in libc_test Bazel rule

This detail is not relevant for the upstream Bazel version. llvm-libc unit tests today directly invoke the function under test using the namespace, which reduces the potential problems of linking with some other (system-provided) version of llvm-libc further.


  Commit: e2f0ec3a3a8a2981be8a1aac2004cfb9064c61e8
      https://github.com/llvm/llvm-project/commit/e2f0ec3a3a8a2981be8a1aac2004cfb9064c61e8
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M lld/ELF/AArch64ErrataFix.cpp
    M lld/ELF/ARMErrataFix.cpp
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/Arch/RISCV.cpp
    M lld/ELF/InputSection.cpp
    M lld/ELF/InputSection.h
    M lld/ELF/Relocations.cpp
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h
    M lld/ELF/Writer.cpp

  Log Message:
  -----------
  [ELF] Pass Ctx & to SyntheticSection::getSize


  Commit: df8795c082100cf9f63cd73db1d8bfabd2d5d710
      https://github.com/llvm/llvm-project/commit/df8795c082100cf9f63cd73db1d8bfabd2d5d710
  Author: Jim Lin <jim at andestech.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/lib/Target/CSKY/MCTargetDesc/CSKYMCCodeEmitter.cpp

  Log Message:
  -----------
  [CSKY] Fix warning in CSKYMCCodeEmitter::getImmJMPIX.

Use llvm_unreachable instead of assert and replace if-else with switch-case.

Fix https://github.com/llvm/llvm-project/issues/97456.


  Commit: c4c34f047461164661b365123af12f4818a0e2c6
      https://github.com/llvm/llvm-project/commit/c4c34f047461164661b365123af12f4818a0e2c6
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M lld/ELF/InputFiles.cpp
    M lld/ELF/InputFiles.h
    M lld/ELF/LTO.cpp

  Log Message:
  -----------
  [ELF] Pass Ctx & to InputFiles


  Commit: 1682c99a8877364f1d847395cef501e813804caa
      https://github.com/llvm/llvm-project/commit/1682c99a8877364f1d847395cef501e813804caa
  Author: Carlo Cabrera <github at carlo.cab>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

  Changed paths:
    M clang/lib/Driver/Driver.cpp

  Log Message:
  -----------
  [Clang][Driver] Support relative paths for CLANG_CONFIG_FILE_SYSTEM_DIR (#110962)

Shipping a system configuration file for Clang is useful, but it limits
the relocatability of the toolchain because it bakes in a reference to
an absolute path on the file system.

Let's fix that by allowing for `CLANG_CONFIG_FILE_SYSTEM_DIR` to be set
to a relative path, and then interpreting that relative to the location
of the driver if applicable.

This would be useful for the LLVM package we ship at Homebrew. We
currently have to bake in a `DEFAULT_SYSROOT` in order to ship a
toolchain that works out of the box on macOS. If
`CLANG_CONFIG_FILE_SYSTEM_DIR` supported relative paths, we could
replace that with a configuration file which would be easier to update
when the compiled-in `DEFAULT_SYSROOT` becomes stale (e.g. on macOS
version upgrades).

We could, of course, set `CLANG_CONFIG_FILE_SYSTEM_DIR` to an absolute
path to begin with. However, we do have users who install Homebrew into
a prefix that is different from the one used on our buildbots, so doing
this would result in a broken toolchain for those users.


  Commit: 3b0e120336846f450d9dd46936934be7a860f58d
      https://github.com/llvm/llvm-project/commit/3b0e120336846f450d9dd46936934be7a860f58d
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    A llvm/test/Analysis/CostModel/RISCV/reduce-fmul.ll

  Log Message:
  -----------
  [RISCV] Add tests for @llvm.vector.reduce.fmul. NFC


  Commit: 56d6b567394abfc07ea4d3c92fa534bbf58e1942
      https://github.com/llvm/llvm-project/commit/56d6b567394abfc07ea4d3c92fa534bbf58e1942
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
    M mlir/include/mlir/Interfaces/VectorInterfaces.td
    M mlir/lib/Dialect/Affine/Transforms/SuperVectorize.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/test/Conversion/VectorToSCF/vector-to-scf.mlir
    M mlir/test/Dialect/Affine/SuperVectorize/vectorize_1d.mlir
    M mlir/test/Dialect/Affine/SuperVectorize/vectorize_2d.mlir
    M mlir/test/Dialect/Affine/SuperVectorize/vectorize_affine_apply.mlir
    M mlir/test/Dialect/Linalg/hoisting.mlir
    M mlir/test/Dialect/Linalg/vectorization.mlir
    M mlir/test/Dialect/Vector/invalid.mlir
    M mlir/test/Dialect/Vector/ops.mlir
    M mlir/test/Dialect/Vector/vector-transfer-permutation-lowering.mlir
    M mlir/test/Dialect/Vector/vector-transfer-unroll.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/transfer-read-1d.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/transfer-read-2d.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/transfer-read-3d.mlir

  Log Message:
  -----------
  [mlir][vector] Relax the requirements on broadcast dims (#99341)

NOTE: This is a follow-up for #97049 in which the `in_bounds` attribute
was made mandatory.

This PR updates the semantics of the `in_bounds` attribute so that
broadcast dimensions are no longer required to be "in bounds".
Specifically, these xfer_read/xfer_write Ops become valid after this
change:

```mlir
  %read = vector.transfer_read %A[%base1, %base2], %pad
      {in_bounds = [false], permutation_map = affine_map<(d0, d1) -> (0)>}
      {permutation_map = affine_map<(d0, d1) -> (0)>}
      : memref<?x?xf32>, vector<9xf32>

  vector.transfer_write %vec, %A[%base1, %base2],
      {in_bounds = [false], permutation_map = affine_map<(d0, d1) -> (0)>}
      {permutation_map = affine_map<(d0, d1) -> (0)>}
      : vector<9xf32>, memref<?x?xf32>
```

Note that the value `false` merely means "may run out-of-bounds", i.e.,
the corresponding access can still be "in bounds". In fact, the folder
for xfer Ops is also updated (*) and will update the attribute value
corresponding to broadcast dims to `true` if all non-broadcast dims
are marked as "in bounds". 

Note that this PR doesn't change any of the lowerings. The changes in
"SuperVectorize.cpp", "Vectorization.cpp" and "AffineMap.cpp" are simple
reverts of recent changes in #97049. Those were only meant to facilitate
making `in_bounds` mandatory and to work around the extra requirements
for broadcast dims (those requirements ere removed in this PR). All
changes in tests are also reverts of changes from #97049.

For context, here's a PR in which "broadcast" dims where forced to
always be "in-bounds":
  * https://reviews.llvm.org/D102566

(*) See `foldTransferInBoundsAttribute`.


  Commit: a10f5abbd48953a77c39d8f9b356d49b58490351
      https://github.com/llvm/llvm-project/commit/a10f5abbd48953a77c39d8f9b356d49b58490351
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-10-03 (Thu, 03 Oct 2024)

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

  Log Message:
  -----------
  [RISCV] Remove unneeded template parameter from ALU_ri. NFC


  Commit: ccca3c63715753d816b0f9b429455b826343bdb3
      https://github.com/llvm/llvm-project/commit/ccca3c63715753d816b0f9b429455b826343bdb3
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M flang/lib/Lower/ConvertVariable.cpp
    M flang/test/Lower/HLFIR/assumed-rank-calls.f90
    M flang/test/Lower/HLFIR/assumed-rank-entry.f90
    M flang/test/Lower/HLFIR/assumed-rank-inquiries-2.f90
    M flang/test/Lower/HLFIR/assumed-rank-inquiries-3.f90
    M flang/test/Lower/HLFIR/assumed-rank-inquiries.f90
    M flang/test/Lower/HLFIR/assumed-rank-internal-proc.f90
    M flang/test/Lower/HLFIR/convert-variable-assumed-rank.f90
    M flang/test/Lower/HLFIR/select-rank.f90

  Log Message:
  -----------
  [flang] enable assumed-rank lowering by default (#110893)

Aside from a minor TODO about polymorphic RANK(*) (https://github.com/llvm/llvm-project/blob/2b8e81ce919e8db857dc2ba20012e9020af07294/flang/lib/Lower/Bridge.cpp#L3459),
the implementation for assumed-rank is ready for everyone to use.


  Commit: 3f9cabae0029bcbe88835aaa4c417ce41e584fb1
      https://github.com/llvm/llvm-project/commit/3f9cabae0029bcbe88835aaa4c417ce41e584fb1
  Author: Sergey Kozub <skozub at nvidia.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M mlir/include/mlir-c/BuiltinTypes.h
    M mlir/include/mlir/IR/Builders.h
    M mlir/include/mlir/IR/BuiltinTypes.h
    M mlir/include/mlir/IR/BuiltinTypes.td
    M mlir/include/mlir/IR/CommonTypeConstraints.td
    M mlir/include/mlir/IR/Types.h
    M mlir/lib/AsmParser/TokenKinds.def
    M mlir/lib/AsmParser/TypeParser.cpp
    M mlir/lib/Bindings/Python/IRTypes.cpp
    M mlir/lib/CAPI/IR/BuiltinTypes.cpp
    M mlir/lib/Conversion/LLVMCommon/TypeConverter.cpp
    M mlir/lib/Dialect/Arith/Utils/Utils.cpp
    M mlir/lib/IR/AsmPrinter.cpp
    M mlir/lib/IR/Builders.cpp
    M mlir/lib/IR/BuiltinTypes.cpp
    M mlir/lib/IR/MLIRContext.cpp
    M mlir/lib/IR/Types.cpp
    M mlir/python/mlir/_mlir_libs/_mlir/ir.pyi
    M mlir/python/mlir/extras/types.py
    M mlir/test/IR/attribute.mlir
    M mlir/test/Target/LLVMIR/llvmir.mlir
    M mlir/test/python/ir/builtin_types.py
    M mlir/utils/lldb-scripts/mlirDataFormatters.py
    M mlir/utils/tree-sitter-mlir/grammar.js

  Log Message:
  -----------
  [MLIR] Add f8E8M0FNU type (#111028)

This PR adds `f8E8M0FNU` type to MLIR.

`f8E8M0FNU` type is proposed in [OpenCompute MX
Specification](https://www.opencompute.org/documents/ocp-microscaling-formats-mx-v1-0-spec-final-pdf).
It defines a 8-bit floating point number with bit layout S0E8M0. Unlike
IEEE-754 types, there are no infinity, denormals, zeros or negative
values.

```c
f8E8M0FNU
- Exponent bias: 127
- Maximum stored exponent value: 254 (binary 1111'1110)
- Maximum unbiased exponent value: 254 - 127 = 127
- Minimum stored exponent value: 0 (binary 0000'0000)
- Minimum unbiased exponent value: 0 − 127 = -127
- Doesn't have zero
- Doesn't have infinity
- NaN is encoded as binary 1111'1111

Additional details:
- Zeros cannot be represented
- Negative values cannot be represented
- Mantissa is always 1
```

Related PRs:
- [PR-107127](https://github.com/llvm/llvm-project/pull/107127)
[APFloat] Add APFloat support for E8M0 type
- [PR-105573](https://github.com/llvm/llvm-project/pull/105573) [MLIR]
Add f6E3M2FN type - was used as a template for this PR
- [PR-107999](https://github.com/llvm/llvm-project/pull/107999) [MLIR]
Add f6E2M3FN type
- [PR-108877](https://github.com/llvm/llvm-project/pull/108877) [MLIR]
Add f4E2M1FN type


  Commit: 5030deadeffe83b68ff209e27d4ec7f1dbaff01a
      https://github.com/llvm/llvm-project/commit/5030deadeffe83b68ff209e27d4ec7f1dbaff01a
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M mlir/lib/Transforms/Utils/DialectConversion.cpp

  Log Message:
  -----------
  [mlir][Transforms] Dialect conversion: No rollback during analysis conversion (#106414)

This commit changes the implementation of analysis conversions, so that
no rollback is needed at the end of the analysis. Instead, the dialect conversion is run on a clone of the IR.

The purpose of this commit is to reduce the number of rollbacks in the
dialect conversion framework. (Long term goal: Remove rollback
functionality entirely.)


  Commit: bba3849b81c8fc5343e22e767e4c5ab415b4b1d4
      https://github.com/llvm/llvm-project/commit/bba3849b81c8fc5343e22e767e4c5ab415b4b1d4
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

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

  Log Message:
  -----------
  [clang][docs] Add documentation for APValue constructors (#109994)

I always get confused when looking at these.


  Commit: 1753de2d9564682cd9034aae50e81691bfd168ec
      https://github.com/llvm/llvm-project/commit/1753de2d9564682cd9034aae50e81691bfd168ec
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M flang/include/flang/Optimizer/CodeGen/TypeConverter.h
    M flang/include/flang/Optimizer/Dialect/FIROps.td
    M flang/include/flang/Optimizer/Dialect/FIRType.h
    M flang/include/flang/Optimizer/Dialect/FIRTypes.td
    M flang/include/flang/Optimizer/HLFIR/HLFIROpBase.td
    M flang/lib/Lower/ConvertExpr.cpp
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/CodeGen/Target.cpp
    M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
    M flang/lib/Optimizer/CodeGen/TypeConverter.cpp
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/lib/Optimizer/Dialect/FIRType.cpp
    M flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp
    M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
    M flang/test/Fir/constant.fir
    M flang/test/Fir/fir-types.fir
    M flang/test/Fir/invalid-types.fir
    M flang/test/Fir/target.fir
    M flang/test/Fir/types-to-llvm.fir
    R flang/test/Transforms/debug-90683.fir

  Log Message:
  -----------
  [flang][FIR] remove fir.complex type and its fir.real element type (#111025)

Final patch of
https://discourse.llvm.org/t/rfc-flang-replace-usages-of-fir-complex-by-mlir-complex-type/82292

Since fir.real was only still used as fir.complex element type, this
patch removes it at the same time.


  Commit: 9cf8c094c77db1ed9e63322bedcf28b76e5c5a43
      https://github.com/llvm/llvm-project/commit/9cf8c094c77db1ed9e63322bedcf28b76e5c5a43
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rv64zbs.ll

  Log Message:
  -----------
  [RISCV][DAGCombine] Combine `sext_inreg (shl X, Y), i32` into `sllw X, Y` (#111101)

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


  Commit: 67d247a441572c046ccd82682ffe1102584f24ec
      https://github.com/llvm/llvm-project/commit/67d247a441572c046ccd82682ffe1102584f24ec
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/CmpInstAnalysis.h
    M llvm/lib/Analysis/CmpInstAnalysis.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/test/Transforms/InstCombine/and-or-icmps.ll

  Log Message:
  -----------
  [InstCombine] Decompose more icmps into masks (#110836)

Extend decomposeBitTestICmp() to handle cases where the resulting
comparison is of the form `icmp (X & Mask) pred C` with non-zero
`C`. Add a flag to allow code to opt-in to this behavior and use it in
the "log op of icmp" fold infrastructure.

This addresses regressions from #97289.

Proofs: https://alive2.llvm.org/ce/z/hUhdbU


  Commit: 856774dd4f5a80bca8e8d0bfd50ab630c1c2d49d
      https://github.com/llvm/llvm-project/commit/856774dd4f5a80bca8e8d0bfd50ab630c1c2d49d
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

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

  Log Message:
  -----------
  [ConstantFPRange][UnitTest] Ignore NaN payloads when enumerating values in a range (#111083)

NaN payloads can be ignored because they are unrelated with
ConstantFPRange (except the conversion from ConstantFPRange to
KnownBits). This patch just enumerates `+/-[S/Q]NaN` to avoid
enumerating 32 NaN values in all ranges which contain NaN values.
Addresses comment
https://github.com/llvm/llvm-project/pull/110082#issuecomment-2392037204.
This patch reduces the execution time for unittests from 30.37s to
10.59s with an optimized build.


  Commit: 9e831d50a0d67c6779048742657edb437818b681
      https://github.com/llvm/llvm-project/commit/9e831d50a0d67c6779048742657edb437818b681
  Author: Oliver Stannard <oliver.stannard at arm.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M clang/lib/Driver/ToolChain.cpp
    M clang/test/Driver/print-multi-selection-flags.c

  Log Message:
  -----------
  [AArch64] Pass -mabi option through to multilib (#110874)

Pass the -mabi option through to multilib, so that it can be used for
library selection.


  Commit: 992e75403f417d46ce9015147ff49d67009e736c
      https://github.com/llvm/llvm-project/commit/992e75403f417d46ce9015147ff49d67009e736c
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M clang-tools-extra/clangd/refactor/tweaks/SwapBinaryOperands.cpp

  Log Message:
  -----------
  Fix MSVC "not all control paths return a value" warning. NFC.


  Commit: d9d623310de196f2119fc593811204993916e26e
      https://github.com/llvm/llvm-project/commit/d9d623310de196f2119fc593811204993916e26e
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
    M mlir/test/Dialect/Linalg/vectorization-with-patterns.mlir
    M mlir/test/Dialect/Linalg/vectorization.mlir

  Log Message:
  -----------
  [mlir][linalg] Add a new helper hook: `hasVectorizationImpl` (#110708)

The newly added hook simply returns `false` for Ops for which there's no
"vectorization logic" in the Linalg Vectorizer (i.e. the `vectorize()`
method). It's added so that the following two TD ops expose identical
level of functionality (that's not the case ATM):

  * `transform.structured.vectorize_children_and_apply_patterns`
  * `transform.structured.vectorize`

Specifically, ATM, the former works only for Linalg Ops, while the
latter works for all Ops that the vectorizer supports (*). With this
change,
I am making sure that both TD will behave consistently.

Note, this shouldn't affect any of the current uses of the vectorizer.

(*) This is implemented via the `vectorize()` method in
Vectorization.cpp.


  Commit: d0756caedcf067860240bf31e8f9d371ba706757
      https://github.com/llvm/llvm-project/commit/d0756caedcf067860240bf31e8f9d371ba706757
  Author: Jonathan Thackray <jonathan.thackray at arm.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M clang/lib/Basic/Targets/AArch64.cpp
    M clang/lib/Basic/Targets/AArch64.h
    M clang/lib/Basic/Targets/ARM.cpp
    M clang/test/CodeGen/arm-acle-coproc.c
    A clang/test/Driver/aarch64-v96a.c
    M clang/test/Driver/arm-cortex-cpus-1.c
    M clang/test/Preprocessor/aarch64-target-features.c
    M clang/test/Preprocessor/arm-target-features.c
    M llvm/include/llvm/TargetParser/AArch64TargetParser.h
    M llvm/include/llvm/TargetParser/ARMTargetParser.def
    M llvm/include/llvm/TargetParser/Triple.h
    M llvm/lib/Target/AArch64/AArch64Features.td
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/lib/Target/ARM/ARMArchitectures.td
    M llvm/lib/Target/ARM/ARMFeatures.td
    M llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp
    M llvm/lib/TargetParser/ARMTargetParser.cpp
    M llvm/lib/TargetParser/ARMTargetParserCommon.cpp
    M llvm/lib/TargetParser/Triple.cpp
    M llvm/unittests/TargetParser/TargetParserTest.cpp

  Log Message:
  -----------
  [ARM][AArch64] Introduce the Armv9.6-A architecture version (#110825)

This introduces the Armv9.6-A architecture version, including the
relevant command-line option for -march.

More details about the Armv9.6-A architecture version can be found at:
  * https://community.arm.com/arm-community-blogs/b/architectures-and-processors-blog/posts/arm-a-profile-architecture-developments-2024
  * https://developer.arm.com/documentation/ddi0602/2024-09/


  Commit: 23c02a48f1c7343149b94aafe350ec59d1b14999
      https://github.com/llvm/llvm-project/commit/23c02a48f1c7343149b94aafe350ec59d1b14999
  Author: bd1976bris <bd1976llvm at gmail.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-dwarfdump.rst

  Log Message:
  -----------
  [doc] Add llvm --error-display to dwarfdump documentation (#110922)

This adds documentation for --error-display, see:
https://github.com/llvm/llvm-project/pull/79648


  Commit: fcdb178bb477a7bd93048fa09a5ca6b1927bdb25
      https://github.com/llvm/llvm-project/commit/fcdb178bb477a7bd93048fa09a5ca6b1927bdb25
  Author: bd1976bris <bd1976llvm at gmail.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-dwarfdump.rst

  Log Message:
  -----------
  [doc] Add --verify-json to dwarfdump documentation (#110909)

This adds documentation for --verify-json, see:
https://github.com/llvm/llvm-project/pull/81762


  Commit: 26fca7256edc0013886717b2585e638a6100dcea
      https://github.com/llvm/llvm-project/commit/26fca7256edc0013886717b2585e638a6100dcea
  Author: Shih-Po Hung <shihpo.hung at sifive.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll

  Log Message:
  -----------
  [VPlan][NFC] Use patterns in test check (#111086)


  Commit: 7be2ce7312191894c2458ecc08de7683fd2314fb
      https://github.com/llvm/llvm-project/commit/7be2ce7312191894c2458ecc08de7683fd2314fb
  Author: dlav-sc <daniil.avdeev at syntacore.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
    M llvm/lib/Target/RISCV/RISCVFrameLowering.h
    M llvm/test/CodeGen/RISCV/branch-relaxation.ll
    M llvm/test/CodeGen/RISCV/out-of-reach-emergency-slot.mir
    M llvm/test/CodeGen/RISCV/rvv/addi-scalable-offset.mir
    M llvm/test/CodeGen/RISCV/rvv/callee-saved-regs.ll
    M llvm/test/CodeGen/RISCV/rvv/emergency-slot.mir
    M llvm/test/CodeGen/RISCV/rvv/large-rvv-stack-size.mir
    M llvm/test/CodeGen/RISCV/stack-realignment.ll

  Log Message:
  -----------
  [RISCV] fix SP recovery in a function epilogue (#110809)

Currently, in the cases when fp register is presented and sp register is
adjusted at the second time, sp recovery in a function epilogue isn't
performed in the best way, for example:
```
lui a0, 2
sub sp, s0, a0
addi a0, a0, -2044
add sp, sp, a0
```

This patch improves sp register recovery in such cases and the code
snippet above becomes:
```
addi sp, s0, -2044
```


  Commit: ef8d5069e1b8d322cd6905c03bef1b42e2e86515
      https://github.com/llvm/llvm-project/commit/ef8d5069e1b8d322cd6905c03bef1b42e2e86515
  Author: CarolineConcatto <caroline.concatto at arm.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M clang/include/clang/Basic/arm_sme.td
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_write_lane_zt.c
    M llvm/lib/Target/AArch64/AArch64Features.td
    M llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
    M llvm/test/MC/AArch64/FP8/directive-arch-negative.s
    M llvm/test/MC/AArch64/FP8_SME2/lut.s
    M llvm/test/MC/AArch64/FP8_SME2/movt-diagnostics.s
    M llvm/test/MC/AArch64/FP8_SME2/movt.s

  Log Message:
  -----------
  [AArch64]Fix FEAT_SME_LUTv2 to have FEAT_SME2 implemented. (#110474)

According to [1]
"If FEAT_SME_LUTv2 is implemented, then FEAT_SME2 is implemented." The
LUTI4[2] not strided and MOVT[3] need FEAT_SME_LUTv2 to be defined.


[1]https://developer.arm.com/documentation/109697/0100/Feature-descriptions/The-Armv9-5-architecture-extension?lang=en#md462-the-armv95-architecture-extension__FEAT_SME_LUTv2
[2]https://developer.arm.com/documentation/ddi0602/2024-06/SME-Instructions/LUTI4--four-registers--8-bit---Lookup-table-read-with-4-bit-indexes-and-8-bit-elements-

[3]https://developer.arm.com/documentation/ddi0602/2024-06/SME-Instructions/MOVT--vector-to-table---Move-vector-register-to-ZT0-


  Commit: c734d77b9913052012faf91fdc19753f791421d9
      https://github.com/llvm/llvm-project/commit/c734d77b9913052012faf91fdc19753f791421d9
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M flang/include/flang/Semantics/symbol.h
    M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/lib/Semantics/semantics.cpp
    M flang/test/Lower/OpenMP/statement-function.f90
    A flang/test/Semantics/OpenMP/private03.f90

  Log Message:
  -----------
  [flang][semantics][OpenMP] no privatisation of stmt functions (#106550)

OpenMP prohibits privatisation of variables that appear in expressions
for statement functions.

This is a re-working of an old patch https://reviews.llvm.org/D93213 by
@praveen-g-ctt.

The old patch couldn't be landed because of ordering concerns. Statement
functions are rewritten during parse tree rewriting, but this was done
after resolve-directives and so some array expressions were incorrectly
identified as statement functions. For this reason **I have opted to
re-order the semantics driver so that resolve-directives is run after
parse tree rewriting**.

Closes #54677

---------

Co-authored-by: Praveen <praveen at compilertree.com>


  Commit: f6f4c177ef03ecd027d884af2cd3caf3ccafcfd1
      https://github.com/llvm/llvm-project/commit/f6f4c177ef03ecd027d884af2cd3caf3ccafcfd1
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    M flang/test/Integration/debug-local-var-2.f90
    M flang/test/Transforms/debug-fn-info.fir
    M flang/test/Transforms/debug-local-global-storage-1.fir
    M flang/test/Transforms/debug-local-var.fir

  Log Message:
  -----------
  [flang][debug] Use PROGRAM name for main function name (#111022)

For example, in

        PROGRAM test_program
          ...
        END PROGRAM

This allows a user to break on the main function with `break
test_program`. This matches what classic flang and gfortran do.


  Commit: 60f3e67dae90f43698ae67167d0e024ff2ab0932
      https://github.com/llvm/llvm-project/commit/60f3e67dae90f43698ae67167d0e024ff2ab0932
  Author: serge-sans-paille <sguelton at mozilla.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M runtimes/cmake/Modules/WarningFlags.cmake

  Log Message:
  -----------
  [libc++] Activate -Warray-zero when building (#110812)


  Commit: b5598c33f02732e805e50a3eb5c67b17952c5683
      https://github.com/llvm/llvm-project/commit/b5598c33f02732e805e50a3eb5c67b17952c5683
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/bitcast-int-to-vector-bool-sext.ll
    M llvm/test/CodeGen/X86/bitcast-int-to-vector-bool-zext.ll
    M llvm/test/CodeGen/X86/vector-replicaton-i1-mask.ll
    M llvm/test/CodeGen/X86/vector-sext.ll

  Log Message:
  -----------
  [X86] Regenerate test checks with vpternlog comments


  Commit: 972353fdfad02ae3206c91c80dd4eaa997b3d499
      https://github.com/llvm/llvm-project/commit/972353fdfad02ae3206c91c80dd4eaa997b3d499
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    A llvm/test/Analysis/LoopAccessAnalysis/no-dep-via-loop-guards.ll

  Log Message:
  -----------
  [LAA] Add tests where results can be improved using loop guards.


  Commit: b837c9e289dab93c7f8a06876e3f70b6864f40ab
      https://github.com/llvm/llvm-project/commit/b837c9e289dab93c7f8a06876e3f70b6864f40ab
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrCompiler.td
    M llvm/test/CodeGen/X86/x86-win64-shrink-wrapping.ll

  Log Message:
  -----------
  Revert "[llvm] Mark win x64 SEH pseudo instruction as meta instructions (#110889)"

This reverts commit db33d82026b8742b2719289547e3cb9910c8d7d1.

This commit caused errors when compiling for i686 with codeview
debug info enabled, see
https://github.com/llvm/llvm-project/pull/110889#issuecomment-2393405613
for details.


  Commit: 948467bf7398f5882472ff30bf09e604e237f456
      https://github.com/llvm/llvm-project/commit/948467bf7398f5882472ff30bf09e604e237f456
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

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

  Log Message:
  -----------
  [AMDGPU] Use a range-based for loop. NFC.


  Commit: 53b3c9e408b740addce630e806ccd143b3ca0fde
      https://github.com/llvm/llvm-project/commit/53b3c9e408b740addce630e806ccd143b3ca0fde
  Author: Danial Klimkin <dklimkin at google.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

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

  Log Message:
  -----------
  [bazel] Fix libc/hdr past c63112a9118277a20ae440f3f69189c0937e8f4d (#111135)


  Commit: dec4cfdb09596f34f17a653ad405ab2551b09039
      https://github.com/llvm/llvm-project/commit/dec4cfdb09596f34f17a653ad405ab2551b09039
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    M llvm/test/Analysis/LoopAccessAnalysis/no-dep-via-loop-guards.ll

  Log Message:
  -----------
  [LAA] Use loop guards when checking invariant accesses.

Apply loop guards to start and end pointers like done in other places to
improve results.


  Commit: f5815b9903321367990afea7618978ef880d4e99
      https://github.com/llvm/llvm-project/commit/f5815b9903321367990afea7618978ef880d4e99
  Author: Han-Kuan Chen <hankuan.chen at sifive.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

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

  Log Message:
  -----------
  [SLP] NFC. Set NumOperands directly if VL[0] is IntrinsicInst. (#111103)


  Commit: a1b6daea2c85e2a835c7e9f982493b2c1b979c6e
      https://github.com/llvm/llvm-project/commit/a1b6daea2c85e2a835c7e9f982493b2c1b979c6e
  Author: Longsheng Mou <longshengmou at gmail.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M mlir/lib/Dialect/LLVMIR/Transforms/DIScopeForLLVMFuncOp.cpp

  Log Message:
  -----------
  [mlir][LLVMIR] Add LLVMDialect check in `DIScopeForLLVMFuncOp` (#110427)

This PR adds an LLVMDialect check in `DIScopeForLLVMFuncOp` to prevent
crashes. Fixes #108390.


  Commit: 6294679faa8ae57873b7fcdc00a4deb522d31c38
      https://github.com/llvm/llvm-project/commit/6294679faa8ae57873b7fcdc00a4deb522d31c38
  Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

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

  Log Message:
  -----------
  [lldb] Add isConstant mode for FA locations (#110726)

This is similar to 9fe455fd0c7d, but for FA locations instead of
register locations.
This is useful for unwind plans that cannot create abstract unwind
rules, but instead must inspect the state of the program to determine
the current CFA.


  Commit: d826b0c90f0b0ebebd2b7ed37bf6ff71b34360c8
      https://github.com/llvm/llvm-project/commit/d826b0c90f0b0ebebd2b7ed37bf6ff71b34360c8
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/MIRYamlMapping.h
    M llvm/include/llvm/CodeGen/MachineFunction.h
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/MIRParser/MIRParser.cpp
    M llvm/lib/CodeGen/MIRPrinter.cpp
    M llvm/lib/CodeGen/RemoveLoadsIntoFakeUses.cpp
    M llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
    A llvm/test/CodeGen/MIR/Generic/machine-function-hasfakeuses-conflict.mir
    M llvm/test/CodeGen/MIR/Generic/machine-function-optionally-computed-properties.mir
    M llvm/test/tools/llvm-reduce/mir/preserve-func-info.mir
    M llvm/tools/llvm-reduce/ReducerWorkItem.cpp

  Log Message:
  -----------
  [LLVM] Add HasFakeUses to MachineFunction (#110097)

Following the addition of the llvm.fake.use intrinsic and corresponding
MIR instruction, two further changes are planned: to add an
-fextend-lifetimes flag to Clang that emits these intrinsics, and to
have -Og enable this flag by default. Currently, some logic for handling
fake uses is gated by the optdebug attribute, which is intended to be
switched on by -fextend-lifetimes (and by extension -Og later on).
However, the decision was made that a general optdebug attribute should
be incompatible with other opt_ attributes (e.g. optsize, optnone),
since they all express different intents for how to optimize the
program. We would still like to allow -fextend-lifetimes with optsize
however (i.e. -Os -fextend-lifetimes should be legal), since it may be a
useful configuration and there is no technical reason to not allow it.

This patch resolves this by tracking MachineFunctions that have fake
uses, allowing us to run passes that interact with them and skip passes
that clash with them.


  Commit: 15ee17c3ce34623261788d7de3c1bdf5860be34e
      https://github.com/llvm/llvm-project/commit/15ee17c3ce34623261788d7de3c1bdf5860be34e
  Author: Elvina Yakubova <eyakubova at nvidia.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    R llvm/test/Transforms/SLPVectorizer/X86/addsub.ll
    R llvm/test/Transforms/SLPVectorizer/X86/consecutive-access.ll
    R llvm/test/Transforms/SLPVectorizer/X86/extract-subvector-long-input.ll
    R llvm/test/Transforms/SLPVectorizer/X86/extract-vectorized-operand.ll
    R llvm/test/Transforms/SLPVectorizer/X86/extract_with_non_const_index.ll
    R llvm/test/Transforms/SLPVectorizer/X86/icmp-altopcode-after-reordering.ll
    R llvm/test/Transforms/SLPVectorizer/X86/insert-shuffle.ll
    R llvm/test/Transforms/SLPVectorizer/X86/limit.ll
    R llvm/test/Transforms/SLPVectorizer/X86/operand-is-reduced-val.ll
    R llvm/test/Transforms/SLPVectorizer/X86/reduced-gathered-vectorized.ll
    R llvm/test/Transforms/SLPVectorizer/X86/reduction-min-select.ll
    R llvm/test/Transforms/SLPVectorizer/X86/reduction_loads.ll
    R llvm/test/Transforms/SLPVectorizer/X86/reorder-node.ll
    R llvm/test/Transforms/SLPVectorizer/X86/return.ll
    R llvm/test/Transforms/SLPVectorizer/X86/reused-scalar-in-multi-node.ll
    R llvm/test/Transforms/SLPVectorizer/X86/revec-reduction-logical.ll
    R llvm/test/Transforms/SLPVectorizer/X86/same-scalars-reordered-in-reduction.ll
    R llvm/test/Transforms/SLPVectorizer/X86/several_store_chains.ll
    R llvm/test/Transforms/SLPVectorizer/X86/shuffle-mask-resized.ll
    R llvm/test/Transforms/SLPVectorizer/X86/splat-buildvector.ll
    R llvm/test/Transforms/SLPVectorizer/X86/vectorize-reorder-alt-shuffle.ll
    R llvm/test/Transforms/SLPVectorizer/X86/vectorize-reordered-list.ll
    A llvm/test/Transforms/SLPVectorizer/addsub.ll
    A llvm/test/Transforms/SLPVectorizer/consecutive-access.ll
    A llvm/test/Transforms/SLPVectorizer/extract-subvector-long-input.ll
    A llvm/test/Transforms/SLPVectorizer/extract-vectorized-operand.ll
    A llvm/test/Transforms/SLPVectorizer/extract_with_non_const_index.ll
    A llvm/test/Transforms/SLPVectorizer/icmp-altopcode-after-reordering.ll
    A llvm/test/Transforms/SLPVectorizer/insert-shuffle.ll
    A llvm/test/Transforms/SLPVectorizer/limit.ll
    A llvm/test/Transforms/SLPVectorizer/operand-is-reduced-val.ll
    A llvm/test/Transforms/SLPVectorizer/reduced-gathered-vectorized.ll
    A llvm/test/Transforms/SLPVectorizer/reduction-min-select.ll
    A llvm/test/Transforms/SLPVectorizer/reduction_loads.ll
    A llvm/test/Transforms/SLPVectorizer/reorder-node.ll
    A llvm/test/Transforms/SLPVectorizer/return.ll
    A llvm/test/Transforms/SLPVectorizer/reused-scalar-in-multi-node.ll
    A llvm/test/Transforms/SLPVectorizer/revec-reduction-logical.ll
    A llvm/test/Transforms/SLPVectorizer/same-scalars-reordered-in-reduction.ll
    A llvm/test/Transforms/SLPVectorizer/several_store_chains.ll
    A llvm/test/Transforms/SLPVectorizer/shuffle-mask-resized.ll
    A llvm/test/Transforms/SLPVectorizer/splat-buildvector.ll
    A llvm/test/Transforms/SLPVectorizer/vectorize-reorder-alt-shuffle.ll
    A llvm/test/Transforms/SLPVectorizer/vectorize-reordered-list.ll

  Log Message:
  -----------
  [SLP] Move more X86 tests to common directory (#111134)

Some of the tests from the X86 directory can be generalized to improve
coverage for other architectures (cont.)


  Commit: 800b07396ff54b037fa9b73bb15586456656fb79
      https://github.com/llvm/llvm-project/commit/800b07396ff54b037fa9b73bb15586456656fb79
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/Descriptor.cpp
    M clang/lib/AST/ByteCode/Descriptor.h
    M clang/lib/AST/ByteCode/Pointer.cpp
    M clang/lib/AST/ByteCode/Pointer.h
    M clang/test/CodeGen/2008-08-07-AlignPadding1.c
    M clang/unittests/AST/ByteCode/Descriptor.cpp

  Log Message:
  -----------
  [clang][bytecode] Change isArrayElement() for narrowed composite arrays (#111110)

Make isArrayElement() return true here, so we can know that such a
pointer is in fact an array element and handle it properly in
toAPValue().


  Commit: 1811e872042a32e28ec0956a8422780b176ef3a4
      https://github.com/llvm/llvm-project/commit/1811e872042a32e28ec0956a8422780b176ef3a4
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

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

  Log Message:
  -----------
  [CodeGen] Fix enumeration value 'HasFakeUses' not handled in switch (NFC)

llvm-project/llvm/lib/CodeGen/MachineFunction.cpp:95:10:
error: enumeration value 'HasFakeUses' not handled in switch [-Werror,-Wswitch]
  switch(Prop) {
         ^~~~
1 error generated.


  Commit: 04540fac5bfa6c1630e84ccdc7f817bd8bc1a986
      https://github.com/llvm/llvm-project/commit/04540fac5bfa6c1630e84ccdc7f817bd8bc1a986
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/include/llvm/TableGen/Error.h
    M llvm/lib/TableGen/Error.cpp
    M llvm/lib/TableGen/Record.cpp
    M llvm/test/TableGen/assert.td

  Log Message:
  -----------
  [TableGen] Print record location when record asserts fail (#111029)

When record assertions fail, print an error message with the record's
location, so it's easier to see where the record that caused the assert
to fail was instantiated. This is useful when the assert condition in a
class depends on a template parameter, so we need to know the context of
the definition to determine why the assert failed.

Also enhanced the assert.td test to check for these context messages,
and also add checks for some assert failures that were missing in the
test.


  Commit: 02debcef12793b5bf926a41a24ede18dc50eb18b
      https://github.com/llvm/llvm-project/commit/02debcef12793b5bf926a41a24ede18dc50eb18b
  Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values5.ll
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values5.ll.expected
    A llvm/test/tools/UpdateTestChecks/update_test_checks/stable_ir_values5.test
    M llvm/utils/UpdateTestChecks/common.py

  Log Message:
  -----------
  update_test_checks: improve IR value name stability (#110940)

By default, UTC attempts to keep the produced diff small by keeping IR
value name variables stable. The old algorithm was roughly:

1. Compute a diff between the old and new check lines, where
   "uncommitted" variable names are replaced by a wildcard.
   This leads to a set of non-crossing "candidate" pairs of
   (old line, new line) that we can try to make equal.

2. Greedily walk this list of candidates, committing to variable names
   that make candidate lines equal if possible.

The greedy approach in the second step has the downside that committing
to a variable name greedily can sometimes prevent many subsequent
candidates from getting the variable name assignment that would make
them equal.

We keep the first step as-is, but replace the second one by an algorithm
that finds a large independent set of candidates, i.e. candidate pairs
of (old line, new line) which are non-conflicting in the sense that
their desired variable name mappings are not in conflict.

We find the large independent set by greedily assigning a coloring to
the conflict graph and taking the largest color class. We then commit to
all the variable name mappings which are desired by candidates in this
largest color class.

As before, we then recurse into regions between matching lines. This is
required in large cases. For example, running this algorithm at the
top-level of the new test case (stable_ir_values5.ll) matches up most of
the instructions, but not the names of the result values of all the
`load`s. This is because (unlike e.g. the getelementptrs) the load
instructions are all equal except for variable names, and so step 1 (the
diff algorithm) doesn't consider them as candidates. However, they are
trivially matched by recursion.

This also happens to fix a bug in tracking line indices that went
unnoticed previously...

As is usually the case with these changes, the quality improvement is
hard to see from the diff of this patch. However, it becomes obvious
when
comparing the diff of stable_ir_values5.ll against
stable_ir_value5.ll.expected
before and after this change.


  Commit: b01be72af0001991400b1e9adaecafd7c4e02d2b
      https://github.com/llvm/llvm-project/commit/b01be72af0001991400b1e9adaecafd7c4e02d2b
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineFunction.h
    M llvm/lib/CodeGen/MachineFunction.cpp

  Log Message:
  -----------
  [NFC][CodeGen] Remove unused HasFakeUses MachineFunctionProperty

A previous commit d826b0c9 accidentally added a new MachineFunctionProperty,
HasFakeUses, that was unused by the commit (and results in an
uncovered-switch warning, which was fixed by a separate followup 1811e872);
this patch removes that enum value.


  Commit: e5a0c30e4ad6b22b17b72cc40b609905d2f97703
      https://github.com/llvm/llvm-project/commit/e5a0c30e4ad6b22b17b72cc40b609905d2f97703
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    A llvm/test/CodeGen/AMDGPU/tail-call-inreg-arguments.convergencetokens.ll
    M llvm/test/CodeGen/AMDGPU/tail-call-inreg-arguments.ll
    A llvm/test/CodeGen/AMDGPU/tail-call-uniform-target-in-vgprs-issue110930.convergencetokens.ll
    M llvm/test/CodeGen/AMDGPU/tail-call-uniform-target-in-vgprs-issue110930.ll

  Log Message:
  -----------
  AMDGPU: Work around machine verifier failure with convergence tokens

Apparently any function with convergence tokens will fail the
machine verifier after register allocation. The existing codegen tests
for tokens use stop-before, and do not run to the end. Work around this
by splitting out tests with convergence tokens. Fixes EXPENSIVE_CHECKS
bot failures after c08d7b3de7409aecadd7f9edfe0f3a1ce28a6374 and
428ae0f12e29eff1ddcaf59bdcce904ec056963e


  Commit: 3c98d8c14612699444ac906729c9b2872190c938
      https://github.com/llvm/llvm-project/commit/3c98d8c14612699444ac906729c9b2872190c938
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Sema/SemaOpenACC.h
    M clang/lib/Sema/SemaOpenACC.cpp
    M clang/test/ParserOpenACC/parse-clauses.c
    M clang/test/SemaOpenACC/loop-construct-auto_seq_independent-clauses.c
    M clang/test/SemaOpenACC/loop-construct-device_type-clause.c
    M clang/test/SemaOpenACC/loop-construct-tile-clause.cpp

  Log Message:
  -----------
  [OpenACC] Implement 'tile' loop count/tightly nested loop requirement (#111038)

the 'tile' clause requires that it be followed by N (where N is the
    number of size expressions) 'tightly nested loops'.  This means the
same as it does in 'collapse', so much of the implementation is
simliar/shared with that.


  Commit: 097379ac9b0bd06d2437803fc7b1d00664b21383
      https://github.com/llvm/llvm-project/commit/097379ac9b0bd06d2437803fc7b1d00664b21383
  Author: bd1976bris <bd1976llvm at gmail.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-objcopy.rst

  Log Message:
  -----------
  [doc] Fix rendering for objcopy's --remove-symbol-prefix option text (#111131)


  Commit: a3cc4b61a0414a844058f064bd19d1d4085e0f6c
      https://github.com/llvm/llvm-project/commit/a3cc4b61a0414a844058f064bd19d1d4085e0f6c
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/GISel/RISCVInstructionSelector.cpp

  Log Message:
  -----------
  [RISCV][GISEL][NFC] Make MRI a member in RISCVInstructionSelector (#110926)

It was requested in
https://github.com/llvm/llvm-project/pull/110782#discussion_r1784939348
that MRI be made a member of RISCVInstructionSelector.

RISCVInstructionSelector is created in the RISCVSubtarget, independent
of MachineFunction. So it cannot be passed by reference during
construction of RISCVInstructionSelector.

The MachineRegisterInfo object belongs to each MachineFunction, so
set it in setupMF.


  Commit: 8d661fd9fd50fe4be9a9d5a8cc8f52f23925e7f6
      https://github.com/llvm/llvm-project/commit/8d661fd9fd50fe4be9a9d5a8cc8f52f23925e7f6
  Author: Pavel Skripkin <paskripkin at gmail.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    M clang/test/Analysis/asm.cpp

  Log Message:
  -----------
  [analyzer] use `invalidateRegions()` in `VisitGCCAsmStmt` (#109838)


  Commit: d8f22514eb0b83f302872af4689d27dce67501fc
      https://github.com/llvm/llvm-project/commit/d8f22514eb0b83f302872af4689d27dce67501fc
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M clang/include/clang/Driver/Options.td
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/test/CodeGen/nvptx_attributes.c
    M clang/test/CodeGenCXX/dynamic-cast-address-space.cpp
    M clang/test/OpenMP/target_parallel_for_codegen.cpp
    M clang/test/OpenMP/target_parallel_for_simd_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_firstprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_private_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_private_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_private_codegen.cpp
    M clang/test/OpenMP/target_teams_map_codegen.cpp

  Log Message:
  -----------
  [Clang] Automatically enable `-fconvergent-functions` on GPU targets (#111076)

Summary:
This patch causes us to respect the `-fconvergent-functions` and
`-fno-convergent-functions` options correctly. GPU targets should have
this set all the time, but we now offer `-fno-convergent-functions` to
opt-out if you want to test broken behavior. This munged about with a
lot of the old weird logic, but I don't think it makes any real changes.


  Commit: 8e33ff7d5669ec62ad26a0beb81cd257cb14258e
      https://github.com/llvm/llvm-project/commit/8e33ff7d5669ec62ad26a0beb81cd257cb14258e
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    R mlir/test/Integration/Dialect/SparseTensor/GPU/CUDA/dump-ptx.mlir
    A mlir/test/Integration/GPU/CUDA/dump-ptx.mlir

  Log Message:
  -----------
  [mlir][GPU][NFC] Move `dump-ptx.mlir` test case (#111142)


  Commit: 208f42fd9bb59c007b0d6abe7eaf8c4e829740ea
      https://github.com/llvm/llvm-project/commit/208f42fd9bb59c007b0d6abe7eaf8c4e829740ea
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

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

  Log Message:
  -----------
  [mlir][NVVM] Add constant memory space identifier (#111141)

Also use these enums in `BasicPtxBuilderInferface.cpp`.


  Commit: 2f245875b2f71272e6d7a78b4aed5be81109e9b9
      https://github.com/llvm/llvm-project/commit/2f245875b2f71272e6d7a78b4aed5be81109e9b9
  Author: Kareem Ergawy <kareem.ergawy at amd.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/test/Lower/OpenMP/loop-compound.f90

  Log Message:
  -----------
  [flang][OpenMP] Handle unstructured CF in compound loop constructs (#111111)

Fixes a bug in handling unstructured control-flow in compound loop
constructs. The fix makes sure that unstructured CF does not get lowered
until we reach the last item of the compound construct. This way, we
avoid moving block of unstructured loops in-between the middle items of
the construct and messing (i.e. adding operations) to these block while
doing so.


  Commit: d68083feba2ff869dae96e938b1fa64296f84274
      https://github.com/llvm/llvm-project/commit/d68083feba2ff869dae96e938b1fa64296f84274
  Author: Hari Limaye <hari.limaye at arm.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/test/Transforms/FunctionSpecialization/function-specialization2.ll
    M llvm/test/Transforms/FunctionSpecialization/identical-specializations.ll

  Log Message:
  -----------
  [FuncSpec] Update tests to use --include-generated-funcs (NFC)


  Commit: 47c8b95daeec8e6cb012344ed037024528a73295
      https://github.com/llvm/llvm-project/commit/47c8b95daeec8e6cb012344ed037024528a73295
  Author: Daniel Hoekwater <hoekwater at google.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

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

  Log Message:
  -----------
  [CFIFixup] Factor CFI remember/restore insertion into a helper (NFC) (#111066)

Inserting a remember/restore pair is a very clean abstraction, so we can
split the logic out into a helper function. Additionally, cleaning this up
will make it easier to add logic for handling functions that are split across
multiple sections.


  Commit: 4da4fac322165420f0522cb554e5f6f25540d564
      https://github.com/llvm/llvm-project/commit/4da4fac322165420f0522cb554e5f6f25540d564
  Author: Hari Limaye <hari.limaye at arm.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/IPO/ArgumentPromotion.cpp
    M llvm/test/Transforms/ArgumentPromotion/actual-arguments.ll

  Log Message:
  -----------
  [ArgPromotion] Consider InvokeInst in Caller alias analysis (#110335)

Check that all users of a Function are CallBase rather than CallInst
when performing alias analysis using actual arguments in the calling
function, as this check is also valid for Invoke instructions.

This allows replacing the existing check with an assert, as the Function
only being used by CallBase derived instructions is a precondition of
the transform.

This addresses post-commit review on #106216.


  Commit: d2051919bb42087ebde2a8bdcd5b2676ad16d8eb
      https://github.com/llvm/llvm-project/commit/d2051919bb42087ebde2a8bdcd5b2676ad16d8eb
  Author: bd1976bris <bd1976llvm at gmail.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.cpp

  Log Message:
  -----------
  [MSVC] work-around for compile time issue 102513 (#110986)

Disable optimizations when building clang/lib/AST/ByteCode/Interp.cpp
with Microsoft's compiler as it has a bug that causes excessive build
times. We do this only when NDEBUG is not defined on the assumption that
building without asserts indicates that a user is strongly invested in
runtime performance.

Partially addresses: https://github.com/llvm/llvm-project/issues/102513.

Once the bug is addressed in the Microsoft compiler this can be removed.

Co-authored-by: dyung


  Commit: 6b3220afa62bb1e77acf18dc7b622df9223e1ea8
      https://github.com/llvm/llvm-project/commit/6b3220afa62bb1e77acf18dc7b622df9223e1ea8
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll

  Log Message:
  -----------
  [InstCombine] Avoid crash on aggregate types in SimplifyDemandedUseFPClass (#111128)

The disables folding for FP aggregates that are not poison/posZero
types, which is currently not supported. Note: To fully handle this
aggregates would also likely require teaching `computeKnownFPClass()` to
handle array and struct constants (which does not seem implemented
outside of zero init).


  Commit: bf488ed6e1fbe4c494a1dc0dd199a3d03405784e
      https://github.com/llvm/llvm-project/commit/bf488ed6e1fbe4c494a1dc0dd199a3d03405784e
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    R llvm/CODE_OWNERS.TXT
    A llvm/Maintainers.md

  Log Message:
  -----------
  [LLVM][Maintainers] Move code owner list to Maintainers.md (#110240)

Following
https://discourse.llvm.org/t/rfc-proposing-changes-to-the-community-code-ownership-policy/80714
and https://github.com/llvm/llvm-project/pull/107384, this PR moves the
llvm CODE_OWNERS.txt to the Maintainers.md file.

The general format of the Maintainers.md file follows the current
CodeOwners.rst from clang, with some minor terminology changes to
account for the code owners -> maintainers migration.

This change is intended to be a pure format change, without changing any
actual code owners / maintainers. The list is still very badly outdated.
The intent here is to get the format change out of the way, so we can
get proper diffs when replacing no longer active maintainers. If we mix
both together, it will be hard to follow what actually changed.

I've tried to categorize things as best as I could, and filled in GitHub
handles for people where I knew them or could determine them with some
confidence.


  Commit: 9f3f76a6b443ace47b564d79192ca176de4dd236
      https://github.com/llvm/llvm-project/commit/9f3f76a6b443ace47b564d79192ca176de4dd236
  Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values2.ll
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values2.ll.expected
    M llvm/utils/UpdateTestChecks/common.py

  Log Message:
  -----------
  update_test_checks: collect original check lines for old versions of lit tests (#111148)

Old versions of UTC produced function labels like:

    ; CHECK-LABEL: @func(

Fix the regular expression used when scanning for old check lines to
recognize this form of label.

This allows meta variable stability to apply when running UTC on tests
using this form of label.

Reported-by: Nikita Popov <npopov at redhat.com>


  Commit: 8305e9fc09a54a520b29426628992e34b156d8f9
      https://github.com/llvm/llvm-project/commit/8305e9fc09a54a520b29426628992e34b156d8f9
  Author: Daniel Hoekwater <hoekwater at google.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

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

  Log Message:
  -----------
  Revert "[CFIFixup] Factor CFI remember/restore insertion into a helper (NFC)" (#111168)

Reverts llvm/llvm-project#111066

This seems to be breaking some builds:
- https://lab.llvm.org/buildbot/#/builders/51/builds/4732
- https://lab.llvm.org/buildbot/#/builders/41/builds/2534
- https://lab.llvm.org/buildbot/#/builders/73/builds/6601


  Commit: 2997a67172e0f3752f9f25210d86ba6fa65e63e7
      https://github.com/llvm/llvm-project/commit/2997a67172e0f3752f9f25210d86ba6fa65e63e7
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

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

  Log Message:
  -----------
  [Sema] Avoid repeated hash lookups (NFC) (#111090)


  Commit: 6a8fcb0fa899af0b65caa3605fbed359189bed2f
      https://github.com/llvm/llvm-project/commit/6a8fcb0fa899af0b65caa3605fbed359189bed2f
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M clang/utils/TableGen/MveEmitter.cpp

  Log Message:
  -----------
  [TableGen] Avoid repeated hash lookups (NFC) (#111089)


  Commit: c7895f0d72ef3797fff6f687fd696e9a70911703
      https://github.com/llvm/llvm-project/commit/c7895f0d72ef3797fff6f687fd696e9a70911703
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M clang/lib/Tooling/DependencyScanning/ModuleDepCollector.cpp

  Log Message:
  -----------
  [DependencyScanning] Avoid repeated hash lookups (NFC) (#111088)


  Commit: dada3c316d69ab641c9972062745ac16af34533e
      https://github.com/llvm/llvm-project/commit/dada3c316d69ab641c9972062745ac16af34533e
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M clang/tools/libclang/CXIndexDataConsumer.cpp

  Log Message:
  -----------
  [libclang] Avoid repeated hash lookups (NFC) (#111087)


  Commit: ed59d571f2704aff4dfdeace57c286a2c6deac74
      https://github.com/llvm/llvm-project/commit/ed59d571f2704aff4dfdeace57c286a2c6deac74
  Author: Kyungwoo Lee <kyulee at meta.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/include/llvm/LTO/LTO.h
    M llvm/include/llvm/Support/Caching.h
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/Support/Caching.cpp

  Log Message:
  -----------
  [ThinLTO][NFC] Refactor FileCache (#110463)

This is a prep for https://github.com/llvm/llvm-project/pull/90933.
 
  - Change `FileCache` from a function to a type.
  - Store the cache directory in the type, which will be used when creating additional caches for two-codegen round runs that inherit this value.


  Commit: 19992eea2300f1e97a71013b50f582538cad5022
      https://github.com/llvm/llvm-project/commit/19992eea2300f1e97a71013b50f582538cad5022
  Author: Danial Klimkin <dklimkin at google.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

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

  Log Message:
  -----------
  Partially revert "[mlir][NVVM] Add constant memory space identifier" (#111169)

The second part of the change introduced circular dependency between
LLVMDialect and BasicPtxBuilderInterface.


  Commit: 6937dbbe51391471f3cf50fe2b8fa2cd14080a3b
      https://github.com/llvm/llvm-project/commit/6937dbbe51391471f3cf50fe2b8fa2cd14080a3b
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M mlir/lib/Conversion/LLVMCommon/Pattern.cpp
    M mlir/test/Conversion/MemRefToLLVM/convert-static-memref-ops.mlir

  Log Message:
  -----------
  [mlir][memref] Fix `alloca` lowering with 0 dimensions (#111119)

The `memref.alloca` lowering computed the allocation size incorrectly
when there were 0 dimensions.

Previously:
```
memref.alloca() : memref<10x0x2xf32>
--> llvm.alloca 20xf32
```

Now:
```
memref.alloca() : memref<10x0x2xf32>
--> llvm.alloca 0xf32
```

>From the `llvm.alloca` documentation:
```
Allocating zero bytes is legal, but the returned pointer may not be unique.
```


  Commit: b9330e548e807ad79982b6e819797202d85b64cf
      https://github.com/llvm/llvm-project/commit/b9330e548e807ad79982b6e819797202d85b64cf
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    A llvm/test/Transforms/EarlyCSE/replace-calls-def-attrs.ll

  Log Message:
  -----------
  [EarlyCSE] Add tests for de-duplication of callsites with differing attrs; NFC


  Commit: b98c405f954f9ef6150c655f6ffc68e377d2ac84
      https://github.com/llvm/llvm-project/commit/b98c405f954f9ef6150c655f6ffc68e377d2ac84
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/EarlyCSE.cpp
    M llvm/test/Transforms/EarlyCSE/replace-calls-def-attrs.ll

  Log Message:
  -----------
  [EarlyCSE] De-Duplicate callsites with differing attrs

We only do this if the attributes of the two callsites are compatible
(intersectable) which is probably not in fact necessary.

Closes #110929


  Commit: d991e054529a805019d67769afd602ff878496f7
      https://github.com/llvm/llvm-project/commit/d991e054529a805019d67769afd602ff878496f7
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/gathered-consecutive-loads-different-types.ll

  Log Message:
  -----------
  [SLP]Fix compiler crash on vectorizing gatehrd loads with different types

Need to check not only parents, but also types for compatible loads,
when trying to build the vectorizable sequences.

Fixes crash reported in https://github.com/llvm/llvm-project/pull/107461#issuecomment-2392980214


  Commit: 87c799af31e2a82801f4dbda83125a0265d8c216
      https://github.com/llvm/llvm-project/commit/87c799af31e2a82801f4dbda83125a0265d8c216
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/sve-intrinsics-while.ll

  Log Message:
  -----------
  Regenerate output for llvm/test/CodeGen/AArch64/sve-intrinsics-while.ll


  Commit: dd04cf0c9d97a6d73c832ceb6cd060ec3589876e
      https://github.com/llvm/llvm-project/commit/dd04cf0c9d97a6d73c832ceb6cd060ec3589876e
  Author: Benoit Jacob <jacob.benoit.1 at gmail.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

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

  Log Message:
  -----------
  MLIR BUILD.bazel:  fold `BasicPtxBuilderInterface` into `NVVMDialect` (#111172)

While doing an integrate into downstream
https://github.com/iree-org/iree, I ran into a typical Bazel error with
`BasicPtxBuilderInterface.cpp` including `NVVMDialect.h` which was not
exposed as a header by a declared dependency. I tried fixing this the
straightforward way, by letting `:BasicPtxBuilderInterface` depend on
`:NVVMDialect` , but that caused another Bazel error: circular
dependency between these two targets, as `:NVVMDialect` was already
depending on `:BasicPtxBuilderInterface`. I tried breaking that circle
by dropping the latter dependency, but it was a real dependency in the
code, specifically in the TableGen-generated code. So in the end it
seems that these two targets just need to be fused, which this PR does.

Signed-off-by: Benoit Jacob <jacob.benoit.1 at gmail.com>


  Commit: 99c05b269010e817a0a2b44a7dad8ad28f8ac41b
      https://github.com/llvm/llvm-project/commit/99c05b269010e817a0a2b44a7dad8ad28f8ac41b
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M mlir/test/Integration/Dialect/Linalg/CPU/test-collapse-tensor.mlir
    M mlir/test/Integration/Dialect/Linalg/CPU/test-expand-tensor.mlir
    M mlir/test/Integration/Dialect/Linalg/CPU/test-padtensor.mlir
    M mlir/test/Integration/Dialect/Linalg/CPU/test-subtensor-insert-multiple-uses.mlir
    M mlir/test/Integration/Dialect/Linalg/CPU/test-subtensor-insert.mlir
    M mlir/test/Integration/Dialect/Linalg/CPU/test-tensor-e2e.mlir
    M mlir/test/Integration/Dialect/Linalg/CPU/test-tensor-matmul.mlir

  Log Message:
  -----------
  [mlir] Remove `-finalizing-bufferize` from tests (#111177)

This pass is not needed when the IR was bufferized with
`-one-shot-bufferize`.


  Commit: d883ef10767c5ac22b43f7f9f49e4565e7ce8263
      https://github.com/llvm/llvm-project/commit/d883ef10767c5ac22b43f7f9f49e4565e7ce8263
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/include/llvm/TableGen/Record.h
    A llvm/include/llvm/TableGen/TGTimer.h
    M llvm/lib/TableGen/CMakeLists.txt
    M llvm/lib/TableGen/Main.cpp
    M llvm/lib/TableGen/Record.cpp
    A llvm/lib/TableGen/TGTimer.cpp
    M llvm/utils/TableGen/CallingConvEmitter.cpp
    M llvm/utils/TableGen/DAGISelEmitter.cpp
    M llvm/utils/TableGen/GlobalISelCombinerEmitter.cpp
    M llvm/utils/TableGen/InstrInfoEmitter.cpp
    M llvm/utils/TableGen/PseudoLoweringEmitter.cpp
    M llvm/utils/TableGen/RegisterBankEmitter.cpp
    M llvm/utils/TableGen/RegisterInfoEmitter.cpp
    M llvm/utils/gn/secondary/llvm/lib/TableGen/BUILD.gn

  Log Message:
  -----------
  [TableGen] Factor out timer code into a new `TGTimer` class (#111054)

Factor out the timer related functionality from `RecordKeeper` to a new
`TGTimer` class in a new file.


  Commit: b91f0def6f261064cedfe0e62395c0097130b8f1
      https://github.com/llvm/llvm-project/commit/b91f0def6f261064cedfe0e62395c0097130b8f1
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/include/llvm/TableGen/TableGenBackend.h
    M llvm/lib/TableGen/TableGenBackend.cpp

  Log Message:
  -----------
  [TableGen] Change backend callback to require const RecordKeeper (#111064)

Change TableGen backend callback function to require a const
RecordKeeper argument (by changing it from function_ref to just a
function pointer). This undoes parts of
https://github.com/llvm/llvm-project/pull/104716 which was added to
enable gradual migration of TableGen backends to use const RecordKeeper
(by allowing either const or non-const references). Now that all
backends have been migrated to const reference, we do not need this.

This is a part of effort to have better const correctness in TableGen
backends:


https://discourse.llvm.org/t/psa-planned-changes-to-tablegen-getallderiveddefinitions-api-potential-downstream-breakages/81089


  Commit: ed0f4074eb86f1588efb11bd06ad4fb383a9a921
      https://github.com/llvm/llvm-project/commit/ed0f4074eb86f1588efb11bd06ad4fb383a9a921
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/include/llvm/IR/Intrinsics.td

  Log Message:
  -----------
  [LLVM][TableGen] Check validity of IIT encoding for vector types (#111152)

Add assert to verify that the `IIT_Vecs` list for IIT encoding of vector
types is not empty for vector types (else it will generate an invalid
IIT encoding).

Remove `llvm_v2048i1_ty` for which this assert fails, since the
`Intrinsics.td` file does not define any IIT encoding for vectors of
size 2048.


  Commit: 296a00bead8a25d875975ce68a5cd12c5fce6233
      https://github.com/llvm/llvm-project/commit/296a00bead8a25d875975ce68a5cd12c5fce6233
  Author: davidtrevelyan <davidtrevelyan at users.noreply.github.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/test/CodeGen/rtsan_attribute_inserted.c
    M clang/test/CodeGen/rtsan_no_attribute_sanitizer_disabled.c

  Log Message:
  -----------
  [clang][rtsan] Add sanitize_realtime_unsafe attr to [[clang::blocking]] function IR (#111055)


  Commit: 78089d5845d14bf61bdc06209c32f0fb34927c68
      https://github.com/llvm/llvm-project/commit/78089d5845d14bf61bdc06209c32f0fb34927c68
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

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

  Log Message:
  -----------
  ValueTracking: refactor recurrence-matching (NFC) (#109659)


  Commit: f873fc3ae2afb316d69c3f9be7b8903c18f217b0
      https://github.com/llvm/llvm-project/commit/f873fc3ae2afb316d69c3f9be7b8903c18f217b0
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/GISel/RISCVInstructionSelector.cpp
    M llvm/lib/Target/RISCV/RISCVGISel.td
    A llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/rvv/render-vlop-rv32.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/rvv/render-vlop-rv64.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/rvv/vmclr-rv32.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/rvv/vmclr-rv64.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/rvv/splat-vector.ll

  Log Message:
  -----------
  [RISCV][GISEL] instruction-select vmclr (#110782)

This is stacked on #110778. This PR adds and tests renderVLOp too, as
that is needed from vmclr.


  Commit: 9459d729d22b7bfedad9d3a4237162077c6984a4
      https://github.com/llvm/llvm-project/commit/9459d729d22b7bfedad9d3a4237162077c6984a4
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

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

  Log Message:
  -----------
  [x86] combineMUL - when looking for a vector multiply by splat constant, ensure we're only accepting ConstantInt splat scalars.

Fixes #111170


  Commit: 643df0573d235240d66e82cd2b163536e9e8de13
      https://github.com/llvm/llvm-project/commit/643df0573d235240d66e82cd2b163536e9e8de13
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/test/MC/WebAssembly/annotations.s

  Log Message:
  -----------
  [WebAssembly] Enable type checker in annotations.s (#111079)


  Commit: 98a15c7b0c6ec129d371f0c121dbe9396c4f5609
      https://github.com/llvm/llvm-project/commit/98a15c7b0c6ec129d371f0c121dbe9396c4f5609
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
    A llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-load-store-pointers.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-global-old-legalization.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-local.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-constant.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-flat.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-global.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-local.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-private.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-store-global.mir

  Log Message:
  -----------
  Reapply "[AMDGPU][GlobalISel] Fix load/store of pointer vectors, buffer.*.pN (#110714)" (#111059)

This reverts commit 650c41aad2eb43c634a05b2b5799a0c13a73b92f.

The test failures appear to be from conflicts with other PRs that landed around this time.


  Commit: 3a47bf633cfde9ab01fae2ce6f9c0876dc4952c3
      https://github.com/llvm/llvm-project/commit/3a47bf633cfde9ab01fae2ce6f9c0876dc4952c3
  Author: vporpo <vporpodas at google.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/Instruction.h
    M llvm/lib/SandboxIR/Instruction.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp

  Log Message:
  -----------
  [SandboxIR] Switch more Instruction::create() to InsertPosition (#111080)


  Commit: 4c26a1e4d7e490a38dcd2a24e4c8939075fd4a5a
      https://github.com/llvm/llvm-project/commit/4c26a1e4d7e490a38dcd2a24e4c8939075fd4a5a
  Author: Sean Perry <perry at ca.ibm.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/ZOS.cpp
    M clang/lib/Parse/ParsePragma.cpp
    A clang/test/Driver/zos-pragma-pack.c
    A clang/test/SemaCXX/pragma-pack-packed-2.cpp

  Log Message:
  -----------
  [SystemZ][z/OS] Use the XL pragma pack semantics on z/OS (#111053)

- set the default on z/OS to use the XL pragma semantics
- add in additional pragma pack values such as twobyte & reset supported
by XL on z/OS


  Commit: c0f8889774ce4926ed58e2bf379d8ba70adf79ae
      https://github.com/llvm/llvm-project/commit/c0f8889774ce4926ed58e2bf379d8ba70adf79ae
  Author: Adam Yang <hanbyang at microsoft.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/radians.ll
    A llvm/test/CodeGen/SPIRV/opencl/radians.ll

  Log Message:
  -----------
  [SPIRV] Add radians intrinsic (#110800)

partially fixes #99151

### Changes
* Added int_spv_radians intrinsic in IntrinsicsSPIRV.td
* Added lowering for int_spv_radians in SPIRVInstructionSelector.cpp
* Added DXIL backend test case

### Related PRs
* [[clang][HLSL] Add radians intrinsic
#110802](https://github.com/llvm/llvm-project/pull/110802)
* [[DXIL] Add radians intrinsic
#110616](https://github.com/llvm/llvm-project/pull/110616)


  Commit: 45817aa726363b5fda9e5e9b26efb7edec16a514
      https://github.com/llvm/llvm-project/commit/45817aa726363b5fda9e5e9b26efb7edec16a514
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LICM.cpp
    M llvm/test/CodeGen/PowerPC/p10-spill-crlt.ll
    M llvm/test/Transforms/LICM/hoist-binop.ll

  Log Message:
  -----------
  LICM: hoist BO assoc for and, or, xor (#111146)

Trivially lift the Opcode limitation on hoistBOAssociation to also hoist
and, or, and xor.

Alive2 proofs: https://alive2.llvm.org/ce/z/rVNP2X


  Commit: 4281f294a8ee23686cdef665d1b5df6ccab0efce
      https://github.com/llvm/llvm-project/commit/4281f294a8ee23686cdef665d1b5df6ccab0efce
  Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVDuplicatesTracker.cpp
    M llvm/lib/Target/SPIRV/SPIRVDuplicatesTracker.h
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp

  Log Message:
  -----------
  [SPIR-V] Duplicates Tracker accounts for possible changes in Constant usage after optimization (#110835)

This PR introduces changes into processing of internal/service data in
SPIRV Backend so that Duplicates Tracker accounts for possible changes
in Constant usage after optimization, namely this PR fixes the case when
a Constant register stored in Duplicates Tracker after all passes is
represented by a non-constant expression. In this case we may be sure
that it neither is able to create a duplicate nor is in need of a
special placement as a Constant instruction.

This PR doesn't introduce a new feature, and in this case we rely on
existing set of test cases in the SPIRV Backend test suite to ensure
that this PR doesn't break existing assumptions without introducing new
test cases. There is a reproducer of the issue available as part of SYCL
CTS test suite, however it's a binary of several MB's size. Given the
subtlety of the issue, reduction of the reproducer to a reasonable site
for inclusion into the SPIRV Backend test suite doesn't seem realistic.


  Commit: c0dfef878ec7ce7a334a013a6d4fdf8ed2302891
      https://github.com/llvm/llvm-project/commit/c0dfef878ec7ce7a334a013a6d4fdf8ed2302891
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/long-full-reg-stores.ll

  Log Message:
  -----------
  [SLP][NFC]Add a test with potential non-power-of2 (but whole reg) vectorized stores


  Commit: f74879cf0cf3e6d1f4c510627a7343ab09485e98
      https://github.com/llvm/llvm-project/commit/f74879cf0cf3e6d1f4c510627a7343ab09485e98
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/AArch64/reused-scalar-repeated-in-node.ll
    M llvm/test/Transforms/SLPVectorizer/root-trunc-extract-reuse.ll

  Log Message:
  -----------
  [SLP]Make PHICompare comparator follow weak strict ordering requirement



Reviewers: efriedma-quic

Reviewed By: efriedma-quic

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


  Commit: 9144fed31b59089f4e3e5fedf7eb87d2695ef843
      https://github.com/llvm/llvm-project/commit/9144fed31b59089f4e3e5fedf7eb87d2695ef843
  Author: Quinn Dawkins <quinn.dawkins at gmail.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td
    M mlir/include/mlir/Dialect/SCF/Transforms/TileUsingInterface.h
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
    M mlir/test/Dialect/Linalg/transform-op-fuse.mlir

  Log Message:
  -----------
  [mlir] Add option for a cleanup pattern set to SCF tiling helper (#109554)

The SCF helper for tiling an operation implementing the TilingInterface
and greedily fusing consumers requires an uninterrupted chain of
operations implementing the tiling interface to succeed. There can be
cases with intermediate ops that don't implement the interface but have
producers that could be fused if various canonicalization/simplification
patterns could run in between fusion steps.

This adds an option to SCFTileAndFuseOptions for a pattern set to run
between fusion steps to the ops that result from fusion/tiling. Removed
and newly inserted slices are tracked for continued fusion applications.

See this RFC for more discussion:

https://discourse.llvm.org/t/rfc-split-fusion-portions-of-the-tilinginterface-into-a-new-interface/81155


  Commit: 1e75d08659aeb1aabf92b59f33649c414d4ff8b7
      https://github.com/llvm/llvm-project/commit/1e75d08659aeb1aabf92b59f33649c414d4ff8b7
  Author: Adam Yang <hanbyang at microsoft.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
    A llvm/test/CodeGen/DirectX/radians.ll

  Log Message:
  -----------
  [DXIL] Add radians intrinsic (#110616)

makes progress on #99151

### Changes
- Added int_dx_radians intrinsic in IntrinsicsDirectX.td
- Added expansion for int_dx_radians in DXILIntrinsicExpansion.cpp`
- Added DXIL backend test case

### Related PRs
* [[clang][HLSL] Add radians intrinsic
#110802](https://github.com/llvm/llvm-project/pull/110802)
* [[SPIRV] Add radians intrinsic
#110800](https://github.com/llvm/llvm-project/pull/110800)


  Commit: 3b88805ca20018ae202afd3aea39f4fa856a8c64
      https://github.com/llvm/llvm-project/commit/3b88805ca20018ae202afd3aea39f4fa856a8c64
  Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/VOP2Instructions.td
    A llvm/test/CodeGen/AMDGPU/commute-op-sel.mir
    A llvm/test/CodeGen/AMDGPU/sdwa-commute.ll
    A llvm/test/CodeGen/AMDGPU/sdwa-cse.mir

  Log Message:
  -----------
  [AMDGPU] Fix SDWA commuting (#106920)

SDWA insts miss reverse opcode, which causes them to be treated as
commutable with default reverse opcode i.e. their own opcode. As a
result, SWDA F16 sub A, B and Sub B, A are merged by machine CSE. The
correct behavior is to merged sub A, B and subrev B, A instead of sub B,
A. This issues caused failures in rocFFT tests.

Another issue is that src0_sel and src1_sel are not swapped when SDWA
insts are commuted.

Verified that this fixes rocFFT tests failure.


  Commit: 72f38040ddc8c2eca712c29b86ea0209faab4d57
      https://github.com/llvm/llvm-project/commit/72f38040ddc8c2eca712c29b86ea0209faab4d57
  Author: Renaud Kauffmann <rkauffmann at nvidia.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M flang/include/flang/Runtime/CUDA/common.h
    M flang/lib/Optimizer/Transforms/CufOpConversion.cpp

  Log Message:
  -----------
  Removing CUF runtime dependency with llvm::EnableABIBreakingChecks (#111200)

getMemType happens to only be used in CufOpConversion.cpp. So, moving it
here for now. If it needs to be shared with the runtime, then care
should be taken in not bringing the include `#include
"flang/Optimizer/Dialect/CUF/Attributes/CUFAttr.h"` which introduces the
dependency with llvm::EnableABIBreakingChecks


  Commit: e31e6f259ed22acfb2135700cb0482f84d6ea386
      https://github.com/llvm/llvm-project/commit/e31e6f259ed22acfb2135700cb0482f84d6ea386
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/lib/TableGen/Error.cpp
    M llvm/test/TableGen/assert.td

  Log Message:
  -----------
  [TableGen] Print assert message inline with assert failure (#111184)

Print assert message after the "assertion failed" message instead of
printing it as a separate note. This makes the assert failure reporting
less verbose and also more useful to see the failure message inline with
the "assertion failed" message.


  Commit: 2a65f081b6111a8ed78e679d4612c32c1511c3f9
      https://github.com/llvm/llvm-project/commit/2a65f081b6111a8ed78e679d4612c32c1511c3f9
  Author: Youngsuk Kim <youngsuk.kim at hpe.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

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

  Log Message:
  -----------
  [llvm][OpenMPIRBuilderTest] Avoid Type::getPointerTo() (NFC) (#111196)

`llvm::Type::getPointerTo()` is to be deprecated & removed soon.


  Commit: 4f3a0959d62c81146a02dab80f761ccb921291e6
      https://github.com/llvm/llvm-project/commit/4f3a0959d62c81146a02dab80f761ccb921291e6
  Author: vporpo <vporpodas at google.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/Instruction.h
    M llvm/lib/SandboxIR/Instruction.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp

  Log Message:
  -----------
  [SandboxIR] Switch more Instruction::create() to InsertPosition (#111187)


  Commit: b2f3ac836aac166b8fb21690a0a480c816de0521
      https://github.com/llvm/llvm-project/commit/b2f3ac836aac166b8fb21690a0a480c816de0521
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

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

  Log Message:
  -----------
  [memprof] Teach createMIBNode to take ArrayRef (NFC) (#111195)

createMIBNode does not modify MIBCallStack, so we can take ArrayRef
instead.

While I am at it, this patch changes the type of MIBPayload to
SmallVector.  We put at most three elements, so we can avoid a heap
allocation.


  Commit: fda2fea3d161e07ec3a8441359f761ce9dd9a977
      https://github.com/llvm/llvm-project/commit/fda2fea3d161e07ec3a8441359f761ce9dd9a977
  Author: Manasij Mukherjee <manasij7479 at gmail.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/test/CodeGen/NVPTX/vector-returns.ll

  Log Message:
  -----------
  [NVPTX] Promote v2i8 to v2i16 (#111189)

Promote v2i8 to v2i16, fixes a crash. 
Re-enable a test in NVPTX/vector-returns.ll

https://github.com/llvm/llvm-project/issues/104864


  Commit: c029702f82a494053b23f10886fdc319751cd193
      https://github.com/llvm/llvm-project/commit/c029702f82a494053b23f10886fdc319751cd193
  Author: vporpo <vporpodas at google.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/Instruction.h
    M llvm/lib/SandboxIR/Instruction.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp

  Log Message:
  -----------
  [SandboxIR] Switch more Instruction::create() to InsertPosition (#111208)


  Commit: ed5088a2717e5c67499ea25937e430e68d567fa7
      https://github.com/llvm/llvm-project/commit/ed5088a2717e5c67499ea25937e430e68d567fa7
  Author: vporpo <vporpodas at google.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/Instruction.h
    M llvm/lib/SandboxIR/Context.cpp
    M llvm/lib/SandboxIR/Instruction.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp

  Log Message:
  -----------
  [SandboxIR] Switch more Instruction::create() to InsertPosition (#111213)

Also moves CmpInst definitions from Context.cpp to Instruction.cpp


  Commit: d0d0c4d5a0e3c4dd7fa480e6222cfd40d44d1e7e
      https://github.com/llvm/llvm-project/commit/d0d0c4d5a0e3c4dd7fa480e6222cfd40d44d1e7e
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

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

  Log Message:
  -----------
  [RISCV] Use PatGprImm to simplify some isel patterns. NFC


  Commit: 7692d106b480a16861f5ed63378ec1b857a20bc1
      https://github.com/llvm/llvm-project/commit/7692d106b480a16861f5ed63378ec1b857a20bc1
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

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

  Log Message:
  -----------
  [SLP][NFC]Remove dead code + use nlogn lookups instead of n^2


  Commit: 9df94e2791a0939f562d2d77f5d611e6ff37f5f9
      https://github.com/llvm/llvm-project/commit/9df94e2791a0939f562d2d77f5d611e6ff37f5f9
  Author: Adam Yang <hanbyang at microsoft.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M clang/include/clang/Basic/Builtins.td
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Sema/SemaHLSL.cpp
    A clang/test/CodeGenHLSL/builtins/radians.hlsl
    M clang/test/SemaHLSL/BuiltIns/half-float-only-errors.hlsl
    A clang/test/SemaHLSL/BuiltIns/radians-errors.hlsl

  Log Message:
  -----------
  [clang][HLSL] Add radians intrinsic (#110802)

partially fixes #99151

### Changes
* Implemented `radians` clang builtin
* Linked `radians` clang builtin with `hlsl_intrinsics.h`
* Added sema checks for `radians` to `CheckHLSLBuiltinFunctionCall` in
`SemaChecking.cpp`
* Add codegen for `radians` to `EmitHLSLBuiltinExpr` in `CGBuiltin.cpp`
* Add codegen tests to `clang/test/CodeGenHLSL/builtins/radians.hlsl`
* Add sema tests to `clang/test/SemaHLSL/BuiltIns/radians-errors.hlsl`

### Related PRs
* [[DXIL] Add radians intrinsic
#110616](https://github.com/llvm/llvm-project/pull/110616)
* [[SPIRV] Add radians intrinsic
#110800](https://github.com/llvm/llvm-project/pull/110800)


  Commit: 50838851e82281635deacd017273947d9259f8fe
      https://github.com/llvm/llvm-project/commit/50838851e82281635deacd017273947d9259f8fe
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M libc/docs/gpu/using.rst

  Log Message:
  -----------
  [libc][docs] Update NVPTX using documentation now that linking works

Summary:
I added a wrapper linker awhile back but this still says it doesn't
work.


  Commit: 765d7e7a47f971e78f6fa5477309591512ea4747
      https://github.com/llvm/llvm-project/commit/765d7e7a47f971e78f6fa5477309591512ea4747
  Author: Michael Liao <michael.hliao at gmail.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

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

  Log Message:
  -----------
  [IR] Fix '-Wparentheses' warnings. NFC


  Commit: e5b05a51b8151cc7788bbdea4d491e5ccfceedea
      https://github.com/llvm/llvm-project/commit/e5b05a51b8151cc7788bbdea4d491e5ccfceedea
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp

  Log Message:
  -----------
  [clang-format] Handle template closer followed by braces (#110971)

Fixes #110968.


  Commit: b5f6689dc93216f9272e790e787548cf29250566
      https://github.com/llvm/llvm-project/commit/b5f6689dc93216f9272e790e787548cf29250566
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp

  Log Message:
  -----------
  [clang-format] Annotate ::operator as FunctionDeclarationName (#111115)

Fixes #111011.


  Commit: e6549b8036089f20c6ac01e644a544aa2b231ca8
      https://github.com/llvm/llvm-project/commit/e6549b8036089f20c6ac01e644a544aa2b231ca8
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/test/CodeGen/RISCV/rv64zba.ll

  Log Message:
  -----------
  [RISCV][ISel] Allow emitting `addiw` with u32simm12 rhs (#111116)

In InstCombine, we shrink the constant by setting unused bits to zero
(e.g. `((X + -2) & 4294967295) -> ((X + 4294967294) & 4294967295)`).
However, this canonicalization blocks emitting `addiw` and creates
redundant li for simm32 rhs:
```
; bin/llc -mtriple=riscv64 -mattr=+zba test.ll -o -
define i64 @add_u32simm32_zextw(i64 %x) nounwind {
entry:
  %add = add i64 %x, 4294967294
  %and = and i64 %add, 4294967295
  ret i64 %and
}
```
```
add_u32simm32_zextw:                    # @add_u32simm32_zextw
# %bb.0:                                # %entry
        li      a1, -2
        add     a0, a0, a1
        zext.w  a0, a0
        ret
```

This patch addresses the issue by matching u32simm12 rhs.


  Commit: bf895c714e1f8a51c1e565a75acf60bf7197be51
      https://github.com/llvm/llvm-project/commit/bf895c714e1f8a51c1e565a75acf60bf7197be51
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

  Changed paths:
    M llvm/lib/TargetParser/Host.cpp

  Log Message:
  -----------
  [RISCV] Bump hwprobe support to Linux 6.11 (#108578)

This patch is the follow-up of
https://github.com/llvm/llvm-project/pull/94352 with some updates:
1. Add support for more extensions for `zve*`, `zimop`, `zc*`, `zcmop`
and `zawrs`.
2. Use `RISCV_HWPROBE_KEY_MISALIGNED_SCALAR_PERF` to check whether the
processor supports fast misaligned scalar memory access.
https://github.com/llvm/llvm-project/pull/108551 reminds me that the
patch
https://lore.kernel.org/all/20240809214444.3257596-1-evan@rivosinc.com/T/
has been merged. Address comment
https://github.com/llvm/llvm-project/pull/94352#discussion_r1626056015.

References:
1. constants:
https://github.com/torvalds/linux/blame/v6.11-rc7/arch/riscv/include/uapi/asm/hwprobe.h
2. https://docs.kernel.org/arch/riscv/hwprobe.html
3. Related commits:
1. `zve*` support:
https://github.com/torvalds/linux/commit/de8f8282a969d0b7342702f355886aab3b14043d
2. `zimop` support:
https://github.com/torvalds/linux/commit/36f8960de887a5e2811c5d1c0517cfa6f419c1c4
3. `zc*` support:
https://github.com/torvalds/linux/commit/0ad70db5eb21e50ed693fa274bea0346de453e29
4. `zcmop` support:
https://github.com/torvalds/linux/commit/fc078ea317cc856c1e82997da7e8fd4d6da7aa29
5. `zawrs` support:
https://github.com/torvalds/linux/commit/244c18fbf64a33d152645766a033b2935ab0acb5
6. scalar misaligned perf:
https://github.com/torvalds/linux/commit/c42e2f076769c9c1bc5f3f0aa1c2032558e76647
and
https://github.com/torvalds/linux/commit/1f5288874de776412041022607513ffac74ae1a6


  Commit: 9e862ae3219b09283971ca0ced52a64b0d6db86b
      https://github.com/llvm/llvm-project/commit/9e862ae3219b09283971ca0ced52a64b0d6db86b
  Author: alx32 <103613512+alx32 at users.noreply.github.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M lld/MachO/SyntheticSections.cpp
    A lld/test/MachO/icf-safe-thunks-dwarf.ll

  Log Message:
  -----------
  [lld-macho] Fix invalid DWARF with --icf=safe_thunks (#111097)

There is a bug in the current implementation of `--icf=safe_thunks`
where a STABS entry is emitted for generated thunks. This is problematic
as we end up generating invalid DWARF as dsymutil will think the entire
function body is at the thunk location, when in actuality there will
only be a single branch present. This will end up causing overlapping
DWARF entries.

To fix this we never generate STABS entries for such thunks. 
The existing `--icf=safe_thunks` test is updated to also generate debug
info and we add a check that no corrupt DWARF is generated.

As a future TODO we need to make `--keep-icf-stabs` compatible with
`--icf=safe_thunks`.


  Commit: 9766ce4db57212646f135fe7033972a7a51aef4d
      https://github.com/llvm/llvm-project/commit/9766ce4db57212646f135fe7033972a7a51aef4d
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M compiler-rt/lib/lsan/lsan_common.cpp
    M compiler-rt/lib/lsan/lsan_flags.inc

  Log Message:
  -----------
  [lsan] Add `thread_suspend_fail` flag


  Commit: f6fd7b24c5955ce772f1afa4314a2d3434c458d5
      https://github.com/llvm/llvm-project/commit/f6fd7b24c5955ce772f1afa4314a2d3434c458d5
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cpp

  Log Message:
  -----------
  [NFC][lsan] Add SuspendAllThreads traces


  Commit: 574266ce3381ad734c995d653a7cabd9d4d53447
      https://github.com/llvm/llvm-project/commit/574266ce3381ad734c995d653a7cabd9d4d53447
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-10-04 (Fri, 04 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/test/Transforms/InstCombine/icmp-signmask.ll
    M llvm/test/Transforms/InstCombine/icmp.ll

  Log Message:
  -----------
  Revert "[InstCombine] Folding `(icmp eq/ne (and X, -P2), INT_MIN)`" (#111236)

Reverts #110880 because of exposed issue is Msan instrumentation
#111212.

This reverts commit a64643688526114b50c25b3eda8a57855bd2be87.


  Commit: 554eaec63908ed20c35c8cc85304a3d44a63c634
      https://github.com/llvm/llvm-project/commit/554eaec63908ed20c35c8cc85304a3d44a63c634
  Author: Han-Kuan Chen <hankuan.chen at sifive.com>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
    A llvm/test/Analysis/CostModel/RISCV/fixed-vector-insert-subvector.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/remarks-insert-into-small-vector.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/revec-getGatherCost.ll

  Log Message:
  -----------
  [RISCV][TTI] Recognize CONCAT_VECTORS if a shufflevector mask is multiple insert subvector. (#110457)


  Commit: 835b5e278e525dc628d4d0c085eb272996aed466
      https://github.com/llvm/llvm-project/commit/835b5e278e525dc628d4d0c085eb272996aed466
  Author: Tom Yang <zhenyutyang at gmail.com>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

  Changed paths:
    M lldb/source/Commands/CommandObjectSession.cpp
    M lldb/source/Interpreter/CommandInterpreter.cpp
    M lldb/source/Interpreter/InterpreterProperties.td
    M lldb/test/API/commands/session/save/TestSessionSave.py

  Log Message:
  -----------
  Add warning message to `session save` when transcript isn't saved. (#109020)

Somewhat recently, we made the change to hide the behavior to save LLDB
session history to the transcript buffer behind the flag
`interpreter.save-transcript`. By default, `interpreter.save-transcript`
is false. See #90703 for context.

I'm making a small update here to our `session save` messaging and some
help docs to clarify for users that aren't aware of this change. Maybe
`interpreter.save-transcript` could be true by default as well. Any
feedback welcome.

# Tests
```
bin/lldb-dotest -p TestSessionSave
```

---------

Co-authored-by: Tom Yang <toyang at fb.com>


  Commit: 91fdfec263ff2b8e88433c4294a550cabb0f2314
      https://github.com/llvm/llvm-project/commit/91fdfec263ff2b8e88433c4294a550cabb0f2314
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

  Changed paths:
    M llvm/utils/TableGen/Basic/CodeGenIntrinsics.cpp
    M llvm/utils/TableGen/Basic/CodeGenIntrinsics.h
    M llvm/utils/TableGen/IntrinsicEmitter.cpp

  Log Message:
  -----------
  [NFC][TableGen] Change `CodeGenIntrinsics` to use const references (#111219)

Change `CodeGenIntrinsics` classes to vend out const references to
`CodeGenIntrinsic` or `TargetSet` objects.


  Commit: 22089dc91d6e48649412764c34c0140eea0a795b
      https://github.com/llvm/llvm-project/commit/22089dc91d6e48649412764c34c0140eea0a795b
  Author: David Green <david.green at arm.com>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

  Changed paths:
    A llvm/test/Transforms/InstCombine/canonicalize-gep-constglob.ll

  Log Message:
  -----------
  [Instcombine] Test for more gep canonicalization


  Commit: 0548481856e75998e1de329f5c9722dcf1ca5c84
      https://github.com/llvm/llvm-project/commit/0548481856e75998e1de329f5c9722dcf1ca5c84
  Author: David Green <david.green at arm.com>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

  Changed paths:
    M llvm/test/Transforms/InstCombine/and-or-icmps.ll

  Log Message:
  -----------
  [InstCombine] Update and-or-icmps.ll after 574266ce3381ad734c995d653a7cabd9d4d53447. NFC


  Commit: 1789534ac1ac95f9a3369625e331b9a446be60d9
      https://github.com/llvm/llvm-project/commit/1789534ac1ac95f9a3369625e331b9a446be60d9
  Author: David Green <david.green at arm.com>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    A llvm/test/CodeGen/AArch64/selectopt-const.ll

  Log Message:
  -----------
  [SelectOpt] Don't convert constant selects to branches. (#110858)

Selects that choose between two constants will be less profitable to
turn into branches, especially if the constants can be folded somehow
into the surrounding instructions. They will also be cost modelled in a
way that can make them over-optimistically converted to branches, as
neither branch will have a latency depth but the constants still need to
be materialized.

This patch disabled selectopt for selects with two constant branches. It
is currently in the target independent part, as it sounds generic, but I
could move it into AArch64 if needed.


  Commit: fba6c887c110a501b311f6b01721eaf3a5dd994e
      https://github.com/llvm/llvm-project/commit/fba6c887c110a501b311f6b01721eaf3a5dd994e
  Author: Pavel Skripkin <paskripkin at gmail.com>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/BuiltinFunctionChecker.cpp
    M clang/test/Analysis/builtin_overflow.c

  Log Message:
  -----------
  [analyzer] Fix wrong `builtin_*_overflow` return type (#111253)

`builtin_*_overflow` functions return `_Bool` according to [1].
`BuiltinFunctionChecker` was using `makeTruthVal` w/o specifying
explicit type, which creates an `int` value, since it's the type of any
compassion according to C standard.

Fix it by directly passing `BoolTy` to `makeTruthVal`

Closes: #111147

[1]
https://clang.llvm.org/docs/LanguageExtensions.html#checked-arithmetic-builtins


  Commit: 4e5f8a8f0bf855fdac93fa09b4b82b69339235b9
      https://github.com/llvm/llvm-project/commit/4e5f8a8f0bf855fdac93fa09b4b82b69339235b9
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/InterpBlock.cpp
    M clang/lib/AST/ByteCode/InterpBlock.h
    M clang/lib/AST/ByteCode/Pointer.h
    M clang/lib/AST/ByteCode/Program.cpp
    M clang/lib/AST/ByteCode/Program.h

  Log Message:
  -----------
  [clang][bytecode] Save a per-Block IsWeak bit (#111248)

Checking the decl for every load is rather expensive.


  Commit: 4425dfba6a1f394e958e94aa471a07bcf707136a
      https://github.com/llvm/llvm-project/commit/4425dfba6a1f394e958e94aa471a07bcf707136a
  Author: Hongren Zheng <i at zenithal.me>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Polynomial/IR/PolynomialAttributes.td
    M mlir/lib/Dialect/Polynomial/IR/PolynomialAttributes.cpp
    M mlir/test/Dialect/Polynomial/attributes.mlir

  Log Message:
  -----------
  [mlir][polynomial] Add and verify constraints of coefficientModulus for ringAttr (#111016)

Currently the semantic of coefficientModulus is unclear and a lowering
of it faces uncertainty, for example,
https://github.com/google/heir/pull/995#issuecomment-2387394895

Also, it lacks a verifier which should conform to the definition in the
document.

This PR tries to further define the semantic of coefficientModulus and
adds a verifier for it.

Cc @j2kun for review and suggestions.


  Commit: c57418037a002f4c5f19339837cc37e3a8f4ecb8
      https://github.com/llvm/llvm-project/commit/c57418037a002f4c5f19339837cc37e3a8f4ecb8
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/test/AST/ByteCode/builtins.cpp

  Log Message:
  -----------
  [clang][bytecode] Handle UETT_OpenMPRequiredSimdAlign (#111259)


  Commit: 87d199ff243ff25b06d68a529815519901e8294f
      https://github.com/llvm/llvm-project/commit/87d199ff243ff25b06d68a529815519901e8294f
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

  Changed paths:
    M lld/ELF/Relocations.cpp

  Log Message:
  -----------
  [ELF] Pass Ctx & to Relocations


  Commit: 53a1fb0cd73382498fe79f95521c350409fd40b9
      https://github.com/llvm/llvm-project/commit/53a1fb0cd73382498fe79f95521c350409fd40b9
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

  Changed paths:
    M lld/ELF/AArch64ErrataFix.h
    M lld/ELF/InputSection.cpp
    M lld/ELF/Writer.cpp

  Log Message:
  -----------
  [ELF] Pass Ctx &


  Commit: 020b8e8f8dfef2392351e66215d11cccb573a88f
      https://github.com/llvm/llvm-project/commit/020b8e8f8dfef2392351e66215d11cccb573a88f
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

  Changed paths:
    M clang/test/AST/ByteCode/builtins.cpp

  Log Message:
  -----------
  [clang][test] Remove a broken bytecode test

See e.g. https://lab.llvm.org/buildbot/#/builders/13/builds/2705

Looks like the expected value is legitimately sometimes 0.
I'll add another test back later.


  Commit: 8aa76d34ea95031abed32761251951c5f87492c6
      https://github.com/llvm/llvm-project/commit/8aa76d34ea95031abed32761251951c5f87492c6
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

  Changed paths:
    M clang/lib/Driver/Driver.cpp

  Log Message:
  -----------
  [Driver] Avoid repeated hash lookups (NFC) (#111225)


  Commit: fe9f1a215e0bdb5308f0dc5021bd02b173a45dbc
      https://github.com/llvm/llvm-project/commit/fe9f1a215e0bdb5308f0dc5021bd02b173a45dbc
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

  Changed paths:
    M mlir/lib/Dialect/Affine/Transforms/PipelineDataTransfer.cpp

  Log Message:
  -----------
  [Affine] Avoid repeated hash lookups (NFC) (#111226)


  Commit: e8f01b0557354a28d17bfe618df5e257ec3e982a
      https://github.com/llvm/llvm-project/commit/e8f01b0557354a28d17bfe618df5e257ec3e982a
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

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

  Log Message:
  -----------
  [Sema] Avoid repeated hash lookups (NFC) (#111227)


  Commit: bcb15d00596f8f25310887494f171e7f70386e7c
      https://github.com/llvm/llvm-project/commit/bcb15d00596f8f25310887494f171e7f70386e7c
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

  Changed paths:
    M llvm/lib/Support/APInt.cpp

  Log Message:
  -----------
  [APInt] Slightly simplify APInt::ashrSlowCase. NFC (#111220)

Use an arithmetic shift for the last word copy when BitShift!=0. This
avoids an explicit sign extend after the shift.


  Commit: 20e37f03c64589c366fccd766ab9120db6da4aa0
      https://github.com/llvm/llvm-project/commit/20e37f03c64589c366fccd766ab9120db6da4aa0
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-mul-to-shl.mir

  Log Message:
  -----------
  [GISel] Don't preserve NSW flag when converting G_MUL of INT_MIN to G_SHL. (#111230)

mul and shl have different meanings for the nsw flag. We need to drop it
when converting a multiply by the minimum negative value.


  Commit: 67c0846357bcd6faca713315380f9981a805a6e5
      https://github.com/llvm/llvm-project/commit/67c0846357bcd6faca713315380f9981a805a6e5
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

  Changed paths:
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/Thunks.cpp

  Log Message:
  -----------
  [ELF] Don't call getPPC64TargetInfo outside Driver. NFC

getPPC64TargetInfo should only be called once per link invocation.


  Commit: 68210c7c269b7b7325dedaea7cea9fe9d979fab5
      https://github.com/llvm/llvm-project/commit/68210c7c269b7b7325dedaea7cea9fe9d979fab5
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Transforms/LoopVectorize/X86/divs-with-tail-folding.ll
    M llvm/test/Transforms/LoopVectorize/X86/drop-poison-generating-flags.ll
    A llvm/test/Transforms/LoopVectorize/X86/replicate-recipe-with-only-first-lane-used.ll

  Log Message:
  -----------
  [VPlan] Only generate first lane for VPPredInstPHI if no others used.

IF only the first lane of the result is used, only generate the first
lane.

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


  Commit: c6110496b346d7963f8f9f62a7d2696da12a943e
      https://github.com/llvm/llvm-project/commit/c6110496b346d7963f8f9f62a7d2696da12a943e
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

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

  Log Message:
  -----------
  [RISCV] Use THShift_ri class instead of RVBShift_ri for TH_TST instruction. NFC


  Commit: 73683cc1ab0fe79a4b02b956cf3c033250537bff
      https://github.com/llvm/llvm-project/commit/73683cc1ab0fe79a4b02b956cf3c033250537bff
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

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

  Log Message:
  -----------
  [Basic] Avoid repeated hash lookups (NFC) (#111228)


  Commit: 206fad0e218e83799e49ca15545d997c6c5e8a03
      https://github.com/llvm/llvm-project/commit/206fad0e218e83799e49ca15545d997c6c5e8a03
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

  Changed paths:
    M flang/include/flang/Optimizer/CodeGen/CodeGen.h
    M flang/include/flang/Optimizer/CodeGen/CodeGenOpenMP.h
    M flang/include/flang/Optimizer/Transforms/CufOpConversion.h
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/CodeGen/CodeGenOpenMP.cpp
    M flang/lib/Optimizer/Transforms/CufOpConversion.cpp
    M mlir/docs/Bufferization.md
    M mlir/include/mlir/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.h
    M mlir/include/mlir/Conversion/ArithToLLVM/ArithToLLVM.h
    M mlir/include/mlir/Conversion/ArithToSPIRV/ArithToSPIRV.h
    M mlir/include/mlir/Conversion/ComplexToLLVM/ComplexToLLVM.h
    M mlir/include/mlir/Conversion/ComplexToSPIRV/ComplexToSPIRV.h
    M mlir/include/mlir/Conversion/ControlFlowToLLVM/ControlFlowToLLVM.h
    M mlir/include/mlir/Conversion/ControlFlowToSPIRV/ControlFlowToSPIRV.h
    M mlir/include/mlir/Conversion/FuncToLLVM/ConvertFuncToLLVM.h
    M mlir/include/mlir/Conversion/FuncToSPIRV/FuncToSPIRV.h
    M mlir/include/mlir/Conversion/GPUToLLVMSPV/GPUToLLVMSPVPass.h
    M mlir/include/mlir/Conversion/GPUToNVVM/GPUToNVVMPass.h
    M mlir/include/mlir/Conversion/GPUToROCDL/GPUToROCDLPass.h
    M mlir/include/mlir/Conversion/GPUToSPIRV/GPUToSPIRV.h
    M mlir/include/mlir/Conversion/IndexToLLVM/IndexToLLVM.h
    M mlir/include/mlir/Conversion/IndexToSPIRV/IndexToSPIRV.h
    M mlir/include/mlir/Conversion/MathToLLVM/MathToLLVM.h
    M mlir/include/mlir/Conversion/MathToROCDL/MathToROCDL.h
    M mlir/include/mlir/Conversion/MathToSPIRV/MathToSPIRV.h
    M mlir/include/mlir/Conversion/MemRefToEmitC/MemRefToEmitC.h
    M mlir/include/mlir/Conversion/MemRefToLLVM/MemRefToLLVM.h
    M mlir/include/mlir/Conversion/MemRefToSPIRV/MemRefToSPIRV.h
    M mlir/include/mlir/Conversion/NVGPUToNVVM/NVGPUToNVVM.h
    M mlir/include/mlir/Conversion/OpenMPToLLVM/ConvertOpenMPToLLVM.h
    M mlir/include/mlir/Conversion/SCFToSPIRV/SCFToSPIRV.h
    M mlir/include/mlir/Conversion/SPIRVToLLVM/SPIRVToLLVM.h
    M mlir/include/mlir/Conversion/TensorToSPIRV/TensorToSPIRV.h
    M mlir/include/mlir/Conversion/TosaToLinalg/TosaToLinalg.h
    M mlir/include/mlir/Conversion/TosaToTensor/TosaToTensor.h
    M mlir/include/mlir/Conversion/UBToLLVM/UBToLLVM.h
    M mlir/include/mlir/Conversion/UBToSPIRV/UBToSPIRV.h
    M mlir/include/mlir/Conversion/VectorToLLVM/ConvertVectorToLLVM.h
    M mlir/include/mlir/Conversion/VectorToSPIRV/VectorToSPIRV.h
    M mlir/include/mlir/Dialect/AMX/Transforms.h
    M mlir/include/mlir/Dialect/Arith/Transforms/Passes.h
    M mlir/include/mlir/Dialect/ArmSVE/Transforms/Transforms.h
    M mlir/include/mlir/Dialect/Bufferization/Transforms/Bufferize.h
    M mlir/include/mlir/Dialect/Func/Transforms/DecomposeCallGraphTypes.h
    M mlir/include/mlir/Dialect/Func/Transforms/FuncConversions.h
    M mlir/include/mlir/Dialect/Func/Transforms/OneToNFuncConversions.h
    M mlir/include/mlir/Dialect/Math/Transforms/Passes.h
    M mlir/include/mlir/Dialect/MemRef/Transforms/Transforms.h
    M mlir/include/mlir/Dialect/SCF/Transforms/Patterns.h
    M mlir/include/mlir/Dialect/SPIRV/Transforms/SPIRVConversion.h
    M mlir/include/mlir/Dialect/SparseTensor/Transforms/Passes.h
    M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
    M mlir/include/mlir/Dialect/X86Vector/Transforms.h
    M mlir/include/mlir/Transforms/OneToNTypeConversion.h
    M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
    M mlir/lib/Conversion/ArithToLLVM/ArithToLLVM.cpp
    M mlir/lib/Conversion/ArithToSPIRV/ArithToSPIRV.cpp
    M mlir/lib/Conversion/ComplexToLLVM/ComplexToLLVM.cpp
    M mlir/lib/Conversion/ComplexToSPIRV/ComplexToSPIRV.cpp
    M mlir/lib/Conversion/ControlFlowToLLVM/ControlFlowToLLVM.cpp
    M mlir/lib/Conversion/ControlFlowToSPIRV/ControlFlowToSPIRV.cpp
    M mlir/lib/Conversion/ConvertToSPIRV/ConvertToSPIRVPass.cpp
    M mlir/lib/Conversion/FuncToLLVM/FuncToLLVM.cpp
    M mlir/lib/Conversion/FuncToSPIRV/FuncToSPIRV.cpp
    M mlir/lib/Conversion/GPUCommon/IndexIntrinsicsOpLowering.h
    M mlir/lib/Conversion/GPUCommon/OpToFuncCallLowering.h
    M mlir/lib/Conversion/GPUToLLVMSPV/GPUToLLVMSPV.cpp
    M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
    M mlir/lib/Conversion/GPUToNVVM/WmmaOpsToNvvm.cpp
    M mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
    M mlir/lib/Conversion/GPUToSPIRV/GPUToSPIRV.cpp
    M mlir/lib/Conversion/GPUToSPIRV/WmmaOpsToSPIRV.cpp
    M mlir/lib/Conversion/IndexToLLVM/IndexToLLVM.cpp
    M mlir/lib/Conversion/IndexToSPIRV/IndexToSPIRV.cpp
    M mlir/lib/Conversion/MathToLLVM/MathToLLVM.cpp
    M mlir/lib/Conversion/MathToROCDL/MathToROCDL.cpp
    M mlir/lib/Conversion/MathToSPIRV/MathToSPIRV.cpp
    M mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp
    M mlir/lib/Conversion/MemRefToLLVM/MemRefToLLVM.cpp
    M mlir/lib/Conversion/MemRefToSPIRV/MemRefToSPIRV.cpp
    M mlir/lib/Conversion/NVGPUToNVVM/NVGPUToNVVM.cpp
    M mlir/lib/Conversion/OpenMPToLLVM/OpenMPToLLVM.cpp
    M mlir/lib/Conversion/SCFToSPIRV/SCFToSPIRV.cpp
    M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
    M mlir/lib/Conversion/TensorToSPIRV/TensorToSPIRV.cpp
    M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
    M mlir/lib/Conversion/TosaToTensor/TosaToTensor.cpp
    M mlir/lib/Conversion/UBToLLVM/UBToLLVM.cpp
    M mlir/lib/Conversion/UBToSPIRV/UBToSPIRV.cpp
    M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
    M mlir/lib/Conversion/VectorToSPIRV/VectorToSPIRV.cpp
    M mlir/lib/Dialect/AMX/Transforms/LegalizeForLLVMExport.cpp
    M mlir/lib/Dialect/Arith/Transforms/EmulateNarrowType.cpp
    M mlir/lib/Dialect/Arith/Transforms/EmulateUnsupportedFloats.cpp
    M mlir/lib/Dialect/Arith/Transforms/EmulateWideInt.cpp
    M mlir/lib/Dialect/ArmSVE/Transforms/LegalizeForLLVMExport.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/Bufferize.cpp
    M mlir/lib/Dialect/Func/Transforms/DecomposeCallGraphTypes.cpp
    M mlir/lib/Dialect/Func/Transforms/FuncConversions.cpp
    M mlir/lib/Dialect/Func/Transforms/OneToNFuncConversions.cpp
    M mlir/lib/Dialect/Math/Transforms/ExtendToSupportedTypes.cpp
    M mlir/lib/Dialect/MemRef/Transforms/EmulateNarrowType.cpp
    M mlir/lib/Dialect/MemRef/Transforms/EmulateWideInt.cpp
    M mlir/lib/Dialect/SCF/Transforms/OneToNTypeConversion.cpp
    M mlir/lib/Dialect/SCF/Transforms/StructuralTypeConversions.cpp
    M mlir/lib/Dialect/SPIRV/Transforms/SPIRVConversion.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseIterationToScf.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseStorageSpecifierToLLVM.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorCodegen.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorConversion.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorLinearize.cpp
    M mlir/lib/Dialect/X86Vector/Transforms/LegalizeForLLVMExport.cpp
    M mlir/lib/Transforms/Utils/OneToNTypeConversion.cpp
    M mlir/test/lib/Conversion/OneToNTypeConversion/TestOneToNTypeConversionPass.cpp

  Log Message:
  -----------
  [mlir][NFC] Mark type converter in `populate...` functions as `const` (#111250)

This commit marks the type converter in `populate...` functions as
`const`. This is useful for debugging.

Patterns already take a `const` type converter. However, some
`populate...` functions do not only add new patterns, but also add
additional type conversion rules. That makes it difficult to find the
place where a type conversion was added in the code base. With this
change, all `populate...` functions that only populate pattern now have
a `const` type converter. Programmers can then conclude from the
function signature that these functions do not register any new type
conversion rules.

Also some minor cleanups around the 1:N dialect conversion
infrastructure, which did not always pass the type converter as a
`const` object internally.


  Commit: e36a39346796528f75ff01ef1084b2dfe0a2a747
      https://github.com/llvm/llvm-project/commit/e36a39346796528f75ff01ef1084b2dfe0a2a747
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Conversion/SPIRVToLLVM/SPIRVToLLVM.h

  Log Message:
  -----------
  [mlir][SPIRV] Fix build error (#111264)

Fix build error that was introduced by #111250. Also, the deleted
function is not needed at all.

```
../llvm-project/mlir/include/mlir/Conversion/SPIRVToLLVM/SPIRVToLLVM.h: In member function ‘const mlir::LLVMTypeConverter* mlir::SPIRVToLLVMConversion<SPIRVOp>::getTypeConverter() const’:
../llvm-project/mlir/include/mlir/Conversion/SPIRVToLLVM/SPIRVToLLVM.h:35:12: error: invalid ‘static_cast’ from type ‘const mlir::TypeConverter*’ to type ‘const mlir::LLVMTypeConverter*’
   35 |     return static_cast<const LLVMTypeConverter *>(
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   36 |         ConversionPattern::getTypeConverter());
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../llvm-project/mlir/include/mlir/Conversion/SPIRVToLLVM/SPIRVToLLVM.h:21:7: note: class type ‘const mlir::LLVMTypeConverter’ is incomplete
```


  Commit: 98723e656618345f05a8e66b18e0f5d37866e75e
      https://github.com/llvm/llvm-project/commit/98723e656618345f05a8e66b18e0f5d37866e75e
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

  Changed paths:
    M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp

  Log Message:
  -----------
  [mlir][SPIRV] Fix build (2) (#111265)


  Commit: d3a367dea515f147ac1380afdc286932ccf82eb0
      https://github.com/llvm/llvm-project/commit/d3a367dea515f147ac1380afdc286932ccf82eb0
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

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

  Log Message:
  -----------
  [RISCV] Give ZEXT_H_RV32 and ZEXT_H_RV64 R-type format to match PACK. NFC

These are different than other Zb* unary instructions because
they are specializations of PACKW or PACKH. So they should use
RVInstR instead of RVInstI.

This doesn't cause any functional difference since we only use the
format for relocations and we never have relocations on these
instructions.


  Commit: 47e6d1816251e90b3d589710c5203a92c6015a7c
      https://github.com/llvm/llvm-project/commit/47e6d1816251e90b3d589710c5203a92c6015a7c
  Author: davidtrevelyan <davidtrevelyan at users.noreply.github.com>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

  Changed paths:
    M clang/docs/RealtimeSanitizer.rst

  Log Message:
  -----------
  [NFC][rtsan] Update docs to include [[clang::blocking]] (#111249)

Updates the RealtimeSanitizer documentation to:

- include information about how to use `[[clang::blocking]]`, and
- update the displayed error messages to the latest style


  Commit: 46944b0cbc9a9d8daad0182c40fcd3560bc9ca35
      https://github.com/llvm/llvm-project/commit/46944b0cbc9a9d8daad0182c40fcd3560bc9ca35
  Author: Job Henandez Lara <jobhdezlara93 at gmail.com>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

  Changed paths:
    M libc/include/llvm-libc-macros/linux/error-number-macros.h
    M libc/src/__support/StringUtil/tables/CMakeLists.txt
    M libc/src/__support/StringUtil/tables/linux_extension_errors.h
    M libc/src/__support/StringUtil/tables/posix_errors.h
    M libc/src/__support/StringUtil/tables/stdc_errors.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/acosf.cpp
    M libc/src/math/generic/asinf.cpp
    M libc/src/math/generic/cosf.cpp
    M libc/src/math/generic/exp.cpp
    M libc/src/math/generic/exp10.cpp
    M libc/src/math/generic/exp10f_impl.h
    M libc/src/math/generic/exp2.cpp
    M libc/src/math/generic/exp2f_impl.h
    M libc/src/math/generic/expf.cpp
    M libc/src/math/generic/explogxf.h
    M libc/src/math/generic/expm1f.cpp
    M libc/src/math/generic/powf.cpp
    M libc/src/math/generic/sincosf.cpp
    M libc/src/math/generic/sinf.cpp
    M libc/src/math/generic/tanf.cpp
    M libc/src/pthread/CMakeLists.txt
    M libc/src/pthread/pthread_atfork.cpp
    M libc/src/pthread/pthread_attr_setdetachstate.cpp
    M libc/src/pthread/pthread_attr_setguardsize.cpp
    M libc/src/pthread/pthread_attr_setstack.cpp
    M libc/src/pthread/pthread_attr_setstacksize.cpp
    M libc/src/pthread/pthread_condattr_setclock.cpp
    M libc/src/pthread/pthread_condattr_setpshared.cpp
    M libc/src/pthread/pthread_create.cpp
    M libc/src/pthread/pthread_key_create.cpp
    M libc/src/pthread/pthread_key_delete.cpp
    M libc/src/pthread/pthread_mutex_init.cpp
    M libc/src/pthread/pthread_mutexattr_destroy.cpp
    M libc/src/pthread/pthread_mutexattr_getpshared.cpp
    M libc/src/pthread/pthread_mutexattr_getrobust.cpp
    M libc/src/pthread/pthread_mutexattr_gettype.cpp
    M libc/src/pthread/pthread_mutexattr_setpshared.cpp
    M libc/src/pthread/pthread_mutexattr_setrobust.cpp
    M libc/src/pthread/pthread_mutexattr_settype.cpp
    M libc/src/pthread/pthread_rwlock_destroy.cpp
    M libc/src/pthread/pthread_rwlock_init.cpp
    M libc/src/pthread/pthread_rwlock_rdlock.cpp
    M libc/src/pthread/pthread_rwlock_timedrdlock.cpp
    M libc/src/pthread/pthread_rwlock_timedwrlock.cpp
    M libc/src/pthread/pthread_rwlock_tryrdlock.cpp
    M libc/src/pthread/pthread_rwlock_trywrlock.cpp
    M libc/src/pthread/pthread_rwlock_unlock.cpp
    M libc/src/pthread/pthread_rwlock_wrlock.cpp
    M libc/src/pthread/pthread_rwlockattr_setkind_np.cpp
    M libc/src/pthread/pthread_rwlockattr_setpshared.cpp
    M libc/src/pthread/pthread_setspecific.cpp
    M libc/src/spawn/CMakeLists.txt
    M libc/src/spawn/posix_spawn_file_actions_addclose.cpp
    M libc/src/spawn/posix_spawn_file_actions_adddup2.cpp
    M libc/src/spawn/posix_spawn_file_actions_addopen.cpp
    M libc/src/spawn/posix_spawn_file_actions_destroy.cpp
    M libc/src/threads/CMakeLists.txt
    M libc/src/threads/thrd_create.cpp
    M libc/test/UnitTest/PrintfMatcher.h
    M libc/test/UnitTest/ScanfMatcher.h
    M libc/test/integration/src/pthread/CMakeLists.txt
    M libc/test/integration/src/pthread/pthread_name_test.cpp
    M libc/test/integration/src/spawn/posix_spawn_test_binary.cpp
    M libc/test/integration/src/unistd/CMakeLists.txt
    M libc/test/integration/src/unistd/fork_test.cpp
    M libc/test/integration/src/unistd/stack_smashing_test.cpp
    M libc/test/integration/startup/linux/CMakeLists.txt
    M libc/test/integration/startup/linux/tls_test.cpp
    M libc/test/src/__support/File/CMakeLists.txt
    M libc/test/src/math/RoundToIntegerTest.h
    M libc/test/src/math/acosf_test.cpp
    M libc/test/src/math/acoshf_test.cpp
    M libc/test/src/math/asinf_test.cpp
    M libc/test/src/math/asinhf_test.cpp
    M libc/test/src/math/atanf_test.cpp
    M libc/test/src/math/atanhf_test.cpp
    M libc/test/src/math/cosf_test.cpp
    M libc/test/src/math/coshf_test.cpp
    M libc/test/src/math/erff_test.cpp
    M libc/test/src/math/exp10_test.cpp
    M libc/test/src/math/exp2_test.cpp
    M libc/test/src/math/exp_test.cpp
    M libc/test/src/math/log10_test.cpp
    M libc/test/src/math/log10f_test.cpp
    M libc/test/src/math/log1p_test.cpp
    M libc/test/src/math/log1pf_test.cpp
    M libc/test/src/math/log2_test.cpp
    M libc/test/src/math/log_test.cpp
    M libc/test/src/math/powf_test.cpp
    M libc/test/src/math/sincosf_test.cpp
    M libc/test/src/math/sinf_test.cpp
    M libc/test/src/math/sinhf_test.cpp
    M libc/test/src/math/smoke/RoundToIntegerTest.h
    M libc/test/src/math/smoke/acosf_test.cpp
    M libc/test/src/math/smoke/acoshf_test.cpp
    M libc/test/src/math/smoke/asinf_test.cpp
    M libc/test/src/math/smoke/asinhf_test.cpp
    M libc/test/src/math/smoke/atanf_test.cpp
    M libc/test/src/math/smoke/atanhf_test.cpp
    M libc/test/src/math/smoke/cosf_test.cpp
    M libc/test/src/math/smoke/coshf_test.cpp
    M libc/test/src/math/smoke/erff_test.cpp
    M libc/test/src/math/smoke/exp10_test.cpp
    M libc/test/src/math/smoke/exp2_test.cpp
    M libc/test/src/math/smoke/exp_test.cpp
    M libc/test/src/math/smoke/expm1_test.cpp
    M libc/test/src/math/smoke/log10_test.cpp
    M libc/test/src/math/smoke/log10f_test.cpp
    M libc/test/src/math/smoke/log1p_test.cpp
    M libc/test/src/math/smoke/log1pf_test.cpp
    M libc/test/src/math/smoke/log2_test.cpp
    M libc/test/src/math/smoke/log_test.cpp
    M libc/test/src/math/smoke/powf_test.cpp
    M libc/test/src/math/smoke/sincosf_test.cpp
    M libc/test/src/math/smoke/sinf_test.cpp
    M libc/test/src/math/smoke/sinhf_test.cpp
    M libc/test/src/math/smoke/tanf_test.cpp
    M libc/test/src/math/smoke/tanhf_test.cpp
    M libc/test/src/math/tanf_test.cpp
    M libc/test/src/math/tanhf_test.cpp
    M libc/test/src/pthread/CMakeLists.txt
    M libc/test/src/pthread/pthread_attr_test.cpp
    M libc/test/src/pthread/pthread_mutexattr_test.cpp
    M libc/test/src/signal/CMakeLists.txt
    M libc/test/src/signal/sigaddset_test.cpp
    M libc/test/src/signal/sigdelset_test.cpp
    M libc/test/src/signal/sigfillset_test.cpp
    M libc/test/src/spawn/CMakeLists.txt
    M libc/test/src/spawn/posix_spawn_file_actions_test.cpp
    M libc/test/src/sys/prctl/linux/CMakeLists.txt
    M libc/test/src/sys/prctl/linux/prctl_test.cpp
    M libc/test/src/sys/resource/CMakeLists.txt
    M libc/test/src/sys/select/CMakeLists.txt
    M libc/test/src/sys/select/select_failure_test.cpp
    M libc/test/src/sys/sendfile/CMakeLists.txt
    M libc/test/src/sys/utsname/CMakeLists.txt
    M libc/test/src/sys/utsname/uname_test.cpp
    M libc/test/src/sys/wait/CMakeLists.txt
    M libc/test/src/sys/wait/wait4_test.cpp
    M libc/test/src/sys/wait/waitpid_test.cpp
    M libc/test/src/unistd/CMakeLists.txt

  Log Message:
  -----------
  [libc] remove errno.h includes (#110934)


  Commit: 0cdb978906b060508204788a8cfcb5c7d9155e32
      https://github.com/llvm/llvm-project/commit/0cdb978906b060508204788a8cfcb5c7d9155e32
  Author: Job Henandez Lara <jobhdezlara93 at gmail.com>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

  Changed paths:
    M libc/src/__support/StringUtil/tables/CMakeLists.txt
    M libc/src/__support/StringUtil/tables/stdc_errors.h

  Log Message:
  -----------
  [libc] Add missing include to __support/StringUtil/tables/stdc_errors.h. (#111271)

Failed build bots:
https://lab.llvm.org/buildbot/#/builders/11/builds/6164
https://lab.llvm.org/buildbot/#/builders/73/builds/6651


  Commit: e075dcf7d270fd52dc837163ff24e8c872dfeb49
      https://github.com/llvm/llvm-project/commit/e075dcf7d270fd52dc837163ff24e8c872dfeb49
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
    R llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-load-store-pointers.ll
    R llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-global-old-legalization.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-local.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-constant.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-flat.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-global.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-local.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-private.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-store-global.mir

  Log Message:
  -----------
  Revert "Reapply "[AMDGPU][GlobalISel] Fix load/store of pointer vectors, buffer.*.pN (#110714)" (#111059)"

This reverts commit 98a15c7b0c6ec129d371f0c121dbe9396c4f5609.
(llvmorg-20-init-8051-g98a15c7b0c6e)


  Commit: 18d9dcdfe1e09a439db9dc06f3cc32808702395f
      https://github.com/llvm/llvm-project/commit/18d9dcdfe1e09a439db9dc06f3cc32808702395f
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-10-05 (Sat, 05 Oct 2024)

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

  Log Message:
  -----------
  [RISCV] Unify RVBShift_ri and RVBShiftW_ri with Shift_ri and ShiftW_ri. NFC (#111263)

The split primarily existed because Shift_ri and ShiftW_ri included
scheduler classes. So pull those out like ALU_rr.

This removes all uses of RVBShiftW_ri. One use of RVBShift_ri remains
because SLLI_UW uses a uimmlog2xlen shift amount and OP_IMM_32. Which is
different than the other OP_IMM_32 shift instructions.


  Commit: 6de5305b3d7a4a19a29b35d481a8090e2a6d3a7e
      https://github.com/llvm/llvm-project/commit/6de5305b3d7a4a19a29b35d481a8090e2a6d3a7e
  Author: Rose <gfunni234 at gmail.com>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86SelectionDAGInfo.cpp
    M llvm/test/CodeGen/X86/memcpy-struct-by-value.ll
    M llvm/test/CodeGen/X86/memcpy.ll
    M llvm/test/CodeGen/X86/memset-minsize.ll
    M llvm/test/CodeGen/X86/memset-vs-memset-inline.ll

  Log Message:
  -----------
  [X86] For minsize memset/memcpy, use byte or double-word accesses (#87003)

repstosb and repstosd are the same size, but stosd is only done for 0
because the process of multiplying the constant so that it is copied
across the bytes of the 32-bit number adds extra instructions that cause
the size to increase. For 0, repstosb and repstosd are the same size,
but stosd is only done for 0 because the process of multiplying the
constant so that it is copied across the bytes of the 32-bit number adds
extra instructions that cause the size to increase. For 0, we do not
need to do that at all.

For memcpy, the same goes, and as a result the minsize check was moved
ahead because a jmp to memcpy encoded takes more bytes than repmovsb.


  Commit: 37ce3c2208167b01bad29761a4e0b0a368cb1f36
      https://github.com/llvm/llvm-project/commit/37ce3c2208167b01bad29761a4e0b0a368cb1f36
  Author: Yang Kun <91833768+ikspress at users.noreply.github.com>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M libcxx/include/__system_error/errc.h

  Log Message:
  -----------
  [libc++] Fix a typo (#111239)

Just a small typo I found when I refer to libc++'s code.


  Commit: 6d03a69034edb7805a4ba00334a1275cef39dd72
      https://github.com/llvm/llvm-project/commit/6d03a69034edb7805a4ba00334a1275cef39dd72
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M lld/ELF/Arch/AArch64.cpp
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/Arch/LoongArch.cpp
    M lld/ELF/Arch/Mips.cpp
    M lld/ELF/Arch/MipsArchTree.cpp
    M lld/ELF/Arch/PPC.cpp
    M lld/ELF/Arch/PPC64.cpp
    M lld/ELF/Arch/RISCV.cpp
    M lld/ELF/Driver.cpp
    M lld/ELF/InputFiles.cpp
    M lld/ELF/InputSection.cpp
    M lld/ELF/Relocations.cpp
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h
    M lld/ELF/Target.h
    M lld/ELF/Thunks.cpp
    M lld/ELF/Writer.cpp
    M lld/ELF/Writer.h

  Log Message:
  -----------
  [ELF] Pass Ctx & to Arch/


  Commit: b3e0bd3d284dec705386b1efcae40dd51b763010
      https://github.com/llvm/llvm-project/commit/b3e0bd3d284dec705386b1efcae40dd51b763010
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M lld/ELF/AArch64ErrataFix.cpp
    M lld/ELF/ARMErrataFix.cpp
    M lld/ELF/ARMErrataFix.h
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/Arch/Mips.cpp
    M lld/ELF/Arch/MipsArchTree.cpp
    M lld/ELF/Driver.cpp
    M lld/ELF/InputFiles.cpp
    M lld/ELF/InputFiles.h
    M lld/ELF/Symbols.cpp
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h
    M lld/ELF/Target.h
    M lld/ELF/Writer.cpp
    M lld/ELF/Writer.h

  Log Message:
  -----------
  [ELF] Pass Ctx & to Arch/


  Commit: 45b526afa26e76e0c351e947ac8f0e4b55aa760b
      https://github.com/llvm/llvm-project/commit/45b526afa26e76e0c351e947ac8f0e4b55aa760b
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    A llvm/test/Transforms/LoopVectorize/X86/replicate-uniform-call.ll

  Log Message:
  -----------
  [LV] Honor uniform-after-vectorization in setVectorizedCallDecision.

The legacy cost model always computes the cost for uniforms as cost of
VF = 1, but VPWidenCallRecipes would be created, as
setVectorizedCallDecisions would not consider uniform calls.

Fix setVectorizedCallDecision to set to Scalarize, if the call is
uniform-after-vectorization.

This fixes a bug in VPlan construction uncovered by the VPlan-based
cost model.

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


  Commit: d2408c417cfa71f1786c909788560374eb1aca96
      https://github.com/llvm/llvm-project/commit/d2408c417cfa71f1786c909788560374eb1aca96
  Author: David Green <david.green at arm.com>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/test/Transforms/InstCombine/canonicalize-gep-constglob.ll
    M llvm/test/Transforms/InstCombine/gep-merge-constant-indices.ll

  Log Message:
  -----------
  [InstCombine] Canonicalize more geps with constant gep bases and constant offsets. (#110033)

This is another small but hopefully not performance negative step to
canonicalizing towards i8 geps. We looks for geps with a constant offset
base pointer of the form `gep (gep @glob, C1), x, C2` and expand the gep
instruction, so that the constant can hopefully be combined together (or
the x offset can be computed in common).


  Commit: fb0ef6b66e3c7e91481568c15ed67c047dab84e1
      https://github.com/llvm/llvm-project/commit/fb0ef6b66e3c7e91481568c15ed67c047dab84e1
  Author: Carlos Galvez <carlosgalvezp at gmail.com>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    A clang-tools-extra/clang-tidy/bugprone/BitwisePointerCastCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/BitwisePointerCastCheck.h
    M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
    M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
    M clang-tools-extra/docs/ReleaseNotes.rst
    A clang-tools-extra/docs/clang-tidy/checks/bugprone/bitwise-pointer-cast.rst
    M clang-tools-extra/docs/clang-tidy/checks/list.rst
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/bitwise-pointer-cast-cxx20.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/bitwise-pointer-cast.cpp

  Log Message:
  -----------
  [clang-tidy] Create bugprone-bitwise-pointer-cast check (#108083)

To detect unsafe usages of casting a pointer to another via copying
the bytes from one into the other, either via std::bit_cast or via
memcpy. This is currently not caught by any other means.

Fixes #106987

---------

Co-authored-by: Carlos Gálvez <carlos.galvez at zenseact.com>


  Commit: 89d2a9de05074bf6e538fd514228c43aed3cc72f
      https://github.com/llvm/llvm-project/commit/89d2a9de05074bf6e538fd514228c43aed3cc72f
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-chains-vplan.ll

  Log Message:
  -----------
  [VPlan] Add additional FOR hoisting test.

Additional tests for https://github.com/llvm/llvm-project/pull/108945.


  Commit: 20864d2cf610639a70e43aa417f90b457f8e3c90
      https://github.com/llvm/llvm-project/commit/20864d2cf610639a70e43aa417f90b457f8e3c90
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/ValueTypes.td
    M llvm/test/Analysis/CostModel/RISCV/arith-fp.ll
    M llvm/test/Analysis/CostModel/RISCV/reduce-fadd.ll
    M llvm/test/Analysis/CostModel/RISCV/reduce-fmul.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfwmaccbf16.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/reductions.ll

  Log Message:
  -----------
  [ValueTypes][RISCV] Add v1bf16 type (#111112)

When trying to add RISC-V fadd reduction cost model tests for bf16, I
noticed a crash when the vector was of <1 x bfloat>.

It turns out that this was being scalarized because unlike f16/f32/f64,
there's no v1bf16 value type, and the existing cost model code assumed
that the legalized type would always be a vector.

This adds v1bf16 to bring bf16 in line with the other fp types.

It also adds some more RISC-V bf16 reduction tests which previously
crashed, including tests to ensure that SLP won't emit fadd/fmul
reductions for bf16 or f16 w/ zvfhmin after #111000.


  Commit: c36afb50162a43fb852beea3aad0d73bf2985bea
      https://github.com/llvm/llvm-project/commit/c36afb50162a43fb852beea3aad0d73bf2985bea
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp

  Log Message:
  -----------
  [X86] combineSubABS - avoid duplicate SDLoc. NFC.

Simplify arguments by reusing values from combineSub directly.


  Commit: 1bc87c9f3cb20a51191f522bf4d69338ad6bb4e6
      https://github.com/llvm/llvm-project/commit/1bc87c9f3cb20a51191f522bf4d69338ad6bb4e6
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/combine-add.ll
    M llvm/test/CodeGen/X86/vector-mul.ll

  Log Message:
  -----------
  [x86] combineMul - use computeKnownBits directly to find MUL_IMM constant splat.

As we're after a constant splat value we can avoid all the complexities of trying to recreate the correct constant via getTargetConstantFromNode.


  Commit: dee44b200b0dd5351a0c05126709e0f4c40f9b0a
      https://github.com/llvm/llvm-project/commit/dee44b200b0dd5351a0c05126709e0f4c40f9b0a
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp

  Log Message:
  -----------
  [X86] combineBitOpWithShift - avoid duplicate SDLoc/operands code. NFC.

Reuse values from the callers directly.


  Commit: 595a738fb4239560a3292fa99ca12628215495e7
      https://github.com/llvm/llvm-project/commit/595a738fb4239560a3292fa99ca12628215495e7
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp

  Log Message:
  -----------
  [X86] combineBitOpWithMOVMSK - avoid duplicate SDLoc/operands code. NFC.

Reuse values from the callers directly.


  Commit: 8ebd4019500cbec28426f19e6440484d53ecaecd
      https://github.com/llvm/llvm-project/commit/8ebd4019500cbec28426f19e6440484d53ecaecd
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp

  Log Message:
  -----------
  [X86] combineBitOpWithPACK - avoid duplicate SDLoc/operands code. NFC.

Reuse values from the callers directly.


  Commit: 2cc97951400ca2ab79d6bdeccffa6e431882a86e
      https://github.com/llvm/llvm-project/commit/2cc97951400ca2ab79d6bdeccffa6e431882a86e
  Author: c8ef <c8ef at outlook.com>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M libc/src/string/memory_utils/aarch64/inline_memcmp.h
    M libc/src/string/memory_utils/aarch64/inline_memcpy.h
    M libc/src/string/memory_utils/aarch64/inline_memmove.h
    M libc/src/string/memory_utils/generic/aligned_access.h
    M libc/src/string/memory_utils/generic/byte_per_byte.h
    M libc/src/string/memory_utils/inline_memcmp.h
    M libc/src/string/memory_utils/inline_memcpy.h
    M libc/src/string/memory_utils/inline_memset.h
    M libc/src/string/memory_utils/x86_64/inline_memcmp.h
    M libc/src/string/memory_utils/x86_64/inline_memcpy.h
    M libc/src/string/memory_utils/x86_64/inline_memmove.h

  Log Message:
  -----------
  [libc] Clean up some include in `libc`. (#110980)

The patch primarily cleans up some incorrect includes. The `LIBC_INLINE`
macro is defined in `attributes.h`, not `config.h`. There appears to be
no need to change the CMake and Bazel build files.


  Commit: 8cead83c399f4d74949b53633f8026cb7effc54f
      https://github.com/llvm/llvm-project/commit/8cead83c399f4d74949b53633f8026cb7effc54f
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp

  Log Message:
  -----------
  [X86] convertIntLogicToFPLogic - avoid duplicate SDLoc/operands code. NFC.

Reuse values from the callers directly.


  Commit: 8326fb2626836ca4d95f30a67f7836dd2b4c1031
      https://github.com/llvm/llvm-project/commit/8326fb2626836ca4d95f30a67f7836dd2b4c1031
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp

  Log Message:
  -----------
  [X86] combineOrXorWithSETCC - avoid duplicate SDLoc/operands code. NFC.

Reuse values from the callers directly.


  Commit: d54b1cfa38a111796945fb91c4efb3effbc25649
      https://github.com/llvm/llvm-project/commit/d54b1cfa38a111796945fb91c4efb3effbc25649
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M libcxx/test/benchmarks/CMakeLists.txt
    M libcxx/test/benchmarks/format.bench.cpp
    A libcxx/test/benchmarks/format/write_double_comparison.bench.cpp
    A libcxx/test/benchmarks/format/write_int_comparison.bench.cpp
    A libcxx/test/benchmarks/format/write_string_comparison.bench.cpp

  Log Message:
  -----------
  [libc++][format][1/3] Adds more benchmarks. (#101803)

This patch is the start of a series to improve the speed of std::format,
std::format_to, std::format_to_n, and std::formatted_size.

This is mostly achieved by changing the __output_buffer class. This new
__output_buffer class also makes it easier to implement buffering for
P3107R5 "Permit an efficient implementation of std::print"


  Commit: abdf4ca4f12c834e0541f996596584a65fda44ef
      https://github.com/llvm/llvm-project/commit/abdf4ca4f12c834e0541f996596584a65fda44ef
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp.ll

  Log Message:
  -----------
  [RISCV] Simplify fixed-vector-fp.ll run lines. NFC

This removes the different scalar fp16 configurations i.e. zfh and
zfhmin, since all these ops should be able to be lowered without
scalarizing.

This ends up revealing a couple of cases where we end up scalarizing
unexpectedly, e.g. sqrt/fabs/round with v6f16 and zvfhmin.

It also removes the zvl256b configurations, since I couldn't find
anything that specifically needed to test this.


  Commit: bea28037f6b68ee79b9360d91e0f3defd10fa976
      https://github.com/llvm/llvm-project/commit/bea28037f6b68ee79b9360d91e0f3defd10fa976
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

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

  Log Message:
  -----------
  [CodeGen] Avoid repeated hash lookups (NFC) (#111274)


  Commit: 9e6578c6a17fe942b45daf57fa162303e111fa38
      https://github.com/llvm/llvm-project/commit/9e6578c6a17fe942b45daf57fa162303e111fa38
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

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

  Log Message:
  -----------
  [StaticAnalyzer] Avoid repeated hash lookups (NFC) (#111272)


  Commit: 93f7fce397155f40de46d867c345e335b30b8d5c
      https://github.com/llvm/llvm-project/commit/93f7fce397155f40de46d867c345e335b30b8d5c
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/Program.cpp

  Log Message:
  -----------
  [ByteCode] Avoid repeated hash lookups (NFC) (#111273)


  Commit: 11c6ea3d3bd59c548562425f0de1fcef1b4660dc
      https://github.com/llvm/llvm-project/commit/11c6ea3d3bd59c548562425f0de1fcef1b4660dc
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp

  Log Message:
  -----------
  [ExecutionEngine] Avoid repeated hash lookups (NFC) (#111275)


  Commit: 75bcf57c16586a0e3995e420ec331056a40a043f
      https://github.com/llvm/llvm-project/commit/75bcf57c16586a0e3995e420ec331056a40a043f
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/replace-load-and-with-bzhi.ll

  Log Message:
  -----------
  [X86] replace-load-and-with-bzhi.ll - cleanup check-prefixes to use X86/X64 for 32/64-bit targets


  Commit: 326a61506ab08337a6b34283d3bbb316018edf42
      https://github.com/llvm/llvm-project/commit/326a61506ab08337a6b34283d3bbb316018edf42
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/replace-load-and-with-bzhi.ll

  Log Message:
  -----------
  [X86] replace-load-and-with-bzhi.ll - add commuted test cases to show failure to fold

Tests showing combineAndLoadToBZHI commutation folding is currently broken


  Commit: 56757e52ebbd79af540c23b00abb13c9bf5f2d60
      https://github.com/llvm/llvm-project/commit/56757e52ebbd79af540c23b00abb13c9bf5f2d60
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/replace-load-and-with-bzhi.ll

  Log Message:
  -----------
  [X86] combineAndLoadToBZHI - don't do an return early return if we fail to match a load

Just continue so we can test the commutated pattern as well.


  Commit: 26ca8ef836f6ed8665f992d7cf520a4c0002f3ae
      https://github.com/llvm/llvm-project/commit/26ca8ef836f6ed8665f992d7cf520a4c0002f3ae
  Author: Ivan Butygin <ivan.butygin at gmail.com>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M libc/newhdrgen/yaml/gpu/rpc.yaml
    M libc/spec/gpu_ext.td
    M libc/src/gpu/rpc_host_call.cpp
    M libc/src/gpu/rpc_host_call.h
    M libc/utils/gpu/server/rpc_server.cpp
    M offload/test/libc/host_call.c

  Log Message:
  -----------
  [libc] GPU RPC interface: add return value to `rpc_host_call` (#111288)


  Commit: 49865107d49b2be86d9ff5474d081c49d1556213
      https://github.com/llvm/llvm-project/commit/49865107d49b2be86d9ff5474d081c49d1556213
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M lld/ELF/Driver.cpp
    M lld/ELF/Driver.h
    M lld/ELF/DriverUtils.cpp
    M lld/ELF/EhFrame.cpp
    M lld/ELF/InputFiles.cpp
    M lld/ELF/InputFiles.h
    M lld/ELF/ScriptParser.cpp

  Log Message:
  -----------
  [ELF] Pass Ctx & to InputFiles


  Commit: 864fcfc78733297055fea032dfb5f7c8d594dfd8
      https://github.com/llvm/llvm-project/commit/864fcfc78733297055fea032dfb5f7c8d594dfd8
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZk.td

  Log Message:
  -----------
  [RISCV] Combine RVBUnary and RVKUnary into classes that are more similar to ALU(W)_r(r/i). NFC (#111279)

Create Unary_r and UnaryW_r that use OP_IMM and OP_IMM_32.


  Commit: 7f65377880ce6a0e5eaa4cb2591b86b8c8a24ee6
      https://github.com/llvm/llvm-project/commit/7f65377880ce6a0e5eaa4cb2591b86b8c8a24ee6
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M libcxx/include/__format/formatter_string.h

  Log Message:
  -----------
  [libc++][format][2/3] Optimizes c-string arguments. (#101805)

The formatter specializations for _CharT* and const _CharT* typically
write all elements in a loop. This format's internal functions are
optimized for larger writes.

Instead of writing one element at a time, convert the range to a
basic_string_view and write that instead.

For C string of 6 characters this is a bit slower, but for 60 characters
it's faster. The improvements for back_inserter<std::list<_CharT>> are
not as great as the others; it just gets as slow as
basic_string_view<_CharT>.

omparing libcxx/test/benchmarks/write_string_comparison.bench.out-before to libcxx/test/benchmarks/write_string_comparison.bench.out-after
Benchmark                                                                            Time             CPU      Time Old      Time New       CPU Old       CPU New
-----------------------------------------------------------------------------------------------------------------------------------------------------------------
BM_sprintf/C_string_len_6                                                         -0.0015         +0.0013             5             5             5             5
BM_format/C_string_len_6                                                          +0.0390         +0.0416            53            55            53            55
BM_format_to_back_inserter<std::string>/C_string_len_6                            +0.0381         +0.0408            53            55            53            55
BM_format_to_back_inserter<std::vector<char>>/C_string_len_6                      +0.0287         +0.0315            69            71            69            71
BM_format_to_back_inserter<std::deque<char>>/C_string_len_6                       +0.0503         +0.0530           123           129           123           129
BM_format_to_back_inserter<std::list<char>>/C_string_len_6                        -0.0241         -0.0213           133           130           133           130
BM_format_to_iterator/<std::array> C_string_len_6                                 -0.0075         -0.0049            45            45            45            45
BM_format_to_iterator/<std::string> C_string_len_6                                +0.0311         +0.0340            44            46            44            46
BM_format_to_iterator/<std::vector> C_string_len_6                                +0.0380         +0.0409            43            45            43            45
BM_format_to_iterator/<std::deque> C_string_len_6                                 +0.0366         +0.0392            48            50            48            50
BM_format/string_len_6                                                            -0.0010         -0.0007            56            55            55            55
BM_format_to_back_inserter<std::string>/string_len_6                              +0.0044         +0.0041            55            56            55            55
BM_format_to_back_inserter<std::vector<char>>/string_len_6                        +0.0128         +0.0128            70            71            70            71
BM_format_to_back_inserter<std::deque<char>>/string_len_6                         +0.0151         +0.0151           126           128           126           128
BM_format_to_back_inserter<std::list<char>>/string_len_6                          -0.0719         -0.0718           140           130           139           129
BM_format_to_iterator/<std::array> string_len_6                                   -0.0323         -0.0324            47            46            47            46
BM_format_to_iterator/<std::string> string_len_6                                  -0.0011         -0.0010            45            44            44            44
BM_format_to_iterator/<std::vector> string_len_6                                  -0.0002         -0.0001            45            45            44            44
BM_format_to_iterator/<std::deque> string_len_6                                   +0.0046         +0.0047            51            51            51            51
BM_format/string_view_len_6                                                       +0.0031         +0.0031            54            54            54            54
BM_format_to_back_inserter<std::string>/string_view_len_6                         +0.0041         +0.0040            54            54            54            54
BM_format_to_back_inserter<std::vector<char>>/string_view_len_6                   +0.0022         +0.0022            70            70            70            70
BM_format_to_back_inserter<std::deque<char>>/string_view_len_6                    +0.0392         +0.0391           124           129           124           129
BM_format_to_back_inserter<std::list<char>>/string_view_len_6                     -0.0680         -0.0680           139           129           138           129
BM_format_to_iterator/<std::array> string_view_len_6                              -0.0321         -0.0320            47            46            47            46
BM_format_to_iterator/<std::string> string_view_len_6                             -0.0013         -0.0011            45            44            44            44
BM_format_to_iterator/<std::vector> string_view_len_6                             -0.0024         -0.0023            45            44            44            44
BM_format_to_iterator/<std::deque> string_view_len_6                              +0.0057         +0.0057            51            51            51            51
BM_sprintf/C_string_len_60                                                        -0.0035         -0.0035             4             4             4             4
BM_format/C_string_len_60                                                         -0.5627         -0.5627           169            74           169            74
BM_format_to_back_inserter<std::string>/C_string_len_60                           -0.5642         -0.5641           170            74           169            74
BM_format_to_back_inserter<std::vector<char>>/C_string_len_60                     -0.5300         -0.5299           178            84           178            84
BM_format_to_back_inserter<std::deque<char>>/C_string_len_60                      -0.2548         -0.2548           356           265           355           264
BM_format_to_back_inserter<std::list<char>>/C_string_len_60                       -0.1013         -0.1013          1325          1191          1322          1188
BM_format_to_iterator/<std::array> C_string_len_60                                -0.6790         -0.6791           141            45           141            45
BM_format_to_iterator/<std::string> C_string_len_60                               -0.6738         -0.6740           143            47           142            46
BM_format_to_iterator/<std::vector> C_string_len_60                               -0.6807         -0.6808           142            45           142            45
BM_format_to_iterator/<std::deque> C_string_len_60                                -0.6488         -0.6486           144            51           144            51
BM_format/string_len_60                                                           +0.0118         +0.0117            73            74            73            73
BM_format_to_back_inserter<std::string>/string_len_60                             +0.0089         +0.0088            73            73            73            73
BM_format_to_back_inserter<std::vector<char>>/string_len_60                       +0.0080         +0.0081            83            84            83            83
BM_format_to_back_inserter<std::deque<char>>/string_len_60                        +0.0005         +0.0002           262           263           262           262
BM_format_to_back_inserter<std::list<char>>/string_len_60                         -0.0384         -0.0380          1236          1188          1232          1186
BM_format_to_iterator/<std::array> string_len_60                                  -0.0288         -0.0288            47            46            47            46
BM_format_to_iterator/<std::string> string_len_60                                 +0.0213         +0.0210            44            45            44            45
BM_format_to_iterator/<std::vector> string_len_60                                 +0.0202         +0.0205            45            45            44            45
BM_format_to_iterator/<std::deque> string_len_60                                  +0.0124         +0.0124            50            51            50            51
BM_format/string_view_len_60                                                      +0.0093         +0.0093            73            73            73            73
BM_format_to_back_inserter<std::string>/string_view_len_60                        +0.0055         +0.0055            73            73            73            73
BM_format_to_back_inserter<std::vector<char>>/string_view_len_60                  +0.0165         +0.0166            81            83            81            83
BM_format_to_back_inserter<std::deque<char>>/string_view_len_60                   +0.0138         +0.0140           260           263           259           263
BM_format_to_back_inserter<std::list<char>>/string_view_len_60                    -0.0334         -0.0335          1228          1187          1225          1184
BM_format_to_iterator/<std::array> string_view_len_60                             -0.0257         -0.0259            48            46            47            46
BM_format_to_iterator/<std::string> string_view_len_60                            +0.0324         +0.0323            45            46            44            46
BM_format_to_iterator/<std::vector> string_view_len_60                            +0.0174         +0.0177            45            45            44            45
BM_format_to_iterator/<std::deque> string_view_len_60                             +0.0076         +0.0076            50            51            50            51
BM_sprintf/C_string_len_6000                                                      +0.4922         +0.4921            77           115            77           114
BM_format/C_string_len_6000                                                       -0.9239         -0.9239         11780           897         11750           894
BM_format_to_back_inserter<std::string>/C_string_len_6000                         -0.9239         -0.9239         11792           898         11763           895
BM_format_to_back_inserter<std::vector<char>>/C_string_len_6000                   -0.9257         -0.9257         11709           870         11679           868
BM_format_to_back_inserter<std::deque<char>>/C_string_len_6000                    -0.4057         -0.4057         25616         15225         25553         15187
BM_format_to_back_inserter<std::list<char>>/C_string_len_6000                     -0.0832         -0.0833        127144        116569        126823        116265
BM_format_to_iterator/<std::array> C_string_len_6000                              -0.9853         -0.9853         10869           160         10843           160
BM_format_to_iterator/<std::string> C_string_len_6000                             -0.9864         -0.9864         10870           148         10841           148
BM_format_to_iterator/<std::vector> C_string_len_6000                             -0.9863         -0.9863         10874           149         10846           148
BM_format_to_iterator/<std::deque> C_string_len_6000                              -0.9629         -0.9629         11239           417         11212           416
BM_format/string_len_6000                                                         -0.0012         -0.0013           846           845           844           842
BM_format_to_back_inserter<std::string>/string_len_6000                           -0.0029         -0.0034           845           843           843           840
BM_format_to_back_inserter<std::vector<char>>/string_len_6000                     -0.0129         -0.0125           832           821           830           819
BM_format_to_back_inserter<std::deque<char>>/string_len_6000                      +0.0048         +0.0048         15042         15114         15004         15076
BM_format_to_back_inserter<std::list<char>>/string_len_6000                       -0.0017         -0.0017        116266        116072        115967        115768
BM_format_to_iterator/<std::array> string_len_6000                                -0.0257         -0.0256           120           117           120           117
BM_format_to_iterator/<std::string> string_len_6000                               -0.0025         -0.0029           117           117           117           117
BM_format_to_iterator/<std::vector> string_len_6000                               -0.0089         -0.0087           118           116           117           116
BM_format_to_iterator/<std::deque> string_len_6000                                -0.0478         -0.0477           379           361           378           360
BM_format/string_view_len_6000                                                    -0.0092         -0.0091           842           835           840           833
BM_format_to_back_inserter<std::string>/string_view_len_6000                      -0.0081         -0.0083           841           835           839           832
BM_format_to_back_inserter<std::vector<char>>/string_view_len_6000                +0.0089         +0.0088           808           815           806           813
BM_format_to_back_inserter<std::deque<char>>/string_view_len_6000                 +0.0068         +0.0068         15030         15131         14992         15093
BM_format_to_back_inserter<std::list<char>>/string_view_len_6000                  +0.0012         +0.0010        116099        116243        115813        115934
BM_format_to_iterator/<std::array> string_view_len_6000                           -0.0122         -0.0121           118           117           118           116
BM_format_to_iterator/<std::string> string_view_len_6000                          +0.0010         +0.0010           106           107           106           106
BM_format_to_iterator/<std::vector> string_view_len_6000                          -0.0008         -0.0006           106           106           106           106
BM_format_to_iterator/<std::deque> string_view_len_6000                           -0.0549         -0.0548           370           349           369           349
OVERALL_GEOMEAN


  Commit: b0c070e2637935030ecd36777f22542bf371ef8c
      https://github.com/llvm/llvm-project/commit/b0c070e2637935030ecd36777f22542bf371ef8c
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M clang-tools-extra/clangd/FindSymbols.cpp
    M clang-tools-extra/clangd/index/MemIndex.cpp
    M clang-tools-extra/clangd/index/dex/Dex.cpp

  Log Message:
  -----------
  [clangd] Simplify ternary expressions with std::optional::value_or (NFC) (#111309)


  Commit: 7f74651837b8f95996ea4c774b2e604020446951
      https://github.com/llvm/llvm-project/commit/7f74651837b8f95996ea4c774b2e604020446951
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/test/Transforms/LoopVectorize/AArch64/interleaved-store-of-first-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-accesses.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-masked-accesses.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-accesses.ll
    M llvm/test/Transforms/LoopVectorize/X86/interleave-cost.ll
    M llvm/test/Transforms/LoopVectorize/X86/vectorize-interleaved-accesses-gap.ll
    M llvm/test/Transforms/LoopVectorize/X86/x86-interleaved-accesses-masked-group.ll
    M llvm/test/Transforms/LoopVectorize/X86/x86-interleaved-store-accesses-with-gaps.ll
    M llvm/test/Transforms/LoopVectorize/interleaved-accesses-different-insert-position.ll
    M llvm/test/Transforms/LoopVectorize/interleaved-accesses.ll
    M llvm/test/Transforms/LoopVectorize/vplan-printing.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/interleavevectorization.ll

  Log Message:
  -----------
  [VPlan] Use pointer to member 0 as VPInterleaveRecipe's pointer arg. (#106431)

Update VPInterleaveRecipe to always use the pointer to member 0 as
pointer argument. This in many cases helps to remove unneeded index
adjustments and simplifies VPInterleaveRecipe::execute.

In some rare cases, the address of member 0 does not dominate the insert
position of the interleave group. In those cases a PtrAdd VPInstruction
is emitted to compute the address of member 0 based on the address of
the insert position. Alternatively we could hoist the recipe computing
the address of member 0.


  Commit: acf92a47c0ece8562fd745215c478fe2d4ab5896
      https://github.com/llvm/llvm-project/commit/acf92a47c0ece8562fd745215c478fe2d4ab5896
  Author: Nathan Ridge <zeratul976 at hotmail.com>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/boost/UseRangesCheck.cpp
    M clang-tools-extra/clangd/unittests/ClangdLSPServerTests.cpp

  Log Message:
  -----------
  [clang-tidy] Avoid capturing a local variable in a static lambda in UseRangesCheck (#111282)

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


  Commit: 2b5cb1bf628fc54473355e0675f629d9332089df
      https://github.com/llvm/llvm-project/commit/2b5cb1bf628fc54473355e0675f629d9332089df
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M lld/ELF/Arch/AArch64.cpp
    M lld/ELF/Arch/PPC.cpp
    M lld/ELF/Arch/PPC64.cpp
    M lld/ELF/Arch/RISCV.cpp
    M lld/ELF/Arch/SystemZ.cpp
    M lld/ELF/Arch/X86.cpp
    M lld/ELF/Arch/X86_64.cpp
    M lld/ELF/InputSection.cpp
    M lld/ELF/InputSection.h
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/Target.cpp

  Log Message:
  -----------
  [ELF] getRelocTargetVA: pass Ctx and Relocation. NFC


  Commit: acb2b1e7792f1ca2348752ee158882bb54b7d1e4
      https://github.com/llvm/llvm-project/commit/acb2b1e7792f1ca2348752ee158882bb54b7d1e4
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M lld/ELF/ARMErrataFix.cpp
    M lld/ELF/Arch/AArch64.cpp
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/Arch/Hexagon.cpp
    M lld/ELF/Arch/LoongArch.cpp
    M lld/ELF/Arch/Mips.cpp
    M lld/ELF/Arch/PPC.cpp
    M lld/ELF/Arch/PPC64.cpp
    M lld/ELF/Arch/RISCV.cpp
    M lld/ELF/Arch/SystemZ.cpp
    M lld/ELF/Arch/X86.cpp
    M lld/ELF/Arch/X86_64.cpp
    M lld/ELF/InputSection.cpp
    M lld/ELF/Relocations.cpp
    M lld/ELF/Symbols.cpp
    M lld/ELF/Symbols.h
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/Thunks.cpp

  Log Message:
  -----------
  [ELF] Pass Ctx & to Symbols


  Commit: f1dccda1b51c77fcac22b75c535e8620d7544ab3
      https://github.com/llvm/llvm-project/commit/f1dccda1b51c77fcac22b75c535e8620d7544ab3
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M lld/ELF/Driver.cpp
    M lld/ELF/ICF.cpp
    M lld/ELF/InputFiles.cpp
    M lld/ELF/Symbols.cpp
    M lld/ELF/Symbols.h
    M lld/ELF/Writer.cpp

  Log Message:
  -----------
  [ELF] Pass Ctx & to Symbols


  Commit: 5f6346190cb09373164d5fed9409cf5eb1a01f76
      https://github.com/llvm/llvm-project/commit/5f6346190cb09373164d5fed9409cf5eb1a01f76
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M lld/ELF/InputSection.h
    M lld/ELF/LinkerScript.cpp
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h
    M lld/ELF/Writer.cpp

  Log Message:
  -----------
  [ELF] Pass Ctx & to SyntheticSections


  Commit: 18ca7ad3393241b9fc0d5f149247e10837c6f926
      https://github.com/llvm/llvm-project/commit/18ca7ad3393241b9fc0d5f149247e10837c6f926
  Author: Nathan Ridge <zeratul976 at hotmail.com>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M clang-tools-extra/clangd/ClangdServer.cpp
    M clang-tools-extra/clangd/CodeComplete.cpp
    M clang-tools-extra/clangd/CodeComplete.h
    M clang-tools-extra/clangd/Config.h
    M clang-tools-extra/clangd/ConfigCompile.cpp
    M clang-tools-extra/clangd/ConfigFragment.h
    M clang-tools-extra/clangd/ConfigYAML.cpp
    M clang-tools-extra/clangd/tool/ClangdMain.cpp
    M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp

  Log Message:
  -----------
  [clangd] Add ArgumentLists config option under Completion (#111322)

The new config option is a more flexible version of
--function-arg-placeholders, allowing users more detailed control of
what is inserted in argument list position when clangd completes the
name of a function in a function call context.

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

Co-authored-by: MK-Alias <ImNotReadingThis at maininator.com>


  Commit: f2b01338584c90f48dba1a937bf5b1da8dcedbd5
      https://github.com/llvm/llvm-project/commit/f2b01338584c90f48dba1a937bf5b1da8dcedbd5
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M lld/ELF/Config.h
    M lld/ELF/Driver.cpp
    M lld/ELF/InputFiles.cpp
    M lld/ELF/InputFiles.h
    M lld/ELF/ScriptParser.cpp

  Log Message:
  -----------
  [ELF] Move static nextGroupId isInGroup to LinkerDriver


  Commit: c4d89203f3822b0466f5cc58654cb016aeb86648
      https://github.com/llvm/llvm-project/commit/c4d89203f3822b0466f5cc58654cb016aeb86648
  Author: Austin Kerbow <Austin.Kerbow at amd.com>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M llvm/docs/AMDGPUUsage.rst
    M llvm/include/llvm/IR/Argument.h
    M llvm/include/llvm/IR/Function.h
    M llvm/lib/IR/Function.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    A llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs-IR-lowering.ll
    A llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs.ll

  Log Message:
  -----------
  [AMDGPU] Support preloading hidden kernel arguments (#98861)

Adds hidden kernel arguments to the function signature and marks them
inreg if they should be preloaded into user SGPRs. The normal kernarg
preloading logic then takes over with some additional checks for the
correct implicitarg_ptr alignment.

Special care is needed so that metadata for the hidden arguments is not
added twice when generating the code object.


  Commit: f0bd62d8709a49dd87eb75411e41e2e11e0ab59d
      https://github.com/llvm/llvm-project/commit/f0bd62d8709a49dd87eb75411e41e2e11e0ab59d
  Author: Brad House <brad at brad-house.com>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M clang/docs/ClangFormatStyleOptions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Format/Format.h
    M clang/lib/Format/Format.cpp
    M clang/lib/Format/WhitespaceManager.cpp
    M clang/unittests/Format/ConfigParseTest.cpp
    M clang/unittests/Format/FormatTest.cpp

  Log Message:
  -----------
  [clang-format] Add AlignFunctionDeclarations to AlignConsecutiveDeclarations (#108241)

Enabling AlignConsecutiveDeclarations also aligns function prototypes
or declarations.  This is often unexpected as typically function
prototypes, especially in public headers, don't use any padding.

Setting AlignFunctionDeclarations to false will skip this alignment.
It is by default set to true to keep compatibility with prior
versions to not make unexpected changes.

Fixes #74320


  Commit: b672071ba51ef6b64651a62bcfaf78bdfdb7d3d4
      https://github.com/llvm/llvm-project/commit/b672071ba51ef6b64651a62bcfaf78bdfdb7d3d4
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M lld/ELF/Driver.cpp
    M lld/ELF/InputFiles.cpp
    M lld/ELF/InputFiles.h
    M lld/ELF/LTO.cpp
    M lld/ELF/LinkerScript.cpp

  Log Message:
  -----------
  [ELF] Pass Ctx & to InputFile


  Commit: 8c1547055eaf65003f3e6fd024195f4926ff2356
      https://github.com/llvm/llvm-project/commit/8c1547055eaf65003f3e6fd024195f4926ff2356
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/TreeTransform.h
    R clang/test/SemaCXX/PR84020.cpp
    M clang/test/SemaTemplate/instantiate-requires-expr.cpp

  Log Message:
  -----------
  [Clang] Remove the special-casing for RequiresExprBodyDecl in BuildResolvedCallExpr() after fd87d765c0 (#111277)

The special-casing for RequiresExprBodyDecl caused a regression, as
reported in #110785.

The original fix for #84020 has been superseded by fd87d765c0, which
establishes a `DependentScopeDeclRefExpr` instead of a
`CXXDependentScopeMemberExpr` for the case in issue. So the spurious
diagnostic in #84020 would no longer occur.

This also merges the test for #84020 together with that for #110785 into
clang/test/SemaTemplate/instantiate-requires-expr.cpp.

No release note because I think this merits a backport.

Fixes #110785


  Commit: 35f196645079cf499bdc48863ed5a42a0bc375de
      https://github.com/llvm/llvm-project/commit/35f196645079cf499bdc48863ed5a42a0bc375de
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoZfa.td

  Log Message:
  -----------
  [RISCV] Only disassemble fcvtmod.w.d if the rounding mode is rtz. (#111308)

If we disassemble other rounding modes, we'll print something that can't
be parsed.


  Commit: cfd3289a1f9a87e220737a634904a886a82d424a
      https://github.com/llvm/llvm-project/commit/cfd3289a1f9a87e220737a634904a886a82d424a
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M lld/ELF/ARMErrataFix.cpp
    M lld/ELF/Arch/AArch64.cpp
    M lld/ELF/Arch/AMDGPU.cpp
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/Arch/AVR.cpp
    M lld/ELF/Arch/Hexagon.cpp
    M lld/ELF/Arch/LoongArch.cpp
    M lld/ELF/Arch/MSP430.cpp
    M lld/ELF/Arch/Mips.cpp
    M lld/ELF/Arch/PPC.cpp
    M lld/ELF/Arch/PPC64.cpp
    M lld/ELF/Arch/RISCV.cpp
    M lld/ELF/Arch/SPARCV9.cpp
    M lld/ELF/Arch/SystemZ.cpp
    M lld/ELF/Arch/X86.cpp
    M lld/ELF/Arch/X86_64.cpp
    M lld/ELF/Config.h
    M lld/ELF/InputSection.cpp
    M lld/ELF/LinkerScript.cpp
    M lld/ELF/LinkerScript.h
    M lld/ELF/OutputSections.cpp
    M lld/ELF/Symbols.cpp
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/Target.cpp
    M lld/ELF/Target.h
    M lld/ELF/Writer.cpp
    M lld/ELF/Writer.h

  Log Message:
  -----------
  [ELF] Pass Ctx & to some free functions


  Commit: 4ec06b17435e32ece5e1aa2bc8a6d26dbf0bb312
      https://github.com/llvm/llvm-project/commit/4ec06b17435e32ece5e1aa2bc8a6d26dbf0bb312
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-06 (Sun, 06 Oct 2024)

  Changed paths:
    M lld/ELF/Arch/AArch64.cpp
    M lld/ELF/Arch/AMDGPU.cpp
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/Arch/AVR.cpp
    M lld/ELF/Arch/Hexagon.cpp
    M lld/ELF/Arch/LoongArch.cpp
    M lld/ELF/Arch/MSP430.cpp
    M lld/ELF/Arch/Mips.cpp
    M lld/ELF/Arch/PPC.cpp
    M lld/ELF/Arch/PPC64.cpp
    M lld/ELF/Arch/RISCV.cpp
    M lld/ELF/Arch/SPARCV9.cpp
    M lld/ELF/Arch/SystemZ.cpp
    M lld/ELF/Arch/X86.cpp
    M lld/ELF/Arch/X86_64.cpp
    M lld/ELF/Config.h
    M lld/ELF/Driver.cpp
    M lld/ELF/Target.cpp
    M lld/ELF/Target.h

  Log Message:
  -----------
  [ELF] Change Ctx::target to unique_ptr (#111260)

also rename `TargetInfo *getXXXTargetInfo` to `void setXXXTargetInfo`
and change it to set `ctx.target`. This ensures that when `ctx` becomes
a local variable, two lld invocations will not reuse the function-local
static variable.


  Commit: 924a64a3486f9962c42d4ec253774eb2c586ac33
      https://github.com/llvm/llvm-project/commit/924a64a3486f9962c42d4ec253774eb2c586ac33
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/docs/AMDGPUUsage.rst
    M llvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmax.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmin.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/mubuf-global.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
    M llvm/test/CodeGen/AMDGPU/atomicrmw-expand.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fsub.ll
    M llvm/test/CodeGen/AMDGPU/flat_atomics_i64.ll
    M llvm/test/CodeGen/AMDGPU/fp-atomics-gfx940.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fsub.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_i64.ll
    M llvm/test/CodeGen/AMDGPU/insert_waitcnt_for_precise_memory.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fsub.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence-mmra-global.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-volatile.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-workgroup.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-volatile.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-workgroup.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-volatile.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-workgroup.ll

  Log Message:
  -----------
  [AMDGPU] Only emit SCOPE_SYS global_wb (#110636)

global_wb with scopes lower than SCOPE_SYS is unnecessary for
correctness.

I was initially optimistic they would be very cheap no-ops but they can
actually be quite expensive so let's avoid them.


  Commit: 66b282014cff346ab20c6c8aed774ca2c6bfefd1
      https://github.com/llvm/llvm-project/commit/66b282014cff346ab20c6c8aed774ca2c6bfefd1
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

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

  Log Message:
  -----------
  [LoopVectorize] Remove redundant code in emitSCEVChecks (#111132)

There was some code in emitSCEVChecks to update the dominator
tree if LoopBypassBlocks is empty, however there are no tests
that fail when replacing this code with an assert. I built
both SPEC2017 and the LLVM test suite and also didn't see any
build failures. I've removed the code for now and added an
assert to guard this in case anything changes, since it seems
pointless to have code that's impossible to defend.


  Commit: da759dda58a7a1cbdaace26c381e1c3c5c5491ce
      https://github.com/llvm/llvm-project/commit/da759dda58a7a1cbdaace26c381e1c3c5c5491ce
  Author: Lucas Duarte Prates <lucas.prates at arm.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M clang/include/clang/Driver/Options.td
    M clang/lib/Driver/ToolChains/BareMetal.cpp
    M clang/lib/Driver/ToolChains/BareMetal.h
    A clang/test/Driver/Inputs/multilib/empty.yaml
    M clang/test/Driver/baremetal-multilib-custom-error.yaml
    M clang/test/Driver/baremetal-multilib-exclusive-group.yaml
    M clang/test/Driver/baremetal-multilib-group-error.yaml
    M clang/test/Driver/baremetal-multilib-layered.yaml
    M clang/test/Driver/baremetal-multilib.yaml
    M clang/test/Driver/print-multi-selection-flags.c

  Log Message:
  -----------
  [Clang][Driver] Add option to provide path for multilib's YAML config file (#109640)

Since the introduction of the use of a YAML file to configure the
selection of multilibs for baremetal, the path for that file has been
hardcoded into the clang driver code. This makes it difficult to provide
any alternative configurations for multilib and, by consequence, impacts
the tetability of any changes related to it - e.g. the existing multilib
YAML tests currently rely on creating fake toolchain directories to
inject their own configuration files.

This change introduces a new command line option to the clang driver,
`--multi-lib-config=`, to enable the use of a custom path to be used
when loading the multilib YAML config file. It also updates the existing
multilib YAML tests to use the new option.


  Commit: 5cfc6bc22b6284a2e0b78c71c84d272fcc8ac850
      https://github.com/llvm/llvm-project/commit/5cfc6bc22b6284a2e0b78c71c84d272fcc8ac850
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/Maintainers.md

  Log Message:
  -----------
  [LLVM][Maintainers] Update release managers (#111164)

Current release managers are Tom and Tobias, split across even and odd
releases.


  Commit: e0df221dcf5696c6e99952ee62a3b3b689433f3b
      https://github.com/llvm/llvm-project/commit/e0df221dcf5696c6e99952ee62a3b3b689433f3b
  Author: Simon Tatham <simon.tatham at arm.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M clang/docs/Multilib.rst
    M clang/include/clang/Driver/Multilib.h
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/Multilib.cpp
    M clang/lib/Driver/ToolChains/BareMetal.cpp
    M clang/test/Driver/baremetal-multilib-custom-error.yaml
    M clang/unittests/Driver/MultilibTest.cpp

  Log Message:
  -----------
  [clang][Driver] Rename "FatalError" key to "Error" in multilib.yaml (#110804)

This is a late-breaking change to #105684, suggested after the
original patch was already landed.


  Commit: 5a9e93f39cc78276a12852bbc4d639689fe73d5a
      https://github.com/llvm/llvm-project/commit/5a9e93f39cc78276a12852bbc4d639689fe73d5a
  Author: Simon Tatham <simon.tatham at arm.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M clang/lib/Driver/Multilib.cpp
    M clang/lib/Driver/ToolChains/BareMetal.cpp

  Log Message:
  -----------
  [clang][Driver] Improve multilib custom error reporting (#110804)

If `multilib.yaml` reports a custom error message for some unsupported
configuration, it's not very helpful to display that error message
_first_, and then follow it up with a huge list of all the multilib
configurations that _are_ supported.

In interactive use, the list is likely to scroll the most important
message off the top of the user's window, leaving them with just a
long list of available libraries, without a visible explanation of
_why_ clang just printed that long list. Also, in general, it makes
more intuitive sense to print the message last that shows why
compilation can't continue, because that's where users are most likely
to look for the reason why something stopped.


  Commit: 18d3a5d558c3739cfe1d382e9976400d292e9b63
      https://github.com/llvm/llvm-project/commit/18d3a5d558c3739cfe1d382e9976400d292e9b63
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp.ll

  Log Message:
  -----------
  [LegalizeVectorTypes] When widening don't check for libcalls if promoted (#111297)

When widening some FP ops, LegalizeVectorTypes will check to see if the
widened op may be scalarized and then turned into a bunch of libcalls,
and if so unroll early to avoid unnecessary libcalls of the padded undef
elements.

It checks if the widened op is legal or custom to see if it will be
scalarized, but promoted ops will also avoid scalarization.

This relaxes the check to account for this which fixes some illegal
vector types on RISC-V from being scalarized when they could be widened.


  Commit: 76aa370f4458d4d6440b257602fe666138c8bb5a
      https://github.com/llvm/llvm-project/commit/76aa370f4458d4d6440b257602fe666138c8bb5a
  Author: Jonas Paulsson <paulson1 at linux.ibm.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp
    M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.h
    M llvm/test/CodeGen/SystemZ/inline-thresh-adjust.ll

  Log Message:
  -----------
  [SystemZ] Remove inlining threshold multiplier. (#106058)

Due to recently reported problems with having the inlining threshold multiplier
set fairly high (x3), this patch removes the multiplier while addressing
the regressions seen by doing so in adjustInliningThreshold().

The specific cases that benefit from inlining that were now found to be in need
of handling contain a considerable number of memory accesses to the same
memory in both caller and callee.


  Commit: d926e340b73f1c3620a7e3ff8742d6a41c1091dc
      https://github.com/llvm/llvm-project/commit/d926e340b73f1c3620a7e3ff8742d6a41c1091dc
  Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

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

  Log Message:
  -----------
  [bazel] port 9144fed31b59089f4e3e5fedf7eb87d2695ef843


  Commit: f58e85a9725bb7d731c5ff5f79448e7150db6a6c
      https://github.com/llvm/llvm-project/commit/f58e85a9725bb7d731c5ff5f79448e7150db6a6c
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir

  Log Message:
  -----------
  [mlir][vector] Add more tests for ConvertVectorToLLVM (6/n) (#111121)

Adds tests with scalable vectors for the Vector-To-LLVM conversion pass.
Covers the following Ops:
  * `vector.insert_strided_slice`

With this change, for every test with fixed-width vectors, there should
be a corresponding example with scalable vectors (for
`vector.insert_strided_slice`). In addition:
  * Test function names are updated to more accurately reflect the case
    being exercised (e.g. `@insert_strided_index_slice1` ->
    `@insert_strided_index_slice_index_2d_into_3d`)
  * For consistency, took the liberty of updating some of the function
    names for `vector.extract_strided_slice`
  * `@insert_strided_slice_scalable` is effectively replaced with
    `@insert_strided_slice_f32_2d_into_3d_scalable`


  Commit: 3137b6a263d2549a520690606e286ab4c8e3c9e5
      https://github.com/llvm/llvm-project/commit/3137b6a263d2549a520690606e286ab4c8e3c9e5
  Author: Hans Wennborg <hans at chromium.org>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M compiler-rt/lib/lsan/lsan_common.cpp

  Log Message:
  -----------
  [lsan] Make ReportUnsuspendedThreads return bool also for Fuchsia

Follow-up to 9766ce4db57212646f135fe7033972a7a51aef4d


  Commit: c98e41f8586bc43033d29ef3ec0f9a2f79b3ec32
      https://github.com/llvm/llvm-project/commit/c98e41f8586bc43033d29ef3ec0f9a2f79b3ec32
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp.ll

  Log Message:
  -----------
  [LegalizeVectorTypes] Always widen fabs (#111298)

fabs and fneg are similar nodes in that they can always be expanded to
integer ops, but currently they diverge when widened.

If the widened vector fabs is marked as expand (and the corresponding
scalar type is too), LegalizeVectorTypes thinks that it may be turned
into a libcall and so will unroll it to avoid the overhead on the undef
elements.

However unlike the other ops in that list like fsin, fround, flog etc.,
an fabs marked as expand will never be legalized into a libcall. Like
fneg, it can always be expanded into an integer op.

This moves it below unrollExpandedOp to bring it in line with fneg,
which fixes an issue on RISC-V with f16 fabs being unexpectedly
scalarized when there's no zfhmin.


  Commit: ae6af37bf47d830becc0cd0c8a309af70fdf502c
      https://github.com/llvm/llvm-project/commit/ae6af37bf47d830becc0cd0c8a309af70fdf502c
  Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values6.ll
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values6.ll.expected
    A llvm/test/tools/UpdateTestChecks/update_test_checks/stable_ir_values6.test
    M llvm/utils/UpdateTestChecks/common.py

  Log Message:
  -----------
  update_test_checks: fix a simple regression  (#111347)

Reported-by: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Fixes: 02debcef12793b5 ("update_test_checks: improve IR value name
stability (#110940)")


  Commit: 74a98fdbc4435a9f8cdf9ea6d1d9a0396921d3d6
      https://github.com/llvm/llvm-project/commit/74a98fdbc4435a9f8cdf9ea6d1d9a0396921d3d6
  Author: Hans Wennborg <hans at chromium.org>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/combine-add.ll
    M llvm/test/CodeGen/X86/vector-mul.ll

  Log Message:
  -----------
  Revert "[x86] combineMul - use computeKnownBits directly to find MUL_IMM constant splat."

> As we're after a constant splat value we can avoid all the complexities of trying to recreate the correct constant via getTargetConstantFromNode.

This caused builds to fail with an assertion:
X86ISelLowering.cpp:48569
Assertion `C.getZExtValue() != 0 && C.getZExtValue() != maxUIntN(VT.getScalarSizeInBits())
&& "Both cases that could cause potential overflows should have " "already been handled."

See https://github.com/llvm/llvm-project/issues/111325

This reverts commit 1bc87c9f3cb20a51191f522bf4d69338ad6bb4e6.


  Commit: d148548779c2546d02b2a55e75eb8525e7b6cb2d
      https://github.com/llvm/llvm-project/commit/d148548779c2546d02b2a55e75eb8525e7b6cb2d
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/make/libcxx-simulators-common/compressed_pair.h
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/TestDataFormatterLibcxxStringSimulator.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/main.cpp

  Log Message:
  -----------
  Reland "[lldb][test] TestDataFormatterLibcxxStringSimulator.py: add new padding layout" (#111123)

Relands https://github.com/llvm/llvm-project/pull/108375 which had to be
reverted because it was failing on the Windows buildbot. Trying to
reland this with `msvc::no_unique_address` on Windows.


  Commit: 3d862c78bbb5ecbdfe93996bdf2dcfc64325ae87
      https://github.com/llvm/llvm-project/commit/3d862c78bbb5ecbdfe93996bdf2dcfc64325ae87
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/combine-add.ll
    M llvm/test/CodeGen/X86/mul-constant-i64.ll
    M llvm/test/CodeGen/X86/vector-mul.ll

  Log Message:
  -----------
  [x86] combineMul - use computeKnownBits directly to find MUL_IMM constant splat. (REAPPLIED)

As we're after a constant splat value we can avoid all the complexities of trying to recreate the correct constant via getTargetConstantFromNode.


  Commit: 66713a0f8257661a8849e1a710a90b79576b0d21
      https://github.com/llvm/llvm-project/commit/66713a0f8257661a8849e1a710a90b79576b0d21
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    A lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/optional/Makefile
    A lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/optional/TestDataFormatterLibcxxOptionalSimulator.py
    A lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/optional/main.cpp

  Log Message:
  -----------
  [lldb][test] Add libcxx-simulators test for std::optional (#111133)

Follow-up to the LLDB std::optional data-formatter test failure caused
by https://github.com/llvm/llvm-project/pull/110355.

Two formats are supported:
1. `__val_` has type `value_type`
2. `__val_`'s type is wrapped in `std::remove_cv_t`


  Commit: a1c0ba1646f5a80dadd34f55e4a36d5409c2675a
      https://github.com/llvm/llvm-project/commit/a1c0ba1646f5a80dadd34f55e4a36d5409c2675a
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/optional/main.cpp

  Log Message:
  -----------
  [lldb][test] TestDataFormatterLibcxxOptionalSimulator.py: change order of ifdefs

The current layout *does* have `removecv_t`. So change
the ifdefs to reflect that.


  Commit: e0b24d947570385c5b6c3afea46fea09fc75ddab
      https://github.com/llvm/llvm-project/commit/e0b24d947570385c5b6c3afea46fea09fc75ddab
  Author: Peter Waller <peter.waller at arm.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    A llvm/test/tools/llvm-dis/multiple-files-equivalent.ll
    M llvm/tools/llvm-dis/llvm-dis.cpp

  Log Message:
  -----------
  [llvm-dis] Fix non-deterministic disassembly across multiple inputs (#110988)

Prior to this patch, the LLVMContext was shared across inputs to
llvm-dis.

Consequently, NamedStructTypes was shared across inputs, which impacts
StructType::setName - if a name was reused across inputs, it would get
renamed during construction of the struct type, leading to tricky to
diagnose confusion.


  Commit: db1340412e167d828ae406975265529d95da7ef0
      https://github.com/llvm/llvm-project/commit/db1340412e167d828ae406975265529d95da7ef0
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/mul-constant-i64.ll

  Log Message:
  -----------
  [x86] combineMul - handle 0/-1 KnownBits cases before MUL_IMM logic (REAPPLIED)

Followup to 3d862c78bbb5ecbdfe93996bdf2dcfc64325ae87 fix - always fold multiply to zero/negation


  Commit: 88478a89cd85adcc32f2a321ef9e9906c5fdbe26
      https://github.com/llvm/llvm-project/commit/88478a89cd85adcc32f2a321ef9e9906c5fdbe26
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/OpenMP/ReductionProcessor.cpp
    M flang/lib/Lower/OpenMP/ReductionProcessor.h
    M flang/lib/Lower/OpenMP/Utils.cpp
    M flang/lib/Lower/OpenMP/Utils.h

  Log Message:
  -----------
  [Flang][OpenMP] Improve entry block argument creation and binding (#110267)

The main purpose of this patch is to centralize the logic for creating
MLIR operation entry blocks and for binding them to the corresponding
symbols. This minimizes the chances of mixing arguments up for
operations having multiple entry block argument-generating clauses and
prevents divergence while binding arguments.

Some changes implemented to this end are:
- Split into two functions the creation of the entry block, and the
binding of its arguments and the corresponding Fortran symbol. This
enabled a significant simplification of the lowering of composite
constructs, where it's no longer necessary to manually ensure the lists
of arguments and symbols refer to the same variables in the same order
and also match the expected order by the `BlockArgOpenMPOpInterface`.
- Removed redundant and error-prone passing of types and locations from
`ClauseProcessor` methods. Instead, these are obtained from the values
in the appropriate clause operands structure. This also simplifies
argument lists of several lowering functions.
- Access block arguments of already created MLIR operations through the
`BlockArgOpenMPOpInterface` instead of directly indexing the argument
list of the operation, which is not scalable as more entry block
argument-generating clauses are added to an operation.
- Simplified the implementation of `genParallelOp` to no longer need to
define different callbacks depending on whether delayed privatization is
enabled.


  Commit: 8df6637e84c4fa08e4649079fb21a6932a6926a4
      https://github.com/llvm/llvm-project/commit/8df6637e84c4fa08e4649079fb21a6932a6926a4
  Author: AidinT <3762928+aidint at users.noreply.github.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/docs/tutorial/MyFirstLanguageFrontend/LangImpl03.rst

  Log Message:
  -----------
  [doc] Fix Kaleidoscope tutorial chapter 3 code snippet and full listing discrepancies (#111289)

Fix two discrepancies between the cited snippets and the full code.


  Commit: d9e986e915b03e2f68d9ed2b664a2511edbb6513
      https://github.com/llvm/llvm-project/commit/d9e986e915b03e2f68d9ed2b664a2511edbb6513
  Author: Alex Bradbury <asb at igalia.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M clang/test/OpenMP/declare_variant_device_isa_codegen_1.c

  Log Message:
  -----------
  [clang][OpenMP][test] Use x86_64-linux-gnu triple for test referencing avx512f feature (#111337)

This test passes as-is on non-X86 hosts only because almost no target
implements `isValidFeatureName` (the default implementation
unconditionally returns true). RISC-V does implement it, and like X86
checks that the feature name is one supported by the architecture. This
means the test creates an additional warning on RISC-V due to
`_attribute__((target("avx512f")))`.

The simple solution here is to just explicitly target x86_64-linux-gnu.


  Commit: f1ec45a0b0b14d9eb41d32be98f1437b8d1d322d
      https://github.com/llvm/llvm-project/commit/f1ec45a0b0b14d9eb41d32be98f1437b8d1d322d
  Author: Oliver Stannard <oliver.stannard at arm.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M clang/test/Driver/aarch64-multilib-rcpc3.c

  Log Message:
  -----------
  [Driver] Use empty multilib file in another test (#111352)

This makes the test independent of the one provided by a toolchain clang
is built into, which can cause the output of
-print-multi-flags-experimental to change.


  Commit: 9a222a112606249f1e9db43fcaaae56982cf0197
      https://github.com/llvm/llvm-project/commit/9a222a112606249f1e9db43fcaaae56982cf0197
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/extract-lowbits.ll

  Log Message:
  -----------
  [X86] Add test coverage for #111323


  Commit: c978d05a26e47edf2eda402b2140347afb8a5954
      https://github.com/llvm/llvm-project/commit/c978d05a26e47edf2eda402b2140347afb8a5954
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp

  Log Message:
  -----------
  [X86] getIntImmCostInst - pull out repeated Imm.getBitWidth() calls. NFC.


  Commit: 8b6e1dc924fd3c35670b46d744091d2f7ce94c5f
      https://github.com/llvm/llvm-project/commit/8b6e1dc924fd3c35670b46d744091d2f7ce94c5f
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/test/CodeGen/X86/extract-lowbits.ll

  Log Message:
  -----------
  [X86] getIntImmCostInst - reduce i64 imm costs of AND(X,CMASK) case that can fold to BEXT/BZHI

With BEXT/BZHI the i64 imm mask will be replaced with a i16/i8 control mask

Fixes #111323


  Commit: 02dd6b1014c708591fa0e8d46efb328c513a86e7
      https://github.com/llvm/llvm-project/commit/02dd6b1014c708591fa0e8d46efb328c513a86e7
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/lib/Target/AArch64/SVEInstrFormats.td
    A llvm/test/CodeGen/AArch64/sve-bf16-arith.ll
    A llvm/test/CodeGen/AArch64/sve-bf16-rounding.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix-lo.ll

  Log Message:
  -----------
  [LLVM][CodeGen] Add lowering for scalable vector bfloat operations. (#109803)

Specifically:
  fabs, fadd, fceil, fdiv, ffloor, fma, fmax, fmaxnm, fmin, fminnm,
  fmul, fnearbyint, fneg, frint, fround, froundeven, fsub, fsqrt &
  ftrunc


  Commit: 1062007d1b10bdec8dddc6d41f3fb6c01e9be62b
      https://github.com/llvm/llvm-project/commit/1062007d1b10bdec8dddc6d41f3fb6c01e9be62b
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/bugprone/BUILD.gn

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


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

  Changed paths:
    M libc/utils/gpu/loader/amdgpu/amdhsa-loader.cpp
    M libc/utils/gpu/loader/nvptx/nvptx-loader.cpp

  Log Message:
  -----------
  [libc] Make a dedicated thread for the RPC server (#111210)

Summary:
Make a separate thread to run the server when we launch. This is
required by CUDA, which you can force with `export
CUDA_LAUNCH_BLOCKING=1`. I figured I might as well be consistent and do
it for the AMD implementation as well even though I believe it's not
necessary.


  Commit: a018353f4b2207c6e6a82408cfe51152b03f7868
      https://github.com/llvm/llvm-project/commit/a018353f4b2207c6e6a82408cfe51152b03f7868
  Author: Juan Manuel Martinez Caamaño <juamarti at amd.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

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

  Log Message:
  -----------
  Revert "[NFC][EarlyIfConverter] Remove unused member variables"

This reverts commit 3c83102f0615c7d66f6df698ca472ddbf0e9483d.


  Commit: e7174a8378faf291e843892323527d001220d645
      https://github.com/llvm/llvm-project/commit/e7174a8378faf291e843892323527d001220d645
  Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

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

  Log Message:
  -----------
  [lldb][test] Provide proper path to LLVM utils in API tests (#110837)

In aea066849, API tests were supposed to use LLVM tools.
However, a path to a utility is made up incorrectly there: util name
should be prefixed with `llvm-`.

Hence, it's fixed here.


  Commit: 91d6e77d8b4ad6dbbbfa5b6788f44d3ab6757707
      https://github.com/llvm/llvm-project/commit/91d6e77d8b4ad6dbbbfa5b6788f44d3ab6757707
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    M flang/test/Transforms/debug-fn-info.fir

  Log Message:
  -----------
  [flang][debug] set DW_AT_main_subprogram for fortran main function (#111350)

Requested here
https://github.com/llvm/llvm-project/pull/111022#issuecomment-2396287781


  Commit: dda107b8cb7cb35690a45518c72f85a1df04be1a
      https://github.com/llvm/llvm-project/commit/dda107b8cb7cb35690a45518c72f85a1df04be1a
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

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

  Log Message:
  -----------
  Revert "[libc][bazel] Enable software prefetching for memcpy" (#111370)

Reverts llvm/llvm-project#108939

When `AVX` is available but `-mprefer-vector-width=128` some of the
`mov` instructions turn into the x86 `rep;movsb` instruction leading to
poor performance on "old" architectures (sandybridge, haswell). The
possible solutions are : get rid of the `-mprefer-vector-width` option
or use smaller static copy sizes in
`inline_memcpy_x86_sse2_ge64_sw_prefetching`. Right now a copy size of 3
cache lines (192B) relying exclusively on xmm registers gets turned into
`rep;movsb`.


  Commit: 5dc7a5e50bd21cc818a3a71691af9780291b75b2
      https://github.com/llvm/llvm-project/commit/5dc7a5e50bd21cc818a3a71691af9780291b75b2
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M clang/lib/Headers/popcntintrin.h

  Log Message:
  -----------
  [clang][x86] popcntintrin.h - merge the __DEFAULT_FN_ATTRS / __DEFAULT_FN_ATTRS_CONSTEXPR defines. NFC.

We only need one define - so consistently use __DEFAULT_FN_ATTRS like we do in other headers.


  Commit: 73c9ad263369ac7350d60b3d3670ea3ed56669cc
      https://github.com/llvm/llvm-project/commit/73c9ad263369ac7350d60b3d3670ea3ed56669cc
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

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

  Log Message:
  -----------
  [clang][x86] Add constexpr support for some basic SSE1 intrinsics (#111001)

This is an initial patch to enable constexpr support on the more basic SSE1 intrinsics - such as initialization, arithmetic, logic and fixed shuffles.

The plan is to incrementally extend this for SSE2/AVX etc. - initially for the equivalent basic intrinsics, but we can add support for some of the ia32 builtins as well we the need arises.


  Commit: b2784ec32837df38e0de7436cbde6dfa7aefacd1
      https://github.com/llvm/llvm-project/commit/b2784ec32837df38e0de7436cbde6dfa7aefacd1
  Author: Hans Wennborg <hans at chromium.org>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86SelectionDAGInfo.cpp
    M llvm/test/CodeGen/X86/memcpy-struct-by-value.ll
    M llvm/test/CodeGen/X86/memcpy.ll
    M llvm/test/CodeGen/X86/memset-minsize.ll
    M llvm/test/CodeGen/X86/memset-vs-memset-inline.ll

  Log Message:
  -----------
  Revert "[X86] For minsize memset/memcpy, use byte or double-word accesses (#87003)"

This caused assertion failures:

  llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp:7736:
  SDValue getMemsetValue(SDValue, EVT, SelectionDAG &, const SDLoc &):
  Assertion `C->getAPIntValue().getBitWidth() == 8' failed.

See comment on the PR for a reproducer.

> repstosb and repstosd are the same size, but stosd is only done for 0
> because the process of multiplying the constant so that it is copied
> across the bytes of the 32-bit number adds extra instructions that cause
> the size to increase. For 0, repstosb and repstosd are the same size,
> but stosd is only done for 0 because the process of multiplying the
> constant so that it is copied across the bytes of the 32-bit number adds
> extra instructions that cause the size to increase. For 0, we do not
> need to do that at all.
>
> For memcpy, the same goes, and as a result the minsize check was moved
> ahead because a jmp to memcpy encoded takes more bytes than repmovsb.

This reverts commit 6de5305b3d7a4a19a29b35d481a8090e2a6d3a7e.


  Commit: 1666d13078e4799df2d8eaa101ccf02acd031427
      https://github.com/llvm/llvm-project/commit/1666d13078e4799df2d8eaa101ccf02acd031427
  Author: BARRET <41060790+Adnios at users.noreply.github.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/lib/MC/CMakeLists.txt
    M mlir/lib/Conversion/ConvertToLLVM/CMakeLists.txt
    M mlir/lib/Conversion/VectorToLLVM/CMakeLists.txt
    M mlir/lib/Dialect/Arith/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/Linalg/IR/CMakeLists.txt
    M mlir/lib/Dialect/Linalg/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/MemRef/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/Mesh/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/SCF/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/Tensor/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/Tosa/CMakeLists.txt
    M mlir/lib/Dialect/Vector/Transforms/CMakeLists.txt
    M mlir/lib/Target/SPIRV/CMakeLists.txt
    M mlir/lib/Target/SPIRV/Serialization/CMakeLists.txt
    M mlir/lib/Transforms/CMakeLists.txt

  Log Message:
  -----------
  [CMake]: Remove unnecessary dependencies on LLVM/MLIR (#111255)

Previous https://github.com/llvm/llvm-project/pull/110362 (reverted)
caused breakage. Here is the PR with fix.

My build cmdline:

```
cmake ../llvm \
    -G Ninja \
    -DCMAKE_BUILD_TYPE=Release \
    -DCMAKE_INSTALL_PREFIX=install \
    -DCMAKE_C_COMPILER=gcc-9 \
    -DCMAKE_CXX_COMPILER=g++-9 \
    -DCMAKE_CUDA_COMPILER=$(which nvcc) \
    -DLLVM_ENABLE_LLD=OFF \
    -DLLVM_ENABLE_ASSERTIONS=ON \
    -DLLVM_BUILD_EXAMPLES=ON \
    -DCOMPILER_RT_BUILD_LIBFUZZER=OFF \
    -DLLVM_CCACHE_BUILD=ON \
    -DMLIR_ENABLE_BINDINGS_PYTHON=ON \
    -DBUILD_SHARED_LIBS=ON \
    -DLLVM_ENABLE_PROJECTS='llvm;mlir'
```


  Commit: 4c9c2d6082740b4ddda1ecfdc33702e4cbd3444d
      https://github.com/llvm/llvm-project/commit/4c9c2d6082740b4ddda1ecfdc33702e4cbd3444d
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M clang/lib/AST/CXXInheritance.cpp

  Log Message:
  -----------
  [AST] Avoid repeated hash lookups (NFC) (#111327)

Here I'm splitting up the existing "if" statement into two.  Mixing
hasDefinition() and insert() in one "if" condition would be extremely
confusing as hasDefinition() doesn't change anything while insert()
does.


  Commit: 4bc0916011c4fc02de29e09905400138cbec909f
      https://github.com/llvm/llvm-project/commit/4bc0916011c4fc02de29e09905400138cbec909f
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M mlir/lib/Dialect/Linalg/IR/LinalgInterfaces.cpp

  Log Message:
  -----------
  [Linalg] Avoid repeated hash lookups (NFC) (#111328)


  Commit: 31e8c539e0fdc4b251871c9126f7bc28fc8fb74b
      https://github.com/llvm/llvm-project/commit/31e8c539e0fdc4b251871c9126f7bc28fc8fb74b
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M mlir/lib/Dialect/Affine/Analysis/Utils.cpp

  Log Message:
  -----------
  [Affine] Avoid repeated hash lookups (NFC) (#111330)


  Commit: 40f0f7b4ec3eea4827fa3e54153ff722b5842ea1
      https://github.com/llvm/llvm-project/commit/40f0f7b4ec3eea4827fa3e54153ff722b5842ea1
  Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M clang/test/CodeGen/aarch64-fmv-dependencies.c
    M clang/test/CodeGen/attr-target-version.c
    M clang/test/CodeGenCXX/attr-target-clones-aarch64.cpp
    M clang/test/Sema/attr-target-clones-aarch64.c
    M clang/test/SemaCXX/attr-target-version.cpp
    M compiler-rt/lib/builtins/cpu_model/AArch64CPUFeatures.inc
    M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/apple.inc
    M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/mrs.inc
    M llvm/include/llvm/TargetParser/AArch64CPUFeatures.inc
    M llvm/lib/Target/AArch64/AArch64FMV.td

  Log Message:
  -----------
  [FMV][AArch64] Unify features ssbs and ssbs2. (#110297)

According to https://developer.arm.com/documentation/102105/latest Arm
Architecture Reference Manual for A-profile architecture: Known issues

2.206 D22789
In section C5.2.25 "SSBS, Speculative Store Bypass Safe", under the
heading 'Configurations', the text that reads:

"This register is present only when FEAT_SSBS is implemented. Otherwise,
direct accesses to SSBS are UNDEFINED."

is changed to read:

"This register is present only when FEAT_SSBS2 is implemented.
Otherwise, direct accesses to SSBS are UNDEFINED."

This suggests that it's not worth splitting FEAT_SSBS2 from FEAT_SSBS in
the compiler, since FEAT_SSBS cannot be used for predicating the MRS/MSR
instructions. Those can access PSTATE.SSBS only when FEAT_SSBS2 is
available. Moreover, there are no hardware implementations which
implement FEAT_SSBS without FEAT_SSBS2, therefore unifying these
features in the specification should not be a regression for feature
detection.

Approved in ACLE as https://github.com/ARM-software/acle/pull/350


  Commit: 0614b3cface2128c2e0f7e3415b54f5cdb75a02b
      https://github.com/llvm/llvm-project/commit/0614b3cface2128c2e0f7e3415b54f5cdb75a02b
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/lib/Analysis/BasicAliasAnalysis.cpp
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    M llvm/lib/Analysis/ScalarEvolution.cpp

  Log Message:
  -----------
  [Analysis] Simplify code with DenseMap::operator[] (NFC) (#111331)


  Commit: 5fdda4147495c6bcfb6c100dbf32a669c3b39874
      https://github.com/llvm/llvm-project/commit/5fdda4147495c6bcfb6c100dbf32a669c3b39874
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M mlir/lib/Transforms/Mem2Reg.cpp

  Log Message:
  -----------
  [Transforms] Avoid repeated hash lookups (NFC) (#111329)


  Commit: 5f94b0cbdd169ea9387fa48ee9889ebf752821f7
      https://github.com/llvm/llvm-project/commit/5f94b0cbdd169ea9387fa48ee9889ebf752821f7
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-add-i32.mir
    M llvm/test/CodeGen/AMDGPU/local-stack-alloc-block-sp-reference.ll

  Log Message:
  -----------
  AMDGPU: Try to reuse dest reg for s_add_i32 frame indexes (#111201)

Hack around the register scavenger doing the wrong thing.
It does not find the result register as available in the
case the frame index add isn't also reading the dest register.
This is the quick fix for a regression where the scavenge would
create a broken spill of SGPR to memory. I believe this is still
broken for cases we cannot use the result register.

I'm confused about what position the scavenger iterator
is supposed to be in, and what RestoreAfter is for. The scavenger
is missing a full set of forward/backward APIs and there seems
to be an off by one somewhere.


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

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

  Log Message:
  -----------
  Revert "[NFC][EarlyIfConverter] Replace boolean Predicate for a class (#108519)" (#111372)

This reverts commit 9e7315912656628b606e884e39cdeb261b476f16.


  Commit: 989c437d7f40cf5a53cb111a915013ac28bf8891
      https://github.com/llvm/llvm-project/commit/989c437d7f40cf5a53cb111a915013ac28bf8891
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/GISel/RISCVInstructionSelector.cpp

  Log Message:
  -----------
  [RISCV][GISEL][NFC] Add break statement to reduce diff on future changes of preISelLower


  Commit: 0e8555d4dbfdfeddc01dc2ecf9a9b6e804f7b645
      https://github.com/llvm/llvm-project/commit/0e8555d4dbfdfeddc01dc2ecf9a9b6e804f7b645
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M libclc/README.TXT

  Log Message:
  -----------
  [libclc] Remove mention of BSD license in readme (#111371)

This seems to be an artifact from the intial import in 2012, but even if
not, folks are better off reading the LICENSE.TXT file for the full
details if they need them.

Fixes #109968


  Commit: 0e2970f0ad723a3b4e56d18858f4fd215415002f
      https://github.com/llvm/llvm-project/commit/0e2970f0ad723a3b4e56d18858f4fd215415002f
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/optional/TestDataFormatterLibcxxOptionalSimulator.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/TestDataFormatterLibcxxStringSimulator.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/unique_ptr/TestDataFormatterLibcxxUniquePtrSimulator.py

  Log Message:
  -----------
  [lldb] Make libc++ simulator tests compatible with category-based ski… (#111353)

…pping, which works by setting a field on the function object. This
doesn't work on a functools.partial object. Use a real function instead.


  Commit: aa656366ce9a693fce6a4f16090d250a8059df46
      https://github.com/llvm/llvm-project/commit/aa656366ce9a693fce6a4f16090d250a8059df46
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M clang/test/CodeGen/X86/avx-builtins-constrained-cmp.c
    M clang/test/CodeGen/X86/avx-builtins.c

  Log Message:
  -----------
  [clang][x86] Update AVX1 intrinsic tests for both C/C++

Requires some call instructions to handle additional markers


  Commit: f71d62178d9c97ac650a8454403d71cbc8fd8c9d
      https://github.com/llvm/llvm-project/commit/f71d62178d9c97ac650a8454403d71cbc8fd8c9d
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M clang/test/CodeGen/X86/f16c-builtins-constrained.c
    M clang/test/CodeGen/X86/f16c-builtins.c

  Log Message:
  -----------
  [clang][x86] Update F16C intrinsic tests for both C/C++ and 32/64-bit targets

Requires some call instructions to handle additional markers


  Commit: aa4d94839e6bb30389deb3339fb0d0e4aa8baa4e
      https://github.com/llvm/llvm-project/commit/aa4d94839e6bb30389deb3339fb0d0e4aa8baa4e
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M clang/test/CodeGen/X86/fma-builtins-constrained.c
    M clang/test/CodeGen/X86/fma-builtins.c
    M clang/test/CodeGen/X86/fma4-builtins.c

  Log Message:
  -----------
  [clang][x86] Update FMA/FMA4 intrinsic tests for both C/C++ and 32/64-bit targets

Requires some call instructions to handle additional markers


  Commit: f15fe73d234a3c41f9cb905106517a89bab3add4
      https://github.com/llvm/llvm-project/commit/f15fe73d234a3c41f9cb905106517a89bab3add4
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M clang/test/CodeGen/X86/avx2-builtins.c

  Log Message:
  -----------
  [clang][x86] Update AVX2 intrinsic tests for both C/C++

Requires some call instructions to handle additional markers


  Commit: 8565213f2f9991d83d2b1353f00f35e2b34d9d12
      https://github.com/llvm/llvm-project/commit/8565213f2f9991d83d2b1353f00f35e2b34d9d12
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    R clang/CodeOwners.rst
    A clang/Maintainers.rst
    M clang/docs/CMakeLists.txt
    R clang/docs/CodeOwners.rst
    A clang/docs/Maintainers.rst
    M clang/docs/index.rst

  Log Message:
  -----------
  [clang] Code owners -> Maintainers transition (#108997)

This is the initial transition from using "code owners" to using
"maintainers".


  Commit: 2fe1f84db379bccbf0a3ac136d063a94b5dc59cb
      https://github.com/llvm/llvm-project/commit/2fe1f84db379bccbf0a3ac136d063a94b5dc59cb
  Author: Alex Bradbury <asb at igalia.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/test/CodeGen/Generic/llc-start-stop.ll

  Log Message:
  -----------
  [test] Fix llc-start-stop.ll when the default target enables the loop terminator folding pass

Previously this would fail if the default target enabled the loop
terminator folding pass (currently just RISC-V), as it runs after loop
strength reduction.


  Commit: 2edd897a4227e481af33e8e43090ab088cd9d953
      https://github.com/llvm/llvm-project/commit/2edd897a4227e481af33e8e43090ab088cd9d953
  Author: Nuri Amari <nuri.amari99 at gmail.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M lld/COFF/LTO.cpp
    M lld/ELF/LTO.cpp
    M lld/MachO/LTO.cpp
    M lld/test/COFF/thinlto-emit-imports.ll
    M lld/test/ELF/lto/thinlto-cant-write-index.ll
    M lld/test/ELF/lto/thinlto-emit-imports.ll
    M lld/test/MachO/thinlto-emit-imports.ll
    M llvm/include/llvm/LTO/LTO.h
    M llvm/include/llvm/Support/Threading.h
    M llvm/include/llvm/Transforms/IPO/FunctionImport.h
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/LTO/ThinLTOCodeGenerator.cpp
    M llvm/lib/Transforms/IPO/FunctionImport.cpp
    M llvm/tools/gold/gold-plugin.cpp
    M llvm/tools/llvm-lto2/llvm-lto2.cpp

  Log Message:
  -----------
  Make WriteIndexesThinBackend multi threaded (#109847)

We've noticed that for large builds executing thin-link can take on the
order of 10s of minutes. We are only using a single thread to write the
sharded indices and import files for each input bitcode file. While we
need to ensure the index file produced lists modules in a deterministic
order, that doesn't prevent us from executing the rest of the work in
parallel.

In this change we use a thread pool to execute as much of the backend's
work as possible in parallel. In local testing on a machine with 80
cores, this change makes a thin-link for ~100,000 input files run in ~2
minutes. Without this change it takes upwards of 10 minutes.

---------

Co-authored-by: Nuri Amari <nuriamari at fb.com>


  Commit: c5f7a32356fef48bbd075edfedec80142e8106b6
      https://github.com/llvm/llvm-project/commit/c5f7a32356fef48bbd075edfedec80142e8106b6
  Author: RipleyTom <RipleyTom at users.noreply.github.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M compiler-rt/lib/builtins/cpu_model/x86.c
    M llvm/lib/TargetParser/Host.cpp

  Log Message:
  -----------
  [X86] Add AMD Llano family detection (#111312)

Very simple one liner, adds the missing detection for the Llano family
which is essentially a refreshed K10:
Documentation of the family id:
https://en.wikichip.org/wiki/amd/cpuid#Family_18_.2812h.29
Documentation that it fits into amdfam10:
https://en.wikipedia.org/wiki/AMD_10h#12h


  Commit: 0e8a10b099a230f5193f228467538e6443afa398
      https://github.com/llvm/llvm-project/commit/0e8a10b099a230f5193f228467538e6443afa398
  Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M lldb/test/API/functionalities/archives/TestBSDArchives.py

  Log Message:
  -----------
  [lldb][test] Mark test() in TestBSDArchives.py as passing remotely (#111199)

It was xfail'ed in de2ddc8f3146b. However, it passes on a buildbot
https://lab.llvm.org/staging/#/builders/195/builds/3988.


  Commit: 5e7cc374225e1704d0694da05e02f327cc0cf024
      https://github.com/llvm/llvm-project/commit/5e7cc374225e1704d0694da05e02f327cc0cf024
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/optional/main.cpp

  Log Message:
  -----------
  [lldb][test] TestDataFormatterLibcxxOptionalSimulator.py: don't use __builtin_printf

This caused Windows CI to fail with:
```
Build Command Output:

make: Entering directory 'C:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/lldb-test-build.noindex/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/optional/TestDataFormatterLibcxxOptionalSimulator.test_r0'

"C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\build\bin\clang++.exe"  -std=c++11 -gdwarf -O0   -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\packages\Python\lldbsuite\test\make/../../../../..//include -IC:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/tools/lldb/include -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\test\API\functionalities\data-formatter\data-formatter-stl\libcxx-simulators\optional -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\packages\Python\lldbsuite\test\make -include C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\packages\Python\lldbsuite\test\make/test_common.h -fno-limit-debug-info    -fno-exceptions -D_HAS_EXCEPTIONS=0 -fms-compatibility-version=19.0 -std=c++14  -DREVISION=0 -std=c++14 --driver-mode=g++ -MT main.o -MD -MP -MF main.d -c -o main.o C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\test\API\functionalities\data-formatter\data-formatter-stl\libcxx-simulators\optional/main.cpp

C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\build\bin\clang.exe main.o -gdwarf -O0   -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\packages\Python\lldbsuite\test\make/../../../../..//include -IC:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/tools/lldb/include -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\test\API\functionalities\data-formatter\data-formatter-stl\libcxx-simulators\optional -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\packages\Python\lldbsuite\test\make -include C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\packages\Python\lldbsuite\test\make/test_common.h -fno-limit-debug-info     -fuse-ld=lld  --driver-mode=g++ -o "a.out"

lld-link: error: undefined symbol: printf

>>> referenced by main.o:(main)

clang: error: linker command failed with exit code 1 (use -v to see invocation)

make: *** [Makefile.rules:515: a.out] Error 1

make: Leaving directory 'C:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/lldb-test-build.noindex/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/optional/TestDataFormatterLibcxxOptionalSimulator.test_r0'
```


  Commit: 02b9c97b75325c9b737772986e439cf8f3c0d1ab
      https://github.com/llvm/llvm-project/commit/02b9c97b75325c9b737772986e439cf8f3c0d1ab
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

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

  Log Message:
  -----------
  [memprof] Simplify code with MapVector::operator[] (NFC) (#111335)

Note that the following are all equivalent to each other:

  Map.insert({Key, Value()}).first->second
  Map.try_emplace(Key).first->second
  Map[Key]


  Commit: 1f17c2d20db7b26367df53c1d334d4338313fc0b
      https://github.com/llvm/llvm-project/commit/1f17c2d20db7b26367df53c1d334d4338313fc0b
  Author: Rahman Lavaee <rahmanl at google.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M lld/ELF/LTO.cpp
    M lld/test/ELF/lto/basic-block-sections.ll

  Log Message:
  -----------
  [LLD] Deprecate --lto-basic-block-sections=labels (#110697)

This option is now replaced by `--lto-basic-block-address-map`.


  Commit: dec6fe3de0f6475ea83391e5b0b4036cf56db35b
      https://github.com/llvm/llvm-project/commit/dec6fe3de0f6475ea83391e5b0b4036cf56db35b
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    R llvm/test/CodeGen/SPIRV/hlsl-intrinsics/radians.ll
    R llvm/test/CodeGen/SPIRV/opencl/radians.ll

  Log Message:
  -----------
  Revert "[SPIRV] Add radians intrinsic" (#111398)

Reverts llvm/llvm-project#110800

`llvm\test\CodeGen\DirectX\radians.ll` is failing after this change.
@adam-yang please send a new PR with the issue resolved once you've had
time to investigate.


  Commit: b2c615fc792c3f75af66aac99c05ffa85ef50354
      https://github.com/llvm/llvm-project/commit/b2c615fc792c3f75af66aac99c05ffa85ef50354
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/radians.ll
    A llvm/test/CodeGen/SPIRV/opencl/radians.ll

  Log Message:
  -----------
  Reapply "[SPIRV] Add radians intrinsic"

I had too many tabs open and reverted #110800 by mistake, it was
supposed to be #110616.

This reverts commit dec6fe3de0f6475ea83391e5b0b4036cf56db35b.


  Commit: b795c28d8e6d5947d365f4e5f7b49cc22546292f
      https://github.com/llvm/llvm-project/commit/b795c28d8e6d5947d365f4e5f7b49cc22546292f
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M clang/test/CodeGen/X86/avx512f-builtins.c

  Log Message:
  -----------
  [clang][x86] Update AVX512F intrinsic tests for both C/C++

Requires some better checking of labels and some call instructions to handle additional markers


  Commit: f07e1c86199eeac609900f42edb22e1faf461ef2
      https://github.com/llvm/llvm-project/commit/f07e1c86199eeac609900f42edb22e1faf461ef2
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M clang/test/CodeGen/X86/mmx-builtins.c

  Log Message:
  -----------
  [clang][x86] Update MMX intrinsic tests for both C/C++ and 32/64-bit targets


  Commit: d4c17891126a79ae49237a7de0f9948aeedcd177
      https://github.com/llvm/llvm-project/commit/d4c17891126a79ae49237a7de0f9948aeedcd177
  Author: Da-Viper <57949090+Da-Viper at users.noreply.github.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/coreFile/TestDAP_coreFile.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py
    M lldb/test/API/tools/lldb-dap/runInTerminal/TestDAP_runInTerminal.py
    M lldb/tools/lldb-dap/JSONUtils.cpp
    M lldb/tools/lldb-dap/JSONUtils.h
    M lldb/tools/lldb-dap/LLDBUtils.cpp
    M lldb/tools/lldb-dap/LLDBUtils.h
    M lldb/tools/lldb-dap/README.md
    M lldb/tools/lldb-dap/lldb-dap.cpp
    M lldb/tools/lldb-dap/package.json

  Log Message:
  -----------
  Make env and source map dictionaries #95137 (#106919)

Fixes #95137


  Commit: 5d372ea6a1e438b8e9583391d40cfcf34210d4f7
      https://github.com/llvm/llvm-project/commit/5d372ea6a1e438b8e9583391d40cfcf34210d4f7
  Author: Jacob Lalonde <jalalonde at fb.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp

  Log Message:
  -----------
  [LLDB][DYLD] Remove logic around not rebasing when main executable has a load address (#110885)

This is a part of #109477 that I'm making into it's own patch. Here we
remove logic from the DYLD that prevents it's logic from running if the
main executable already has a load address. Instead we let the DYLD
fully determine what should be loaded and what shouldn't.


  Commit: 971b579bc6669a0898e47d6702c4b99cb757bb26
      https://github.com/llvm/llvm-project/commit/971b579bc6669a0898e47d6702c4b99cb757bb26
  Author: Prashant Kumar <pk5561 at gmail.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
    M mlir/test/Dialect/Tensor/canonicalize.mlir

  Log Message:
  -----------
  [MLIR] Don't drop attached discardable attributes (#111261)

The creation of pack op was dropping discardable attributes.


  Commit: b3c1403dc00a41c8222d4b1dd82cbb7c56fd61ae
      https://github.com/llvm/llvm-project/commit/b3c1403dc00a41c8222d4b1dd82cbb7c56fd61ae
  Author: Rainer Orth <ro at gcc.gnu.org>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/Lex/PPMacroExpansion.cpp
    A clang/test/AST/solaris-tm.cpp

  Log Message:
  -----------
  [clang] Fix std::tm etc. mangling on Solaris (#106353)

Recently, Solaris bootstrap got broken because Solaris uses a
non-standard mangling of `std::tm` and a few others. This was fixed with
a hack in PR #100724. The Solaris ABI requires mangling `std::tm` as
`tm` and similarly for `std::div_t`, `std::ldiv_t`, and `std::lconv`,
which is what this patch implements. The hack needs to stay in place to
allow building with older versions of `clang`.

Tested on `amd64-pc-solaris2.11`, `sparcv9-sun-solaris2.11` (2-stage
builds with both `clang-19` and `gcc-14` as build compiler), and
`x86_64-pc-linux-gnu`.


  Commit: 71b2c4dbc7cc28007849434303e6bd2408db5b3b
      https://github.com/llvm/llvm-project/commit/71b2c4dbc7cc28007849434303e6bd2408db5b3b
  Author: Nimish Mishra <neelam.nimish at gmail.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    R flang/test/Integration/OpenMP/atomic-update-complex.f90

  Log Message:
  -----------
  [flang] Remove failing  integration test


  Commit: 69577b2454fcfe35d562ede90c15150f7265376a
      https://github.com/llvm/llvm-project/commit/69577b2454fcfe35d562ede90c15150f7265376a
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.cpp
    M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.h
    M llvm/test/MC/WebAssembly/annotations.s
    M llvm/test/MC/WebAssembly/eh-assembly.s
    M llvm/test/MC/WebAssembly/type-checker-errors.s

  Log Message:
  -----------
  [WebAssembly] Support type checker for new EH (#111069)

This adds supports for the new EH instructions (`try_table` and
`throw_ref`) to the type checker.

One thing I'd like to improve on is the locations in the errors for
`catch_***` clauses. Currently they just point to the starting column of
`try_table` instruction itself. But to figure out where catch clauses
start you need to traverse `OperandVector` and check
`WebAssemblyOperand::isCatchList` on them to see which one is the catch
list operand, but `WebAssemblyOperand` class is in AsmParser and
AsmTypeCheck does not have access to it:

https://github.com/llvm/llvm-project/blob/cdfdc857cbab0418b7e5116fd4255eb5566588bd/llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp#L43-L204
And even if AsmTypeCheck has access to it, currently it treats the list
of catch clauses as a single `WebAssemblyOperand` so there is no way to
get the starting location of each `catch_***` clause in the current
structure.

This also renames `valTypeToStackType` to `valTypesToStackTypes`, given
that it takes two type lists.


  Commit: 0b8fec69464ce4a7e759137b091a6b7500458f36
      https://github.com/llvm/llvm-project/commit/0b8fec69464ce4a7e759137b091a6b7500458f36
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
    M llvm/test/CodeGen/DirectX/radians.ll

  Log Message:
  -----------
  [DirectX] Fix broken test and accidental fallthrough in #110616 (#111410)

Fix an obvious typo in these tests to get them passing, and also fix the
-Wimplicit-fallthrough warning that fires when trying to build.

Reverting #110616 was tricky because of dependencies, so I'm just doing
the easy fix directly here.


  Commit: 1297ff176580b8a1cb82128208349002652e5a83
      https://github.com/llvm/llvm-project/commit/1297ff176580b8a1cb82128208349002652e5a83
  Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M clang/test/CodeGen/aarch64-mixed-target-attributes.c
    M clang/test/CodeGen/attr-target-clones-aarch64.c
    M clang/test/CodeGen/attr-target-version.c
    M clang/test/CodeGenCXX/attr-target-clones-aarch64.cpp
    M clang/test/CodeGenCXX/attr-target-version.cpp
    M clang/test/CodeGenCXX/fmv-namespace.cpp

  Log Message:
  -----------
  [FMV][AArch64][NFC] Cleanup attribute metadata from test files. (#111386)

We have a dedicated test to check the target-features for FMV
(clang/test/CodeGen/aarch64-fmv-dependencies.c) therefore I am removing
the autogenerated checks from irrelevant tests since the noise is making
it harder to review actual codegen changes.


  Commit: fabe7e39df624c09d399f5f61d5450c2021c2357
      https://github.com/llvm/llvm-project/commit/fabe7e39df624c09d399f5f61d5450c2021c2357
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/tools/gold/gold-plugin.cpp

  Log Message:
  -----------
  [llvm][gold] Fix syntax error (#111412)

This seems to have been overlooked in #109847, probably because most
bots don't build w/ gold enabled.


  Commit: d8a656ffaf735ed689856daa5dc13a9274358072
      https://github.com/llvm/llvm-project/commit/d8a656ffaf735ed689856daa5dc13a9274358072
  Author: Benoit Jacob <jacob.benoit.1 at gmail.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
    M mlir/test/Conversion/AMDGPUToROCDL/mfma.mlir

  Log Message:
  -----------
  [MLIR] AMDGPUToROCDL: Use a bitcast op to reintepret a vector of i8 as single integer. (#111400)

Found by inspecting AMDGPU assembly - so the arithmetic ops created
there were definitely making their way into the target ISA. A
`LLVM::BitcastOp` seems equivalent, and evaporates as expected in the
target asm.

Along the way, I thought that this helper function `mfmaConcatIfNeeded`
could be renamed to `convertMFMAVectorOperand` to better convey its
contract; so I don't need to think about whether a bitcast is a
legitimate "concat" :-)

---------

Signed-off-by: Benoit Jacob <jacob.benoit.1 at gmail.com>


  Commit: 41b09c5346324fc0fd2642f3df216a246f9fb98b
      https://github.com/llvm/llvm-project/commit/41b09c5346324fc0fd2642f3df216a246f9fb98b
  Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/Expr.h
    M clang/include/clang/AST/Stmt.h
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    M clang/test/SemaCXX/warn-assignment-condition.cpp

  Log Message:
  -----------
  [Clang] omit parentheses in fold expressions with a single expansion (#110761)

Fixes #101863


  Commit: 93bfa7886b1a86dd9328f94561dd32dc22ca7038
      https://github.com/llvm/llvm-project/commit/93bfa7886b1a86dd9328f94561dd32dc22ca7038
  Author: Sterling-Augustine <56981066+Sterling-Augustine at users.noreply.github.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    A llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SeedCollector.h
    M llvm/lib/Transforms/Vectorize/CMakeLists.txt
    A llvm/lib/Transforms/Vectorize/SandboxVectorizer/SeedCollector.cpp
    M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/CMakeLists.txt
    A llvm/unittests/Transforms/Vectorize/SandboxVectorizer/SeedCollectorTest.cpp

  Log Message:
  -----------
  [SandboxVectorizer] Define SeedBundle: a set of instructions to be vectorized [retry] (#111073)

[Retry 110696 with a proper rebase.]

Seed collection will assemble instructions to be vectorized into
SeedBundles. This data structure is not intended to be used directly,
but will be the basis for load bundles, store bundles, and so on.


  Commit: 32e90bbe579d39356ebd269158b1b5eef82761d4
      https://github.com/llvm/llvm-project/commit/32e90bbe579d39356ebd269158b1b5eef82761d4
  Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M lldb/docs/resources/test.rst
    M lldb/test/API/lit.cfg.py
    M lldb/test/API/lit.site.cfg.py.in
    M lldb/test/CMakeLists.txt
    M lldb/test/Shell/Expr/TestIRMemoryMap.test
    M lldb/test/Shell/Settings/TestEchoCommands.test
    A lldb/test/Shell/Settings/TestEchoCommandsQuiet.test
    M lldb/test/Shell/Target/target-label.test
    M lldb/test/Shell/helper/toolchain.py
    M lldb/test/Shell/lit.cfg.py
    M lldb/test/Shell/lit.site.cfg.py.in

  Log Message:
  -----------
  [lldb][test] Support remote run of Shell tests (#95986)

1. This commit adds LLDB_TEST_PLATFORM_URL, LLDB_TEST_SYSROOT,
LLDB_TEST_PLATFORM_WORKING_DIR, LLDB_SHELL_TESTS_DISABLE_REMOTE cmake
flags to pass arguments for cross-compilation and remote running of both Shell&API tests.
2. To run Shell tests remotely, it adds 'platform select' and 'platform connect' commands to %lldb
substitution.
3. 'remote-linux' feature added to lit to disable tests failing with
remote execution.
4. A separate working directory is assigned to each test to avoid
conflicts during parallel test execution.
5. Remote Shell testing is run only when LLDB_TEST_SYSROOT is set for
building test sources. The recommended compiler for that is Clang.

---------

Co-authored-by: Vladimir Vereschaka <vvereschaka at accesssoftek.com>


  Commit: f11568bcb026e0f54d270bda6f161b9fb1e42f39
      https://github.com/llvm/llvm-project/commit/f11568bcb026e0f54d270bda6f161b9fb1e42f39
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
    R llvm/test/Analysis/CostModel/RISCV/fixed-vector-insert-subvector.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/remarks-insert-into-small-vector.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/revec-getGatherCost.ll

  Log Message:
  -----------
  Revert "[RISCV][TTI] Recognize CONCAT_VECTORS if a shufflevector mask is multiple insert subvector. (#110457)"

This reverts commit 554eaec63908ed20c35c8cc85304a3d44a63c634.  Change was not approved when landed.


  Commit: adbc37d999b5949779830ffa7dbff54cb78862cb
      https://github.com/llvm/llvm-project/commit/adbc37d999b5949779830ffa7dbff54cb78862cb
  Author: hill <hill at hilll.dev>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M clang-tools-extra/docs/clang-tidy/index.rst

  Log Message:
  -----------
  [clang-tidy] Fix incorrect command-line option in docs (#111405)

Updated the `HeaderFilterRegex` description to reference
`--header-filter` instead of the incorrect `--header-filter-regex` in
the clang-tidy documentation.


  Commit: 3f5039323c43af22896aeb2c34f6b302768d1fab
      https://github.com/llvm/llvm-project/commit/3f5039323c43af22896aeb2c34f6b302768d1fab
  Author: Sterling-Augustine <56981066+Sterling-Augustine at users.noreply.github.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SeedCollector.cpp

  Log Message:
  -----------
  [SandboxVectorizer][NFC] Remove unused include (#111418)


  Commit: 90a5744bebffafb88abf2343a1a70a37e12abef4
      https://github.com/llvm/llvm-project/commit/90a5744bebffafb88abf2343a1a70a37e12abef4
  Author: Sandeep Dasgupta <sdasgup at google.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M mlir/lib/Dialect/Quant/IR/QuantTypes.cpp
    M mlir/test/Dialect/Quant/parse-uniform-invalid.mlir

  Log Message:
  -----------
  Remove redundant checks related to quantized type (#110604)

[APFloat::getSmallest](https://github.com/llvm/llvm-project/blob/915df1ae41652e2f595ce741dcd8f01878ef4e30/llvm/include/llvm/ADT/APFloat.h#L1060)
(and similarly `APFloat:getLargest`)
```
APFloat getSmallest(const fltSemantics &Sem, bool Negative = false); 
```
return the positive number when the default value for the second
argument is used.

With that being said, the check
[QuantTypes.cpp#L325](https://github.com/llvm/llvm-project/blob/96f37ae45310885e09195be09d9c05e1c1dff86b/mlir/lib/Dialect/Quant/IR/QuantTypes.cpp#L325)

```c++
 if (scale <= 0.0 || std::isinf(scale) || std::isnan(scale))
    return emitError() << "illegal scale: " << scale;
```  

is already covered by the check which follows
[QuantTypes.cpp#L327](https://github.com/llvm/llvm-project/blob/96f37ae45310885e09195be09d9c05e1c1dff86b/mlir/lib/Dialect/Quant/IR/QuantTypes.cpp#L327)

```c++
  if (scale < minScale || scale > maxScale)
    return emitError() << "scale out of expressed type range [" << minScale
                       << ", " << maxScale << "]";
```

given that range `[positive-smallest-finite-number,
positive-largest-finite-number]` does not include `inf` and `nan`s.

I propose to remove the redundant check. Any suggestion for improving
the error message is welcome.


  Commit: a8e1311a1c4f7f67d8d8d7575f595da4f0a5873c
      https://github.com/llvm/llvm-project/commit/a8e1311a1c4f7f67d8d8d7575f595da4f0a5873c
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm/IR/FixedMetadataKinds.def
    M llvm/lib/IR/Verifier.cpp
    A llvm/test/Assembler/noalias-addrspace-md.ll
    M llvm/test/Transforms/InstCombine/loadstore-metadata.ll
    M llvm/test/Transforms/SimplifyCFG/hoist-with-metadata.ll
    A llvm/test/Verifier/noalias-addrspace.ll

  Log Message:
  -----------
  [RFC] IR: Define noalias.addrspace metadata (#102461)

This is intended to solve a problem with lowering atomics in
OpenMP and C++ common to AMDGPU and NVPTX.

In OpenCL and CUDA, it is undefined behavior for an atomic instruction
to modify an object in thread private memory. In OpenMP, it is defined.
Correspondingly, the hardware does not handle this correctly. For
AMDGPU,
32-bit atomics work and 64-bit atomics are silently dropped. We
therefore
need to codegen this by inserting a runtime address space check,
performing
the private case without atomics, and fallback to issuing the real
atomic
otherwise. This metadata allows us to avoid this extra check and branch.

Handle this by introducing metadata intended to be applied to atomicrmw,
indicating they cannot access the forbidden address space.


  Commit: fbb8234ca9ba75f2d5cc0238ddd08cb5534ae496
      https://github.com/llvm/llvm-project/commit/fbb8234ca9ba75f2d5cc0238ddd08cb5534ae496
  Author: Sterling-Augustine <56981066+Sterling-Augustine at users.noreply.github.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/SeedCollectorTest.cpp

  Log Message:
  -----------
  [SandboxIR][NFC] Remove unused include (#111422)


  Commit: e0b840a903d169ff1437fdaa473d26021d0b4ba2
      https://github.com/llvm/llvm-project/commit/e0b840a903d169ff1437fdaa473d26021d0b4ba2
  Author: Sterling-Augustine <56981066+Sterling-Augustine at users.noreply.github.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SeedCollector.h

  Log Message:
  -----------
  [SandboxVectorizer][NFC] Remove erroneous expensive check assert (#111425)


  Commit: 017b504b462ce7d4938f704a1f10118ead347d3d
      https://github.com/llvm/llvm-project/commit/017b504b462ce7d4938f704a1f10118ead347d3d
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/test/SemaTemplate/ms-function-specialization-class-scope.cpp

  Log Message:
  -----------
  [clang] Don't lose track of explicit specializations of member function templates (#111267)

When instantiating a class template, we would lose track of function
template explicit specializations, marking them with the wrong
specialization kind.

This would lead to improperly using the explcit specialization arguments
to instantiate the function body.

This also better matches MSVC on the behaviour of explicitly vs
implicitly instantiating these.

Fixes #111266


  Commit: dd0fe4fb7440182d8101135bfd694b2d84893c2e
      https://github.com/llvm/llvm-project/commit/dd0fe4fb7440182d8101135bfd694b2d84893c2e
  Author: Nathan Lanza <nathanlanza at gmail.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    A clang/include/clang/CIR/.clang-tidy
    A clang/include/clang/CIRFrontendAction/.clang-tidy
    A clang/lib/CIR/.clang-tidy

  Log Message:
  -----------
  [CIR] Add .clang-tidy files for ClangIR specific coding style rules

https://llvm.github.io/clangir/GettingStarted/coding-guideline.html

Reviewers: dkolsen-pgi, bcardosolopes, erichkeane

Reviewed By: erichkeane, dkolsen-pgi

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


  Commit: 9dca83f2e1f20919a06dd58acd345e2a49e13d9a
      https://github.com/llvm/llvm-project/commit/9dca83f2e1f20919a06dd58acd345e2a49e13d9a
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/test/Bitcode/amdgcn-atomic.ll

  Log Message:
  -----------
  AMDGPU: Add noalias.addrspace metadata when autoupgrading atomic intrinsics (#102599)

This will be needed to continue generating the raw instruction in the flat case.


  Commit: 8882d5912322ce9c199181e46b8c07d24ed6095d
      https://github.com/llvm/llvm-project/commit/8882d5912322ce9c199181e46b8c07d24ed6095d
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M flang/lib/Semantics/check-call.cpp

  Log Message:
  -----------
  [flang] Fix typo in warning message text (#110888)

I accidentally deleted a space character; put it back.


  Commit: ce5edfd232c38ec4e4642b15cdb4dd8ecf105b04
      https://github.com/llvm/llvm-project/commit/ce5edfd232c38ec4e4642b15cdb4dd8ecf105b04
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M flang/include/flang/Common/Fortran-features.h
    M flang/lib/Semantics/check-declarations.cpp
    M flang/test/Semantics/separate-mp02.f90

  Log Message:
  -----------
  [flang] Finer error detection in separate module procedure case (#110912)

When a separate module procedure has a dummy procedure argument that is
simply declared EXTERNAL in its interface but is actually called as a
subroutine or function in its definition, the compiler is emitting an
error message. This is too strong; an error is appropriate only when the
dummy procedure in the definition has an interface that is incompatible
with the one in the interface definition.

However, this is not a safe coding practice, and can lead to trouble
during execution if a function is passed as an actual argument but
called as a subroutine in the procedure (or the other way around), so
add a warning message as well for this case (off by default).

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


  Commit: 49016d53e8f54d4b0883f4fcb06800bcfd7bd40e
      https://github.com/llvm/llvm-project/commit/49016d53e8f54d4b0883f4fcb06800bcfd7bd40e
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M flang/lib/Semantics/tools.cpp
    M flang/test/Semantics/io14.f90

  Log Message:
  -----------
  [flang] Silence bogus error message (#111057)

Fortran doesn't permit the use of a polymorphic I/O list item for
intrinsic data transfers, so the compiler emits an error message for
polymorphic items whose types can't possibly be handled by a defined I/O
subroutine. This check didn't allow for the possibility that the defined
I/O subroutine might apply to the parent component of an extended type.

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


  Commit: 70cbedcd6edf00fc11aa7685f41f8ec29ce84598
      https://github.com/llvm/llvm-project/commit/70cbedcd6edf00fc11aa7685f41f8ec29ce84598
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M flang/lib/Semantics/check-call.cpp
    M flang/lib/Semantics/tools.cpp
    A flang/test/Semantics/call42.f90

  Log Message:
  -----------
  [flang] Catch errors with INTENT(OUT) assumed rank dummy arguments (#111204)

Emit an error when an actual argument with potentially unknown size
(assumed size, or non-pointer non-allocatable assumed rank) with any
risk of needing initialization, finalization, or destruction is
associated with an INTENT(OUT) dummy argument with assumed rank.

Emit an optional portability warning for cases where the type is known
to be safe from needing initialization, finalization, or destruction,
since it's not conforming and might elicit an error from other
compilers.

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


  Commit: 6ace680a5cc2aa8a45731605cbbab9f933e667a9
      https://github.com/llvm/llvm-project/commit/6ace680a5cc2aa8a45731605cbbab9f933e667a9
  Author: Chris Apple <cja-private at pm.me>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M compiler-rt/test/rtsan/blocking_call.cpp

  Log Message:
  -----------
  [rtsan][compiler-rt] Get rid of [[blocking]] stub in tests (#111392)


  Commit: a98466ad8967f9ad9cd79157a7aed8ade5d65a7a
      https://github.com/llvm/llvm-project/commit/a98466ad8967f9ad9cd79157a7aed8ade5d65a7a
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    R llvm/test/MC/WebAssembly/eh-assembly-legacy.s
    M llvm/test/MC/WebAssembly/eh-assembly.s

  Log Message:
  -----------
  [WebAssembly] Merge eh-assembly-legacy.s into eh-assembly.s (#111411)

Now that we don't need to specify `--no-type-check` on `eh-assembly.s`,
we can test the two modes in the same file.


  Commit: d2457e6d8f62a12b3b74791cfd3f5808168c8a71
      https://github.com/llvm/llvm-project/commit/d2457e6d8f62a12b3b74791cfd3f5808168c8a71
  Author: Dmitrii Galimzianov <dmt021 at gmail.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M lldb/source/Expression/IRExecutionUnit.cpp

  Log Message:
  -----------
  Remove redundant symbol lookups in IRExecutionUnit::FindInSymbols (#102835)

When we search for a symbol, we first check if it is in the module_sp of
the current SymbolContext, and if not, we check in the target's modules.
However, the target's ModuleList also includes the already checked
module, which leads to a redundant search in it.


  Commit: 3bace7efe00cbc5caadd2926027f4675845f06a8
      https://github.com/llvm/llvm-project/commit/3bace7efe00cbc5caadd2926027f4675845f06a8
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/include/llvm/AsmParser/LLLexer.h
    M llvm/include/llvm/AsmParser/LLParser.h
    M llvm/lib/AsmParser/LLLexer.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/test/Assembler/allockind-missing.ll
    M llvm/test/Assembler/invalid-inttype.ll
    M llvm/test/Assembler/invalid-landingpad.ll
    M llvm/test/Assembler/invalid-name.ll
    M llvm/test/Assembler/invalid-name2.ll

  Log Message:
  -----------
  [LLVM][AsmParser] Make error reporting of lexer errors more precise (#111077)

When the lexer hits an error during assembly parsing, it just logs the
error in the `ErrorMsg` object, and it's possible that error gets
overwritten later in by the parser with a more generic error message.
This makes some errors reported by the LLVM's asm parser less precise.

Address this by not having the parser overwrite the message logged by
the lexer by assigning error messages generated by the lexer higher
"priority" than those generated by parser and overwriting the error
message only if its same or higher priority.

Update several Assembler unit test to now check the more precise error
messaged reported by the LLVM's AsmParser.


  Commit: 00989f4ab14c4cf41bbac258f2bf197cbbdc2b41
      https://github.com/llvm/llvm-project/commit/00989f4ab14c4cf41bbac258f2bf197cbbdc2b41
  Author: Evgenii Stepanov <eugeni.stepanov at gmail.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/combined.h
    M compiler-rt/lib/scudo/standalone/memtag.h

  Log Message:
  -----------
  [scudo] Fix isOwned on MTE devices. (#111060)

If called on address that is actually not owned, the tags could not
match. Disable tag checks in isOwned().


  Commit: 10d43061aa1c95facea397a900d9ce4f65fa03da
      https://github.com/llvm/llvm-project/commit/10d43061aa1c95facea397a900d9ce4f65fa03da
  Author: Chris Apple <cja-private at pm.me>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M compiler-rt/lib/rtsan/rtsan_assertions.h
    M compiler-rt/lib/rtsan/rtsan_context.h

  Log Message:
  -----------
  [rtsan][NFC] Refactor to scoped bypasser for __rtsan::Context (#111438)


  Commit: 9e06e772a1bcfe0b33be9b01bbd9549a305313d7
      https://github.com/llvm/llvm-project/commit/9e06e772a1bcfe0b33be9b01bbd9549a305313d7
  Author: Chris Apple <cja-private at pm.me>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M compiler-rt/lib/rtsan/rtsan.cpp
    M compiler-rt/test/rtsan/exit_stats.cpp

  Log Message:
  -----------
  [rtsan] Add stats summary even when halt_on_error=true (#110165)


  Commit: 5c88aa9d34c37f100be60269cfad6b8354918536
      https://github.com/llvm/llvm-project/commit/5c88aa9d34c37f100be60269cfad6b8354918536
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M libcxx/docs/UserDocumentation.rst

  Log Message:
  -----------
  [libc++] Document the de-facto status of compiler extension support (#110877)

This was brought up in a maintainer's meeting a few months ago. This
simply documents the current status quo.


  Commit: 75103aae4a9d22e2c46068f2160f2dddd6ad2116
      https://github.com/llvm/llvm-project/commit/75103aae4a9d22e2c46068f2160f2dddd6ad2116
  Author: gbMattN <146744444+gbMattN at users.noreply.github.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M compiler-rt/include/sanitizer/ubsan_interface.h

  Log Message:
  -----------
  Added include of common interfaces (#111374)

Pull request for issue #110823 
Including the file which defines the macros we use here. This would let
user code only include this interface, rather than having to include two
files.


  Commit: 2918e779a9545a66c0031b03b3af5bf4d8517cec
      https://github.com/llvm/llvm-project/commit/2918e779a9545a66c0031b03b3af5bf4d8517cec
  Author: Walter Erquinigo <a20012251 at gmail.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    M mlir/include/mlir-c/Dialect/LLVM.h
    M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
    M mlir/lib/CAPI/Dialect/LLVM.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMAttrs.cpp
    M mlir/lib/Dialect/LLVMIR/Transforms/DIScopeForLLVMFuncOp.cpp
    M mlir/lib/Target/LLVMIR/DebugImporter.cpp
    M mlir/lib/Target/LLVMIR/DebugTranslation.cpp
    M mlir/test/CAPI/llvm.c
    M mlir/test/Dialect/LLVMIR/debuginfo.mlir
    M mlir/test/Target/LLVMIR/Import/debug-info.ll
    M mlir/test/Target/LLVMIR/llvmir-debug.mlir

  Log Message:
  -----------
  [mlir][debuginfo] Add support for subprogram annotations (#110946)

LLVM already supports `DW_TAG_LLVM_annotation` entries for subprograms,
but this hasn't been surfaced to the LLVM dialect.
I'm doing the minimal amount of work to support string-based
annotations, which is useful for attaching metadata to
functions, which is useful for debuggers to offer features beyond basic
DWARF.
As LLVM already supports this, this patch is not controversial.


  Commit: 376b5c0cb6d5c2e559c8689acb1bb1d30f5325aa
      https://github.com/llvm/llvm-project/commit/376b5c0cb6d5c2e559c8689acb1bb1d30f5325aa
  Author: Sterling-Augustine <56981066+Sterling-Augustine at users.noreply.github.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/Utils.h
    M llvm/unittests/SandboxIR/UtilsTest.cpp

  Log Message:
  -----------
  [SandboxIR][NFC] Use accessor for DataLayout rather than passing it down (#111447)


  Commit: 2ca850111fe1fbb174ae782caa00f8a48fb3eadd
      https://github.com/llvm/llvm-project/commit/2ca850111fe1fbb174ae782caa00f8a48fb3eadd
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M lld/ELF/Arch/AArch64.cpp
    M lld/ELF/Arch/AMDGPU.cpp
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/Arch/AVR.cpp
    M lld/ELF/Arch/Hexagon.cpp
    M lld/ELF/Arch/LoongArch.cpp
    M lld/ELF/Arch/MSP430.cpp
    M lld/ELF/Arch/Mips.cpp
    M lld/ELF/Arch/PPC.cpp
    M lld/ELF/Arch/PPC64.cpp
    M lld/ELF/Arch/RISCV.cpp
    M lld/ELF/Arch/SPARCV9.cpp
    M lld/ELF/Arch/SystemZ.cpp
    M lld/ELF/Arch/X86.cpp
    M lld/ELF/Arch/X86_64.cpp
    M lld/ELF/Config.h
    M lld/ELF/Driver.cpp
    M lld/ELF/Target.cpp
    M lld/ELF/Target.h

  Log Message:
  -----------
  Revert "[ELF] Change Ctx::target to unique_ptr (#111260)" (#111449)

This patch seems to be breaking the windows build bots.
https://lab.llvm.org/buildbot/#/builders/63/builds/1953

We also see this in Fuchsia's Linux CI:
https://fxbug.dev/372010530

This reverts commit 4ec06b17435e32ece5e1aa2bc8a6d26dbf0bb312.


  Commit: 991adff4628deeb3b4cb7d9df366e9f1e8b2860c
      https://github.com/llvm/llvm-project/commit/991adff4628deeb3b4cb7d9df366e9f1e8b2860c
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.cpp
    M llvm/test/MC/WebAssembly/annotations.s
    M llvm/test/MC/WebAssembly/eh-assembly.s
    M llvm/test/MC/WebAssembly/type-checker-errors.s

  Log Message:
  -----------
  [WebAssembly] Allow try_table to target loops in AsmTypeCheck (#111432)


  Commit: 39ac121309f5c270c8fdc97c45a845542dd78681
      https://github.com/llvm/llvm-project/commit/39ac121309f5c270c8fdc97c45a845542dd78681
  Author: Bill Wendling <morbo at google.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M clang/lib/CodeGen/CGExpr.cpp

  Log Message:
  -----------
  [Clang] Check that we have the correct RecordDecl (#111448)

Ensure we have the correct RecordDecl before returning the Expr we're
looking for.


  Commit: 63a0a81e73b5b482acb98372eff63bb3d2fe1673
      https://github.com/llvm/llvm-project/commit/63a0a81e73b5b482acb98372eff63bb3d2fe1673
  Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.cpp
    M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.h
    M llvm/lib/Transforms/Scalar/Scalarizer.cpp

  Log Message:
  -----------
  [NFC][Scalarizer][TargetTransformInfo] Add isTargetIntrinsicWithScalarOpAtArg api (#111441)

This change allows target intrinsics can have scalar args

fixes [111440](https://github.com/llvm/llvm-project/issues/111440)

This change will let us add scalarization for WaveReadLaneAt:
https://github.com/llvm/llvm-project/pull/111010


  Commit: b44371194b101ed0d6f5ad8b764c1dc748020b7b
      https://github.com/llvm/llvm-project/commit/b44371194b101ed0d6f5ad8b764c1dc748020b7b
  Author: lizhijin1024 <104253293+lizhijin1024 at users.noreply.github.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors.cpp

  Log Message:
  -----------
  [rtsan] Ensure pthread is initialized in test (#111401)

Handle running stuck of `pthread_cond_destroy` on X86 in test
`PthreadCondSignalDiesWhenRealtime` and
`PthreadCondBroadcastDiesWhenRealtime`.


  Commit: 4b6e41b61e2edea2f80de3639e589301fe7c896c
      https://github.com/llvm/llvm-project/commit/4b6e41b61e2edea2f80de3639e589301fe7c896c
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/unittests/Format/FormatTestProto.cpp

  Log Message:
  -----------
  [clang-format] Don't insert spaces after keywords in protobuf field o… (#111229)

…ptions

Fixes #54848.


  Commit: 65688274b14f5d0e7dabbbaf9f3fd135646ef1d1
      https://github.com/llvm/llvm-project/commit/65688274b14f5d0e7dabbbaf9f3fd135646ef1d1
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M clang/docs/ClangFormatStyleOptions.rst
    M clang/include/clang/Format/Format.h
    M clang/lib/Format/Format.cpp
    M clang/unittests/Format/ConfigParseTest.cpp

  Log Message:
  -----------
  [clang-format][NFC] Clean up AlignConsecutiveStyle (#111285)

- Add a `CHECK_PARSE` for `AcrossComments`.
- Add a `CHECK_PARSE_NESTED_BOOL` for `AlignFunctionPointers`.
- Remove redundant statements.
- Clean up documentation.


  Commit: db4874c2fc0b34e8959ff0ac455bff5f54fbd52b
      https://github.com/llvm/llvm-project/commit/db4874c2fc0b34e8959ff0ac455bff5f54fbd52b
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

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

  Log Message:
  -----------
  [ConstantFPRange][UnitTests] Guard exhaustive checks by `EXPENSIVE_CHECKS` (#111276)

Addresses comment
https://github.com/llvm/llvm-project/pull/111056#issuecomment-2393951499.


  Commit: ae5ee9760624a6e97f0d42b151583d31da74a42f
      https://github.com/llvm/llvm-project/commit/ae5ee9760624a6e97f0d42b151583d31da74a42f
  Author: bwlodarcz <bertrand.wlodarczyk at intel.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVEmitNonSemanticDI.cpp
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    A llvm/test/CodeGen/SPIRV/debug-info/debug-type-pointer.ll

  Log Message:
  -----------
  [SPIR-V] Emit DebugTypePointer from NonSemantic DI (#109287)

Implementation of DebugTypePointer from
NonSemantic.Shader.DebugInfo.100.


  Commit: 646aa817d2944f78638ca5fc1d037bff5e1fd490
      https://github.com/llvm/llvm-project/commit/646aa817d2944f78638ca5fc1d037bff5e1fd490
  Author: 苏灵素@夏日限定 <Su.Xiyan at icloud.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M lldb/docs/use/tutorial.rst

  Log Message:
  -----------
  [lldb][Docs] Fix typo in `tutorial.rst` (#111326)


  Commit: 1ad3180b4a07ccf7cc371882c4e10ec2667adea8
      https://github.com/llvm/llvm-project/commit/1ad3180b4a07ccf7cc371882c4e10ec2667adea8
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/tools/llvm-remarkutil/RemarkCounter.cpp

  Log Message:
  -----------
  [llvm-remarkutil] Simplify code with std::map::operator[] (NFC) (#111407)


  Commit: 1b53aaec55b6cdf0c9cf09b9cbdc53992e1b50ae
      https://github.com/llvm/llvm-project/commit/1b53aaec55b6cdf0c9cf09b9cbdc53992e1b50ae
  Author: Kyungwoo Lee <kyulee at meta.com>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M llvm/include/llvm/LTO/LTO.h
    M llvm/lib/LTO/LTO.cpp

  Log Message:
  -----------
  [ThinLTO][NFC] Refactor ThinBackend (#110461)

This is a prep for https://github.com/llvm/llvm-project/pull/90933.
 
 - Change `ThinBackend` from a function to a type.
 - Store the parallelism level in the type, which will be used when creating two-codegen round backends that inherit this value.
 - `ThinBackendProc` is hoisted to `LTO.h` from `LTO.cpp` to provide its body for `ThinBackend`. However, `emitFiles()` is still implemented separately in `LTO.cpp`, distinct from its parent class.


  Commit: e98875af4c09e3ceaf54a51023a5d03ee143bc5c
      https://github.com/llvm/llvm-project/commit/e98875af4c09e3ceaf54a51023a5d03ee143bc5c
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-cost.ll

  Log Message:
  -----------
  [RISCV] Add scalable interleave cost tests. NFC

This gets the cost from the recipe output rather than the individual
instruction cost.

The factor 3 test was left alone since we don't support anything else
other than factor 2 for scalable vectors currently.


  Commit: 4647a4666c4f8edabaa89163e899953bcd584aa7
      https://github.com/llvm/llvm-project/commit/4647a4666c4f8edabaa89163e899953bcd584aa7
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/lib/IR/ConstantFPRange.cpp
    M llvm/unittests/IR/ConstantFPRangeTest.cpp

  Log Message:
  -----------
  [ConstantFPRange] Implement `ConstantFPRange::makeSatisfyingFCmpRegion` (#110891)

This patch adds support for `ConstantFPRange::makeSatisfyingFCmpRegion`.
We only check the optimality for cases where the result can be
represented by a ConstantFPRange.

This patch also adds some tests for `ConstantFPRange::fcmp` because it
depends on `makeSatisfyingFCmpRegion`. Unfortunately we cannot
exhaustively test this function due to time limit. I just pick some
interesting ranges instead.


  Commit: c35214c131c0bc7f54dc18ceb75c75cba89f58ee
      https://github.com/llvm/llvm-project/commit/c35214c131c0bc7f54dc18ceb75c75cba89f58ee
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M lld/ELF/Target.h

  Log Message:
  -----------
  [ELF] Initialize TargetInfo members

Prevent use of uninitialized memory when ctx.target no longer uses
points to static storage duration.

Specifically, uninitialized `trapInstr` caused llvm-objdump output
differences.
(https://github.com/llvm/llvm-project/pull/111260#issuecomment-2397498034)


  Commit: e1a073c9d9b85804c46353c5a66c44fe212525ed
      https://github.com/llvm/llvm-project/commit/e1a073c9d9b85804c46353c5a66c44fe212525ed
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M lld/ELF/Arch/AArch64.cpp
    M lld/ELF/Arch/AMDGPU.cpp
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/Arch/AVR.cpp
    M lld/ELF/Arch/Hexagon.cpp
    M lld/ELF/Arch/LoongArch.cpp
    M lld/ELF/Arch/MSP430.cpp
    M lld/ELF/Arch/Mips.cpp
    M lld/ELF/Arch/PPC.cpp
    M lld/ELF/Arch/PPC64.cpp
    M lld/ELF/Arch/RISCV.cpp
    M lld/ELF/Arch/SPARCV9.cpp
    M lld/ELF/Arch/SystemZ.cpp
    M lld/ELF/Arch/X86.cpp
    M lld/ELF/Arch/X86_64.cpp
    M lld/ELF/Config.h
    M lld/ELF/Driver.cpp
    M lld/ELF/Target.cpp
    M lld/ELF/Target.h

  Log Message:
  -----------
  [ELF] Change Ctx::target to unique_ptr (#111260)

also rename `TargetInfo *getXXXTargetInfo` to `void setXXXTargetInfo`
and change it to set `ctx.target`. This ensures that when `ctx` becomes
a local variable, two lld invocations will not reuse the function-local
static variable.

---

Reland after commit c35214c131c0bc7f54dc18ceb75c75cba89f58ee
([ELF] Initialize TargetInfo members).


  Commit: 1f2c08b33b848dfdfeecdc7cee3644591407e219
      https://github.com/llvm/llvm-project/commit/1f2c08b33b848dfdfeecdc7cee3644591407e219
  Author: Thomas Fransham <tfransham at gmail.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M clang-tools-extra/clang-apply-replacements/CMakeLists.txt
    M clang-tools-extra/clang-change-namespace/CMakeLists.txt
    M clang-tools-extra/clang-doc/CMakeLists.txt
    M clang-tools-extra/clang-include-fixer/CMakeLists.txt
    M clang-tools-extra/clang-include-fixer/find-all-symbols/CMakeLists.txt
    M clang-tools-extra/clang-include-fixer/plugin/CMakeLists.txt
    M clang-tools-extra/clang-move/CMakeLists.txt
    M clang-tools-extra/clang-query/CMakeLists.txt
    M clang-tools-extra/clang-reorder-fields/CMakeLists.txt
    M clang-tools-extra/clang-tidy/CMakeLists.txt
    M clang-tools-extra/clang-tidy/abseil/CMakeLists.txt
    M clang-tools-extra/clang-tidy/altera/CMakeLists.txt
    M clang-tools-extra/clang-tidy/android/CMakeLists.txt
    M clang-tools-extra/clang-tidy/boost/CMakeLists.txt
    M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
    M clang-tools-extra/clang-tidy/cert/CMakeLists.txt
    M clang-tools-extra/clang-tidy/concurrency/CMakeLists.txt
    M clang-tools-extra/clang-tidy/cppcoreguidelines/CMakeLists.txt
    M clang-tools-extra/clang-tidy/darwin/CMakeLists.txt
    M clang-tools-extra/clang-tidy/fuchsia/CMakeLists.txt
    M clang-tools-extra/clang-tidy/google/CMakeLists.txt
    M clang-tools-extra/clang-tidy/hicpp/CMakeLists.txt
    M clang-tools-extra/clang-tidy/linuxkernel/CMakeLists.txt
    M clang-tools-extra/clang-tidy/llvm/CMakeLists.txt
    M clang-tools-extra/clang-tidy/llvmlibc/CMakeLists.txt
    M clang-tools-extra/clang-tidy/misc/CMakeLists.txt
    M clang-tools-extra/clang-tidy/modernize/CMakeLists.txt
    M clang-tools-extra/clang-tidy/mpi/CMakeLists.txt
    M clang-tools-extra/clang-tidy/objc/CMakeLists.txt
    M clang-tools-extra/clang-tidy/openmp/CMakeLists.txt
    M clang-tools-extra/clang-tidy/performance/CMakeLists.txt
    M clang-tools-extra/clang-tidy/plugin/CMakeLists.txt
    M clang-tools-extra/clang-tidy/portability/CMakeLists.txt
    M clang-tools-extra/clang-tidy/readability/CMakeLists.txt
    M clang-tools-extra/clang-tidy/tool/CMakeLists.txt
    M clang-tools-extra/clang-tidy/utils/CMakeLists.txt
    M clang-tools-extra/clang-tidy/zircon/CMakeLists.txt
    M clang-tools-extra/clangd/CMakeLists.txt
    M clang-tools-extra/clangd/index/remote/CMakeLists.txt
    M clang-tools-extra/clangd/index/remote/marshalling/CMakeLists.txt
    M clang-tools-extra/clangd/index/remote/unimplemented/CMakeLists.txt
    M clang-tools-extra/clangd/support/CMakeLists.txt
    M clang-tools-extra/clangd/tool/CMakeLists.txt
    M clang-tools-extra/clangd/xpc/CMakeLists.txt
    M clang-tools-extra/include-cleaner/lib/CMakeLists.txt

  Log Message:
  -----------
  [clang-tools-extra] Fix add_clang_library usage (#109321)

If a add_clang_library call doesn't specify building as static or shared
library they are implicitly added to the list static libraries that is
linked in to clang-cpp shared library here.

https://github.com/llvm/llvm-project/blob/315ba7740663208f8bc45a7e4f145dc1df79500c/clang/cmake/modules/AddClang.cmake#L107
Because the clang-tools-extra libraries targets were declared after
clang-cpp they by luck never got linked to clang-cpp.
This change is required for clang symbol visibility macros on windows to
work correctly for clang tools since we need to distinguish if a target
being built will be importing or exporting clang symbols from the
clang-cpp DLL.


  Commit: 4fadf41c2f8755129f206b4f880dad5989923466
      https://github.com/llvm/llvm-project/commit/4fadf41c2f8755129f206b4f880dad5989923466
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-07 (Mon, 07 Oct 2024)

  Changed paths:
    M lld/ELF/Arch/AArch64.cpp
    M lld/ELF/Target.h
    M lld/ELF/Thunks.cpp

  Log Message:
  -----------
  [ELF] Pass Ctx & to ARM/AArch64


  Commit: 975da028f78546729f0e78711a4b92107c92ec8e
      https://github.com/llvm/llvm-project/commit/975da028f78546729f0e78711a4b92107c92ec8e
  Author: Alex Bradbury <asb at igalia.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M clang/test/Modules/embed-files-compressed.cpp

  Log Message:
  -----------
  [modules][test] Bump maximum size for embed-files-compressed.cpp for the sake of RISC-V (#111360)

The size of a.pcm produced by an RV64 clang running natively is 67416
bytes, causing this test to fail. Bump up the maximum size. The test
still retains its original intent as far as I can see, as it's really
trying to ensure that compressing kicks in and reduces the
multi-megabyte input.


  Commit: 58ef1eb06143f48629e8b904971ab014fc4bad39
      https://github.com/llvm/llvm-project/commit/58ef1eb06143f48629e8b904971ab014fc4bad39
  Author: Simon Tatham <simon.tatham at arm.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M libc/src/stdlib/qsort_data.h
    M libc/src/stdlib/quick_sort.h

  Log Message:
  -----------
  [libc] Bound the worst-case stack usage in qsort(). (#110849)

Previously, the Quicksort implementation was written in the obvious way:
after each partitioning step, it explicitly recursed twice to sort the
two sublists. Now it compares the two sublists' sizes, and recurses only
to sort the smaller one. To handle the larger list it loops back round
to the top of the function, so as to handle it within the existing stack
frame.

This means that every recursive call is handling a list at most half
that of its caller. So the maximum recursive call depth is O(lg N).
Otherwise, in Quicksort's bad cases where each partition step peels off
a small constant number of array elements, the stack usage could grow
linearly with the array being sorted, i.e. it might be Θ(N).

I tested this code by manually constructing a List Of Doom that causes
this particular quicksort implementation to hit its worst case, and
confirming that it recursed very deeply in the old code and doesn't in
the new code. But I haven't added that list to the test suite, because
the List Of Doom has to be constructed in a way based on every detail of
the quicksort algorithm (pivot choice and partitioning strategy), so it
would silently stop being a useful regression test as soon as any detail
changed.


  Commit: a11509c3b971132785024c830073fd11d14bd3fd
      https://github.com/llvm/llvm-project/commit/a11509c3b971132785024c830073fd11d14bd3fd
  Author: David Green <david.green at arm.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/test/CodeGen/AArch64/fptosi-sat-vector.ll
    M llvm/test/CodeGen/AArch64/fptoui-sat-vector.ll
    M llvm/test/CodeGen/AArch64/load.ll
    M llvm/test/CodeGen/AArch64/store.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Scalarize i128/fp128 vector loads/stores.

Similar to other operations, we should scalarize these to allow the individual
elements to legalize.


  Commit: a3a253d3c7780977077dd46493917b1949c0166d
      https://github.com/llvm/llvm-project/commit/a3a253d3c7780977077dd46493917b1949c0166d
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/lib/IR/ConstantFPRange.cpp
    M llvm/unittests/IR/ConstantFPRangeTest.cpp

  Log Message:
  -----------
  [ConstantFPRange] Implement `ConstantFPRange::makeExactFCmpRegion` (#111490)

Note: The current implementation doesn't return optimal result for `fcmp
one/une x, +/-inf` since we don't handle this case in
https://github.com/llvm/llvm-project/pull/110891. Maybe we can make it
optimal after seeing some real-world cases.


  Commit: 4d218caa7716743061e8d34d61b2181c94b16440
      https://github.com/llvm/llvm-project/commit/4d218caa7716743061e8d34d61b2181c94b16440
  Author: Doug Wyatt <doug at sonosphere.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M clang/lib/Sema/SemaFunctionEffects.cpp
    M clang/test/Sema/attr-nonblocking-constraints.cpp

  Log Message:
  -----------
  [Clang] [Sema] Effects: Correctly detect `(x ? a : b)` as nonblocking when a and b are (#111224)

Correctly detect `(x ? a : b)` as nonblocking when `a` and `b` are. Use 
`FunctionEffectsRef::get` to get to the actual effect set instead of trying 
to retrieve it manually via the `FunctionProtoType` as we may have to 
look through function pointers etc. in some cases.

---------

Co-authored-by: Doug Wyatt <dwyatt at apple.com>


  Commit: 20b8d3f52b02679f8be0e043df0f1bfd48c0c2bf
      https://github.com/llvm/llvm-project/commit/20b8d3f52b02679f8be0e043df0f1bfd48c0c2bf
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M libcxx/utils/ci/run-buildbot

  Log Message:
  -----------
  [libc++][CI] Replace LLDB test targets with libc++ test category (#110856)

We've been increasing the coverage of libc++ LLDB tests in the pre-merge
CI (see https://github.com/llvm/llvm-project/pull/110570). Unfortunately
the tests are spread across different targets. It would be great if we
had a single target that libc++ maintainers could run.

We do this by passing the `libc++` test-category as a parameter to
LLDB's [`dotest` testing
framework](https://lldb.llvm.org/resources/test.html). This will only
run LLDB tests that have been marked as belonging to the `libc++`
category.


  Commit: 634c57d738e07754b63160b38e3639467c902cdb
      https://github.com/llvm/llvm-project/commit/634c57d738e07754b63160b38e3639467c902cdb
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/SCF/IR/SCFOps.td
    M mlir/lib/Dialect/SCF/IR/SCF.cpp

  Log Message:
  -----------
  [mlir][SCF][NFC] `scf.for`/`scf.while`: rename builder args (#111493)

Rename builder args to make them consistent with the `args` in the
TableGen definition.


  Commit: f658c1bf4a9d74518ff55a37184b76ec5dec9a8b
      https://github.com/llvm/llvm-project/commit/f658c1bf4a9d74518ff55a37184b76ec5dec9a8b
  Author: Piyou Chen <piyou.chen at sifive.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    A clang/test/CodeGen/attr-target-version-riscv-invalid.c
    A clang/test/CodeGen/attr-target-version-riscv.c
    A clang/test/CodeGenCXX/attr-target-version-riscv.cpp
    A clang/test/SemaCXX/attr-target-version-riscv.cpp

  Log Message:
  -----------
  Recommit "[RISCV][FMV] Support target_version" (#111096)" (#111333)

Fix the buildbot failure caused by heap use-after-free error.

Origin message:

    This patch enable `target_version` attribute for RISC-V target.

    The proposal of `target_version` syntax can be found at the
    https://github.com/riscv-non-isa/riscv-c-api-doc/pull/48 (which has
    landed), as modified by the proposed
https://github.com/riscv-non-isa/riscv-c-api-doc/pull/85 (which adds the
    priority syntax).

`target_version` attribute will trigger the function multi-versioning
    feature and act like `target_clones` attribute. See
https://github.com/llvm/llvm-project/pull/85786 for the implementation
    of `target_clones`.


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

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

  Log Message:
  -----------
  Revert "[NFC][EarlyIfConverter] Turn SSAIfConv into a local variable (#107390)" (#111385)

This reverts commit 09a4c23eb410d4be52202bed21c967a3653c3544.


  Commit: 29ec0716a872126db0dd2e981c51f9966af34824
      https://github.com/llvm/llvm-project/commit/29ec0716a872126db0dd2e981c51f9966af34824
  Author: Ralf Jung <post at ralfj.de>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp

  Log Message:
  -----------
  Fix comment typo in ExpandFCOPYSIGN (#111489)

I noticed this while following
https://github.com/llvm/llvm-project/pull/111269. It makes little sense
that FCOPYSIGN would look at the sign of `x`, right? Surely this must be
`y`. Also fix the inconsistency where it's sometimes `x` and sometimes
`X`.


  Commit: 7c1087613bb9f4ceebb991e5a4b2ef4d5adb4dfa
      https://github.com/llvm/llvm-project/commit/7c1087613bb9f4ceebb991e5a4b2ef4d5adb4dfa
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M lldb/test/API/functionalities/archives/TestBSDArchives.py

  Log Message:
  -----------
  [lldb][test] Fix unexpected pass of TestBSDArchives on Windows

Originally failing due to https://github.com/llvm/llvm-project/issues/24901,
but since https://github.com/llvm/llvm-project/pull/110837 the
test is passing.

https://lab.llvm.org/buildbot/#/builders/141/builds/3012

My guess is that the `llvm-` tool has better support for static
libraries on Windows.


  Commit: ec009994a06338995dfb6431c943b299f9327fd2
      https://github.com/llvm/llvm-project/commit/ec009994a06338995dfb6431c943b299f9327fd2
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M lldb/test/API/functionalities/archives/TestBSDArchives.py
    M lldb/test/API/macosx/duplicate-archive-members/TestDuplicateMembers.py

  Log Message:
  -----------
  [lldb][test] Remove xfails from static lib tests on Windows

Originally failing due to https://github.com/llvm/llvm-project/issues/24901,
but since https://github.com/llvm/llvm-project/pull/110837 the
test is passing.

Already removed one xfail but didn't realise we had more for
the same bug.


  Commit: 6b4c4d78f03b83a371e239844d2f86dafeed6b53
      https://github.com/llvm/llvm-project/commit/6b4c4d78f03b83a371e239844d2f86dafeed6b53
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/docs/CMake.rst
    M llvm/docs/GettingStarted.rst

  Log Message:
  -----------
  [llvm][docs] Improve the formatting of the Common Problems section (#108522)

...and add shared libs as a suggestion.

* Mark options, option values and program names as plain text.
* Add a blank line between the option and the explanatory text
  so that it doesn't get printed on the same line.
  (this seems to be the original intent of the rst source anyway)
* Update the phrasing of a couple of the options.
* Add BUILD_SHARED_LIBS to suggestions.


  Commit: f22e6d59190b03434b2a604399670d1b750d63c2
      https://github.com/llvm/llvm-project/commit/f22e6d59190b03434b2a604399670d1b750d63c2
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M clang/lib/Sema/SemaARM.cpp
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_ldr_str_zt.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_zero_zt.c
    M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_add_sub_za16.c
    M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_b16b16.cpp
    M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_fmlas16.c
    M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_mopa_nonwide.c
    M clang/test/Sema/aarch64-streaming-sme-or-nonstreaming-sve-builtins.c
    M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2.cpp
    M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_aes_bitperm_sha3_sm4.cpp
    M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_bfloat.cpp
    M clang/test/Sema/aarch64-sve2p1-intrinsics/acle_sve2p1_b16b16.cpp
    M clang/utils/TableGen/SveEmitter.cpp

  Log Message:
  -----------
  [Clang][AArch64] Fix checkArmStreamingBuiltin for 'sve-b16b16' (#109420)

The implementation made the assumption that any feature starting with
"sve" meant that this was an SVE feature. This is not the case for
"sve-b16b16", as this is a feature that applies to both SVE and SME.

This meant that:
```
  __attribute__((target("+sme2,+sve2,+sve-b16b16")))
  svbfloat16_t foo(svbfloat16_t a, svbfloat16_t b, svbfloat16_t c)
                                                      __arm_streaming {
      return svclamp_bf16(a, b, c);
  }
```
would result in an incorrect diagnostic saying that `svclamp_bf16` could
only be used in non-streaming functions.


  Commit: fbf9bead3167d61e2e0fe581e968e86f45a04097
      https://github.com/llvm/llvm-project/commit/fbf9bead3167d61e2e0fe581e968e86f45a04097
  Author: Sirraide <aeternalmail at gmail.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst

  Log Message:
  -----------
  [Clang] [NFC] Remove trailing whitespace in release notes (#111506)


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

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

  Log Message:
  -----------
  [NFC][EarlyIfConverter] Rename SSAIfConv::runOnMachineFunction to SSAIfConv::init (#111500)


  Commit: 366e469db9ef15373c8671712a083d1a1c4a55ad
      https://github.com/llvm/llvm-project/commit/366e469db9ef15373c8671712a083d1a1c4a55ad
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-cost.ll

  Log Message:
  -----------
  [RISCV] Add cost tests for more interleave factors. NFC

This shows how we're not properly scaling the cost with the number of
factors, i.e. a factor 8 interleave costs the same as a factor 2
interleave at VF=2.


  Commit: 39cdfdfad961e146131966757d563bfd667246d6
      https://github.com/llvm/llvm-project/commit/39cdfdfad961e146131966757d563bfd667246d6
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M lldb/test/API/lang/c/shared_lib_stripped_symbols/TestSharedLibStrippedSymbols.py

  Log Message:
  -----------
  [lldb][test] Fix typo in TestSharedLibStrippedSymbols


  Commit: 6636f32615000429f6391b68392e826c1de1ed64
      https://github.com/llvm/llvm-project/commit/6636f32615000429f6391b68392e826c1de1ed64
  Author: Christudasan Devadasan <christudasan.devadasan at amd.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/image-waterfall-loop-O0.ll
    M llvm/test/CodeGen/AMDGPU/bb-prolog-spill-during-regalloc.ll
    M llvm/test/CodeGen/AMDGPU/collapse-endcf.ll
    M llvm/test/CodeGen/AMDGPU/control-flow-fastregalloc.ll
    M llvm/test/CodeGen/AMDGPU/div_i128.ll
    M llvm/test/CodeGen/AMDGPU/indirect-addressing-si.ll
    M llvm/test/CodeGen/AMDGPU/mubuf-legalize-operands-non-ptr-intrinsics.ll
    M llvm/test/CodeGen/AMDGPU/mubuf-legalize-operands.ll
    M llvm/test/CodeGen/AMDGPU/rem_i128.ll
    M llvm/test/CodeGen/AMDGPU/trap-abis.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-spill-placement-issue61083.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved.ll

  Log Message:
  -----------
  [AMDGPU] Include WWM register spill into BB Prolog (#111496)

With #93526 we split the regalloc pipeline further
to have a standalone allocation for wwm registers
and per-lane VGPRs. Currently the presence of the
wwm-spill reloads inserted at the bb-top limits the
isBasicPrologue function during the per-lane vgpr
regalloc to skip past the exec manipulation instruction
and ended up causing incorrect codegen. The wmm-spill
inserted during the wwm-regalloc pipeline should also
be included in the bb-prolog so that the per-lane vgpr
regalloc pipeline can identify the appropriate insertion
points for their spills and copies.


  Commit: 782a2d40005a2820f05c9801aff816c01789c7be
      https://github.com/llvm/llvm-project/commit/782a2d40005a2820f05c9801aff816c01789c7be
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaDecl.cpp
    A clang/test/Sema/caret-diags-register-variable.cpp

  Log Message:
  -----------
  [clang][Sema] Bad register variable type error should point to the type (#110239)

...not the register keyword. Fixes #109776.

Until now the error was only tested in clang/test/Sema/asm.c, where you
can't check for the "^" character. I've added a new caret test file as I
see has been done for other error types.


  Commit: c62e61acb428bb46ad834f8288b0c6f8c2ea8d31
      https://github.com/llvm/llvm-project/commit/c62e61acb428bb46ad834f8288b0c6f8c2ea8d31
  Author: Xing Xue <xingxue at outlook.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M openmp/runtime/src/CMakeLists.txt

  Log Message:
  -----------
  [libomp][AIX] Use SO version "1" for AIX libomp (#111384)

For `libomp` on AIX, we build shared object `libomp.so` first and then
archive it into libomp.a. This patch changes to use SO version `1` and
name the shared object `libomp.so.1` so that it is consistent with the
naming of other shared objects in AIX libraries, e.g., `libc++.so.1` in
`libc++.a`. With this change, the change made in commit
bde51d9b0d473447ea12fb14924f14ea167eec85 to ensure only `libomp.a` is
published on AIX is no longer necessary and is removed.


  Commit: 9fd15adf1d26d98ce082f252471b5c1f55ed2de1
      https://github.com/llvm/llvm-project/commit/9fd15adf1d26d98ce082f252471b5c1f55ed2de1
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64RegisterInfo.td
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/test/CodeGen/AArch64/sme-avoid-coalescing-locally-streaming.ll

  Log Message:
  -----------
  [AArch64] NFC: rename subreg zsub to qsub (#111154)

I believe this is more correct, because 'dsub' represents the lower 64
bits in a 128 bit register. Similarly, I would expect 'qsub' to
represent the lower 128 bits in a 128+ bit register.


  Commit: e3e55173ed891da334990103c12206a4e4e8fc98
      https://github.com/llvm/llvm-project/commit/e3e55173ed891da334990103c12206a4e4e8fc98
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

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

  Log Message:
  -----------
  [clang][x86] Enable _mm_movehdup_ps, _mm_moveldup_ps and _mm_movedup_pd in constant expressions

These just wrap generic shuffles


  Commit: a649e8ff891e54a279768a8e877b76c8f000a5a7
      https://github.com/llvm/llvm-project/commit/a649e8ff891e54a279768a8e877b76c8f000a5a7
  Author: Alex Bradbury <asb at igalia.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

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

  Log Message:
  -----------
  [lit] Allow passthrough of some QEMU_* environment variables to lit (#111373)

This is an alternate implementation of a patch proposed by @preames in
<https://reviews.llvm.org/D128840>. As noted there, when running
non-native binaries with binfmt_misc and qemu-user you typically need to
set some environment variables (at least, QEMU_LD_PREFIX), but lit
strips them by default. This patch adds what I think are the two main
ones to the list of those that aren't stripped. It does so in a place
that applies to all lit test suites (rather than just LLVM's), and as
can be seen from the other env vars in `pass_vars` I think there's
already plenty of precedent for passing through environment variables
known to be potentially useful to LLVM developers.


  Commit: bfe066676b8ebe8b2db502c24acadd2bc830b738
      https://github.com/llvm/llvm-project/commit/bfe066676b8ebe8b2db502c24acadd2bc830b738
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/lib/Target/AArch64/AArch64Subtarget.h
    M llvm/lib/Target/AArch64/SVEInstrFormats.td
    A llvm/test/CodeGen/AArch64/sve2-bf16-converts.ll

  Log Message:
  -----------
  [LLVM][CodeGen][SVE2] Implement nxvf64 fpround to nxvbf16. (#111012)

NOTE: SVE2 only because that is when FCVTX is available, which is
required to perform the necessary two-step rounding.


  Commit: 871f69f0b657a4c60d5ad26b5dc4cc2b1f0e5f3b
      https://github.com/llvm/llvm-project/commit/871f69f0b657a4c60d5ad26b5dc4cc2b1f0e5f3b
  Author: ivanaivanovska <iivanovska at google.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Support/TimeProfiler.h
    M llvm/lib/Support/TimeProfiler.cpp
    M llvm/unittests/Support/TimeProfilerTest.cpp

  Log Message:
  -----------
  [TimeProfiler] Added instant events to llvm TimeProfiler. (#103039)

This adds support for adding instant events to the TimeProfiler. Later we plan to use it to record deferring of template instantiations.


  Commit: 3ec6f805c5184b3933cba94e241b44da362437d7
      https://github.com/llvm/llvm-project/commit/3ec6f805c5184b3933cba94e241b44da362437d7
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/interleave-allocsize-not-equal-typesize.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/interleaved-store-of-first-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-strict-fadd.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-gather-scatter-tailpred.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-accesses.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/strided-accesses.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-interleave.ll
    M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
    M llvm/test/Transforms/LoopVectorize/X86/interleave-cost.ll
    M llvm/test/Transforms/LoopVectorize/X86/interleave-opaque-pointers.ll
    M llvm/test/Transforms/LoopVectorize/X86/interleaved-accesses-hoist-load-across-store.ll
    M llvm/test/Transforms/LoopVectorize/X86/interleaved-accesses-sink-store-across-load.ll
    M llvm/test/Transforms/LoopVectorize/X86/limit-vf-by-tripcount.ll
    M llvm/test/Transforms/LoopVectorize/X86/masked-store-cost.ll
    M llvm/test/Transforms/LoopVectorize/X86/pr47437.ll
    M llvm/test/Transforms/LoopVectorize/X86/pr56319-vector-exit-cond-optimization-epilogue-vectorization.ll
    M llvm/test/Transforms/LoopVectorize/X86/strided_load_cost.ll
    M llvm/test/Transforms/LoopVectorize/X86/vectorize-interleaved-accesses-gap.ll
    M llvm/test/Transforms/LoopVectorize/X86/vplan-native-inner-loop-only.ll
    M llvm/test/Transforms/LoopVectorize/interleaved-accesses-different-insert-position.ll

  Log Message:
  -----------
  [VPlan] Don't created GEP x, 0 for interleave group pointers.

The GEP with offet 0 is redundant, remove it. This addresses a TODO
from 7f74651837b ((#106431).


  Commit: 326b381ac030c9ac0764b9db712b33a447d04f98
      https://github.com/llvm/llvm-project/commit/326b381ac030c9ac0764b9db712b33a447d04f98
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/Maintainers.md

  Log Message:
  -----------
  [LLVM][Maintainers] Update lead maintainer for LLVM (#111180)

Set myself as the current lead maintainer for LLVM, and Chris Lattner as
the emeritus lead maintainer.

This implements
https://discourse.llvm.org/t/rfc-proposing-a-new-lead-maintainer-for-llvm/81290.


  Commit: 1312369afbeb2083094b3d34a88c346b22e86971
      https://github.com/llvm/llvm-project/commit/1312369afbeb2083094b3d34a88c346b22e86971
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M clang/lib/Headers/avx512fintrin.h
    M clang/lib/Headers/avxintrin.h
    M clang/lib/Headers/emmintrin.h
    M clang/test/CodeGen/X86/avx-builtins.c
    M clang/test/CodeGen/X86/avx512f-builtins.c
    M clang/test/CodeGen/X86/sse2-builtins.c

  Log Message:
  -----------
  [clang][x86] Enable SSE2/AVX/AVX512 setzero intrinsics in constant expressions

Basic setup for future constant expression tests


  Commit: 235067b222e4734839b963e152b6554e20413d11
      https://github.com/llvm/llvm-project/commit/235067b222e4734839b963e152b6554e20413d11
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp

  Log Message:
  -----------
  [clang][bytecode] Make sure ia32_bzhi input is an integer (#111505)


  Commit: f01364ebc88d875fbfc0e00413538465aaa8a2b3
      https://github.com/llvm/llvm-project/commit/f01364ebc88d875fbfc0e00413538465aaa8a2b3
  Author: Sirraide <aeternalmail at gmail.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/DeclCXX.cpp
    A clang/test/Modules/gh110401.cppm

  Log Message:
  -----------
  [Clang] Instantiate the correct lambda call operator (#110446)

This is a fix for the following issue: when a lambda’s class type is
merged across modules (e.g. because it is defined in a template in the
GMF of some module `A`, and some other module `B` both imports `A` and
has the same template in its GMF), then `getLambdaCallOperator()` might
return the wrong operator (e.g. while compiling `B`, the lambda’s class
type would be the one attached to `B`’s GMF, but the call operator ends
up being the one attached to `A`’s GMF).

This causes issues in situations where the call operator is in a
template and accesses declarations in the surrounding context: when
those declarations are instantated, a mapping is introduced from the
original node in the template to that of the instantiation. If such an
instantiation happens in `B`, and we then try to instantiate `A`’s call
operator, any nodes in that call operator refer to declarations in the
template in `A`, but the `LocalInstantiationScope` only contains
mappings for declarations in `B`! This causes the following assertion
(for godbolt links and more, see the issue below):

```
Assertion `isa<LabelDecl>(D) && "declaration not instantiated in this scope"' failed.
```

We now walk the redecl chain of the call operator to find the
one that is in the same module as the record decl.

This fixes #110401.


  Commit: db1a76206902e6926464e30cc47249e217405dab
      https://github.com/llvm/llvm-project/commit/db1a76206902e6926464e30cc47249e217405dab
  Author: Sam Elliott <quic_aelliott at quicinc.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M lld/ELF/InputSection.cpp
    A lld/test/ELF/riscv-pcrel-hilo-error-sections.s
    M lld/test/ELF/riscv-pcrel-hilo-error.s

  Log Message:
  -----------
  [LLD][RISCV] Error on PCREL_LO referencing other Section (#107558)

The RISC-V psABI states that "The `R_RISCV_PCREL_LO12_I` or
`R_RISCV_PCREL_LO12_S` relocations contain a label pointing to an
instruction in the same section with an `R_RISCV_PCREL_HI20` relocation
entry that points to the target symbol."

Without this patch, GNU ld errors, but LLD does not -- I think because LLD is
doing the right thing, certainly in the testcase provided.

Nonetheless, I think an error is good here to bring LLD in line with
what GNU ld is doing in showing that the object the user provided is not
following the psABI as written.

Fixes #107304


  Commit: e06e4932521b0ba578d34495186cde522de8eaec
      https://github.com/llvm/llvm-project/commit/e06e4932521b0ba578d34495186cde522de8eaec
  Author: Ying Yi <ying.yi at sony.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table.td

  Log Message:
  -----------
  Make a tablegen test match-table.td more robust.

Some organizations have added operators downstream, and the test match-table.td tends to fail with off-by-n errors (with n being the number of `added operators`) periodically. This patch will increase the test robust and reduce the impact of merge process.


  Commit: 87cdc8328d6c79da6dcce85eb318296bc5b42e82
      https://github.com/llvm/llvm-project/commit/87cdc8328d6c79da6dcce85eb318296bc5b42e82
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/lib/Analysis/ConstantFolding.cpp
    M llvm/lib/IR/ConstantFold.cpp
    M llvm/test/Transforms/InstSimplify/bitcast-vector-fold.ll

  Log Message:
  -----------
  [LLVM][ConstFolds] Verify a scalar src before attempting scalar->vector bitcast transformation. (#111149)

It was previously safe to assume isa<Constant{Int,FP}> meant a scalar
value. This is not true when use-constant-##-for-###-splat are enabled.


  Commit: 2d666dede0e192c919b39a20e077cf80100c4759
      https://github.com/llvm/llvm-project/commit/2d666dede0e192c919b39a20e077cf80100c4759
  Author: Hans Wennborg <hans at chromium.org>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64RegisterInfo.td
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/test/CodeGen/AArch64/sme-avoid-coalescing-locally-streaming.ll

  Log Message:
  -----------
  Revert "[AArch64] NFC: rename subreg zsub to qsub (#111154)"

This caused asserts to fire:
(Subtarget.isSVEorStreamingSVEAvailable() && "Unexpected register store without SVE store instructions"),
function storeRegToStackSlot, file AArch64InstrInfo.cpp, line 5346.

See comment on the PR for reproducer.

This reverts commit 9fd15adf1d26d98ce082f252471b5c1f55ed2de1.


  Commit: f93f925d4f3b9505eecf02097713003d3cf4b6fa
      https://github.com/llvm/llvm-project/commit/f93f925d4f3b9505eecf02097713003d3cf4b6fa
  Author: Sam Elliott <quic_aelliott at quicinc.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/docs/RISCVUsage.rst
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
    M llvm/lib/Target/RISCV/RISCVInstrFormats.td
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/test/MC/RISCV/insn-invalid.s
    M llvm/test/MC/RISCV/insn.s
    M llvm/test/MC/RISCV/insn_c-invalid.s

  Log Message:
  -----------
  [RISCV][MC] Support Assembling 48- and 64-bit Instructions (#110022)

This adds `.insn` support for assembling instructions of 48- and
64-bits (only when giving an explicit length). Disassembly already
knows to bunch up the instruction bits for these instructions.

This changes some error messages so they are a little clearer.

Co-authored-by: Sudharsan Veeravalli <quic_svs at quicinc.com>


  Commit: c0a2915321870672b1870c1ee1d192c07dddcd04
      https://github.com/llvm/llvm-project/commit/c0a2915321870672b1870c1ee1d192c07dddcd04
  Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M clang/test/SemaCXX/pragma-pack-packed-2.cpp

  Log Message:
  -----------
  [SystemZ][z/OS] don't write to source

test invoked clang that has tried to write in source directory that
might be readonly #111053

for 4c26a1e4d7e490a38dcd2a24e4c8939075fd4a5a


  Commit: 6e5d6129fa36a7c1a2931d1c51208d1d254f3efb
      https://github.com/llvm/llvm-project/commit/6e5d6129fa36a7c1a2931d1c51208d1d254f3efb
  Author: Tyler Nowicki <tyler.nowicki at amd.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Coroutines/ABI.h
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
    M llvm/lib/Transforms/Coroutines/CoroShape.h
    M llvm/lib/Transforms/Coroutines/CoroSplit.cpp

  Log Message:
  -----------
  [Coroutines] Move OptimizeFrame out of Shape (#111017)

* OptimizeFrame is not really a part of the Coroutine Shape info, rather
it is specifically for the addFieldForAllocas method called indirectly
by buildCoroutineFrame.
* This patch passes OptimizeFrame directly to buildCoroutineFrame so it
can be provided to addFieldForAllocas instead of keeping it in the
Shape.

Co-authored-by: tnowicki <tnowicki.nowicki at amd.com>


  Commit: 388c693a619cd84cff838e5cada17d70bed222cc
      https://github.com/llvm/llvm-project/commit/388c693a619cd84cff838e5cada17d70bed222cc
  Author: Zibi Sarbinowski <zibi at ca.ibm.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/test/tools/llvm-profdata/sample-split-layout.test

  Log Message:
  -----------
  [SystemZ][z/OS] fix sample-split-layout.test on z/OS (#109679)

The Lit in subject fails on z/OS since the input file
`Inputs/split-layout.profdata` is marked as ASCII even though it is
binary and the output file `Output/sample-split-layout.test.tmp-output`
is binary.

This PR removes the diff command which fails because it compares a
binary file and a text file. The rational is that this diff command
seems to be redundant to the `FileCheck` on the next command.


  Commit: a7968f6b636763a362939b2d2fb9717fdfbe5f7e
      https://github.com/llvm/llvm-project/commit/a7968f6b636763a362939b2d2fb9717fdfbe5f7e
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/utils/gn/secondary/lldb/test/BUILD.gn

  Log Message:
  -----------
  [gn] port 32e90bbe579d39356eb (lldb remote tests)

Possibly not enough to run tests, but enough to fix build.


  Commit: 48ac846fbc7568b220d8fe3f796c4f26e117ab26
      https://github.com/llvm/llvm-project/commit/48ac846fbc7568b220d8fe3f796c4f26e117ab26
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-ext-mul.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f16.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/fmamix-constant-bus-violation.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/fmamix-constant-bus-violation.mir
    A llvm/test/CodeGen/AMDGPU/GlobalISel/madmix-constant-bus-violation.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/madmix-constant-bus-violation.mir

  Log Message:
  -----------
  [AMDGPU][GlobalISel] Align `selectVOP3PMadMixModsImpl` with the `SelectionDAG` counterpart (#110168)

The current `selectVOP3PMadMixModsImpl` can produce `V_MAD_FIX_F32`
instruction
that violates constant bus restriction, while its `SelectionDAG`
counterpart
doesn't. The culprit is in the copy stripping while the `SelectionDAG`
version
only has a bitcast stripping. This PR simply aligns the two version.


  Commit: 88a239d292da80f260788c0817a07cbc0a8ac758
      https://github.com/llvm/llvm-project/commit/88a239d292da80f260788c0817a07cbc0a8ac758
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/frem.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fdiv.mir
    M llvm/test/CodeGen/AMDGPU/fdiv.f16.ll
    M llvm/test/CodeGen/AMDGPU/fold-int-pow2-with-fmul-or-fdiv.ll
    M llvm/test/CodeGen/AMDGPU/frem.ll

  Log Message:
  -----------
  [AMDGPU] Adopt new lowering sequence for `fdiv16` (#109295)

The current lowering of `fdiv16` can generate incorrectly rounded result
in some cases. The new sequence was provided by the HW team, as shown
below written in C++.


```
half fdiv(half a, half b) {
  float a32 = float(a);
  float b32 = float(b);
  float r32 = 1.0f / b32;
  float q32 = a32 * r32;
  float e32 = -b32 * q32 + a32;
  q32 = e32 * r32 + q32;
  e32 = -b32 * q32 + a32;
  float tmp = e32 * r32;
  uin32_t tmp32 = std::bit_cast<uint32_t>(tmp);
  tmp32 = tmp32 & 0xff800000;
  tmp = std::bit_cast<float>(tmp32);
  q32 = tmp + q32;
  half q16 = half(q32);
  q16 = div_fixup_f16(q16);
  return q16;
}
```

Fixes SWDEV-477608.


  Commit: 97a784ecacef82ea72f2e86892521e5e6aabf55d
      https://github.com/llvm/llvm-project/commit/97a784ecacef82ea72f2e86892521e5e6aabf55d
  Author: Mészáros Gergely <gergely.meszaros at intel.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/cmake/modules/HandleLLVMOptions.cmake

  Log Message:
  -----------
  [llvm][cmake][Trivial] use /Zc:preprocessor with MSVC only explicitly (#111520)

Only MSVC recognizes this flag, so be explicit. As an example the Intel
C++ Compiler (IntelLLVM in CMake) also has an MSVC compatible CLI, but
does not suppport this flag.


  Commit: db98be3c714d8a18c2d020252f790a7f0fb5d754
      https://github.com/llvm/llvm-project/commit/db98be3c714d8a18c2d020252f790a7f0fb5d754
  Author: David Green <david.green at arm.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp

  Log Message:
  -----------
  [InstCombine] Minor cleanup for optimizeFMod. NFC


  Commit: 148a8fef10031a5df5dac5de9bde9ddc4735ab9c
      https://github.com/llvm/llvm-project/commit/148a8fef10031a5df5dac5de9bde9ddc4735ab9c
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/test/Transforms/GVN/edge.ll

  Log Message:
  -----------
  GVN/test: regen a test with UTC (NFC) (#111365)


  Commit: 4da8ac34f76e707ab94380b94f616457cfd2cb83
      https://github.com/llvm/llvm-project/commit/4da8ac34f76e707ab94380b94f616457cfd2cb83
  Author: Krystian Stasiowski <sdkrystian at gmail.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/DeclTemplate.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/AST/DeclTemplate.cpp
    M clang/lib/Sema/SemaConcept.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    A clang/test/CXX/temp/temp.constr/temp.constr.decl/p4.cpp
    A clang/test/CXX/temp/temp.spec/temp.expl.spec/p7.cpp
    M clang/test/Modules/cxx-templates.cpp

  Log Message:
  -----------
  Reapply "[Clang][Sema] Refactor collection of multi-level template argument lists (#106585)" (#111173)

Reapplies #106585, fixing an issue where non-dependent names of member
templates appearing prior to that member template being explicitly
specialized for an implicitly instantiated class template specialization
would incorrectly use the definition of the explicitly specialized
member template.


  Commit: 416d1bd24e974932cbe93a5310d2ceaacdddd273
      https://github.com/llvm/llvm-project/commit/416d1bd24e974932cbe93a5310d2ceaacdddd273
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M clang/include/clang/Basic/PlistSupport.h

  Log Message:
  -----------
  [Basic] Avoid repeated hash lookups (NFC) (#111467)


  Commit: dec641e473cf416d54766ced34a36be71ecd0037
      https://github.com/llvm/llvm-project/commit/dec641e473cf416d54766ced34a36be71ecd0037
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M clang/lib/Driver/MultilibBuilder.cpp

  Log Message:
  -----------
  [Driver] Avoid repeated hash lookups (NFC) (#111468)


  Commit: a8289a35d06b9f7cb3d9b18dba6be0f1f0a8a898
      https://github.com/llvm/llvm-project/commit/a8289a35d06b9f7cb3d9b18dba6be0f1f0a8a898
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M clang/lib/Tooling/Inclusions/HeaderIncludes.cpp

  Log Message:
  -----------
  [Tooling] Avoid repeated hash lookups (NFC) (#111469)


  Commit: 98c9c1a4d2d4fc41b34f73e4630de435c9c0c396
      https://github.com/llvm/llvm-project/commit/98c9c1a4d2d4fc41b34f73e4630de435c9c0c396
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/runInTerminal/TestDAP_runInTerminal.py

  Log Message:
  -----------
  [lldb][test] Disable new lldb-dap test on non-x86

Guessing that this is missing because it's failing on Arm 32 bit
and every other test has this requirement.


  Commit: 1e5f32e81f96af45551dafb369279c6d55ac9b97
      https://github.com/llvm/llvm-project/commit/1e5f32e81f96af45551dafb369279c6d55ac9b97
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M mlir/lib/Transforms/Utils/RegionUtils.cpp

  Log Message:
  -----------
  [Transforms] Avoid repeated hash lookups (NFC) (#111470)


  Commit: d48920dc9d69abbfbef28ce6f70c4680c21795b2
      https://github.com/llvm/llvm-project/commit/d48920dc9d69abbfbef28ce6f70c4680c21795b2
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Transforms/Vectorize/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 93bfa7886b1a


  Commit: 7fa0d05a04056aac4365c69c4b515f613a43e454
      https://github.com/llvm/llvm-project/commit/7fa0d05a04056aac4365c69c4b515f613a43e454
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/lib/AsmParser/LLParser.cpp

  Log Message:
  -----------
  [AsmParser] Simplify code with std::map::operator[] (NFC) (#111480)


  Commit: 64f7e1b697d834f620b069f2c3dc701ed8ff732a
      https://github.com/llvm/llvm-project/commit/64f7e1b697d834f620b069f2c3dc701ed8ff732a
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M libclc/README.TXT

  Log Message:
  -----------
  [libclc] Update build instructions in readme (#111369)

The configure Python script was removed by
d6e0e6d255a7d54a3873b7a5d048eee00ef6bb6d /
https://reviews.llvm.org/D69966.

The readme was never updated with the cmake way to do it. I couldn't
find any dedicated buildbots for this so I'm making an educated guess.
This is what built locally for me.


  Commit: e542202c2763c53c35d1bbe7a3853d683add1303
      https://github.com/llvm/llvm-project/commit/e542202c2763c53c35d1bbe7a3853d683add1303
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/calling-conv.ll

  Log Message:
  -----------
  [RISCV] Update vector calling convention test for tuple type. NFC (#111336)


  Commit: 4e6a6eda30091dd2186949506a5df515b8d88b6a
      https://github.com/llvm/llvm-project/commit/4e6a6eda30091dd2186949506a5df515b8d88b6a
  Author: Lei Huang <lei at ca.ibm.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp

  Log Message:
  -----------
  [PowerPC] Update matchRegisterName() to return MCRegister instead of bool (#111186)

Initial patch to start using TableGen's auto generated function
`MatchRegisterName()`.

Update `PPCAsmParser::matchRegisterName()` implementation to align more
with tablegen's auto generated function.


  Commit: 8ab77184dde2583950fc6e4886ff526e7e598f7e
      https://github.com/llvm/llvm-project/commit/8ab77184dde2583950fc6e4886ff526e7e598f7e
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M clang/include/clang/Basic/riscv_vector.td
    A clang/test/CodeGen/RISCV/rvv-intrinsics-handcrafted/rvv-tuple-utils.c

  Log Message:
  -----------
  [clang][RISCV] Make the index of riscv_tuple_extract and riscv_tuple_insert be truncated rather than zero extended (#111466)

It's illegal if the index is 64 bits and is zero-extend to 32 bits.


  Commit: 45826513ef6e94b718110ed5a4ead6dcc69127b6
      https://github.com/llvm/llvm-project/commit/45826513ef6e94b718110ed5a4ead6dcc69127b6
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

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

  Log Message:
  -----------
  [SLP][NFC]Fix clang-tidy suggestions, cleanup, NFC.


  Commit: 74f3cc0f96ef89912e34f6e903b56a3c468d1a44
      https://github.com/llvm/llvm-project/commit/74f3cc0f96ef89912e34f6e903b56a3c468d1a44
  Author: Kelvin Li <kkwli at users.noreply.github.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/test/Lower/Intrinsics/log.f90

  Log Message:
  -----------
  [flang] Call __clog instead of clog on AIX (#111442)


  Commit: adc6a9e8189cc0a8a02a2fcea3f820ea2b402251
      https://github.com/llvm/llvm-project/commit/adc6a9e8189cc0a8a02a2fcea3f820ea2b402251
  Author: Rose <gfunni234 at gmail.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86SelectionDAGInfo.cpp
    M llvm/test/CodeGen/X86/memcpy-struct-by-value.ll
    M llvm/test/CodeGen/X86/memcpy.ll
    M llvm/test/CodeGen/X86/memset-minsize.ll
    M llvm/test/CodeGen/X86/memset-vs-memset-inline.ll
    M llvm/test/CodeGen/X86/memset.ll

  Log Message:
  -----------
  Reapply "[X86] For minsize memset/memcpy, use byte or double-word accesses (#87003)" (#111393)

Restore old Val if bytes are left over to prevent an assertion failure.


  Commit: d079743fe67e05697fe55409115a3614e6fe5c45
      https://github.com/llvm/llvm-project/commit/d079743fe67e05697fe55409115a3614e6fe5c45
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M clang/lib/CodeGen/CGExpr.cpp

  Log Message:
  -----------
  [clang] Fix comment typos in CodeGen::EmitLoadOfGlobalRegLValue


  Commit: 10054ba4acbc5378d2e2aa869a5bccd88aa4b59e
      https://github.com/llvm/llvm-project/commit/10054ba4acbc5378d2e2aa869a5bccd88aa4b59e
  Author: Benoit Jacob <jacob.benoit.1 at gmail.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
    M mlir/lib/Dialect/Vector/Transforms/VectorInsertExtractStridedSliceRewritePatterns.cpp
    A mlir/test/Dialect/Vector/vector-contiguous-extract-strided-slice-to-extract.mlir
    M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp

  Log Message:
  -----------
  [mlir][vector] Add pattern to rewrite contiguous ExtractStridedSlice into Extract (#111541)

Co-authored-by: Jakub Kuderski <kubakuderski at gmail.com>


  Commit: 70e0a7e7e6a8541bcc46908c592eed561850e416
      https://github.com/llvm/llvm-project/commit/70e0a7e7e6a8541bcc46908c592eed561850e416
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    R libclc/README.TXT
    A libclc/README.md

  Log Message:
  -----------
  [libclc] Convert README to Markdown (#111549)

A bit nicer to read on GitHub and with clickable links.

No content changes purely formatting.


  Commit: baa51ffd9c417c9ec272c601673c484bc4335319
      https://github.com/llvm/llvm-project/commit/baa51ffd9c417c9ec272c601673c484bc4335319
  Author: bigb4ng <130478744+bigb4ng at users.noreply.github.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M clang/docs/AddressSanitizer.rst
    M clang/docs/HardwareAssistedAddressSanitizerDesign.rst
    M clang/docs/LeakSanitizer.rst
    M clang/docs/MemorySanitizer.rst
    M clang/docs/ThreadSanitizer.rst
    M clang/docs/UndefinedBehaviorSanitizer.rst
    M llvm/docs/GwpAsan.rst

  Log Message:
  -----------
  [sanitizer] Document AddressSanitizer security considerations (#100937)

Follow-up to #92593.

Also makes #92611, https://github.com/google/sanitizers/issues/1130
obsolete.


  Commit: 5af7ae501a7ce7bd9d284876fef04b84e441abbd
      https://github.com/llvm/llvm-project/commit/5af7ae501a7ce7bd9d284876fef04b84e441abbd
  Author: Steven Perron <stevenperron at google.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/docs/SPIRVUsage.rst
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    A llvm/test/CodeGen/SPIRV/HlslBufferLoad.ll

  Log Message:
  -----------
  [SPIRV] Implement handle_fromBinding intrinsic. (#111052)

Implement the intrinsic `llvm.spv.handle.fromBinding`, which returns the
handle for a global resource. This involves creating a global variable
that matches the return-type, set, and binding in the call, and
returning the handle to that resource.

This commit implements the scalar version. It does not handle arrays of
resources yet. It also does not handle storage buffers yet. We do not
have the type for the storage buffers designed yet.

Part of #81036


  Commit: 1dcb6dc757c107f8139f36ac9b240502206caa93
      https://github.com/llvm/llvm-project/commit/1dcb6dc757c107f8139f36ac9b240502206caa93
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp

  Log Message:
  -----------
  [DAG] foldVSelectToSignBitSplatMask - pull out repeated code and use getShiftAmountConstant helper.

We're assuming shift amount type matches the result type - which is true for vectors, but I'm hoping to generalize this fold in the future.


  Commit: d38addf09996498adfff37f300bd9ac21fdd9810
      https://github.com/llvm/llvm-project/commit/d38addf09996498adfff37f300bd9ac21fdd9810
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

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

  Log Message:
  -----------
  Fix MSVC signed/unsigned mismatch warning


  Commit: 55890968ac2d297803fa538c2eff66988dbb221f
      https://github.com/llvm/llvm-project/commit/55890968ac2d297803fa538c2eff66988dbb221f
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/test/CodeGen/PowerPC/vec-min-max.ll

  Log Message:
  -----------
  [PowerPC] vec-min-max.ll - regenerate with common check prefixes to reduce duplication. NFC.


  Commit: cc5ddae5e29ef2d7dd132469caee5cac54523ce5
      https://github.com/llvm/llvm-project/commit/cc5ddae5e29ef2d7dd132469caee5cac54523ce5
  Author: Lewis Crawford <lcrawford at nvidia.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/test/CodeGen/NVPTX/i1-int-to-fp.ll

  Log Message:
  -----------
  [NVPTX] Fix ISel patterns for i1 sint_to_fp (#110866)

NVPTX has ZeroOrNegativeOneBooleanContent, therefore we need to use -1
as the constant for i1 sint_to_fp operations in instruction selection.


  Commit: 6f2ebc435f1cd8f121d227a52c76b6477cec8c91
      https://github.com/llvm/llvm-project/commit/6f2ebc435f1cd8f121d227a52c76b6477cec8c91
  Author: AbdAlRahman Gad <89566409+AbdAlRahmanGad at users.noreply.github.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M lldb/include/lldb/Symbol/SymbolContext.h
    M lldb/source/API/SBThread.cpp
    M lldb/source/Commands/CommandObjectThread.cpp
    M lldb/source/Symbol/SymbolContext.cpp

  Log Message:
  -----------
  [lldb] Change SymbolContext::GetAddressRangeFromHereToEndLine to return Expected (NFC) (#110718)

Signed-off-by: AbdAlRahman Gad <abdobngad at gmail.com>
Co-authored-by: Adrian Prantl <adrian.prantl at gmail.com>


  Commit: ababa483b2ff31357f8c504b1110e255a56ff762
      https://github.com/llvm/llvm-project/commit/ababa483b2ff31357f8c504b1110e255a56ff762
  Author: Chelsea Cassanova <chelsea_cassanova at apple.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M lldb/include/lldb/API/SBDefines.h

  Log Message:
  -----------
  [lldb] Add SBTypeStaticField to SBDefines (#111560)

SBTypeStaticField was missing from SBDefines, this commit adds the class
there.


  Commit: f576c1f76d13059b9e60604a37a4b5c12ead7ef9
      https://github.com/llvm/llvm-project/commit/f576c1f76d13059b9e60604a37a4b5c12ead7ef9
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast.ll
    M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast_from_memory.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast_from_memory.ll

  Log Message:
  -----------
  [X86] Regenerate test checks with vpternlog comments


  Commit: 84088d3a28fdc2d6314c59bfa11026a72b9b0bff
      https://github.com/llvm/llvm-project/commit/84088d3a28fdc2d6314c59bfa11026a72b9b0bff
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/CMakeLists.txt
    M llvm/cmake/modules/HandleLLVMOptions.cmake
    M llvm/docs/CMake.rst
    M llvm/include/llvm/Config/config.h.cmake

  Log Message:
  -----------
  [DLCov 1/5] Add CMake option for enhanced debug line coverage tracking (#107278)

This is part of a series of patches that tries to improve DILocation bug
detection in Debugify. This first patch adds the necessary CMake flag to
LLVM and a variable defined by that flag to LLVM's config header, allowing
the next patch to track information without affecting normal builds.

This series of patches adds a "DebugLoc coverage tracking" feature, that
inserts conditionally-compiled tracking information into DebugLocs (and
by extension, to Instructions), which is used by Debugify to provide
more accurate and detailed coverage reports. When enabled, this features
tracks whether and why we have intentionally dropped a DebugLoc,
allowing Debugify to ignore false positives. An optional additional
feature allows also storing a stack trace of the point where a DebugLoc
was unintentionally dropped/not generated, which is used to make fixing
detected errors significantly easier. The goal of these features is to
provide useful tools for developers to fix existing DebugLoc errors and
allow reliable detection of regressions by either manual inspection or
an automated script.


  Commit: 7e31eaab575d15384654ed989717e5579e963e72
      https://github.com/llvm/llvm-project/commit/7e31eaab575d15384654ed989717e5579e963e72
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M clang/cmake/caches/Android.cmake

  Log Message:
  -----------
  [libc++] Remove unused HAVE_LIBCXXABI variable from Android cache (#111007)

This variable isn't used anymore in libc++'s build and hasn't been for a
few years, so this is likely a remnant of the past.


  Commit: 5cb6b15568c1554a2ea89fee849ed0e27b785ee0
      https://github.com/llvm/llvm-project/commit/5cb6b15568c1554a2ea89fee849ed0e27b785ee0
  Author: Jeffrey Byrnes <Jeffrey.Byrnes at amd.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

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

  Log Message:
  -----------
  [AMDGPU] Constrain use LiveMask by the operand's LaneMask for RP calculation.

For speculative RP queries, recede may calculate inaccurate masks for subreg uses. Previously, the calculation would look at any live lane for the use at the position of the MI in the LIS. This also adds lanes for any subregs which are live at but not used by the instruction. By constraining against the getSubRegIndexLaneMask for the operand's subreg, we are sure to not pick up on these extra lanes.

For current clients of recede, this is not an issue. This is because 1. the current clients do not violate the program order in the LIS, and 2. the change to RP is based on the difference between previous mask and new mask. Since current clients are not exposed to this issue, this patch is sort of NFC.

Co-authored-by: Valery Pykhtin Valery.Pykhtin at amd.com
Change-Id: Iaed80271226b2587297e6fb78fe081afec1a9275


  Commit: 01b8dd1dbaa5f764e43f45a137450dfd604ede0e
      https://github.com/llvm/llvm-project/commit/01b8dd1dbaa5f764e43f45a137450dfd604ede0e
  Author: Piotr Fusik <p.fusik at samsung.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

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

  Log Message:
  -----------
  [RISCV][NFC] Remove the unused RISCV_COALESCE_VSETVLI_NAME (#111536)

This pass was removed in 1cff74130f30aaf47a995c5f6b637a04eaab2617


  Commit: c563fe5c71239a8938e1925fce4c19954564faf0
      https://github.com/llvm/llvm-project/commit/c563fe5c71239a8938e1925fce4c19954564faf0
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn

  Log Message:
  -----------
  [gn build] Manually port 84088d3a


  Commit: 3c6041d28c6c185c9d7bc1de6d93148e383b58ed
      https://github.com/llvm/llvm-project/commit/3c6041d28c6c185c9d7bc1de6d93148e383b58ed
  Author: vporpo <vporpodas at google.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Interval.h
    M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/IntervalTest.cpp

  Log Message:
  -----------
  [SandboxVec][Interval] Implement getUnionInterval() and getSingleDiff() (#111455)


  Commit: 9e954b2d6ab2d5704169df523c8588a9d15271d9
      https://github.com/llvm/llvm-project/commit/9e954b2d6ab2d5704169df523c8588a9d15271d9
  Author: Johan Engelen <jbc.engelen at gmail.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/docs/LangRef.rst

  Log Message:
  -----------
  [docs] Fix llround typo in LangRef (#111426)


  Commit: eaea5f6f952b6059cebfe87ea9800a3a6516f9ed
      https://github.com/llvm/llvm-project/commit/eaea5f6f952b6059cebfe87ea9800a3a6516f9ed
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M clang/test/CXX/drs/cwg1xx.cpp
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  [clang] Add test for CWG110 "Can template functions and classes be declared in the same scope?" (#111446)

[P1787R6](https://wg21.link/p1787r6):
> [CWG110](https://cplusplus.github.io/CWG/issues/110.html) is resolved
by reducing the restriction in [temp.pre] to a note (matching the
behavior of GCC, Clang, and ICC).

Wording: see changes to [temp.pre]/7

I believe the wording for the questions raised in the issue is now the
definition of corresponding declarations that is given in
[[basic.scope.scope]/4](https://eel.is/c++draft/basic.scope#scope-4):
> Two declarations correspond if they (re)introduce the same name, both
declare constructors, or both declare destructors, unless
> — either is a using-declarator, or
> — one declares a type (not a typedef-name) and the other declares a
variable, non-static data member other than of an anonymous union
([class.union.anon]), enumerator, function, or function template, or
> — each declares a function or function template and they do not
declare corresponding overloads.

Then it's used as an input for the definition of potentially conflicting
declarations given in
[[basic.scope.scope]/6](https://eel.is/c++draft/basic.scope#scope-6).

Answering the question in the title: yes, having a function template and
a type with the same name that has the same target scope is well-formed.

A keen eye might spot that the current
[[temp.pre]/7](https://eel.is/c++draft/temp.pre#7) note doesn't reflect
all of the exceptions from the definition of corresponding declarations
in [basic.scope.scope]/4, namely 4.1 and 4.2. I believe the note is
defective, and I opened an editorial PR against the draft to fix that:
https://github.com/cplusplus/draft/pull/7284.


  Commit: d17ad77c959933286d9f30a38d050d239a6f4378
      https://github.com/llvm/llvm-project/commit/d17ad77c959933286d9f30a38d050d239a6f4378
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    A flang/test/Semantics/named-construct-declaration-conflict.f90

  Log Message:
  -----------
  [flang][Semantics] Testcase for declaration conflict with named-const… (#111556)

…ruct


  Commit: 418920b3fbdefec5b56ee2b9db96884d0ada7329
      https://github.com/llvm/llvm-project/commit/418920b3fbdefec5b56ee2b9db96884d0ada7329
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/check-omp-structure.h
    A flang/test/Semantics/OpenMP/name-conflict.f90

  Log Message:
  -----------
  [flang][OpenMP] Diagnose non-variable symbols in OpenMP clauses (#111394)

The original motivation came from this scenario:
```
!$omp parallel do shared(xyz)
  xyz: do i = 1, 100
  enddo xyz
!$omp end parallel do
```
Implement a general check for validity of items listed in OpenMP
clauses. In most cases they need to be variables, some clauses allow
"extended list items", i.e. variables or procedures.


  Commit: 3829fd75c858c97437c0f7411238d57c2687dcb1
      https://github.com/llvm/llvm-project/commit/3829fd75c858c97437c0f7411238d57c2687dcb1
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

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

  Log Message:
  -----------
  [VPlan] Remove redundant getVPSingleValue for VPSingleDefRecipes (NFC).


  Commit: d905b1caf14d51ebdc67a3c114a2265d479f818c
      https://github.com/llvm/llvm-project/commit/d905b1caf14d51ebdc67a3c114a2265d479f818c
  Author: Benoit Jacob <jacob.benoit.1 at gmail.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M mlir/lib/Dialect/Vector/Transforms/VectorInsertExtractStridedSliceRewritePatterns.cpp
    M mlir/test/Dialect/Vector/vector-contiguous-extract-strided-slice-to-extract.mlir

  Log Message:
  -----------
  [MLIR] Vector dialect: Address post-merge review comments on #111541 (#111552)

Co-authored-by: Andrzej Warzyński <andrzej.warzynski at gmail.com>


  Commit: a199fb1229987d0885a4367e3a439db336069156
      https://github.com/llvm/llvm-project/commit/a199fb1229987d0885a4367e3a439db336069156
  Author: Mike Crowe <mac at mcrowe.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/modernize/UseStdFormatCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseStdFormatCheck.h
    M clang-tools-extra/clang-tidy/modernize/UseStdPrintCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseStdPrintCheck.h
    M clang-tools-extra/clang-tidy/utils/FormatStringConverter.cpp
    M clang-tools-extra/clang-tidy/utils/FormatStringConverter.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-std-format.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-std-print.rst
    M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/inttypes.h
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-print.cpp

  Log Message:
  -----------
  [clang-tidy] Only expand <inttypes.h> macros in modernize-use-std-format/print (#97911)

Expanding all macros in the printf/absl::StrFormat format string before
conversion could easily break code if those macros are expanded change
their definition between builds. It's important for this check to expand
the <inttypes.h> PRI macros though, so let's ensure that the presence of
any other macros in the format string causes the check to emit a warning
and not perform any conversion.


  Commit: 36fc291b6ec6d4c8e3d956d6855631ab2db7b05a
      https://github.com/llvm/llvm-project/commit/36fc291b6ec6d4c8e3d956d6855631ab2db7b05a
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    A llvm/test/Transforms/LoopVectorize/AArch64/blend-costs.ll
    M llvm/test/Transforms/LoopVectorize/X86/replicate-uniform-call.ll

  Log Message:
  -----------
  [VPlan] Implement VPBlendRecipe::computeCost.

Implement VPBlendRecipe::computeCost. VPBlendRecipe is currently is also
used if only the first lane is used.

This also requires pre-computing costs for forced scalars and
instructions considered profitable to scalarize. For those, the cost
will be computed separately in the legacy cost model. This will also be
needed when implementing VPReplicateRecipe::computeCost.


  Commit: a65a5feb1a20581c85ee817dae8826f65fef62af
      https://github.com/llvm/llvm-project/commit/a65a5feb1a20581c85ee817dae8826f65fef62af
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/RISCV/complex-loads.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/remarks-insert-into-small-vector.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/reversed-strided-node-with-external-ptr.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/scatter-vectorize-reversed.ll
    M llvm/test/Transforms/SLPVectorizer/X86/remark_gather-load-redux-cost.ll

  Log Message:
  -----------
  [SLP]Improve masked loads vectorization, attempting gathered loads

If the vector of loads can be vectorized as masked gather and there are
several other masked gather nodes, compiler can try to attempt to check,
if it possible to gather such nodes into big consecutive/strided loads
  node, which provide better performance.

Reviewers: RKSimon

Reviewed By: RKSimon

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


  Commit: 9f3c55954eaa71910caa0abbb404db02d3a104c1
      https://github.com/llvm/llvm-project/commit/9f3c55954eaa71910caa0abbb404db02d3a104c1
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/horizontal-minmax.ll

  Log Message:
  -----------
  [SLP]Fix loads sorting for loads from diffrent basic blocks

Patch fixes lookup for loads from different basic blocks. Originally,
the code checked is the main key (combined with parent basic block) was
created, but did not include the key into LoadsMap. When the code looked for
the load pointer in LoadsMap, it skipped check for parent basic block
and could mix loads from different basic blocks (but the same underlying
pointer). Currently, it does lead to any issues, since later the code
compares parent basic blocks and sorts loads properly. But it increases
compile time and affects compile time.

Reviewers: RKSimon

Reviewed By: RKSimon

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


  Commit: 75611caff4fab2f73358ae1f4c4f490622cfaa1d
      https://github.com/llvm/llvm-project/commit/75611caff4fab2f73358ae1f4c4f490622cfaa1d
  Author: cor3ntin <corentinjabot at gmail.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/TokenKinds.def
    M clang/lib/Lex/PPMacroExpansion.cpp
    M clang/test/Preprocessor/feature_tests.cpp

  Log Message:
  -----------
  [Clang] Improve type traits recognition in `__has_builtin` (#111516)

`__has_builtin` was relying on reversible identifiers and string
matching to recognize builtin-type traits, leading to some newer type
traits not being recognized.

Fixes #111477


  Commit: 9b82e85d81756531ca645e83010905e2679245bc
      https://github.com/llvm/llvm-project/commit/9b82e85d81756531ca645e83010905e2679245bc
  Author: Zequan Wu <zequanwu at google.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/include/llvm/DebugInfo/DWARF/DWARFDie.h
    M llvm/include/llvm/DebugInfo/DWARF/DWARFTypePrinter.h
    M llvm/lib/DebugInfo/DWARF/CMakeLists.txt
    M llvm/lib/DebugInfo/DWARF/DWARFDie.cpp
    R llvm/lib/DebugInfo/DWARF/DWARFTypePrinter.cpp

  Log Message:
  -----------
  [DWARF] Generalize DWARFTypePrinter to a template class (#109459)

This generalizes DWARFTypePrinter class to a template class so that it
can be reused for lldb's DWARFDIE type.

This is a split of https://github.com/llvm/llvm-project/pull/90008. The
difference is that this doesn't have `Visitor` template parameter which
can be added later if necessary.


  Commit: 3423a5e3b779db8f2e8018fad477abff67b33404
      https://github.com/llvm/llvm-project/commit/3423a5e3b779db8f2e8018fad477abff67b33404
  Author: Chris Apple <cja-private at pm.me>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M compiler-rt/lib/rtsan/rtsan.cpp
    M compiler-rt/lib/rtsan/rtsan_assertions.h
    M compiler-rt/lib/rtsan/tests/rtsan_test_assertions.cpp

  Log Message:
  -----------
  [rtsan][NFC] Refactor where we unwind the stack (#111443)

This change alters where we unwind the stack. We now do it in ExpectNotRealtime, and pass in the DiagnosticInfo and Stack to OnViolation.


  Commit: 29d6f8aadba3e72c4dd093a0ae09e1207db4b10e
      https://github.com/llvm/llvm-project/commit/29d6f8aadba3e72c4dd093a0ae09e1207db4b10e
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/DebugInfo/DWARF/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 9b82e85d8175


  Commit: 6fbbe152fa795dffde72982d928550ff9c520392
      https://github.com/llvm/llvm-project/commit/6fbbe152fa795dffde72982d928550ff9c520392
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPRecipeBuilder.h
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanValue.h
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-call.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/widen-call-with-intrinsic-or-libfunc.ll
    M llvm/test/Transforms/LoopVectorize/vplan-dot-printing.ll
    M llvm/test/Transforms/LoopVectorize/vplan-printing.ll
    M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp

  Log Message:
  -----------
  [VPlan] Introduce VPWidenIntrinsicRecipe to separate from libcall. (#110486)

This patch splits off intrinsic hanlding to a new
VPWidenIntrinsicRecipe. VPWidenIntrinsicRecipes only need access to the
intrinsic ID to widen and the scalar result type (in case the intrinsic
is overloaded on the result type). It does not need access to an
underlying IR call instruction or function.

This means VPWidenIntrinsicRecipe can be created easily without access
to underlying IR.


  Commit: c6d6da4659599507b44c167f335639082f28fae6
      https://github.com/llvm/llvm-project/commit/c6d6da4659599507b44c167f335639082f28fae6
  Author: Lang Hames <lhames at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/MachOPlatform.h
    M llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
    M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
    M llvm/tools/llvm-jitlink/llvm-jitlink.cpp

  Log Message:
  -----------
  [ORC][MachO] Remove the ExecutionSession& argument to MachOPlatform::Create.

We can get a reference to the ExecutionSession from the ObjectLinkingLayer
argument, so there's no need to pass it in separately.


  Commit: 56d2c626f75e86923facefb9f0c27c94152afc50
      https://github.com/llvm/llvm-project/commit/56d2c626f75e86923facefb9f0c27c94152afc50
  Author: Vasileios Porpodas <vporpodas at google.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Interval.h
    M llvm/lib/Transforms/Vectorize/CMakeLists.txt
    A llvm/lib/Transforms/Vectorize/SandboxVectorizer/Interval.cpp

  Log Message:
  -----------
  [SandboxVec][Interval] Add print() and dump()


  Commit: 0c0ec040ac89608d5f746750a654f645c97434bc
      https://github.com/llvm/llvm-project/commit/0c0ec040ac89608d5f746750a654f645c97434bc
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Transforms/Vectorize/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 56d2c626f75e


  Commit: e5fae7682dac8c3ffa5f062078e6112d021cc63b
      https://github.com/llvm/llvm-project/commit/e5fae7682dac8c3ffa5f062078e6112d021cc63b
  Author: Sterling-Augustine <56981066+Sterling-Augustine at users.noreply.github.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SeedCollector.h
    M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/SeedCollectorTest.cpp

  Log Message:
  -----------
  [SandboxVectorizer] Add MemSeed bundle types (#111584)


  Commit: a8eb12cdc9a218e4828863f280d2b9f022dac757
      https://github.com/llvm/llvm-project/commit/a8eb12cdc9a218e4828863f280d2b9f022dac757
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
    A compiler-rt/test/sanitizer_common/TestCases/Darwin/freadlink.c

  Log Message:
  -----------
  [compiler-rt] Reapply freadlink interception for macOs. (#110917)

Fixed test, needed explicit O_SYMLINK on symbolic link opening.


  Commit: 87b491a95c3a8f17bd5c6e578104289954c16456
      https://github.com/llvm/llvm-project/commit/87b491a95c3a8f17bd5c6e578104289954c16456
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

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

  Log Message:
  -----------
  [NFC] [MTE] get rid of unnecessary cast (#110336)


  Commit: 5f36042508c1ba765df503a493beafb20bf9ddd0
      https://github.com/llvm/llvm-project/commit/5f36042508c1ba765df503a493beafb20bf9ddd0
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
    M llvm/lib/Target/AArch64/AArch64StackTagging.cpp
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp

  Log Message:
  -----------
  [NFC] [HWASan] [MTE] factor out threadlong increment (#110340)


  Commit: 1a193137e3125c3abb107dd4e526163e0851253a
      https://github.com/llvm/llvm-project/commit/1a193137e3125c3abb107dd4e526163e0851253a
  Author: Samuel Holland <samuel.holland at sifive.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

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

  Log Message:
  -----------
  [RISC-V][HWASAN] Fix incorrect comments (#103728)

These comments were confusing because they do not match the code.


  Commit: 4cab01f07262e0347cf08b061eef9a89957151ce
      https://github.com/llvm/llvm-project/commit/4cab01f07262e0347cf08b061eef9a89957151ce
  Author: ShatianWang <38512325+ShatianWang at users.noreply.github.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    A bolt/include/bolt/Passes/ContinuityStats.h
    M bolt/lib/Passes/CMakeLists.txt
    A bolt/lib/Passes/ContinuityStats.cpp
    M bolt/lib/Rewrite/BinaryPassManager.cpp
    A bolt/test/X86/cfg-discontinuity-reporting.test

  Log Message:
  -----------
  [BOLT] Profile quality stats -- CFG discontinuity (#109683)

In a perfect profile, each positive-execution-count block in the
function’s CFG should be reachable from a positive-execution-count
function entry block through a positive-execution-count path. This new
pass checks how well the BOLT input profile satisfies this “CFG
continuity” property.

More specifically, for each of the hottest 1000 functions, the pass
calculates the function’s fraction of basic block execution counts that
is “unreachable”. It then reports the 95th percentile of the
distribution of the 1000 unreachable fractions in a single BOLT-INFO
line. The smaller the reported value is, the better the BOLT profile
satisfies the CFG continuity property.

The default value of 1000 above can be changed via the hidden BOLT
option `-num-functions-for-continuity-check=[N]`. If more detailed stats
are needed, `-v=1` can be added to the BOLT invocation: the hottest N
functions will be grouped into 5 equally-sized buckets, from the hottest
to the coldest; for each bucket, various summary statistics of the
distribution of the fractions and the raw unreachable execution counts
will be reported.


  Commit: a85eb345603b9588ecf0e0c782d2c599580acc58
      https://github.com/llvm/llvm-project/commit/a85eb345603b9588ecf0e0c782d2c599580acc58
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

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

  Log Message:
  -----------
  [gn build] Port 4cab01f07262


  Commit: 0e86e5214c7ba4fbf99b632b080db82716fd9db0
      https://github.com/llvm/llvm-project/commit/0e86e5214c7ba4fbf99b632b080db82716fd9db0
  Author: Maksim Panchenko <maks at fb.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M bolt/lib/Passes/ADRRelaxationPass.cpp
    A bolt/test/AArch64/adr-relaxation.s

  Log Message:
  -----------
  [BOLT][AArch64] Reduce the number of ADR relaxations (#111577)

If ADR instruction references the same function, we can skip relaxation
even if the function is split but ADR is in the main fragment.


  Commit: 04a8bffdf7b1d6e30616561de1734373375cfef5
      https://github.com/llvm/llvm-project/commit/04a8bffdf7b1d6e30616561de1734373375cfef5
  Author: vporpo <vporpodas at google.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/Utils.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Interval.h
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
    M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp

  Log Message:
  -----------
  [SandboxVec][DAG] Build actual dependencies (#111094)

This patch implements actual dependencies checking using BatchAA. This
adds memory dep edges between MemDGNodes.


  Commit: aabddc91b475b2cbb64320a35d3bc595d48fddfb
      https://github.com/llvm/llvm-project/commit/aabddc91b475b2cbb64320a35d3bc595d48fddfb
  Author: DarshanRamakant <darshanbhatsirsi at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M mlir/lib/Dialect/Affine/Utils/Utils.cpp
    M mlir/test/Dialect/MemRef/normalize-memrefs.mlir

  Log Message:
  -----------
  [MLIR][memref] Fix normalization issue in memref.load (#107771)

This change will fix the normalization issue with
memref.load when the associated affine map is
reducing the dimension.
This PR fixes #82675

Co-authored-by: Kai Sasaki <lewuathe at gmail.com>


  Commit: c80f48491b150197d758f0906011b44472fa2dd5
      https://github.com/llvm/llvm-project/commit/c80f48491b150197d758f0906011b44472fa2dd5
  Author: Igor Kudrin <ikudrin at accesssoftek.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M lldb/include/lldb/Utility/Status.h

  Log Message:
  -----------
  [lldb][NFC] Fix a build failure with MSVC (#111231)

This fixes a build error with msvc for code introduced in #106442:

```
...\lldb\source\Expression\DiagnosticManager.cpp(37): error C2668: 'llvm::ErrorInfo<lldb_private::ExpressionError,lldb_private::ExpressionErrorBase>::ErrorInfo': ambiguous call to overloaded function
...\llvm\include\llvm/Support/Error.h(357): note: could be 'llvm::ErrorInfo<lldb_private::ExpressionError,lldb_private::ExpressionErrorBase>::ErrorInfo(std::error_code)', which inherits 'lldb_private::CloneableECError::CloneableECError(std::error_code)' via base class 'lldb_private::ExpressionErrorBase'
...\llvm\include\llvm/Support/Error.h(357): note: or       'llvm::ErrorInfo<lldb_private::ExpressionError,lldb_private::ExpressionErrorBase>::ErrorInfo(std::error_code,std::string)', which inherits 'lldb_private::ExpressionErrorBase::ExpressionErrorBase(std::error_code,std::string)' via base class 'lldb_private::ExpressionErrorBase'
...\lldb\source\Expression\DiagnosticManager.cpp(37): note: while trying to match the argument list '(std::error_code)'
```


  Commit: ff6facaa61d9bd58ec375be80fc725b2bb6fbadf
      https://github.com/llvm/llvm-project/commit/ff6facaa61d9bd58ec375be80fc725b2bb6fbadf
  Author: Enna1 <xumingjie.enna1 at bytedance.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/test/CodeGen/RISCV/riscv-atomics.c
    M clang/test/CodeGen/atomics-sema-alignment.c
    M libcxx/test/configs/armv7m-picolibc-libc++.cfg.in

  Log Message:
  -----------
  [clang] remove extra space in warn_atomic_op_oversized (NFC) (#110955)


  Commit: 181840459d2c8841ab8a564d4fbac6efc65e0fa9
      https://github.com/llvm/llvm-project/commit/181840459d2c8841ab8a564d4fbac6efc65e0fa9
  Author: William G Hatch <william at hatch.uno>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/lib/CodeGen/LiveDebugValues/LiveDebugValues.cpp
    M llvm/lib/CodeGen/LiveDebugValues/VarLocBasedImpl.cpp
    M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
    M llvm/test/DebugInfo/NVPTX/debug-info.ll

  Log Message:
  -----------
  [LiveDebugValues][NVPTX]VarLocBasedImpl handle vregs, enable for NVPTX (#111456)

This patch handles virtual registers in the VarLocBasedImpl of the
LiveDebugVariables pass, allowing it to be used on architectures that
depend on virtual registers in debugging, like NVPTX. It enables the
pass for NVPTX.


  Commit: 64a22b3e69587c83566a83e793764f2a13733f0b
      https://github.com/llvm/llvm-project/commit/64a22b3e69587c83566a83e793764f2a13733f0b
  Author: William G Hatch <william at hatch.uno>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXRegisterInfo.cpp

  Log Message:
  -----------
  [NVPTX] fix debug register encoding of special %Depot register (#111596)

cuda-gdb doesn't seem to be able to read the `%Depot` register, but
because we always copy it to `%SP` in lowering, simply switching to use
it fixes the problem.


  Commit: bb8df02dfbb40c5a6717ad3b7e8e5811acc6d164
      https://github.com/llvm/llvm-project/commit/bb8df02dfbb40c5a6717ad3b7e8e5811acc6d164
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

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

  Log Message:
  -----------
  [RISCV] Use the MCStreamer reference passed to RISCVAsmPrinter::EmitToStreamer. NFCI (#111607)

We passed a MCStreamer to the function but hardcoded *OutStreamer
instead of using it. It's very likely that OutStreamer is the only
streamer used, but lets not assume that without doing the audit.


  Commit: 267e852109381fe35cff0a92915a0418b872213f
      https://github.com/llvm/llvm-project/commit/267e852109381fe35cff0a92915a0418b872213f
  Author: Vasileios Porpodas <vporpodas at google.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp

  Log Message:
  -----------
  [SandboxVec][DAG][NFC] Rename enumerators


  Commit: 1e81056b31749f7b60d56260089f75a4813749c0
      https://github.com/llvm/llvm-project/commit/1e81056b31749f7b60d56260089f75a4813749c0
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp

  Log Message:
  -----------
  [Coroutines] Avoid repeated hash lookups (NFC) (#111617)


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

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp

  Log Message:
  -----------
  [InstCombine] Avoid repeated hash lookups (NFC) (#111618)


  Commit: 0ee5c869fc003b09e464e079d6bbaab1baf59aba
      https://github.com/llvm/llvm-project/commit/0ee5c869fc003b09e464e079d6bbaab1baf59aba
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M mlir/lib/Dialect/SPIRV/IR/SPIRVOps.cpp

  Log Message:
  -----------
  [mlir][spirv] Avoid repeated hash lookups (NFC) (#111619)


  Commit: a579782a775ebc2bfe6203d7178ee524b3559006
      https://github.com/llvm/llvm-project/commit/a579782a775ebc2bfe6203d7178ee524b3559006
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/include/llvm/ADT/APFixedPoint.h
    M llvm/lib/Support/APFixedPoint.cpp
    M llvm/unittests/ADT/APFixedPointTest.cpp

  Log Message:
  -----------
  [llvm] Add serialization to uint32_t for FixedPointSemantics (#110288)

FixedPointSemantics is exactly 32bits and this static_assert'ed after
its declaration. Add support for converting it to and from a uint32_t.


  Commit: 1809d0fa1c15b16ca94381d8be3ef70c4a83c36b
      https://github.com/llvm/llvm-project/commit/1809d0fa1c15b16ca94381d8be3ef70c4a83c36b
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/unittests/Format/FormatTest.cpp

  Log Message:
  -----------
  [clang-format] Insert a space between l_paren and ref-qualifier (#111465)

Fixes #111346.


  Commit: d0b9c2c5647656738cda3fb670aa5d3b3a69d784
      https://github.com/llvm/llvm-project/commit/d0b9c2c5647656738cda3fb670aa5d3b3a69d784
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
    R compiler-rt/test/sanitizer_common/TestCases/FreeBSD/md5.cpp
    R compiler-rt/test/sanitizer_common/TestCases/FreeBSD/sha2.cpp
    R compiler-rt/test/sanitizer_common/TestCases/NetBSD/md5.cpp
    R compiler-rt/test/sanitizer_common/TestCases/NetBSD/sha2.cpp

  Log Message:
  -----------
  [compiler-rt] Remove SHA2 interceptions for NetBSD/FreeBSD. (#110246)

To Fix #110215

Interceptors introduced with 18a7ebda99044473fdbce6376993714ff54e6690


  Commit: d50302f31cee86d3270a34f5739c63a41f60f2c1
      https://github.com/llvm/llvm-project/commit/d50302f31cee86d3270a34f5739c63a41f60f2c1
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M clang/lib/CodeGen/Targets/AMDGPU.cpp
    R clang/test/CodeGenCUDA/amdgpu-func-attrs.cu
    M clang/test/OpenMP/amdgcn-attributes.cpp

  Log Message:
  -----------
  clang/AMDGPU: Stop emitting amdgpu-unsafe-fp-atomics attribute (#111579)


  Commit: 4336f00f2156970cc0af2816331387a0a4039317
      https://github.com/llvm/llvm-project/commit/4336f00f2156970cc0af2816331387a0a4039317
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/AST/DeclBase.h
    M clang/include/clang/AST/DeclTemplate.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/AST/Decl.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    A clang/test/SemaTemplate/GH55509.cpp

  Log Message:
  -----------
  [clang] Track function template instantiation from definition (#110387)

This fixes instantiation of definition for friend function templates,
when the declaration found and the one containing the definition
have different template contexts.

In these cases, the the function declaration corresponding to the
definition is not available; it may not even be instantiated at all.

So this patch adds a bit which tracks which function template
declaration was instantiated from the member template.
It's used to find which primary template serves as a context
for the purpose of obtaining the template arguments needed
to instantiate the definition.

Fixes #55509


  Commit: fbd2a918652894b31199dffe1ce5335b019332d7
      https://github.com/llvm/llvm-project/commit/fbd2a918652894b31199dffe1ce5335b019332d7
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
    A llvm/test/Transforms/InferAddressSpaces/fake-use.ll

  Log Message:
  -----------
  InferAddressSpaces: Handle llvm.fake.use (#109567)


  Commit: c198f775cdcd731f68fb482c223702c7273d41ca
      https://github.com/llvm/llvm-project/commit/c198f775cdcd731f68fb482c223702c7273d41ca
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/FLATInstructions.td
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/Bitcode/amdgcn-atomic.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fp64-atomics-gfx90a.ll
    M llvm/test/CodeGen/AMDGPU/dag-divergence-atomic.ll
    R llvm/test/CodeGen/AMDGPU/fp-min-max-flat-atomics-f64.ll
    R llvm/test/CodeGen/AMDGPU/fp-min-max-flat-atomics.ll
    R llvm/test/CodeGen/AMDGPU/fp-min-max-global-atomics-f64.ll
    R llvm/test/CodeGen/AMDGPU/fp-min-max-global-atomics.ll
    M llvm/test/CodeGen/AMDGPU/fp64-atomics-gfx90a.ll
    R llvm/test/Transforms/InferAddressSpaces/AMDGPU/flat-fadd-fmin-fmax-intrinsics.ll
    M llvm/test/Transforms/InferAddressSpaces/AMDGPU/flat_atomic.ll

  Log Message:
  -----------
  AMDGPU: Remove flat/global fmin/fmax intrinsics (#105642)

These have been replaced with atomicrmw


  Commit: 3dba4ca155e0b460ca82917b25d3624eb5825940
      https://github.com/llvm/llvm-project/commit/3dba4ca155e0b460ca82917b25d3624eb5825940
  Author: Lang Hames <lhames at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/MachOPlatform.h
    M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp

  Log Message:
  -----------
  [ORC][MachO] Remove the ExecutionSession& argument to MachOPlatform constructor.

We can get a reference to the ExecutionSession from the ObjectLinkingLayer
argument, so there's no need to pass it in separately.


  Commit: 55dd29c61d1bd5509504ef0c6014b3879567eb17
      https://github.com/llvm/llvm-project/commit/55dd29c61d1bd5509504ef0c6014b3879567eb17
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-08 (Tue, 08 Oct 2024)

  Changed paths:
    M llvm/tools/llvm-profdata/llvm-profdata.cpp

  Log Message:
  -----------
  [llvm-profdata] Avoid repeated hash lookups (NFC) (#111629)


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

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cpp

  Log Message:
  -----------
  [sanitizer] Report -> VReport for ThreadLister failure


  Commit: a06591b4d4fb270b587fc5ef67b5a03dad752b40
      https://github.com/llvm/llvm-project/commit/a06591b4d4fb270b587fc5ef67b5a03dad752b40
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M libcxx/docs/FeatureTestMacroTable.rst
    M libcxx/docs/ReleaseNotes/20.rst
    M libcxx/docs/Status/Cxx23Papers.csv
    M libcxx/include/CMakeLists.txt
    A libcxx/include/__type_traits/is_implicit_lifetime.h
    M libcxx/include/module.modulemap
    M libcxx/include/type_traits
    M libcxx/include/version
    M libcxx/modules/std/type_traits.inc
    M libcxx/test/std/language.support/support.limits/support.limits.general/type_traits.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    A libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_implicit_lifetime.pass.cpp
    A libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_implicit_lifetime.verify.cpp
    M libcxx/utils/generate_feature_test_macro_components.py

  Log Message:
  -----------
  [libc++][type_traits] P2674R1: A trait for implicit lifetime types (#106870)

Implements P2674R1: https://wg21.link/P2674R1

- https://eel.is/c++draft/type.traits
  - https://eel.is/c++draft/meta.type.synop
  - https://eel.is/c++draft/meta.unary.prop
- https://eel.is/c++draft/support.limits
  - https://eel.is/c++draft/version.syn

Implementation details:
- Uses compiler intrinsic `__builtin_is_implicit_lifetime`:
  - https://github.com/llvm/llvm-project/pull/101807
- Tests based on:
-
https://github.com/llvm/llvm-project/blob/d213981c80626698a07b11ce872acba098a863d4/clang/test/SemaCXX/type-traits.cpp#L1989

References:
- Implicit-lifetime
- Implicit-lifetime types [basic.types.general]/9:
https://eel.is/c++draft/basic.types.general
- Implicit-lifetime class [class.prop]/9:
https://eel.is/c++draft/class.prop
- P0593R6 Implicit creation of objects for low-level object
manipulation: https://wg21.link/P0593R6
- P1010R1 Container support for implicit lifetime types:
https://wg21.link/P1010R1
- P0593R6 Implicit creation of objects for low-level object
manipulation: https://wg21.link/P0593R6

Closes: #105259

---------

Co-authored-by: Hristo Hristov <zingam at outlook.com>


  Commit: 3c1d9b8ec7474f076ddd842d2b6c562728e9b90a
      https://github.com/llvm/llvm-project/commit/3c1d9b8ec7474f076ddd842d2b6c562728e9b90a
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn

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


  Commit: fb2960aad93f6c02e0ea8de0568c0aef8896eee8
      https://github.com/llvm/llvm-project/commit/fb2960aad93f6c02e0ea8de0568c0aef8896eee8
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M compiler-rt/lib/profile/InstrProfiling.h
    M compiler-rt/lib/profile/InstrProfilingInternal.h
    M compiler-rt/lib/profile/InstrProfilingPort.h
    M compiler-rt/lib/profile/InstrProfilingUtil.h

  Log Message:
  -----------
  [compiler-rt] [profile] Add missing (void) to prototypes, for C sources (#110642)

If built as part of the main llvm build, via
ENABLE_LLVM_PROJECTS=compiler-rt, the code gets built with more warning
options than if built standalone. Some of these trigger warnings like:

warning: a function declaration without a prototype is deprecated in all
versions of C [-Wstrict-prototypes]


  Commit: 3be691651a2143f23bcf8f2704e55b01bbaa2550
      https://github.com/llvm/llvm-project/commit/3be691651a2143f23bcf8f2704e55b01bbaa2550
  Author: Thomas Fransham <tfransham at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Config/abi-breaking.h.cmake

  Log Message:
  -----------
  Add symbol visibility macros to abi-breaking.h.cmake (#110898)

Annotating these symbols will fix missing symbols errors for Bugpoint
when when the default symbol visibility is set to hidden for LLVM.

This is part of the work to enable LLVM_BUILD_LLVM_DYLIB and plugins on
window.

Co-authored-by: Tom Stellard <tstellar at redhat.com>


  Commit: ada6372e52547ba0090f52a2e9e9d95d7eca28d3
      https://github.com/llvm/llvm-project/commit/ada6372e52547ba0090f52a2e9e9d95d7eca28d3
  Author: Hans Wennborg <hans at chromium.org>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Frontend/FrontendActions.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/test/CXX/temp/temp.arg/temp.arg.template/p3-0x.cpp
    M clang/test/CXX/temp/temp.fct.spec/temp.deduct/temp.deduct.type/p9-0x.cpp
    M clang/test/CXX/temp/temp.param/p12.cpp
    M clang/test/Modules/cxx-templates.cpp
    M clang/test/SemaCXX/make_integer_seq.cpp
    M clang/test/SemaTemplate/cwg2398.cpp
    M clang/test/SemaTemplate/temp_arg_nontype.cpp
    M clang/test/SemaTemplate/temp_arg_template.cpp
    M clang/test/SemaTemplate/temp_arg_template_p0522.cpp
    M clang/test/Templight/templight-empty-entries-fix.cpp
    M clang/test/Templight/templight-prior-template-arg.cpp
    M libcxx/test/libcxx/type_traits/is_specialization.verify.cpp

  Log Message:
  -----------
  Revert "[clang] Finish implementation of P0522 (#96023)"

This caused Clang to reject valid code, see discussion on the PR
https://github.com/llvm/llvm-project/pull/96023#issuecomment-2393228464
and https://github.com/llvm/llvm-project/issues/111363

This reverts commit 6afe56732a172d3f2cbd0330b1fcb34bbfd002a9 and
follow-up commit 9abb97f9663a27fe5b8e346ed557b3435aa9ec2f.


  Commit: 3bf33ecec8f0501f6b370bb2bc6ef01f4f98eaa2
      https://github.com/llvm/llvm-project/commit/3bf33ecec8f0501f6b370bb2bc6ef01f4f98eaa2
  Author: David Green <david.green at arm.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/test/CodeGen/AArch64/concat-vector.ll

  Log Message:
  -----------
  [GlobalISel] Fold bitcast(undef) to undef. (#111491)

As with other operations such as trunc and fp converts, it should be
valid to convert bitcast(undef) to undef.


  Commit: e2dc50c92987e6886b1b1641ebdbe9cc53bae192
      https://github.com/llvm/llvm-project/commit/e2dc50c92987e6886b1b1641ebdbe9cc53bae192
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/docs/CMake.rst

  Log Message:
  -----------
  [docs] Update the libc++ documentation link

The link has changed a while ago, which means that the old link is now a
404. This fixes the link to point to the correct documentation.


  Commit: 275a2b05813b2f10f403375abd72d1843e4544c3
      https://github.com/llvm/llvm-project/commit/275a2b05813b2f10f403375abd72d1843e4544c3
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp

  Log Message:
  -----------
  [MLIR][Tensor] Perform shape inference via in-place modification (NFC) (#111593)

This is more efficient to avoid a clone that is immediately removed. 
Also guard the insertion of a cast on the result on whether the
destination type changed.


  Commit: fed8695bb846bf99884c1b54863d58b369c2b340
      https://github.com/llvm/llvm-project/commit/fed8695bb846bf99884c1b54863d58b369c2b340
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/Opcodes.td
    M clang/test/AST/ByteCode/builtin-functions.cpp

  Log Message:
  -----------
  [clang][bytecode] Emit better diagnostic for invalid shufflevector index (#111643)


  Commit: b9314a82196a656e2bcc48459123a98ccc02a54d
      https://github.com/llvm/llvm-project/commit/b9314a82196a656e2bcc48459123a98ccc02a54d
  Author: Dmitriy Smirnov <dmitriy.smirnov at arm.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M mlir/lib/Conversion/MathToSPIRV/MathToSPIRV.cpp
    M mlir/test/Conversion/MathToSPIRV/math-to-gl-spirv.mlir

  Log Message:
  -----------
  [mlir][spirv] Update math.powf lowering (#111388)

The PR updates math.powf lowering to produce NaN result for a negative
base with a fractional exponent which matches the actual behaviour of
the C/C++ implementation.


  Commit: ef739e78ff82d15dfdb4d7817c5a2990a89cf5ea
      https://github.com/llvm/llvm-project/commit/ef739e78ff82d15dfdb4d7817c5a2990a89cf5ea
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/Sema/asm.c
    M clang/test/Sema/caret-diags-register-variable.cpp

  Log Message:
  -----------
  [clang] Change "bad" to "unsupported" in register type error (#111550)

This is maybe a personal take but I expect "bad" to either mean:
* Allowed but not ideal, like a "bad" memory alignment might work but it
is slow.
* The tool won't allow it but is going to tell me why it didn't.

The current error doesn't elaborate so I think it's best we just say
"unsupported" instead. This is clear that the type used is not allowed
at all.


  Commit: a4de127086ba4e39effb28642973edbb758e9656
      https://github.com/llvm/llvm-project/commit/a4de127086ba4e39effb28642973edbb758e9656
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M libclc/CMakeLists.txt

  Log Message:
  -----------
  [libclc] Give a helpful error when an unknown target is requested (#111528)

I just tried using LLVM backend names here e.g. NVPTX but libclc want's
targets more like triples. This change adds a mesasge to tell you that.

Before you got:
```
 libclc target 'AMDGCN' is enabled
 CMake Error at CMakeLists.txt:253 (list):
   list index: 1 out of range (-1, 0)

 CMake Error at CMakeLists.txt:254 (list):
   list index: 2 out of range (-1, 0)

 Configuring incomplete, errors occurred!
```
Now you get:

```
 CMake Error at CMakeLists.txt:145 (message):
   Unknown target in LIBCLC_TARGETS_TO_BUILD: "AMDGCN"

   Valid targets are:
   amdgcn--;amdgcn--amdhsa;clspv--;clspv64--;r600--;nvptx--;nvptx64--;nvptx--nvidiacl;nvptx64--nvidiacl;amdgcn-mesa-mesa3d
```
Some of the targets are dynamic based on what is installed, so spirv
isn't here for me because I don't have llvm-spirv installed yet.

So this is not perfect but it's an improvement on the current behaviour.


  Commit: de4f2c976f9fa11173c71b2b070225c9be89ceef
      https://github.com/llvm/llvm-project/commit/de4f2c976f9fa11173c71b2b070225c9be89ceef
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/runInTerminal/TestDAP_runInTerminal.py

  Log Message:
  -----------
  [lldb][test] Enable TestDAP_runInTerminal on non-x86 architectures (#111543)

I don't see an obvious reason it has to be x86 specific and local
testing on Arm and AArch64 is fine.

Originally disabled in 50337fb933e0f666d34d747a43d46840b3982bf7 in
response to failures apparently caused by
https://reviews.llvm.org/D93951.

Perhaps those still exist but worth trying this and checking I think.


  Commit: 5be1024ea7518b8823fa97c00cbda7ea29b0a259
      https://github.com/llvm/llvm-project/commit/5be1024ea7518b8823fa97c00cbda7ea29b0a259
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M .ci/generate-buildkite-pipeline-premerge

  Log Message:
  -----------
  [ci] Use check-compiler-rt target for testing compiler-rt (#111515)

Instead of "check-all" which leads to us running some tests twice if
there are other "check-..." targets. For example on one of my PRs this
script produced:
```
commands:
  - './.ci/monolithic-linux.sh "clang;clang;lld;clang-tools-extra;compiler-rt;llvm" "check-all check-clang check-clang-tools" "libcxx;libcxxabi;libunwind" "check-cxx check-cxxabi check-unwind"'
  commands:
  - 'C:\BuildTools\Common7\Tools\VsDevCmd.bat -arch=amd64 -host_arch=amd64'
  - 'bash .ci/monolithic-windows.sh "clang;clang-tools-extra;llvm" "check-clang check-clang-tools"'
```
Which meant that Linux ran the clang and clang-tools tests twice. These
extra tests were about 24% of the test run and increased testing time
(on my local machine) by 45%.

This problem can also happen with other projects but there isn't a
simple fix like this one at the moment.
* pstl has a check-pstl target but it is not part of check-all and when
I tried it locally I couldn't build it.
* libclc has no check- target.

I will deal with those projects later.


  Commit: 10008f731d4afd1f2a0b48da38d482b23232a09d
      https://github.com/llvm/llvm-project/commit/10008f731d4afd1f2a0b48da38d482b23232a09d
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M .ci/generate-buildkite-pipeline-premerge

  Log Message:
  -----------
  [ci] Don't add a testing target for libclc (#111547)

According to
https://github.com/llvm/llvm-project/pull/111369#issuecomment-2400152471
there is no testing to be done here.

Adding "check-all" only risks duplicating tests if other project
specific "check-" targets are also added.


  Commit: 587f31fb28bab388ff87f1e321a2b32a07c5c0c2
      https://github.com/llvm/llvm-project/commit/587f31fb28bab388ff87f1e321a2b32a07c5c0c2
  Author: David Green <david.green at arm.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    A llvm/test/Transforms/InstCombine/log-to-intrinsic.ll

  Log Message:
  -----------
  [InstCombine] Add a test for converting log to an intrinsic. NFC


  Commit: e080be5ac2163bcc4fd81f9770dbaf4360bc1a8c
      https://github.com/llvm/llvm-project/commit/e080be5ac2163bcc4fd81f9770dbaf4360bc1a8c
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

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

  Log Message:
  -----------
  [NFC][LoopVectorize] Clean up some code around getting a context (#111114)

There are several places in LoopVectorize where we do more work
than necessary to obtain a LLVMContext. I've tried to make the
code more efficient.


  Commit: 67200f5dc8a662edd05928f97940c2fcabf42043
      https://github.com/llvm/llvm-project/commit/67200f5dc8a662edd05928f97940c2fcabf42043
  Author: Oliver Stannard <oliver.stannard at arm.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp
    M llvm/lib/Target/ARM/ARMFrameLowering.cpp
    M llvm/lib/Target/ARM/ARMSubtarget.cpp
    M llvm/lib/Target/ARM/ARMSubtarget.h
    M llvm/lib/Target/ARM/Thumb1FrameLowering.cpp

  Log Message:
  -----------
  [ARM] Tidy up stack frame strategy code (NFC) (#110283)

We have two different ways of splitting the pushes of callee-saved
registers onto the stack, controlled by the confusingly similar names
STI.splitFramePushPop() and STI.splitFramePointerPush(). This removes
those functions and replaces them with a single function which returns
an enum. This is in preparation for adding another value to that enum.

The original work of this patch was done by James Westwood, reviewed as
 #82801 and #81249, with some tidy-ups done by Mark Murray and myself.


  Commit: 2ecf2e242b5e4c808fc3f6f2230d2f68b9ee1004
      https://github.com/llvm/llvm-project/commit/2ecf2e242b5e4c808fc3f6f2230d2f68b9ee1004
  Author: Oliver Stannard <oliver.stannard at arm.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/lib/Target/ARM/ARMFrameLowering.cpp

  Log Message:
  -----------
  [ARM] Factor out code to determine spill areas (NFC) (#110283)

There were multiple loops in ARMFrameLowering which sort the callee
saved registers into spill areas, which were hard to understand and
modify. This splits the information about which register is in which
save area into a separate function.


  Commit: e817cfde41e661886538d7991c8fcf4164b98ee3
      https://github.com/llvm/llvm-project/commit/e817cfde41e661886538d7991c8fcf4164b98ee3
  Author: Oliver Stannard <oliver.stannard at arm.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/lib/Target/ARM/ARMBaseRegisterInfo.h
    M llvm/lib/Target/ARM/ARMFrameLowering.cpp
    M llvm/lib/Target/ARM/ARMFrameLowering.h

  Log Message:
  -----------
  [ARM] Refactor generation of push/pop instructions (NFC) (#110283)

These used a set of callback functions to check which callee-save area a
register is in, refactor them to use the same data as other parts of
ARMFrameLowering. This will make it easier to add a new variant to the
register splitting.


  Commit: 754c1f21700d7f6df3ee3bf86769c59cce1a6cfd
      https://github.com/llvm/llvm-project/commit/754c1f21700d7f6df3ee3bf86769c59cce1a6cfd
  Author: Oliver Stannard <oliver.stannard at arm.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/lib/Target/ARM/ARMFrameLowering.cpp

  Log Message:
  -----------
  [ARM] Add debug dump for StackAdjustingInsts (NFC) (#110283)


  Commit: baa1fc9825ca29a81f98146da6036e3415182f16
      https://github.com/llvm/llvm-project/commit/baa1fc9825ca29a81f98146da6036e3415182f16
  Author: Oliver Stannard <oliver.stannard at arm.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/lib/Target/ARM/Thumb1FrameLowering.cpp

  Log Message:
  -----------
  [ARM] Remove always-true checks from Thumb1 frame lowering (NFC) (#110283)

For Thumb1, we always split the callee-saved register pushes at R7, so
we don't need to check for this.


  Commit: 6004f5550c8032f4c632cdbf5dbc0894bb33e51f
      https://github.com/llvm/llvm-project/commit/6004f5550c8032f4c632cdbf5dbc0894bb33e51f
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/include/llvm/ADT/APFloat.h
    M llvm/lib/Support/APFloat.cpp

  Log Message:
  -----------
  [ADT][APFloat] Make sure EBO is performed on APFloat (#111641)

Since both APFloat and (Double)IEEEFloat inherit from APFloatBase, empty
base optimization is not performed by GCC/Clang (Minimal reproducer:
https://godbolt.org/z/dY8cM3Wre). This patch removes inheritance
relation between (Double)IEEEFloat and APFloatBase to make sure EBO is
performed on APFloat. After this patch, the size of `ConstantFPRange`
will be reduced from 72 to 56.

Address comment
https://github.com/llvm/llvm-project/pull/111544#discussion_r1792398427.


  Commit: 146d3f04ff92e396ea40ab581304e65e8511d8ac
      https://github.com/llvm/llvm-project/commit/146d3f04ff92e396ea40ab581304e65e8511d8ac
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M lldb/test/API/lang/c/shared_lib_stripped_symbols/TestSharedLibStrippedSymbols.py

  Log Message:
  -----------
  [lldb][test] Disable TestSharedLibStrippedSymbols on Arm

This has been flakey lately for example:
https://lab.llvm.org/buildbot/#/builders/18/builds/5139


  Commit: b43e003d90f0a7c045e9961a80013fc9c6d6e9b3
      https://github.com/llvm/llvm-project/commit/b43e003d90f0a7c045e9961a80013fc9c6d6e9b3
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/runInTerminal/TestDAP_runInTerminal.py

  Log Message:
  -----------
  Revert "[lldb][test] Enable TestDAP_runInTerminal on non-x86 architectures" (#111648)

Reverts llvm/llvm-project#111543

https://lab.llvm.org/buildbot/#/builders/18/builds/5140 failed here
again. Clearly there is something different on Arm but I don't know what
it is yet.


  Commit: a1bc3e63cc020aad75b55d8732ab7ae15ea1c973
      https://github.com/llvm/llvm-project/commit/a1bc3e63cc020aad75b55d8732ab7ae15ea1c973
  Author: Jonathan Cohen <jcohen22 at apple.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
    A llvm/test/MC/ARM/macho-relocs-with-addend-invalid.s
    M llvm/test/MC/ARM/macho-relocs-with-addend.s

  Log Message:
  -----------
  [ARMAsmBackend] Add checks for relocation addends in assembler (#109969)

This PR adds checks that any addends attached to branch instructions are
valid, and can be properly encoded in the branch instruction. Before
this fix, the assembler would silently truncate or round invalid addend
values, creating incorrect branch instructions.


  Commit: f016e105b31b29963cca87bfb30a179dacf260af
      https://github.com/llvm/llvm-project/commit/f016e105b31b29963cca87bfb30a179dacf260af
  Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M utils/bazel/llvm_configs/config.h.cmake

  Log Message:
  -----------
  [bazel] update config.h.cmake

for 84088d3a28fdc2d6314c59bfa11026a72b9b0bff


  Commit: 1a1de2465d8399b178149e7e23c7450fdc5dde9f
      https://github.com/llvm/llvm-project/commit/1a1de2465d8399b178149e7e23c7450fdc5dde9f
  Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M utils/bazel/llvm_configs/abi-breaking.h.cmake

  Log Message:
  -----------
  [bazel] update abi-breaking.h.cmake for 3be691651a2143f23bcf8f2704e55b01bbaa2550


  Commit: cc99bddb71738761bfe21490f3b6853da036cf97
      https://github.com/llvm/llvm-project/commit/cc99bddb71738761bfe21490f3b6853da036cf97
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

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

  Log Message:
  -----------
  AMDGPU: Avoid using hardcoded address space number


  Commit: b124c04597166cc93ca791d0ad07834c85de824d
      https://github.com/llvm/llvm-project/commit/b124c04597166cc93ca791d0ad07834c85de824d
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

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

  Log Message:
  -----------
  [Flang][OpenMP] Remove omp.simd reduction block args (#111523)

This patch reverts previous changes to create entry block arguments for
reduction variables attached to `simd` constructs.

This can't currently be done because reduction variables stored in the
corresponding clause structure are not added to the `omp.simd` operation
when created, as this is not supported yet. Adding block arguments for
non-existent reduction variables results in some tests from the Fujitsu
compiler testsuite breaking:
https://linaro.atlassian.net/browse/LLVM-1389.


  Commit: e71ac933716dc9a747b93b73e899e50b421ebcde
      https://github.com/llvm/llvm-project/commit/e71ac933716dc9a747b93b73e899e50b421ebcde
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

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

  Log Message:
  -----------
  [Flang][OpenMP] Properly reserve space for entry block argument lists (NFC) (#111529)

This patch adds the size for `use_device_ptr`, which was missing.


  Commit: 6472cb1e219f631ed504bb1c5675853168748d21
      https://github.com/llvm/llvm-project/commit/6472cb1e219f631ed504bb1c5675853168748d21
  Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/IPO/FunctionSpecialization.cpp
    M llvm/unittests/Transforms/IPO/FunctionSpecializationTest.cpp

  Log Message:
  -----------
  [FuncSpec] Improve estimation of select instruction. (#111176)

When propagating a constant to a select instruction we only consider the
condition operand as the use. I am extending the logic to consider the
true and false values too, in case the condition had been found to be
constant in a previous propagation but halted.


  Commit: af933f0661b0d3aed84bbe521420b83efd5b8685
      https://github.com/llvm/llvm-project/commit/af933f0661b0d3aed84bbe521420b83efd5b8685
  Author: Ash Vardanian <1983160+ashvardanian at users.noreply.github.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M clang/lib/Headers/cpuid.h

  Log Message:
  -----------
  [clang][x86] Missing `AVX512VP2INTERSECT` flag (#111435)

This patch adds support for detecting the `AVX512VP2INTERSECT` ISA extension.

It's useful for Intel Tiger Lake mobile CPUs and any Zen 5 AMD CPUs.

No functional changes yet, just defining the feature flag.


  Commit: b2edeb58b8cb3268acee425cd52b406eb60a8095
      https://github.com/llvm/llvm-project/commit/b2edeb58b8cb3268acee425cd52b406eb60a8095
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M openmp/cmake/OpenMPTesting.cmake
    M openmp/tools/archer/tests/CMakeLists.txt
    M openmp/tools/archer/tests/lit.site.cfg.in

  Log Message:
  -----------
  [openmp] Add option to disable tsan tests (#111548)

This adds a OPENMP_TEST_ENABLE_TSAN option that allows to override
whether tests using tsan will be enabled. The option defaults to the
existing auto-detection.

The background here is
https://github.com/llvm/llvm-project/issues/111492, where we have some
systems where tsan doesn't work, but we do still want to build it and
run tests that don't use tsan.


  Commit: 068d76b48093ccf8b55c4af6a6ccacfc1ce0ae53
      https://github.com/llvm/llvm-project/commit/068d76b48093ccf8b55c4af6a6ccacfc1ce0ae53
  Author: Balazs Benics <benicsbalazs at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Core/SValBuilder.cpp
    M clang/test/Analysis/range_casts.c

  Log Message:
  -----------
  [analyzer] Fix crash when casting the result of a malformed fptr call (#111390)

Ideally, we wouldn't workaround our current cast-modeling, but the
experimental "support-symbolic-integer-casts" is not finished so we need
to live with our current modeling.

Ideally, we could probably bind `UndefinedVal` as the result of the call
even without evaluating the call, as the result types mismatch between
the static type of the `CallExpr` and the actually function that happens
to be called.

Nevertheless, let's not crash.
https://compiler-explorer.com/z/WvcqK6MbY

CPP-5768


  Commit: 1be64e5413cbe9cfa89539f70ad02ee1d8945ebe
      https://github.com/llvm/llvm-project/commit/1be64e5413cbe9cfa89539f70ad02ee1d8945ebe
  Author: ivanaivanovska <iivanovska at google.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/unittests/Support/TimeProfilerTest.cpp

  Log Message:
  -----------
  [clang][Sema] Add instant event when template instantiation is deferred. (#111524)

While profiling a clang invocation using `-ftime-trace`, now we add
instant events when template instantiation is deferred.
These events include the fully qualified name of the function template
being deferred and therefore could be very verbose. This is therefore
only added in verbose mode (when `TimeTraceVerbose` is enabled).

The point of time when a particular instantiation is deferred can be
used to identify the parent TimeTrace scope (usually another function
instantiation), which is responsible for deferring this instantiation.
This relationship can be used to attribute the cost of a deferred
template instantiation to the function deferring this particular
instantiation.


  Commit: 671cbcf6420a9dfc81754d8dc683619f6f396ed8
      https://github.com/llvm/llvm-project/commit/671cbcf6420a9dfc81754d8dc683619f6f396ed8
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    A llvm/test/CodeGen/AMDGPU/gep-flags-stack-offsets.ll

  Log Message:
  -----------
  AMDGPU: Add baseline tests for gep flag handling (#110814)

We need to know the address computation won't overflow on
older subtargets to match the addressing mode of stack instructions.


  Commit: ced15cd418d96fc3d078e687bdcc5875656c71f6
      https://github.com/llvm/llvm-project/commit/ced15cd418d96fc3d078e687bdcc5875656c71f6
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/test/DebugInfo/Sparc/pointer-add-unknown-offset-debug-info.ll

  Log Message:
  -----------
  DAG: Preserve more flags when expanding gep (#110815)

This allows selecting the addressing mode for stack instructions
in cases where we need to prove the sign bit is zero.


  Commit: 886d98e149843f3890ef4dd556a5dee45ff97fe9
      https://github.com/llvm/llvm-project/commit/886d98e149843f3890ef4dd556a5dee45ff97fe9
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

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

  Log Message:
  -----------
  [LLVM][AArch64] Enable SVEIntrinsicOpts at all optimisation levels.


  Commit: 1b3fc754515c64fdbe4a34292abe1082cb63942c
      https://github.com/llvm/llvm-project/commit/1b3fc754515c64fdbe4a34292abe1082cb63942c
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

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

  Log Message:
  -----------
  Revert "[LLVM][AArch64] Enable SVEIntrinsicOpts at all optimisation levels."

This reverts commit 886d98e149843f3890ef4dd556a5dee45ff97fe9.


  Commit: 00c1c589e0d8878251993db57e3fd71f7105402d
      https://github.com/llvm/llvm-project/commit/00c1c589e0d8878251993db57e3fd71f7105402d
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp

  Log Message:
  -----------
  DependencyGraph.cpp - mix MSVC "not all control paths return a value" warning. NFC.


  Commit: a9f5a44aa0032c6efb262d2d5f79847045e525f1
      https://github.com/llvm/llvm-project/commit/a9f5a44aa0032c6efb262d2d5f79847045e525f1
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/avx512vl-logic.ll
    M llvm/test/CodeGen/X86/vec_smulo.ll
    M llvm/test/CodeGen/X86/vec_umulo.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-7.ll
    M llvm/test/CodeGen/X86/vector-lzcnt-512.ll
    M llvm/test/CodeGen/X86/vector-tzcnt-512.ll

  Log Message:
  -----------
  [X86] Regenerate test checks with vpternlog comments


  Commit: 374fffe015b48676fb3785167d363454a2f4dd1f
      https://github.com/llvm/llvm-project/commit/374fffe015b48676fb3785167d363454a2f4dd1f
  Author: Alexander Kornienko <alexfh at google.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M clang/lib/Frontend/TextDiagnostic.cpp
    A clang/test/Frontend/highlight-text.c

  Log Message:
  -----------
  Fix out-of-bounds access to std::unique_ptr<T[]> (#111581)

This manifested as an assertion failure in Clang built against libc++
with
hardening enabled (e.g.
-D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_DEBUG):
`libcxx/include/__memory/unique_ptr.h:596: assertion
__checker_.__in_bounds(std::__to_address(__ptr_), __i) failed:
unique_ptr<T[]>::operator[](index): index out of range`


  Commit: 01cbbc52dc95fe5d9e30ecbfb2ec8c7c1e0199c4
      https://github.com/llvm/llvm-project/commit/01cbbc52dc95fe5d9e30ecbfb2ec8c7c1e0199c4
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    A llvm/test/Transforms/LoopVectorize/X86/interleave-ptradd-with-replicated-operand.ll

  Log Message:
  -----------
  [VPlan] Request lane 0 for pointer arg in PtrAdd.

After 7f74651, the pointer operand may be replicated of a PtrAdd. Instead
of requesting a single scalar, request lane 0, which correctly handles the
case when there is a scalar-per-lane.

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


  Commit: 25c3ecf28f0a3a404305b5eefac23baf7e4e0754
      https://github.com/llvm/llvm-project/commit/25c3ecf28f0a3a404305b5eefac23baf7e4e0754
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp

  Log Message:
  -----------
  [X86] Add isConstantPowerOf2 helper to replace repeated code. NFC.

Prep work for #110875


  Commit: e17f701f559fc637b41c27ea240568bb33b56d1f
      https://github.com/llvm/llvm-project/commit/e17f701f559fc637b41c27ea240568bb33b56d1f
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/vselect-pcmp.ll

  Log Message:
  -----------
  [X86] vselect-pcmp.ll - regenerate test checks with vpternlog comments


  Commit: 4b4078a5cf95ad4a5e18704d9b88129c3a0bcb88
      https://github.com/llvm/llvm-project/commit/4b4078a5cf95ad4a5e18704d9b88129c3a0bcb88
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/vselect-pcmp.ll

  Log Message:
  -----------
  [X86] Add test coverage for #110875


  Commit: 8e2ccdc4deedd463a20237b4d842b4c51f9fe603
      https://github.com/llvm/llvm-project/commit/8e2ccdc4deedd463a20237b4d842b4c51f9fe603
  Author: Tobias Gysi <tobias.gysi at nextsilicon.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/LLVMDialect.h
    M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp

  Log Message:
  -----------
  [MLIR][LLVM] Use ViewLikeOpInterface (#111663)

This commit adds the ViewLikeOpInterface to the GEP and AddrSpaceCast
operations. This allows us to simplify the inliner interface. At the
same time, the change also makes the inliner interface more extensible
for downstream users that have custom view-like operations.


  Commit: 3b2bfb48239e674805a9c4e65be3c3a9eeabdf9c
      https://github.com/llvm/llvm-project/commit/3b2bfb48239e674805a9c4e65be3c3a9eeabdf9c
  Author: roderickzzc <32364736+Zhang-Zecheng at users.noreply.github.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M mlir/lib/Dialect/Linalg/IR/CMakeLists.txt

  Log Message:
  -----------
  [mlir] add missing CMake dependency on ShardingInterface generated headers for LinalgDialect (#111603)

This fixes non-deterministic build failures.

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

---------

Co-authored-by: zecheng.zhang <zecheng.zhang at bytedance.com>
Co-authored-by: Mehdi Amini <joker.eph at gmail.com>


  Commit: 3b7091bcf3b48b63724500d821dc7a0ce8ffa3c9
      https://github.com/llvm/llvm-project/commit/3b7091bcf3b48b63724500d821dc7a0ce8ffa3c9
  Author: Ariel-Burton <arielburton at yahoo.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/include/llvm/ADT/APFloat.h
    M llvm/lib/Support/APFloat.cpp

  Log Message:
  -----------
  [APFloat] add predicates to fltSemantics for hasZero and hasSignedRepr (#111451)

We add static methods to APFloatBase to allow the hasZero and
hasSignedRepr properties of fltSemantics to be obtained.


  Commit: 890e481358d6cb4e81629742eda32f9a1d6785d2
      https://github.com/llvm/llvm-project/commit/890e481358d6cb4e81629742eda32f9a1d6785d2
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/gep-flags-stack-offsets.ll

  Log Message:
  -----------
  AMDGPU: Regenerate test checks


  Commit: 21da4e7f51c7adfd0b1c5defc8bd0d16ea1ce759
      https://github.com/llvm/llvm-project/commit/21da4e7f51c7adfd0b1c5defc8bd0d16ea1ce759
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M libcxx/cmake/Modules/HandleLibCXXABI.cmake
    M libcxx/src/CMakeLists.txt
    M libcxxabi/src/CMakeLists.txt

  Log Message:
  -----------
  [libc++] Fix broken configuration system-libcxxabi on Apple (#110920)

On Apple platforms, using system-libcxxabi as an ABI library wouldn't
work because we'd try to re-export symbols from libc++abi that the
system libc++abi.dylib might not have. Instead, only re-export those
symbols when we're using the in-tree libc++abi.

This does mean that libc++.dylib won't re-export any libc++abi symbols
when building against the system libc++abi, which could be fixed in
various ways. However, the best solution really depends on the intended
use case, so this patch doesn't try to solve that problem.

As a drive-by, also improve the diagnostic message when the user forgets
to set the LIBCXX_CXX_ABI_INCLUDE_PATHS variable, which would previously
lead to a confusing error.

Closes #104672


  Commit: 32db6fbdb9a8173813e67606b87555c31ea557bb
      https://github.com/llvm/llvm-project/commit/32db6fbdb9a8173813e67606b87555c31ea557bb
  Author: Kunwar Grover <groverkss at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/test/Transforms/loop-invariant-code-motion.mlir

  Log Message:
  -----------
  [mlir][vector] Implement speculation for vector.transferx ops (#111533)

This patch implements speculation for
vector.transfer_read/vector.transfer_write ops, allowing these ops to
work with LICM.


  Commit: 5b03efb85d63d1f4033ed649a56a177dd4ed62b4
      https://github.com/llvm/llvm-project/commit/5b03efb85d63d1f4033ed649a56a177dd4ed62b4
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M clang/include/clang/AST/OpenMPClause.h
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Parse/Parser.h
    M clang/include/clang/Sema/SemaOpenMP.h
    M clang/lib/AST/OpenMPClause.cpp
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/Basic/OpenMPKinds.cpp
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/test/OpenMP/interchange_ast_print.cpp
    M clang/test/OpenMP/interchange_codegen.cpp
    M clang/test/OpenMP/interchange_messages.cpp
    M clang/tools/libclang/CIndex.cpp
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M flang/lib/Lower/OpenMP/Clauses.h
    M flang/lib/Parser/openmp-parsers.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M llvm/include/llvm/Frontend/OpenMP/ClauseT.h
    M llvm/include/llvm/Frontend/OpenMP/OMP.td

  Log Message:
  -----------
  [Clang][OpenMP] Add permutation clause (#92030)

Add the permutation clause for the interchange directive which will be
introduced in the upcoming OpenMP 6.0 specification. A preview has been
published in
[Technical Report12](https://www.openmp.org/wp-content/uploads/openmp-TR12.pdf).


  Commit: fa3258ecb8f18702bb45fa7f7c5c436be9e575cc
      https://github.com/llvm/llvm-project/commit/fa3258ecb8f18702bb45fa7f7c5c436be9e575cc
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

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

  Log Message:
  -----------
  [VPlan] Sink retrieving legacy costs to more specific computeCost impls. (#109708)

Make legacy cost retrieval independent of getInstructionForCost by
sinking it to more specific ::computeCost implementation (specifically
VPInterleaveRecipe::computeCost and VPSingleDefRecipe::computeCost).

Inline getInstructionForCost to VPRecipeBase::cost(), as it is now only
used to decide which recipes to skip during cost computation and when to
apply forced costs.

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


  Commit: c47f3e8c7027fbf13495dc865c28d852bf77836d
      https://github.com/llvm/llvm-project/commit/c47f3e8c7027fbf13495dc865c28d852bf77836d
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/vselect-pcmp.ll

  Log Message:
  -----------
  [X86] combineSelect - Fold select(pcmpeq(and(X,Pow2),0),A,B) -> select(pcmpeq(and(X,Pow2),Pow2),B,A)

Matches what we already do in LowerVSETCC to reuse an existing constant

Fixes #110875


  Commit: 15dc2d5c5e55e6f0b9e3a78d352698b8873f2566
      https://github.com/llvm/llvm-project/commit/15dc2d5c5e55e6f0b9e3a78d352698b8873f2566
  Author: Victor Mustya <victor.mustya at intel.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/include/llvm/IR/SymbolTableListTraits.h

  Log Message:
  -----------
  [IR] Prevent implicit SymbolTableListTraits template instantiation (#111600)

The `SymbolTableListTraits` template is explicitly instantiated for the
following types:
  * `llvm/lib/IR/Function.cpp`
    - `BasicBlock`
  * `llvm/lib/IR/Module.cpp`
    - `Function`
    - `GlobalAlias`
    - `GlobalIFunc`
    - `GlobalVariable`

When LLVM is built on Windows with the `LLVM_EXPORT_SYMBOLS_FOR_PLUGINS`
option enabled, the implicit instantiation of the template prevents the
`SymbolTableListTraits` template from being exported. This causes link
errors when the template or IR API is used in a plugin.

This change prevents the template being implicitly instantiated for
these types.


  Commit: d25f1a19c8cc68f3ff4659192605d39c35474cc8
      https://github.com/llvm/llvm-project/commit/d25f1a19c8cc68f3ff4659192605d39c35474cc8
  Author: simpal01 <simi.pallipurath at arm.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M libcxx/test/std/atomics/atomics.lockfree/is_always_lock_free.pass.cpp

  Log Message:
  -----------
  Add 64bit atomic check in the is_always_lock_free_pass test. (#111540)

Currently this test is completely xfailed as part of the patch
https://github.com/llvm/llvm-project/pull/106077. But this test works on
A and R profile, not in v7M profile. Because the test contain cases in
which m-profile will fail for atomic types greater than 4 bytes in size.


  Commit: 1e357cde4836d034d2f7a6d9af099eef23271756
      https://github.com/llvm/llvm-project/commit/1e357cde4836d034d2f7a6d9af099eef23271756
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUCtorDtorLowering.cpp
    M llvm/test/CodeGen/AMDGPU/lower-ctor-dtor-constexpr-alias.ll
    M llvm/test/CodeGen/AMDGPU/lower-ctor-dtor.ll
    M llvm/test/CodeGen/AMDGPU/lower-multiple-ctor-dtor.ll

  Log Message:
  -----------
  AMDGPU: Use pointer types more consistently (#111651)

This was using addrspace 0 and 1 pointers interchangably. This works
out since they happen to use the same size, but consistently query
or use the correct one.


  Commit: a9ebdbb5ac7de7a028f6060b789196a43aea7580
      https://github.com/llvm/llvm-project/commit/a9ebdbb5ac7de7a028f6060b789196a43aea7580
  Author: Benoit Jacob <jacob.benoit.1 at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorInsertExtractStridedSliceRewritePatterns.cpp
    M mlir/test/Dialect/Vector/canonicalize.mlir
    R mlir/test/Dialect/Vector/vector-contiguous-extract-strided-slice-to-extract.mlir
    M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp

  Log Message:
  -----------
  [MLIR] Vector: turn the ExtractStridedSlice rewrite pattern from #111541 into a canonicalization (#111614)

This is a reasonable canonicalization because `extract` is more
constrained than `extract_strided_slices`, so there is no loss of
semantics here, just lifting an op to a special-case higher/constrained
op. And the additional `shape_cast` is merely adding leading unit dims
to match the original result type.

Context: discussion on #111541. I wasn't sure how this would turn out,
but in the process of writing this PR, I discovered at least 2 bugs in
the pattern introduced in #111541, which shows the value of shared
canonicalization patterns which are exercised on a high number of
testcases.

---------

Signed-off-by: Benoit Jacob <jacob.benoit.1 at gmail.com>


  Commit: 390943f25b18a352bb3a72fe1b0908df355f77d9
      https://github.com/llvm/llvm-project/commit/390943f25b18a352bb3a72fe1b0908df355f77d9
  Author: Leandro Lupori <leandro.lupori at linaro.org>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/test/Fir/convert-to-llvm.fir
    M flang/test/Fir/invalid.fir

  Log Message:
  -----------
  [flang] Implement conversion of compatible derived types (#111165)

With some restrictions, BIND(C) derived types can be converted to
compatible BIND(C) derived types.
Semantics already support this, but ConvertOp was missing the
conversion of such types.

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


  Commit: 6f8e855150534358ea8c9301960c7c83119b1394
      https://github.com/llvm/llvm-project/commit/6f8e855150534358ea8c9301960c7c83119b1394
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/Function.h
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp

  Log Message:
  -----------
  [clang][bytecode] Implement __builtin_ai32_addcarryx* (#111671)


  Commit: 7d9f9938ff788aa7565c61ce6f391264750515af
      https://github.com/llvm/llvm-project/commit/7d9f9938ff788aa7565c61ce6f391264750515af
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M mlir/lib/Dialect/Transform/Transforms/CheckUses.cpp

  Log Message:
  -----------
  [Transform] Avoid repeated hash lookups (NFC) (#111620)


  Commit: 48e4d67537ba4cc2cec2600628015f4ae167d88c
      https://github.com/llvm/llvm-project/commit/48e4d67537ba4cc2cec2600628015f4ae167d88c
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

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

  Log Message:
  -----------
  [DSE] Simplify code with MapVector::operator[] (NFC) (#111621)


  Commit: bda4fc05cfcc4eb3c9d69e0acaa9533bfe5b3de3
      https://github.com/llvm/llvm-project/commit/bda4fc05cfcc4eb3c9d69e0acaa9533bfe5b3de3
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp

  Log Message:
  -----------
  [NVPTX] Avoid repeated map lookups (NFC) (#111627)


  Commit: 1ad5f315ae1cd44369a72cc8dc44fc9ef0cbe638
      https://github.com/llvm/llvm-project/commit/1ad5f315ae1cd44369a72cc8dc44fc9ef0cbe638
  Author: cor3ntin <corentinjabot at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/test/Parser/cxx2c-pack-indexing.cpp

  Log Message:
  -----------
  [Clang] Avoid a crash when parsing an invalid pseudo-destructor (#111666)

Fixes #111460.


  Commit: c911b0a73ca08e7cd2409486aff721f7a6339432
      https://github.com/llvm/llvm-project/commit/c911b0a73ca08e7cd2409486aff721f7a6339432
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp

  Log Message:
  -----------
  [clang-tidy] Avoid repeated hash lookups (NFC) (#111628)


  Commit: 01a0e85ab7183144816bd569b7ab3899663b3a0c
      https://github.com/llvm/llvm-project/commit/01a0e85ab7183144816bd569b7ab3899663b3a0c
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M mlir/lib/Conversion/SCFToGPU/SCFToGPU.cpp

  Log Message:
  -----------
  [Conversion] Avoid repeated hash lookups (NFC) (#111637)


  Commit: f59b151f094376e135955810f523dcf6b5acde80
      https://github.com/llvm/llvm-project/commit/f59b151f094376e135955810f523dcf6b5acde80
  Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

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

  Log Message:
  -----------
  [bazel] port 8e2ccdc4deedd463a20237b4d842b4c51f9fe603


  Commit: e85fcb763173590fdcd5cb922b7ca1fc97cf170b
      https://github.com/llvm/llvm-project/commit/e85fcb763173590fdcd5cb922b7ca1fc97cf170b
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUCtorDtorLowering.cpp
    M llvm/test/CodeGen/AMDGPU/lower-ctor-dtor-constexpr-alias.ll
    M llvm/test/CodeGen/AMDGPU/lower-ctor-dtor.ll
    M llvm/test/CodeGen/AMDGPU/lower-multiple-ctor-dtor.ll

  Log Message:
  -----------
  AMDGPU: Add instruction flags when lowering ctor/dtor (#111652)

These should be well behaved address computations.


  Commit: 665457815f11118f7e755a471f33606c8562a4be
      https://github.com/llvm/llvm-project/commit/665457815f11118f7e755a471f33606c8562a4be
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M flang/test/Driver/default-backend-pipelines.f90
    M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp

  Log Message:
  -----------
  [LLVM][AArch64] Enable SVEIntrinsicOpts at all optimisation levels.


  Commit: c4d288d9e21f44bc4a0f26e7655eba851a9b6225
      https://github.com/llvm/llvm-project/commit/c4d288d9e21f44bc4a0f26e7655eba851a9b6225
  Author: Kareem Ergawy <kareem.ergawy at amd.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M flang/lib/Semantics/check-directive-structure.h
    M flang/test/Semantics/OpenMP/do05-positivecase.f90

  Log Message:
  -----------
  [flang][OpenMP] Don't check unlabelled `cycle` branching for target loops (#111656)

Properly handles `cycle` branching inside target distribute loops.


  Commit: 1731bb79a97537c71f916f1e70a442a6615599d0
      https://github.com/llvm/llvm-project/commit/1731bb79a97537c71f916f1e70a442a6615599d0
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    A llvm/test/tools/llvm-reduce/special-globals-missing-should-keep-assert.ll
    M llvm/tools/llvm-reduce/deltas/ReduceSpecialGlobals.cpp

  Log Message:
  -----------
  llvm-reduce: Fix not checking shouldKeep in special-globals reduction (#111647)


  Commit: e637a5c9fef866158018dcaecc3c385d157460f5
      https://github.com/llvm/llvm-project/commit/e637a5c9fef866158018dcaecc3c385d157460f5
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

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

  Log Message:
  -----------
  [clang][bytecode] Only allow lossless ptr-to-int casts (#111669)

Only allow those casts if the bitwidth of the two types match.


  Commit: 72a957ba4c8ef059f1572f6d4ee0cba8dc615268
      https://github.com/llvm/llvm-project/commit/72a957ba4c8ef059f1572f6d4ee0cba8dc615268
  Author: Fraser Cormack <fraser at codeplay.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Cuda.cpp
    A clang/test/Driver/cuda-short-ptr.cu

  Log Message:
  -----------
  [Cuda] Handle -fcuda-short-ptr even with -nocudalib (#111682)

When passed -nocudalib/-nogpulib, Cuda's argument handling would bail
out before handling -fcuda-short-ptr, meaning the frontend and backend
data layouts would mismatch.


  Commit: c136d3237a3c6230cfe1ab3f0f6790f903c54a27
      https://github.com/llvm/llvm-project/commit/c136d3237a3c6230cfe1ab3f0f6790f903c54a27
  Author: David Green <david.green at arm.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Transforms/VectorCombine/AArch64/shuffletoidentity.ll

  Log Message:
  -----------
  [VectorCombine] Do not try to operate on OperandBundles. (#111635)

This bails out if we see an intrinsic with an operand bundle on it, to
make sure we don't process the bundles incorrectly.

Fixes #110382.


  Commit: d905a3c51b31775791c15132a1b3613d75871853
      https://github.com/llvm/llvm-project/commit/d905a3c51b31775791c15132a1b3613d75871853
  Author: Ellis Hoag <ellis.sparky.hoag at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

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

  Log Message:
  -----------
  [NFC] Format MachineVerifier.cpp to remove extra indentation (#111602)

Many structs in this class have the wrong indentation. To generate this
diff, I touched the first line of each struct and then ran `git
clang-format`. This will make blaming more difficult, but this
autoformatting is difficult to avoid triggering. I think it's best to
push this as one NFC PR.


  Commit: 774893dcd929c370bad714a70a7d670bb2d6f649
      https://github.com/llvm/llvm-project/commit/774893dcd929c370bad714a70a7d670bb2d6f649
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
    M mlir/lib/Target/LLVMIR/Dialect/ROCDL/ROCDLToLLVMIRTranslation.cpp
    M mlir/test/Target/LLVMIR/rocdl.mlir

  Log Message:
  -----------
  [mlir][ROCDL] Plumb through AMDGPU memory access metadata (#110916)

The LLVM backend has moved from function-wide attributes for making
assurances about potentially unsafe atomic operations (like
"unsafe-fp-atomics") to metadata on individual atomic operations.

This commit adds support for generating this metadata from MLIR.

---------

Co-authored-by: Quinn Dawkins <quinn.dawkins at gmail.com>


  Commit: 18952bdcd6f987620e6396261c2bb444e428e07e
      https://github.com/llvm/llvm-project/commit/18952bdcd6f987620e6396261c2bb444e428e07e
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/utils/gn/build/BUILD.gn
    M llvm/utils/gn/build/toolchain/BUILD.gn
    M llvm/utils/gn/build/toolchain/target_flags.gni
    M llvm/utils/gn/secondary/compiler-rt/BUILD.gn
    M llvm/utils/gn/secondary/compiler-rt/lib/BUILD.gn
    M llvm/utils/gn/secondary/compiler-rt/test/test.gni

  Log Message:
  -----------
  [gn build] Fix up win/x86 flags and add stage2_unix_x86 (#111595)


  Commit: 2e47b93fd29ad6ef13a4134f3b0be3c42e91180c
      https://github.com/llvm/llvm-project/commit/2e47b93fd29ad6ef13a4134f3b0be3c42e91180c
  Author: Ard Biesheuvel <ardb at kernel.org>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/lib/Target/ARM/Thumb2InstrInfo.cpp
    A llvm/test/CodeGen/ARM/stack-guard-nomovt.ll

  Log Message:
  -----------
  [ARM] Honour -mno-movt in stack protector handling (#109022)

When -mno-movt is passed to Clang, the ARM codegen correctly avoids
movt/movw pairs to take the address of __stack_chk_guard in the stack
protector code emitted into the function pro- and epilogues. However,
the Thumb2 codegen fails to do so, and happily emits movw/movt pairs
unless it is generating an ELF binary and the symbol might be in a
different DSO. Let's incorporate a check for useMovt() in the logic
here, so movt/movw are never emitted when -mno-movt is specified.

Suggestions welcome for how/where to add a test case for this.

Signed-off-by: Ard Biesheuvel <ardb at kernel.org>


  Commit: cf5bbeb533d49fd3f3c174af2239188e2d47b7db
      https://github.com/llvm/llvm-project/commit/cf5bbeb533d49fd3f3c174af2239188e2d47b7db
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

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

  Log Message:
  -----------
  [gn build] Remove unix x86 stage2 toolchain

It's breaking the bots, e.g. http://45.33.8.238/linux/149792/step_3.txt


  Commit: 1553cb5d3b14a0516c2796c295a3b32d147d13d0
      https://github.com/llvm/llvm-project/commit/1553cb5d3b14a0516c2796c295a3b32d147d13d0
  Author: George Burgess IV <george.burgess.iv at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M clang/lib/Sema/SemaAvailability.cpp
    M clang/test/Sema/attr-availability.c

  Log Message:
  -----------
  [Sema] Support negation/parens with __builtin_available (#111439)

At present, `__builtin_available` is really restrictive with its use.
Overall, this seems like a good thing, since the analyses behind it are
not very expensive.

That said, it's very straightforward to support these two cases:

```
if ((__builtin_available(foo, *))) {
  // ...
}
```

and

```
if (!__builtin_available(foo, *)) {
  // ...
} else {
  // ...
}
```

Seems nice to do so.


  Commit: 17bc959961aa5792821516b547100316fc886ab4
      https://github.com/llvm/llvm-project/commit/17bc959961aa5792821516b547100316fc886ab4
  Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNIterativeScheduler.cpp
    M llvm/lib/Target/AMDGPU/GCNRegPressure.cpp
    M llvm/lib/Target/AMDGPU/GCNRegPressure.h
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.h
    M llvm/test/CodeGen/AMDGPU/high-RP-reschedule.mir
    M llvm/test/CodeGen/AMDGPU/pr51516.mir
    A llvm/test/CodeGen/AMDGPU/schedule-amdgpu-tracker-physreg-crash.ll
    A llvm/test/CodeGen/AMDGPU/schedule-amdgpu-tracker-physreg.ll
    A llvm/test/CodeGen/AMDGPU/schedule-amdgpu-trackers.ll
    M llvm/test/CodeGen/AMDGPU/schedule-regpressure-ilp-metric-spills.mir
    M llvm/test/CodeGen/AMDGPU/schedule-relaxed-occupancy.ll

  Log Message:
  -----------
  [AMDGPU] Optionally Use GCNRPTrackers during scheduling (#93090)

This adds the ability to use the GCNRPTrackers during scheduling. These trackers have several advantages over the generic trackers: 1. global live-thru trackers, 2. subregister based RP deltas, and 3. flexible vreg -> PressureSet mappings.

This feature is off-by-default to ease with the roll-out process. In particular, when using the optional trackers, the scheduler will still maintain the generic trackers leading to unnecessary compile time.


  Commit: ec450b19004a653f3db3ad50e88fbf6529a9d841
      https://github.com/llvm/llvm-project/commit/ec450b19004a653f3db3ad50e88fbf6529a9d841
  Author: Adam Siemieniuk <adam.siemieniuk at intel.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M mlir/lib/Conversion/VectorToXeGPU/VectorToXeGPU.cpp
    M mlir/test/Conversion/VectorToXeGPU/transfer-write-to-xegpu.mlir

  Log Message:
  -----------
  [mlir][xegpu] Allow out-of-bounds writes (#110811)

Relaxes vector.transfer_write lowering to allow out-of-bound writes.

This aligns lowering with the current hardware specification which does
not update bytes in out-of-bound locations during block stores.


  Commit: 18d655fdcce4d17080e6cb2721f93f6db856277e
      https://github.com/llvm/llvm-project/commit/18d655fdcce4d17080e6cb2721f93f6db856277e
  Author: Amara Emerson <amara at apple.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Utils/Local.cpp

  Log Message:
  -----------
  [SimplifyCFG][NFC] Improve compile time for TryToSimplifyUncondBranchFromEmptyBlock optimization. (#110715)

In some pathological cases this optimization can spend an unreasonable
amount of time populating the set for predecessors of the successor
block. This change sinks some of that initializing to the point where
it's actually necessary so we can take advantage of the existing
early-exits.

rdar://137063034


  Commit: 13cd43aa6fa1dc5bfb96119db43b8c549386a86e
      https://github.com/llvm/llvm-project/commit/13cd43aa6fa1dc5bfb96119db43b8c549386a86e
  Author: Saiyedul Islam <Saiyedul.Islam at amd.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/amdgpu-openmp-toolchain.c

  Log Message:
  -----------
  [Clang][OpenMP] Do not use feature option during packaging (#111702)

Clang-offload-packager allows packaging of images based on an arbitrary
list of key-value pairs where only triple-key is mandatory.

Using target features as a key during packaging is not correct, as clang
does not allow packaging multiple images in one binary which only differ
in a target feature.

TargetID features (xnack and sramecc) anyways are handled using arch-key
and not as target features.


  Commit: 3a08551a0337e999d5d8ca0b0e591d1a2b934865
      https://github.com/llvm/llvm-project/commit/3a08551a0337e999d5d8ca0b0e591d1a2b934865
  Author: Jeffrey Byrnes <Jeffrey.Byrnes at amd.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

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

  Log Message:
  -----------
  [AMDGPU] Fix expensive check

Change-Id: I0b26d5db6d3da8936ab25ee2b1e9002840b9853e


  Commit: 4e33afee5a167d5293edeef15e414c0dbbcf3cef
      https://github.com/llvm/llvm-project/commit/4e33afee5a167d5293edeef15e414c0dbbcf3cef
  Author: Shourya Goel <shouryagoel10000 at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M libc/cmake/modules/LLVMLibCTestRules.cmake
    M libc/include/llvm-libc-macros/math-function-macros.h
    M libc/test/include/CMakeLists.txt
    R libc/test/include/IsSignalingTest.h
    A libc/test/include/iscanonical_test.c
    M libc/test/include/issignaling_test.c
    R libc/test/include/issignaling_test.cpp
    R libc/test/include/issignalingf_test.cpp
    R libc/test/include/issignalingl_test.cpp

  Log Message:
  -----------
  [libc][math] Implement `issignaling` and `iscanonical` macro. (#111403)

#109201


  Commit: ee0e17a4d8b42278ded1217e415073e8bce88b2a
      https://github.com/llvm/llvm-project/commit/ee0e17a4d8b42278ded1217e415073e8bce88b2a
  Author: vporpo <vporpodas at google.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp

  Log Message:
  -----------
  [SandboxVec][DAG] Drop RAR and fix dependency scanning loop (#111715)


  Commit: 10ada4ae738b9d93174e516ca841e61a8f4fd612
      https://github.com/llvm/llvm-project/commit/10ada4ae738b9d93174e516ca841e61a8f4fd612
  Author: Jorge Gorbe Moya <jgorbe at google.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/PassManager.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h
    A llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/NullPass.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.h
    M llvm/lib/SandboxIR/PassManager.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
    A llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/PassRegistry.def
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.cpp
    M llvm/test/Transforms/SandboxVectorizer/default_pass_pipeline.ll
    M llvm/test/Transforms/SandboxVectorizer/user_pass_pipeline.ll
    M llvm/unittests/SandboxIR/PassTest.cpp

  Log Message:
  -----------
  [SandboxVectorizer] Use sbvec-passes flag to create a pipeline of Region passes after BottomUpVec. (#111223)

The main change is that the main SandboxVectorizer pass no longer has a
pipeline of function passes. Now it is a wrapper that creates sandbox IR
from functions before calling BottomUpVec.

BottomUpVec now builds its own RegionPassManager from the `sbvec-passes`
flag, using a PassRegistry.def file. For now, these region passes are
not run (BottomUpVec doesn't create Regions yet), and only a null pass
for testing exists.

This commit also changes the ownership model for sandboxir::PassManager:
instead of having a PassRegistry that owns passes, and PassManagers that
contain non-owning pointers to the passes, now PassManager owns (via
unique pointers) the passes it contains.

PassRegistry is now deleted, and the logic to parse and create a pass
pipeline is now in PassManager::setPassPipeline.


  Commit: a075e785b8f4e2323ce89b742185386314909f21
      https://github.com/llvm/llvm-project/commit/a075e785b8f4e2323ce89b742185386314909f21
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/VOP1Instructions.td
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.f32.fp8.err.ll

  Log Message:
  -----------
  AMDGPU: Fix incorrectly selecting fp8/bf8 conversion intrinsics (#107291)

Trying to codegen these on targets without the instructions should
fail to select. Not sure if all the predicates are correct. We had
a fake one disconnected to a feature which was always true.

Fixes: SWDEV-482274


  Commit: dc09f9644144a9598837a3684414603edb175e51
      https://github.com/llvm/llvm-project/commit/dc09f9644144a9598837a3684414603edb175e51
  Author: Wael Yehia <wyehia at ca.ibm.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M compiler-rt/test/profile/instrprof-write-file-atexit-explicitly.c

  Log Message:
  -----------
  [test] remove profile file at the start of profile/instrprof-write-file-atexit-explicitly.c


  Commit: 102c384b5792eaa4e1b0095f9794637a23196ea3
      https://github.com/llvm/llvm-project/commit/102c384b5792eaa4e1b0095f9794637a23196ea3
  Author: Jorge Gorbe Moya <jgorbe at google.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/PassManager.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h
    R llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/NullPass.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.h
    M llvm/lib/SandboxIR/PassManager.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
    R llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/PassRegistry.def
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.cpp
    M llvm/test/Transforms/SandboxVectorizer/default_pass_pipeline.ll
    M llvm/test/Transforms/SandboxVectorizer/user_pass_pipeline.ll
    M llvm/unittests/SandboxIR/PassTest.cpp

  Log Message:
  -----------
  Revert "[SandboxVectorizer] Use sbvec-passes flag to create a pipeline of Region passes after BottomUpVec." (#111727)

Reverts llvm/llvm-project#111223

It broke one of the build bots:

LLVM Buildbot has detected a new failure on builder flang-aarch64-libcxx
running on linaro-flang-aarch64-libcxx while building llvm at step 5
"build-unified-tree".

Full details are available at:
https://lab.llvm.org/buildbot/#/builders/89/builds/8127


  Commit: 208584d91ae138d752d89436e3df12fa8f2e60a8
      https://github.com/llvm/llvm-project/commit/208584d91ae138d752d89436e3df12fa8f2e60a8
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/EvaluationResult.cpp
    M clang/test/Misc/constexpr-subobj-init-source-ranges.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix source range of uncalled base dtor (#111683)

Make this emit the same source range as the current interpreter.


  Commit: 1bb52e94621d2cba4f34504697cb0ea83805cb98
      https://github.com/llvm/llvm-project/commit/1bb52e94621d2cba4f34504697cb0ea83805cb98
  Author: Nathan Lanza <nathanlanza at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    A clang/include/clang/CIR/CIRGenerator.h
    A clang/include/clang/CIR/FrontendAction/CIRGenAction.h
    M clang/include/clang/Driver/Options.td
    M clang/lib/CIR/CMakeLists.txt
    A clang/lib/CIR/CodeGen/CIRGenModule.cpp
    A clang/lib/CIR/CodeGen/CIRGenModule.h
    A clang/lib/CIR/CodeGen/CIRGenTypeCache.h
    A clang/lib/CIR/CodeGen/CIRGenerator.cpp
    A clang/lib/CIR/CodeGen/CMakeLists.txt
    A clang/lib/CIR/FrontendAction/CIRGenAction.cpp
    A clang/lib/CIR/FrontendAction/CMakeLists.txt
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/FrontendTool/CMakeLists.txt
    M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
    A clang/test/CIR/hello.c
    A clang/test/CIR/lit.local.cfg

  Log Message:
  -----------
  [CIR] Build out AST consumer patterns to reach the entry point into CIRGen

Build out the necessary infrastructure for the main entry point into
ClangIR generation -- CIRGenModule. A set of boilerplate classes exist
to facilitate this -- CIRGenerator, CIRGenAction, EmitCIRAction and
CIRGenConsumer. These all mirror the corresponding types from LLVM
generation by Clang's CodeGen.

The main entry point to CIR generation is
`CIRGenModule::buildTopLevelDecl`. It is currently just an empty
function. We've added a test to ensure that the pipeline reaches this
point and doesn't fail, but does nothing else. This will be removed in
one of the subsequent patches that'll add basic `cir.func` emission.

This patch also re-adds `-emit-cir` to the driver. lib/Driver/Driver.cpp
requires that a driver flag exists to facilirate the selection of the
right actions for the driver to create. Without a driver flag you get
the standard behaviors of `-S`, `-c`, etc. If we want to emit CIR IR
and, eventually, bytecode we'll need a driver flag to force this. This
is why `-emit-llvm` is a driver flag. Notably, `-emit-llvm-bc` as a cc1
flag doesn't ever do the right thing. Without a driver flag it is
incorrectly ignored and an executable is emitted. With `-S` a file named
`something.s` is emitted which actually contains bitcode.

Reviewers: AaronBallman, MaskRay, bcardosolopes

Reviewed By: bcardosolopes, AaronBallman

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


  Commit: 1cfe5b89b70c8170da041e9507fd0801be766669
      https://github.com/llvm/llvm-project/commit/1cfe5b89b70c8170da041e9507fd0801be766669
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M lldb/test/CMakeLists.txt

  Log Message:
  -----------
  [lldb] Use SEND_ERROR instead of FATAL_ERROR in test/CMakeLists.txt (#111729)

Use SEND_ERROR (continue processing, but skip generation) instead of
FATAL_ERROR (stop processing and generation). This means that developers
get to see all errors at once, instead of seeing just the first error
and having to reconfigure to discover the next one.


  Commit: e82fcda1475b6708b7d314fd7a54e551306d5739
      https://github.com/llvm/llvm-project/commit/e82fcda1475b6708b7d314fd7a54e551306d5739
  Author: Tyler Nowicki <tyler.nowicki at amd.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    A llvm/include/llvm/Transforms/Coroutines/ABI.h
    A llvm/include/llvm/Transforms/Coroutines/CoroInstr.h
    A llvm/include/llvm/Transforms/Coroutines/CoroShape.h
    M llvm/include/llvm/Transforms/Coroutines/CoroSplit.h
    A llvm/include/llvm/Transforms/Coroutines/MaterializationUtils.h
    A llvm/include/llvm/Transforms/Coroutines/SpillUtils.h
    A llvm/include/llvm/Transforms/Coroutines/SuspendCrossingInfo.h
    R llvm/lib/Transforms/Coroutines/ABI.h
    M llvm/lib/Transforms/Coroutines/CoroEarly.cpp
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
    R llvm/lib/Transforms/Coroutines/CoroInstr.h
    M llvm/lib/Transforms/Coroutines/CoroInternal.h
    R llvm/lib/Transforms/Coroutines/CoroShape.h
    M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
    M llvm/lib/Transforms/Coroutines/Coroutines.cpp
    M llvm/lib/Transforms/Coroutines/MaterializationUtils.cpp
    R llvm/lib/Transforms/Coroutines/MaterializationUtils.h
    M llvm/lib/Transforms/Coroutines/SpillUtils.cpp
    R llvm/lib/Transforms/Coroutines/SpillUtils.h
    M llvm/lib/Transforms/Coroutines/SuspendCrossingInfo.cpp
    R llvm/lib/Transforms/Coroutines/SuspendCrossingInfo.h
    M llvm/unittests/Transforms/Coroutines/ExtraRematTest.cpp

  Log Message:
  -----------
  [Coroutines] Move util headers to include/llvm (#111599)

Plugin libraries that use coroutines can do so right now, however, to
provide their own ABI they need to be able to use various headers, some
of which such are required (such as the ABI header). This change exposes
the coro utils and required headers by moving them to
include/llvm/Transforms/Coroutines. My experience with our out-of-tree
plugin ABI has been that at least these headers are needed. The headers
moved are:
* ABI.h (ABI object)
* CoroInstr.h (helpers)
 * Coroshape.h (Shape object)
 * MaterializationUtils.h (helpers)
 * SpillingUtils.h (helpers)
 * SuspendCrossingInfo.h (analysis)

This has no code changes other than those required to move the headers
and these are:
 * include guard name changes
 * include path changes
 * minor clang-format induced changes
 * removal of LLVM_LIBRARY_VISIBILITY


  Commit: 9200adee266b5bfaa468c5ce2715ed9794e1a7a8
      https://github.com/llvm/llvm-project/commit/9200adee266b5bfaa468c5ce2715ed9794e1a7a8
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M libcxx/include/module.modulemap

  Log Message:
  -----------
  [libc++] Narrow the exports for common_type (#111681)

Based on a comment in #99473, it seems like `export *` may be overkill.


  Commit: 749e21860061a1b317916579252a864b92a134d7
      https://github.com/llvm/llvm-project/commit/749e21860061a1b317916579252a864b92a134d7
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M libcxx/utils/ci/run-buildbot

  Log Message:
  -----------
  [libc++][NFC] Remove obsolete --osx-roots parameter to run-buildbot

That isn't used anymore since we now run backdeployment testing
on the target system directly instead of using pre-packaged roots.


  Commit: 4605ba0437728ecf8233ba6dbb52ffba30a22743
      https://github.com/llvm/llvm-project/commit/4605ba0437728ecf8233ba6dbb52ffba30a22743
  Author: Tarun Prabhu <tarun at lanl.gov>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M flang/lib/Optimizer/Passes/CMakeLists.txt

  Log Message:
  -----------
  [flang] Link libflangPasses against correct libraries

libflangPasses.so was not linked against the correct libraries which
caused a build failure with -DBUILD_SHARED_LIBS=On. Fixes #110425


  Commit: e0737174f944e6da2d3052e57de04ad93503956b
      https://github.com/llvm/llvm-project/commit/e0737174f944e6da2d3052e57de04ad93503956b
  Author: Petr Hosek <phosek at google.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M libcxxabi/src/abort_message.cpp
    M libcxxabi/src/abort_message.h
    M libcxxabi/src/cxa_default_handlers.cpp
    M libcxxabi/src/cxa_exception_storage.cpp
    M libcxxabi/src/cxa_guard_impl.h
    M libcxxabi/src/cxa_handlers.cpp
    M libcxxabi/src/cxa_thread_atexit.cpp
    M libcxxabi/src/cxa_vector.cpp
    M libcxxabi/src/cxa_virtual.cpp
    M libcxxabi/src/demangle/DemangleConfig.h
    M libcxxabi/src/stdlib_new_delete.cpp

  Log Message:
  -----------
  [libc++abi] Rename abort_message to __abort_message (#111413)

This is an internal API and the name should reflect that.

This is a reland of #108887.


  Commit: d602f935daebce2ae6a023420133b3fa7da3c923
      https://github.com/llvm/llvm-project/commit/d602f935daebce2ae6a023420133b3fa7da3c923
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/check-omp-structure.h
    A flang/test/Semantics/OpenMP/shared-pointer.f90

  Log Message:
  -----------
  [flang][OpenMP] Treat POINTER variables as valid variable list items (#111722)

Follow-up to 418920b3fbdefec5b56ee2b9db96884d0ada7329, which started
diagnosing the legality of objects in OpenMP clauses (and caused some
test failures).


  Commit: f020bf15263f71e76e8b64fd0c333fff9744beae
      https://github.com/llvm/llvm-project/commit/f020bf15263f71e76e8b64fd0c333fff9744beae
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/long-full-reg-stores.ll

  Log Message:
  -----------
  [SLP]Initial support for non-power-of-2 (but whole reg) vectorization for stores

Allows non-power-of-2 vectorization for stores, but still requires, that
vectorized number of elements forms full vector registers.

Reviewers: RKSimon

Reviewed By: RKSimon

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


  Commit: 74e1062e34542c6c43293da51ad6e1c7d41ced2c
      https://github.com/llvm/llvm-project/commit/74e1062e34542c6c43293da51ad6e1c7d41ced2c
  Author: Zentrik <llvm.zentrik at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M mlir/lib/ExecutionEngine/CMakeLists.txt

  Log Message:
  -----------
  [MLIR] Don't build MLIRExecutionEngineShared on Windows (#109524)

This disabled the build of `MLIRExecutionEngineShared` because this causes linkage issues in windows for currently unknown reasons.
Related issue: https://github.com/llvm/llvm-project/issues/106859.


  Commit: f0fc1d376c85d226e6623a3981da0bf4f4efc2ec
      https://github.com/llvm/llvm-project/commit/f0fc1d376c85d226e6623a3981da0bf4f4efc2ec
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

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

  Log Message:
  -----------
  [RISCV] Use MCStreamer::emitInstruction instead of calling AsmPrinter::EmitToStreamer. NFC (#111714)

This allows us to pass the STI we already have cached instead of
AsmPrinter::EmitToStreamer looking it up from the MachineFunction again.

My plan is to make EmitHwasanMemaccessSymbols use
RISCVAsmPrinter::EmitToStreamer instead of calling
MCStreamer::emitInstruction. To do that I need control of the
MCSubtargetInfo.


  Commit: 65bd5ed84f8b5e24bbee094a721c386ee6670798
      https://github.com/llvm/llvm-project/commit/65bd5ed84f8b5e24bbee094a721c386ee6670798
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
    M mlir/test/Dialect/OpenACC/invalid.mlir

  Log Message:
  -----------
  [mlir][openacc] Update verifier to catch missing device type attribute (#111586)

Operands with device_type support need the corresponding attribute but
this was not catches in the verifier if it was missing. The custom
parser usually constructs it but creating the op from python could lead
to a segfault in the printer. This patch updates the verifier so we
catch this early on.


  Commit: 35684fa4bc8d2288d479cb8aa9d275b14bfefead
      https://github.com/llvm/llvm-project/commit/35684fa4bc8d2288d479cb8aa9d275b14bfefead
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

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

  Log Message:
  -----------
  [Github] Switch vectorization PR label to vectorizers (#111633)

This changes the PR label to match the name of the subscriber team.

Fixes #111485.


  Commit: 853c43d04a378c379e49db552e856f02a5ad9216
      https://github.com/llvm/llvm-project/commit/853c43d04a378c379e49db552e856f02a5ad9216
  Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.h
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.h
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.h
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.h
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.h

  Log Message:
  -----------
  [TTI] NFC: Port TLI.shouldSinkOperands to TTI (#110564)

Porting to TTI provides direct access to the instruction cost model,
which can enable instruction cost based sinking without introducing code
duplication.


  Commit: 115cb402d8ed91f94d22afcc4c2c9ed9def53cc7
      https://github.com/llvm/llvm-project/commit/115cb402d8ed91f94d22afcc4c2c9ed9def53cc7
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp
    A llvm/test/CodeGen/WebAssembly/fast-isel-no-offset.ll
    M llvm/test/CodeGen/WebAssembly/fast-isel-pr47040.ll

  Log Message:
  -----------
  [WebAssembly] Don't fold non-nuw add/sub in FastISel (#111278)

We should not fold one of add/sub operands into a load/store's offset
when `nuw` (no unsigned wrap) is not present, because the address
calculation, which adds the offset with the operand, does not wrap.

This is handled correctly in the normal ISel:

https://github.com/llvm/llvm-project/blob/6de5305b3d7a4a19a29b35d481a8090e2a6d3a7e/llvm/lib/Target/WebAssembly/WebAssemblyISelDAGToDAG.cpp#L328-L332
but not in FastISel.

This positivity check in FastISel is not sufficient to avoid this case
fully:

https://github.com/llvm/llvm-project/blob/6de5305b3d7a4a19a29b35d481a8090e2a6d3a7e/llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp#L348-L352

because
1. Even if RHS is within signed int range, depending on the value of the
LHS, the resulting value can exceed uint32 max.
2. When one of the operands is a label, `Address` can contain a
`GlobalValue` and a `Reg` at the same time, so the `GlobalValue` becomes
incorrectly an offset:
https://github.com/llvm/llvm-project/blob/6de5305b3d7a4a19a29b35d481a8090e2a6d3a7e/llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp#L53-L69
https://github.com/llvm/llvm-project/blob/6de5305b3d7a4a19a29b35d481a8090e2a6d3a7e/llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp#L409-L417

Both cases are in the newly added test.

We should handle `SUB` too because `SUB` is the same as `ADD` when RHS's
sign changes. I checked why our current normal ISel only handles `ADD`,
and the reason it's OK for the normal ISel to handle only `ADD` seems
that DAGCombiner replaces `SUB` with `ADD` here:
https://github.com/llvm/llvm-project/blob/6de5305b3d7a4a19a29b35d481a8090e2a6d3a7e/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp#L3904-L3907

Fixes #111018.


  Commit: ac3321f104ae2a0639845f860b05c97568bb24e2
      https://github.com/llvm/llvm-project/commit/ac3321f104ae2a0639845f860b05c97568bb24e2
  Author: Chelsea Cassanova <chelsea_cassanova at apple.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M lldb/scripts/generate-sbapi-dwarf-enum.py

  Log Message:
  -----------
  [lldb] Add missing include to SBLanguages.h (#111763)

SBLanguages.h uses a uint16_t but is missing the include for
`<cstdint>`, if any file includes this without including that it will
cause a build error so this commit adds this include.


  Commit: 91dd4ec20e8371ea5e920f5493688e13306a67d2
      https://github.com/llvm/llvm-project/commit/91dd4ec20e8371ea5e920f5493688e13306a67d2
  Author: Krystian Stasiowski <sdkrystian at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/AST/DeclBase.h
    M clang/include/clang/AST/DeclTemplate.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/AST/Decl.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    R clang/test/SemaTemplate/GH55509.cpp

  Log Message:
  -----------
  Revert "[clang] Track function template instantiation from definition (#110387)" (#111764)

This reverts commit 4336f00f2156970cc0af2816331387a0a4039317.


  Commit: c55d68fcc67d70235d6e4b75fe3879ab4d24a6b6
      https://github.com/llvm/llvm-project/commit/c55d68fcc67d70235d6e4b75fe3879ab4d24a6b6
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M clang/tools/clang-scan-deps/ClangScanDeps.cpp

  Log Message:
  -----------
  [clang][deps] Serialize JSON without creating intermediate objects (#111734)

The dependency scanner uses the `llvm::json` library for outputting the
dependency information. Until now, it created an in-memory
representation of the dependency graph using the `llvm::json::Object`
hierarchy. This not only creates unnecessary copies of the data, but
also forces lexicographical ordering of attributes in the output, both
of which I'd like to avoid. This patch adopts the `llvm::json::OStream`
API instead and reorders the attribute printing logic such that the
existing lexicographical ordering is preserved (for now).


  Commit: 1dff3309fd3c956fce9e6f60ff57a26f364733d1
      https://github.com/llvm/llvm-project/commit/1dff3309fd3c956fce9e6f60ff57a26f364733d1
  Author: Krystian Stasiowski <sdkrystian at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/DeclTemplate.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/AST/DeclTemplate.cpp
    M clang/lib/Sema/SemaConcept.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    R clang/test/CXX/temp/temp.constr/temp.constr.decl/p4.cpp
    R clang/test/CXX/temp/temp.spec/temp.expl.spec/p7.cpp
    M clang/test/Modules/cxx-templates.cpp

  Log Message:
  -----------
  Revert "Reapply "[Clang][Sema] Refactor collection of multi-level template argument lists (#106585)" (#111173)" (#111766)

This reverts commit 4da8ac34f76e707ab94380b94f616457cfd2cb83.


  Commit: 4b4a0d419c81b8b12a7dbb33dae1f7e9be91a88f
      https://github.com/llvm/llvm-project/commit/4b4a0d419c81b8b12a7dbb33dae1f7e9be91a88f
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
    A llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-load-store-pointers.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-global-old-legalization.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-local.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-constant.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-flat.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-global.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-local.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-private.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-store-global.mir

  Log Message:
  -----------
  Reapply "[AMDGPU][GlobalISel] Fix load/store of pointer vectors, buffer.*.pN (#110714)" v2 (#111708)

This adds `-disable-gisel-legality-check` to some gfx6 and gfx7 test
lines to prevent behavior mismatches between debug and release builds

The first attempted reapply was #111059

This reverts commit e075dcf7d270fd52dc837163ff24e8c872dfeb49.


  Commit: 0aaac4fe194ae2249e1a01f9d6f5eac0d75c5bb2
      https://github.com/llvm/llvm-project/commit/0aaac4fe194ae2249e1a01f9d6f5eac0d75c5bb2
  Author: Nicolas van Kempen <nvankemp at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/performance/MoveConstArgCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/performance/move-const-arg.cpp

  Log Message:
  -----------
  [clang-tidy][performance-move-const-arg] Fix crash when argument type has no definition (#111472)

Fix #111450.


  Commit: 4aba20fecaa09089132afe451aa04a22cd3794ca
      https://github.com/llvm/llvm-project/commit/4aba20fecaa09089132afe451aa04a22cd3794ca
  Author: Nicolas van Kempen <nvankemp at gmail.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

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

  Log Message:
  -----------
  [NFC][clang-tidy] Add type annotations to rename_check.py (#108443)

```
> python3 -m mypy --strict clang-tools-extra/clang-tidy/rename_check.py
Success: no issues found in 1 source file
```


  Commit: dc85d5263ed5e416cb4ddf405611472f4ef12fd3
      https://github.com/llvm/llvm-project/commit/dc85d5263ed5e416cb4ddf405611472f4ef12fd3
  Author: Kyungwoo Lee <kyulee at meta.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M clang/lib/CodeGen/BackendUtil.cpp
    M llvm/include/llvm/CGData/CodeGenData.h
    M llvm/include/llvm/CGData/CodeGenDataReader.h
    M llvm/include/llvm/LTO/LTO.h
    M llvm/include/llvm/LTO/LTOBackend.h
    M llvm/lib/CGData/CMakeLists.txt
    M llvm/lib/CGData/CodeGenData.cpp
    M llvm/lib/CGData/CodeGenDataReader.cpp
    M llvm/lib/LTO/CMakeLists.txt
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/LTO/LTOBackend.cpp
    A llvm/test/ThinLTO/AArch64/cgdata-two-rounds-caching.ll
    A llvm/test/ThinLTO/AArch64/cgdata-two-rounds.ll
    A llvm/test/ThinLTO/AArch64/lit.local.cfg

  Log Message:
  -----------
  [CGData][ThinLTO] Global Outlining with Two-CodeGen Rounds (#90933)

This feature is enabled by `-codegen-data-thinlto-two-rounds`, which
effectively runs the `-codegen-data-generate` and `-codegen-data-use` in
two rounds to enable global outlining with ThinLTO.
1. The first round: Run both optimization + codegen with a scratch
output.
Before running codegen, we serialize the optimized bitcode modules to a
temporary path.
 2. From the scratch object files, we merge them into the codegen data.
3. The second round: Read the optimized bitcode modules and start the
codegen only this time.
Using the codegen data, the machine outliner effectively performs the
global outlining.
 
Depends on #90934, #110461 and  #110463.
This is a patch for
https://discourse.llvm.org/t/rfc-enhanced-machine-outliner-part-2-thinlto-nolto/78753.


  Commit: a7971449e59215fb2fefbfcbd8bd1e7b40d4cd1f
      https://github.com/llvm/llvm-project/commit/a7971449e59215fb2fefbfcbd8bd1e7b40d4cd1f
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

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

  Log Message:
  -----------
  [NFC] [MTE] Improve readability of AArch64GlobalsTagging (#111580)

`shouldTagGlobal` doesn't sound like it should modify anything, so don't
do that. Remove unused code. Use SmallVector over std::vector


  Commit: e547d041faf455986e511f375f1a3d2bb084ef87
      https://github.com/llvm/llvm-project/commit/e547d041faf455986e511f375f1a3d2bb084ef87
  Author: Kyungwoo Lee <kyulee at meta.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/lib/LTO/LTO.cpp

  Log Message:
  -----------
  Fix build failure for [CGData][ThinLTO] Global Outlining with Two-CodeGen Rounds (#90933)


  Commit: a31d0b2e2bcc8c0c8907721896506c7ffd3e9502
      https://github.com/llvm/llvm-project/commit/a31d0b2e2bcc8c0c8907721896506c7ffd3e9502
  Author: Jeffrey Byrnes <Jeffrey.Byrnes at amd.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/schedule-amdgpu-tracker-physreg.ll
    M llvm/test/CodeGen/AMDGPU/schedule-amdgpu-trackers.ll

  Log Message:
  -----------
  [AMDGPU] Remove some lit check lines

Change-Id: I77e72d23d41095b8fcc47996d8004f9e264968de


  Commit: 61a46780d10c8f4e12c9b5496f5ca3f2cc7fba66
      https://github.com/llvm/llvm-project/commit/61a46780d10c8f4e12c9b5496f5ca3f2cc7fba66
  Author: jeffreytan81 <jeffreytan at meta.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFIndex.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFIndex.h
    M lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.h
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp

  Log Message:
  -----------
  Improve type lookup using .debug_names parent chain (#108907)

## Summary
This PR improves `SymbolFileDWARF::FindTypes()` by utilizing the newly
added parent chain `DW_IDX_parent` in `.debug_names`. The proposal was
originally discussed in [this
RFC](https://discourse.llvm.org/t/rfc-improve-dwarf-5-debug-names-type-lookup-parsing-speed/74151).

## Implementation
To leverage the parent chain for `SymbolFileDWARF::FindTypes()`, this PR
adds a new API: `GetTypesWithQuery` in `DWARFIndex` base class. The API
performs the same function as `GetTypes` with additional filtering using
`TypeQuery`. Since this only introduces filtering, the callback
mechanisms at all call sites remain unchanged. A default implementation
is given in `DWARFIndex` class which parses debug info and performs the
matching. In the `DebugNameDWARFIndex` override, the parent_contexts in
the `TypeQuery` is cross checked with parent chain in `.debug_names` for
for much faster filtering before fallback to base implementation for
final filtering.

Unlike the `GetFullyQualifiedType` API, which fully consumes the
`DW_IDX_parent` parent chain for exact matching, these new APIs perform
partial subset matching for type/namespace queries. This is necessary to
support queries involving anonymous or inline namespaces. For instance,
a user might request `NS1::NS2::NS3::Foo`, while the index table's
parent chain might contain `NS1::inline_NS2::NS3::Foo`, which would fail
exact matching.

## Performance Results
In one of our internal target using `.debug_names` + split dwarf.
Expanding a "this" pointer in locals view in VSCode:
94s => 48s. (Not sure why I got 94s this time instead of 70s last week).

---------

Co-authored-by: jeffreytan81 <jeffreytan at fb.com>


  Commit: 923566a67de39a00eb6fc5cabbad307a72aa338e
      https://github.com/llvm/llvm-project/commit/923566a67de39a00eb6fc5cabbad307a72aa338e
  Author: c8ef <c8ef at outlook.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/lib/Analysis/ConstantFolding.cpp
    A llvm/test/Transforms/InstCombine/logb.ll

  Log Message:
  -----------
  [ConstantFold] Fold `logb` and `logbf` when the input parameter is a constant value. (#111232)

This patch adds support for constant folding for the `logb` and `logbf`
libc functions.


  Commit: d52c8408ff2cd9d0125f0e3096731a039ba0d33d
      https://github.com/llvm/llvm-project/commit/d52c8408ff2cd9d0125f0e3096731a039ba0d33d
  Author: YunQiang Su <yunqiang at isrc.iscas.ac.cn>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/CodeGen/AArch64/vecreduce-fmax-legalization.ll
    M llvm/test/CodeGen/AArch64/vecreduce-fmin-legalization.ll
    M llvm/test/CodeGen/ARM/minnum-maxnum-intrinsics.ll
    M llvm/test/CodeGen/Thumb2/mve-vecreduce-fminmax.ll

  Log Message:
  -----------
  SelectionDAG/expandFMINNUM_FMAXNUM: skips vector if SETCC/VSELECT is not legal (#109570)

If SETCC or VSELECT is not legal for vector, we should not expand it,
instead we can split the vectors.

So that, some simple scale instructions can be emitted instead of
some pairs of comparation+selection.


  Commit: 756ec99c3629b433d803022d6d33e01d2ecd34a0
      https://github.com/llvm/llvm-project/commit/756ec99c3629b433d803022d6d33e01d2ecd34a0
  Author: Jorge Gorbe Moya <jgorbe at google.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/PassManager.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h
    A llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/NullPass.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.h
    M llvm/lib/SandboxIR/PassManager.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
    A llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/PassRegistry.def
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.cpp
    M llvm/test/Transforms/SandboxVectorizer/default_pass_pipeline.ll
    M llvm/test/Transforms/SandboxVectorizer/user_pass_pipeline.ll
    M llvm/unittests/SandboxIR/PassTest.cpp
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel

  Log Message:
  -----------
  [SandboxVec] Re-land "Use sbvec-passes flag to create a pipeline of Region passes after BottomUpVec. (#111223)" (#111772)

https://github.com/llvm/llvm-project/pull/111223 was reverted because of
a build failure with `-DBUILD_SHARED_LIBS=on`.

The Passes component depends on Vectorizer (because PassBuilder needs to
be able to instantiate SandboxVectorizerPass). This resulted in CMake
doing this

1. when it builds lib/libLLVMVectorize.so.20.0git it adds
lib/libLLVMSandboxIR.so.20.0git to the command line, because it's listed
as a dependency (as expected)
2. when it's trying to build lib/libLLVMPasses.so.20.0git it adds
lib/libLLVMVectorize.so.20.0git to the command line, because it's listed
as a dependency (also as expected). But not libLLVMSandboxIR.so.

When SandboxVectorizerPass has its ctors/dtors defined inline, this
caused "undefined reference to vtable" linker errors. This change works
around that by moving ctors/dtors out of line.

Also fix a bazel build problem by adding the new
`llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/PassRegistry.def`
as a textual header in the Vectorizer target.


  Commit: 68a5f5db7c970d22dc40637d7951b627fa50d5c1
      https://github.com/llvm/llvm-project/commit/68a5f5db7c970d22dc40637d7951b627fa50d5c1
  Author: Igor Kudrin <ikudrin at accesssoftek.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M lldb/test/API/python_api/global_module_cache/TestGlobalModuleCache.py

  Log Message:
  -----------
  [lldb] Fix TestGlobalModuleCache.py for remote debugging (#111483)

`SBDebugger().Create()` returns a debugger with only the host platform
in its platform list. If the test suite is running for a remote
platform, it should be explicitly added and selected in the new debugger
created within the test, otherwise, the test will fail because the host
platform may not be able to launch the built binary.


  Commit: 03229e7c0b1f28b01a75d2d258b16b37c2d2e9b9
      https://github.com/llvm/llvm-project/commit/03229e7c0b1f28b01a75d2d258b16b37c2d2e9b9
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M clang/lib/Parse/ParseTemplate.cpp
    M clang/test/SemaTemplate/concepts.cpp

  Log Message:
  -----------
  [Clang][Parser] Don't evaluate concept when its definition is invalid (#111179)

Since #103867, the nullness of the concept declaration has been turned
to represent a state in which the concept definition is being parsed and
used for self-reference checking.

However, PR missed a case where such a definition could be invalid, and
we shall inhibit making it into evaluation.

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


  Commit: 5a74a4a667c99a76317e80c49ae7b087b779d6a9
      https://github.com/llvm/llvm-project/commit/5a74a4a667c99a76317e80c49ae7b087b779d6a9
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/test/CodeGen/AMDGPU/aa-as-infer.ll

  Log Message:
  -----------
  [Attributor] Take the address space from addrspacecast directly (#108258)

Currently `AAAddressSpace` relies on identifying the address spaces of
all underlying objects. However, it might infer sub-optimal address
space when the underlying object is a function argument. In
`AMDGPUPromoteKernelArgumentsPass`, the promotion of a pointer kernel
argument is by adding a series of `addrspacecast` instructions (as shown
below), and hoping `InferAddressSpacePass` can pick it up and do the
rewriting accordingly.

Before promotion:

```
define amdgpu_kernel void @kernel(ptr %to_be_promoted) {
  %val = load i32, ptr %to_be_promoted
  ...
  ret void
}
```

After promotion:

```
define amdgpu_kernel void @kernel(ptr %to_be_promoted) {
  %ptr.cast.0 = addrspace cast ptr % to_be_promoted to ptr addrspace(1)
  %ptr.cast.1 = addrspace cast ptr addrspace(1) %ptr.cast.0 to ptr
  # all the use of %to_be_promoted will use %ptr.cast.1
  %val = load i32, ptr %ptr.cast.1
  ...
  ret void
}
```

When `AAAddressSpace` analyzes the code after promotion, it will take
`%to_be_promoted` as the underlying object of `%ptr.cast.1`, and use its
address space (which is 0) as its final address space, thus simply do
nothing in `manifest`. The attributor framework will them eliminate the
address space cast from 0 to 1 and back to 0, and replace `%ptr.cast.1`
with `%to_be_promoted`, which basically reverts all changes by
`AMDGPUPromoteKernelArgumentsPass`.

IMHO I'm not sure if `AMDGPUPromoteKernelArgumentsPass` promotes the
argument in a proper way. To improve the handling of this case, this PR
adds an extra handling when iterating over all underlying objects. If an
underlying object is a function argument, it means it reaches a terminal
such that we can't futher deduce its underlying object further. In this
case, we check all uses of the argument. If they are all `addrspacecast`
instructions and their destination address spaces are same, we take the
destination address space.

Fixes: SWDEV-482640.


  Commit: 1be849c529f315732c509f8bf72c30de4bc45380
      https://github.com/llvm/llvm-project/commit/1be849c529f315732c509f8bf72c30de4bc45380
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M bolt/lib/Profile/YAMLProfileReader.cpp

  Log Message:
  -----------
  [BOLT] Avoid repeated hash lookups (NFC) (#111782)


  Commit: 9093ba9f7ee58ccf62e58487a5028707a248c0b7
      https://github.com/llvm/llvm-project/commit/9093ba9f7ee58ccf62e58487a5028707a248c0b7
  Author: Thomas Fransham <tfransham at gmail.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/lib/Support/Unix/Threading.inc
    M llvm/lib/Support/Windows/Threading.inc

  Log Message:
  -----------
  [Support] Include Support/thread.h before api implementations (#111175)

This header was included after the implementations to work around an
issue with FreeBSD, however, , this causes some issues when
dllexport\explicit visibility
attributes will be added to the headers on Windows, since the
definitions need to see the declarations for the attributes to apply.

This is part of the work to enable LLVM_BUILD_LLVM_DYLIB and plugins on
windows.

---------

Co-authored-by: Tom Stellard <tstellar at redhat.com>


  Commit: 562999a9f32779c7017235969ec62d99e51a7865
      https://github.com/llvm/llvm-project/commit/562999a9f32779c7017235969ec62d99e51a7865
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/test/SemaCXX/alloc-align-attr.cpp
    M clang/test/SemaCXX/builtin-assume-aligned-tmpl.cpp
    A clang/test/SemaCXX/noescape-attr.cpp
    M clang/test/SemaObjCXX/noescape.mm

  Log Message:
  -----------
  [clang] assume_aligned incorrectly diagnoses a dependent return type (#111573)

Fix `assume_aligned` incorrectly diagnoses a dependent return type

Fixes: #111563


  Commit: c86edd03adaaa49b70af8d74ab5e2a09c9daab37
      https://github.com/llvm/llvm-project/commit/c86edd03adaaa49b70af8d74ab5e2a09c9daab37
  Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M clang/test/CodeGenHLSL/convergence/do.while.hlsl
    M clang/test/CodeGenHLSL/convergence/for.hlsl
    M clang/test/CodeGenHLSL/convergence/while.hlsl

  Log Message:
  -----------
  [SPIR-V] strengthen some lit tests (#111636)

These tests were failing spuriously with unrelated changes under
development.


  Commit: 9432f7074c8ebacd33cb0b271054881c8f566276
      https://github.com/llvm/llvm-project/commit/9432f7074c8ebacd33cb0b271054881c8f566276
  Author: Durgadoss R <durgadossr at nvidia.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M mlir/test/Integration/GPU/CUDA/sm90/tma_load_128x128_stride_noswizzle.mlir

  Log Message:
  -----------
  [MLIR][NVGPU-Tests] Fix a failing sm90 test (#111731)

The memref.expand_shape explicitly takes an output_shape now.
This patch adds it to the Op and fixes the failing test.

Signed-off-by: Durgadoss R <durgadossr at nvidia.com>


  Commit: 527cd117b2cb189f59ba64882b2bc5d15e35eefb
      https://github.com/llvm/llvm-project/commit/527cd117b2cb189f59ba64882b2bc5d15e35eefb
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-10-09 (Wed, 09 Oct 2024)

  Changed paths:
    M llvm/test/MC/RISCV/machine-csr-names.s
    M llvm/test/MC/RISCV/rv32-machine-csr-names.s

  Log Message:
  -----------
  [RISCV] Move testing of Smrnmi CSRs to machine-csr-names.s. NFC (#111790)

I incorrectly put them in rv32-machine-csr-names.s which only tests
RV32.


  Commit: 1d3bfbb05a33a7110c3af2baf6c1affc7d06bbb7
      https://github.com/llvm/llvm-project/commit/1d3bfbb05a33a7110c3af2baf6c1affc7d06bbb7
  Author: Christian Ulmann <christianulmann at gmail.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/test/Target/LLVMIR/Import/global-variables.ll

  Log Message:
  -----------
  [MLIR][LLVM] Fix import of globals with references to other globals (#111703)

This commit addresses an issue with importing globals that reference
other globals. This case did not properly work due to not considering
that `llvm::GlobalVariables` are derived from `llvm::Constant`.


  Commit: cd04a9d40191784b63a1f288afc534b6d91e293d
      https://github.com/llvm/llvm-project/commit/cd04a9d40191784b63a1f288afc534b6d91e293d
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/test/Transforms/SimplifyCFG/X86/merge-compatible-invokes-of-landingpad.ll

  Log Message:
  -----------
  [SimplifyCFG] Add/update tests for merging invokes with different attrs; NFC


  Commit: 82ac3997334f0a128bc770383c09a5ded53daec1
      https://github.com/llvm/llvm-project/commit/82ac3997334f0a128bc770383c09a5ded53daec1
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/test/Transforms/SimplifyCFG/X86/merge-compatible-invokes-of-landingpad.ll

  Log Message:
  -----------
  [SimplifyCFG] Allow merging invoke's with different attrs

Same logic as other callsites, if the attributes are intersectable, we
merge.

Closes #111713


  Commit: 9fb2378ad52927cafa918b51f2054c47108f2f24
      https://github.com/llvm/llvm-project/commit/9fb2378ad52927cafa918b51f2054c47108f2f24
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M libcxx/CMakeLists.txt
    A libcxx/test/configs/llvm-libc++-mingw.cfg.in
    R libcxx/test/configs/llvm-libc++-shared-mingw.cfg.in
    R libcxx/test/configs/llvm-libc++-static-mingw.cfg.in

  Log Message:
  -----------
  [libcxx] [test] Merge the MinGW static/shared test config files (#111759)

These were split in 0e8208eca1c316b7302de7803ab0d85a1dd77076, with the
only functional difference between them at the time being `--prepend_env
PATH=%{lib-dir}` in the static config and `--prepend_env
PATH=%{install-prefix}/bin` in the shared library config.

However this difference is unnecessary - the static library config
doesn't need any `--prepend_env` argument at all. Before
0e8208eca1c316b7302de7803ab0d85a1dd77076, both configurations used the
same config file, where the `--prepend_env` argument was unnecessary but
benign in the static case.

Reduce the unnecessary config duplication in this case, and return these
configs to using one single config file for both setups.


  Commit: c15611a6979c4962de285a26efd85bd34f6c6f29
      https://github.com/llvm/llvm-project/commit/c15611a6979c4962de285a26efd85bd34f6c6f29
  Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

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

  Log Message:
  -----------
  [bazel] port dc85d5263ed5e416cb4ddf405611472f4ef12fd3


  Commit: f93258e4aca518cba3d48db59ed6143ca19ca99b
      https://github.com/llvm/llvm-project/commit/f93258e4aca518cba3d48db59ed6143ca19ca99b
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/Opcodes.td
    M clang/test/AST/ByteCode/new-delete.cpp

  Log Message:
  -----------
  [clang][bytecode] Diagnose class-specific operator delete calls (#111700)


  Commit: 8d35ab80fc7a856ac6a60cf9074210f3983206ac
      https://github.com/llvm/llvm-project/commit/8d35ab80fc7a856ac6a60cf9074210f3983206ac
  Author: YunQiang Su <yunqiang at isrc.iscas.ac.cn>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/combine_andor_with_cmps.ll
    A llvm/test/CodeGen/AArch64/fp-maximumnum-minimumnum.ll

  Log Message:
  -----------
  AArch64: Add FMINNUM_IEEE and FMAXNUM_IEEE support (#107855)

FMINNM/FMAXNM instructions of AArch64 follow IEEE754-2008. We can use
them to canonicalize a floating point number. And
FMINNUM_IEEE/FMAXNUM_IEEE is used by something like expanding
FMINIMUMNUM/FMAXIMUMNUM, so let's define them.

Update combine_andor_with_cmps.ll.
Add fp-maximumnum-minimumnum.ll, with nnan testcases only.

V1F64 is not supported yet.
If we set v1f64 as legal, FMINNUM/FMAXNUM will have some problem:
   both of them use `if (isOperationLegalOrCustom(FMAXNUM_IEEE, VT))`.

AArch64 depends on `expandFMINNUM_FMAXNUM` returning `SDValue()`
for FMAXNUM and FMINNUM.

We should fix this problem, while it will be in future patch.


  Commit: 6213aa5e58a7d32bdc82dd40322fb1bab83c4783
      https://github.com/llvm/llvm-project/commit/6213aa5e58a7d32bdc82dd40322fb1bab83c4783
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Frontend/FrontendActions.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/test/CXX/temp/temp.arg/temp.arg.template/p3-0x.cpp
    M clang/test/CXX/temp/temp.param/p12.cpp
    M clang/test/Modules/cxx-templates.cpp
    M clang/test/SemaCXX/make_integer_seq.cpp
    M clang/test/SemaTemplate/cwg2398.cpp
    M clang/test/SemaTemplate/temp_arg_nontype.cpp
    M clang/test/SemaTemplate/temp_arg_template.cpp
    M clang/test/SemaTemplate/temp_arg_template_p0522.cpp
    M clang/test/Templight/templight-empty-entries-fix.cpp
    M clang/test/Templight/templight-prior-template-arg.cpp

  Log Message:
  -----------
  Reland: [clang] Finish implementation of P0522 (#111711)

This finishes the clang implementation of P0522, getting rid of the
fallback to the old, pre-P0522 rules.

Before this patch, when partial ordering template template parameters,
we would perform, in order:
* If the old rules would match, we would accept it. Otherwise, don't
generate diagnostics yet.
* If the new rules would match, just accept it. Otherwise, don't
generate any diagnostics yet again.
* Apply the old rules again, this time with diagnostics.

This situation was far from ideal, as we would sometimes:
* Accept some things we shouldn't.
* Reject some things we shouldn't.
* Only diagnose rejection in terms of the old rules.

With this patch, we apply the P0522 rules throughout.

This needed to extend template argument deduction in order to accept the
historial rule for TTP matching pack parameter to non-pack arguments.
This change also makes us accept some combinations of historical and
P0522 allowances we wouldn't before.

It also fixes a bunch of bugs that were documented in the test suite,
which I am not sure there are issues already created for them.

This causes a lot of changes to the way these failures are diagnosed,
with related test suite churn.

The problem here is that the old rules were very simple and
non-recursive, making it easy to provide customized diagnostics, and to
keep them consistent with each other.

The new rules are a lot more complex and rely on template argument
deduction, substitutions, and they are recursive.

The approach taken here is to mostly rely on existing diagnostics, and
create a new instantiation context that keeps track of this context.

So for example when a substitution failure occurs, we use the error
produced there unmodified, and just attach notes to it explaining that
it occurred in the context of partial ordering this template argument
against that template parameter.

This diverges from the old diagnostics, which would lead with an error
pointing to the template argument, explain the problem in subsequent
notes, and produce a final note pointing to the parameter.


  Commit: 12ae1ea13e68657ac75d65fd62385cae5272e2cb
      https://github.com/llvm/llvm-project/commit/12ae1ea13e68657ac75d65fd62385cae5272e2cb
  Author: Dmitry Polukhin <34227995+dmpolukhin at users.noreply.github.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M clang/include/clang/AST/DeclBase.h
    M clang/include/clang/Serialization/ASTReader.h
    M clang/lib/AST/DeclBase.cpp
    A clang/test/Headers/header-unit-common-cmp-cat.cpp

  Log Message:
  -----------
  [C++20][Modules] Relax ODR check in unnamed modules (#111160)

Summary:
Option `-fskip-odr-check-in-gmf` is set by default and I think it is
what most of C++ developers want. But in header units, Clang ODR
checking is too strict, making them hard to use, as seen in the example
in the diff. This diff relaxes ODR checks for unnamed modules to match
GMF ODR checking.

Test Plan: check-clang


  Commit: 224519b08945637a85e9798c78286643288f7b77
      https://github.com/llvm/llvm-project/commit/224519b08945637a85e9798c78286643288f7b77
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/TemplateDeduction.h
    M clang/lib/Sema/SemaLookup.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/test/SemaTemplate/cwg2398.cpp

  Log Message:
  -----------
  [clang] CWG2398: improve overload resolution backwards compat (#107350)

With this change, we discriminate if the primary template and which
partial specializations would have participated in overload resolution
prior to P0522 changes.

We collect those in an initial set. If this set is not empty, or the
primary template would have matched, we proceed with this set as the
candidates for overload resolution.

Otherwise, we build a new overload set with everything else, and proceed
as usual.


  Commit: 4dadf42c1a74dd4e37db9ffd6fbb3027f59751a7
      https://github.com/llvm/llvm-project/commit/4dadf42c1a74dd4e37db9ffd6fbb3027f59751a7
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M clang/include/clang/Sema/Overload.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/SemaLookup.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/test/SemaTemplate/cwg2398.cpp

  Log Message:
  -----------
  [clang] Implement TTP P0522 pack matching for deduced function template calls. (#111457)

Clang previously missed implementing P0522 pack matching for deduced
function template calls.

Fixes #111363


  Commit: 741ad3ab8e8b65b4efe423555797229d41be19f2
      https://github.com/llvm/llvm-project/commit/741ad3ab8e8b65b4efe423555797229d41be19f2
  Author: Finlay <finlay.marno at codeplay.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp

  Log Message:
  -----------
  [mlir][llvmir] Added extra builders for CallInstrinsicOp (#111664)

Extra builders for CallIntrinsicOp.
This is inspired by the comment from @antiagainst from
[here](https://github.com/llvm/llvm-project/pull/108933#issuecomment-2392751569).


  Commit: 1fa3c857f011bfbca788d481680229accbf6e350
      https://github.com/llvm/llvm-project/commit/1fa3c857f011bfbca788d481680229accbf6e350
  Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaExpr.cpp
    A clang/test/SemaTemplate/recovery-crash-cxx20.cpp

  Log Message:
  -----------
  [Clang] prevent recovery call expression from proceeding with explicit attributes and undeclared templates (#107786)

Fixes #107047
Fixes #49093


  Commit: 1e49670b31e9bf79fc9d0639dcb3a71f4c7f2059
      https://github.com/llvm/llvm-project/commit/1e49670b31e9bf79fc9d0639dcb3a71f4c7f2059
  Author: Oliver Stannard <oliver.stannard at arm.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    A llvm/test/CodeGen/ARM/load-store-pair-volatile.ll
    M llvm/test/CodeGen/PowerPC/aix-cc-abi-mir.ll

  Log Message:
  -----------
  [DAGISel] Keep flags when converting FP load/store to integer (#111679)

This DAG combine replaces a floating-point load/store pair which has no
other uses with an integer one, but did not copy the memory operand
flags to the new instructions, resulting in it dropping the volatile
flag. This optimisation is still valid if one or both of the
instructions is volatile, so we can copy over the whole
MachineMemOperand to generate volatile integer loads and stores where
needed.


  Commit: f1eac7761704fa4e16c2619a84890baad380fdce
      https://github.com/llvm/llvm-project/commit/f1eac7761704fa4e16c2619a84890baad380fdce
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp

  Log Message:
  -----------
  [clang][bytecode] Check new builtins for integer types (#111801)

These might also be called with vectors, but we don't support that.


  Commit: 06eb10dadfaeaadc5d0d95d38bea4bfb5253e077
      https://github.com/llvm/llvm-project/commit/06eb10dadfaeaadc5d0d95d38bea4bfb5253e077
  Author: Brad Richardson <everythingfunctional at protonmail.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M .github/workflows/release-binaries.yml
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Driver/Options.td
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/Flang.cpp
    M clang/test/Driver/flang/flang.f90
    M clang/test/Driver/flang/flang_ucase.F90
    M clang/test/Driver/flang/multiple-inputs-mixed.f90
    M clang/test/Driver/flang/multiple-inputs.f90
    M flang/docs/FlangDriver.md
    M flang/docs/ImplementingASemanticCheck.md
    M flang/docs/Overview.md
    M flang/examples/FlangOmpReport/FlangOmpReport.cpp
    M flang/include/flang/Optimizer/Analysis/AliasAnalysis.h
    M flang/include/flang/Tools/CrossToolHelpers.h
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Frontend/FrontendActions.cpp
    M flang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
    M flang/runtime/CMakeLists.txt
    M flang/test/CMakeLists.txt
    M flang/test/Driver/aarch64-outline-atomics.f90
    M flang/test/Driver/color-diagnostics-forwarding.f90
    M flang/test/Driver/compiler-options.f90
    M flang/test/Driver/convert.f90
    M flang/test/Driver/disable-ext-name-interop.f90
    M flang/test/Driver/driver-version.f90
    M flang/test/Driver/escaped-backslash.f90
    M flang/test/Driver/fdefault.f90
    M flang/test/Driver/flarge-sizes.f90
    M flang/test/Driver/fopenmp.f90
    M flang/test/Driver/frame-pointer-forwarding.f90
    M flang/test/Driver/frontend-forwarding.f90
    M flang/test/Driver/hlfir-no-hlfir-error.f90
    M flang/test/Driver/intrinsic-module-path.f90
    M flang/test/Driver/large-data-threshold.f90
    M flang/test/Driver/lto-flags.f90
    M flang/test/Driver/macro-def-undef.F90
    M flang/test/Driver/missing-input.f90
    M flang/test/Driver/multiple-input-files.f90
    M flang/test/Driver/omp-driver-offload.f90
    M flang/test/Driver/predefined-macros-compiler-version.F90
    M flang/test/Driver/std2018-wrong.f90
    M flang/test/Driver/std2018.f90
    M flang/test/Driver/supported-suffices/f03-suffix.f03
    M flang/test/Driver/supported-suffices/f08-suffix.f08
    M flang/test/Driver/use-module-error.f90
    M flang/test/Driver/use-module.f90
    M flang/test/Driver/version-loops.f90
    M flang/test/Driver/wextra-ok.f90
    M flang/test/HLFIR/hlfir-flags.f90
    M flang/test/Lower/Intrinsics/command_argument_count.f90
    M flang/test/Lower/Intrinsics/exit.f90
    M flang/test/Lower/Intrinsics/ieee_is_normal.f90
    M flang/test/Lower/Intrinsics/isnan.f90
    M flang/test/Lower/Intrinsics/modulo.f90
    M flang/test/Lower/OpenMP/Todo/omp-declarative-allocate.f90
    M flang/test/Lower/OpenMP/Todo/omp-declare-reduction.f90
    M flang/test/Lower/OpenMP/Todo/omp-declare-simd.f90
    M flang/test/Lower/OpenMP/parallel-lastprivate-clause-scalar.f90
    M flang/test/Lower/OpenMP/parallel-wsloop-reduction-byref.f90
    M flang/test/Lower/OpenMP/parallel-wsloop-reduction.f90
    M flang/test/lit.cfg.py
    M flang/tools/f18/CMakeLists.txt
    M flang/tools/flang-driver/CMakeLists.txt
    M flang/tools/flang-driver/driver.cpp
    M llvm/runtimes/CMakeLists.txt
    M offload/CMakeLists.txt
    M openmp/CMakeLists.txt

  Log Message:
  -----------
  [flang][driver] rename flang-new to flang (#110023)

This does a global rename from `flang-new` to `flang`. I also
removed/changed any TODOs that I found related to making this change.

---------

Co-authored-by: H. Vetinari <h.vetinari at gmx.com>
Co-authored-by: Andrzej Warzynski <andrzej.warzynski at arm.com>


  Commit: 54d3cf14213f18e44ef9ed2ffe3b3131e472e2f5
      https://github.com/llvm/llvm-project/commit/54d3cf14213f18e44ef9ed2ffe3b3131e472e2f5
  Author: Christian Ulmann <christianulmann at gmail.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Target/LLVMIR/ModuleImport.h
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/test/Target/LLVMIR/Import/global-variables.ll

  Log Message:
  -----------
  [MLIR][LLVM] Fix nameless global import to support use before def case (#111797)

This commit fixes a bug in the import of nameless globals. Before this
change, the fake symbol names were only generated during the
transformation of the definition. This caused issues when the symbol was
used before it was defined.


  Commit: 5184d763c70bf0c64b309262a40d9528a7dc4a2f
      https://github.com/llvm/llvm-project/commit/5184d763c70bf0c64b309262a40d9528a7dc4a2f
  Author: David Green <david.green at arm.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
    M llvm/test/Transforms/InstCombine/double-float-shrink-1.ll
    M llvm/test/Transforms/InstCombine/log-pow.ll
    M llvm/test/Transforms/InstCombine/log-to-intrinsic.ll

  Log Message:
  -----------
  [InstCombine] Convert @log to @llvm.log if the input is known positive. (#111428)

Similar to 112aac4e8961b9626bb84f36deeaa5a674f03f5a, this converts log
libcalls to llvm.log.f64 intrinsics if we know they do not set errno, as
the input is not zero and not negative. As log will produce errno if the
input is 0 (returning -inf) or if the input is negative (returning nan),
we also perform the conversion when we have noinf and nonan.


  Commit: d124b98eb6d492ce306dd28ecace326fb38457c5
      https://github.com/llvm/llvm-project/commit/d124b98eb6d492ce306dd28ecace326fb38457c5
  Author: Observer007 <45875558+Observer007 at users.noreply.github.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/Transforms/Passes.h
    M mlir/include/mlir/Dialect/LLVMIR/Transforms/Passes.td
    M mlir/lib/Dialect/LLVMIR/Transforms/DIScopeForLLVMFuncOp.cpp

  Log Message:
  -----------
  [mlir] add overload `createDIScopeForLLVMFuncOp` function (#111689)

follow up work of https://github.com/llvm/llvm-project/pull/106229, add
create pass overload function to create pass.

---------

Co-authored-by: jingzec <jingzec at nvidia.com>


  Commit: 99608f114f36efe30572d2bbf281cae56df78a9a
      https://github.com/llvm/llvm-project/commit/99608f114f36efe30572d2bbf281cae56df78a9a
  Author: Tim Gymnich <tgymnich at icloud.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/test/CodeGenHLSL/builtins/sign.hlsl

  Log Message:
  -----------
  [clang][HLSL] Add sign intrinsic part 4 (#108396)

- Add handling for unsigned integers to hlsl_elementwise_sign
- Use `select` instead of adding dx and spirv intrinsics for unsigned
integers as [discussed previously
](https://github.com/llvm/llvm-project/pull/101988#discussion_r1736779424)

fixes #70078

### Related PRs
- https://github.com/llvm/llvm-project/pull/101987
- https://github.com/llvm/llvm-project/pull/101988
- https://github.com/llvm/llvm-project/pull/101989

cc @farzonl @pow2clk @bob80905 @bogner @llvm-beanz


  Commit: 993de5512d81f4582373aa8bd7507e5aa44311ab
      https://github.com/llvm/llvm-project/commit/993de5512d81f4582373aa8bd7507e5aa44311ab
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lldb/docs/index.rst

  Log Message:
  -----------
  [lldb][docs] Add link to RISC-V tracking issue in Platform Support

Saves me searching for this every time someone asks.


  Commit: 3e4ee76fe0a015e306b58f0d8c1565f9f06ff9c3
      https://github.com/llvm/llvm-project/commit/3e4ee76fe0a015e306b58f0d8c1565f9f06ff9c3
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast.ll
    M llvm/test/CodeGen/X86/avx512-shuffles/partial_permute.ll
    M llvm/test/CodeGen/X86/kshift.ll
    M llvm/test/CodeGen/X86/vector-shuffle-512-v16.ll
    M llvm/test/CodeGen/X86/vector-shuffle-512-v8.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast.ll

  Log Message:
  -----------
  [X86] Fold EXTRACT_SUBVECTOR(ONEUSE(EXTRACT_SUBVECTOR(V,C1))),C2) - EXTRACT_SUBVECTOR(V,C1+C2) (#111685)

Extract from the original source vector whenever possible.

This removes a number of dependency bottlenecks and helps a number of shuffle combining cases: either by allowing us to avoid a cross-lane variable shuffle on a slow target by keeping the instruction count below the threshold, or on fast targets make it easier to recognise that the subvectors all came form the same source.


  Commit: 7890919fb8323faf70fb16a05f91d4f602ce52fb
      https://github.com/llvm/llvm-project/commit/7890919fb8323faf70fb16a05f91d4f602ce52fb
  Author: Stefan Gränitz <stefan.graenitz at gmail.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lldb/test/CMakeLists.txt

  Log Message:
  -----------
  [lldb] Check for Python 'packaging' module at configuration time (#111747)

This module is used in various helper scripts since
https://github.com/llvm/llvm-project/pull/93712


  Commit: c36f902372db493fd291c8ac54816422b9dd80bb
      https://github.com/llvm/llvm-project/commit/c36f902372db493fd291c8ac54816422b9dd80bb
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-sextload-local.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-zextload-local.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/load-local.128.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/load-local.96.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/load-unaligned.ll
    M llvm/test/CodeGen/AMDGPU/med3-knownbits.ll

  Log Message:
  -----------
  AMDGPU/GlobalISel: Insert m0 initialization before sextload/zextload (#111720)

Fixes missing m0 initialize for pre-gfx9 targets with local extending
loads.


  Commit: 039e6f879cdbded38959763cc57da26477d2d454
      https://github.com/llvm/llvm-project/commit/039e6f879cdbded38959763cc57da26477d2d454
  Author: Akshat Oke <76596238+Akshat-Oke at users.noreply.github.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

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

  Log Message:
  -----------
  [AMDGPU][NewPM] Fill out AMDGPU addMachineSSAOptimizations (#111658)

Implement the addMachineSSAOptimizations passes for AMDGPU. Porting
the other generic passes in this category is WIP.


  Commit: b9754e9d285e6c056f04e00cc792c572d012ec02
      https://github.com/llvm/llvm-project/commit/b9754e9d285e6c056f04e00cc792c572d012ec02
  Author: Hari Limaye <hari.limaye at arm.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/test/Other/new-pm-lto-defaults.ll

  Log Message:
  -----------
  [LTO] Run Argument Promotion before IPSCCP (#111163)

Run ArgumentPromotion before IPSCCP in the LTO pipeline, to expose more
constants to be propagated. We also run PostOrderFunctionAttrs to
improve the information available to ArgumentPromotion's alias analysis,
and SROA to clean up allocas.


  Commit: a7a4daa429bb7b0601b4066713fb5b97748212ee
      https://github.com/llvm/llvm-project/commit/a7a4daa429bb7b0601b4066713fb5b97748212ee
  Author: Piotr Fusik <p.fusik at samsung.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

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

  Log Message:
  -----------
  [LV][NFC] Improve readability with `bool` instead of `auto` (#111532)


  Commit: 003375fb2b62967580712a704934927553fe540f
      https://github.com/llvm/llvm-project/commit/003375fb2b62967580712a704934927553fe540f
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

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

  Log Message:
  -----------
  [clang][x86] Add constexpr support for some basic SSE2 fp intrinsics

Followup to #111001


  Commit: 6d8e966512f0b050e84b65c1deed479d5c92fe4c
      https://github.com/llvm/llvm-project/commit/6d8e966512f0b050e84b65c1deed479d5c92fe4c
  Author: isuckatcs <65320245+isuckatcs at users.noreply.github.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/portability/CMakeLists.txt
    M clang-tools-extra/clang-tidy/portability/PortabilityTidyModule.cpp
    A clang-tools-extra/clang-tidy/portability/TemplateVirtualMemberFunctionCheck.cpp
    A clang-tools-extra/clang-tidy/portability/TemplateVirtualMemberFunctionCheck.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/list.rst
    A clang-tools-extra/docs/clang-tidy/checks/portability/template-virtual-member-function.rst
    A clang-tools-extra/test/clang-tidy/checkers/portability/template-virtual-member-function.cpp

  Log Message:
  -----------
  [clang-tidy] Portability Template Virtual Member Function Check (#110099)

Introduced a new check that finds cases when an uninstantiated virtual member function in a template class causes cross-compiler incompatibility.


  Commit: bb34008879f0a083604ede70db61f9d3c9a3ead8
      https://github.com/llvm/llvm-project/commit/bb34008879f0a083604ede70db61f9d3c9a3ead8
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/portability/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 6d8e966512f0


  Commit: 3645c64d87a0e4576c1195281efa005e90b529b7
      https://github.com/llvm/llvm-project/commit/3645c64d87a0e4576c1195281efa005e90b529b7
  Author: braw-lee <93831198+braw-lee at users.noreply.github.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/SimplifyLibCalls.h
    M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
    A llvm/test/Transforms/InstCombine/fdim.ll
    A llvm/test/Transforms/InstCombine/win-fdim.ll

  Log Message:
  -----------
  [SimplifyLibCalls] fdim constant fold (#109235)

2nd PR to fix #108695 

based on #108702

---------

Signed-off-by: Kushal Pal <kushalpal109 at gmail.com>


  Commit: 0e913237871e8c9290e82be30be8b3484952eee0
      https://github.com/llvm/llvm-project/commit/0e913237871e8c9290e82be30be8b3484952eee0
  Author: Stefan Gränitz <stefan.graenitz at gmail.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/dotest.py
    M lldb/test/API/CMakeLists.txt
    M lldb/test/API/lit.cfg.py
    M lldb/test/API/lit.site.cfg.py.in

  Log Message:
  -----------
  [lldb] Add early CMake check for 'make' tool (#111531)

Many LLDB's dotest.py based tests require the `make` tool. If it's not found in Path, they fail with an obscure error and show up as `UNRESOLVED`. On Windows, llvm-lit takes care of MSYS based testing tools like cat, printf, etc., but `make` is not part of that. Let's catch the situation early and check for it at configuration time.

This error isn't fatal: It should fail the build, but not immediately stop the configuration process. There might be other issues further down the line that can be caught in the same buildbot run.


  Commit: 99cec7ff8eabbec929d3d0b3a15b272867cf2a46
      https://github.com/llvm/llvm-project/commit/99cec7ff8eabbec929d3d0b3a15b272867cf2a46
  Author: Alex Bradbury <asb at igalia.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lldb/test/Shell/ObjectFile/ELF/elf-memory.test

  Log Message:
  -----------
  [lldb][test] elf-memory.test requires LLDB build with Python support (#111810)

Otherwise it fails with "error: Embedded script interpreter unavailable.
LLDB was built without scripting language support."


  Commit: a1c9dd7c8093e30266f643e6832fbe61a6e506bc
      https://github.com/llvm/llvm-project/commit/a1c9dd7c8093e30266f643e6832fbe61a6e506bc
  Author: Andrey Timonin <timonina1909 at gmail.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
    M mlir/lib/Target/Cpp/TranslateToCpp.cpp
    M mlir/test/Target/Cpp/switch.mlir

  Log Message:
  -----------
  [mlir][emitc] Fix the error with closing bracket in CppEmitter in switchOp (#110269)

While working with `emitc::SwitchOp`, it was identified that
`mlir-translate` emits **invalid C code** for switch.
This commit fixes the issue with the closing bracket in `CppEmitter`
within `printOperation` for `emitc::SwitchOp`.


  Commit: 8a849a2a567d4e519b246a16936b6e7519936d4b
      https://github.com/llvm/llvm-project/commit/8a849a2a567d4e519b246a16936b6e7519936d4b
  Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
    R llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-load-store-pointers.ll
    R llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-global-old-legalization.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-local.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-constant.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-flat.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-global.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-local.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-private.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-store-global.mir

  Log Message:
  -----------
  Revert "Reapply "[AMDGPU][GlobalISel] Fix load/store of pointer vectors, buffer.*.pN (#110714)" v2 (#111708)"

This reverts commit 4b4a0d419c81b8b12a7dbb33dae1f7e9be91a88f.

New test fails on buildbots https://lab.llvm.org/buildbot/#/builders/63/builds/2039 https://lab.llvm.org/buildbot/#/builders/127/builds/1055


  Commit: 8306114ed2313a7febdb0d0d0c31df357ed53fdd
      https://github.com/llvm/llvm-project/commit/8306114ed2313a7febdb0d0d0c31df357ed53fdd
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

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

  Log Message:
  -----------
  [clang][x86] Add constexpr support for _mm_cvtsi32_ss/_mm_cvt_si2ss/_mm_cvtsi64_ss SSE1 intrinsics

Followup to #111001


  Commit: ea2b8976e69ad70220f71abf28d6781dc1e41fab
      https://github.com/llvm/llvm-project/commit/ea2b8976e69ad70220f71abf28d6781dc1e41fab
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M libcxx/utils/ci/run-buildbot

  Log Message:
  -----------
  [libc++] Remove nonexistent directory from check-generated-output (#111746)

The libcxx/benchmarks directory was moved to libcxx/test/benchmarks,
which is already checked by that grep command.


  Commit: b94c763b7c123995ae31a6ce44223e89ef9f226a
      https://github.com/llvm/llvm-project/commit/b94c763b7c123995ae31a6ce44223e89ef9f226a
  Author: Petr Hosek <phosek at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M clang/cmake/caches/Fuchsia-stage2.cmake

  Log Message:
  -----------
  [Fuchsia][CMake] Set output name for libc++ shared library (#111791)

This is a dependency of #80007.


  Commit: 917ada35cd937ad4104dff89c48398bd796ba6b7
      https://github.com/llvm/llvm-project/commit/917ada35cd937ad4104dff89c48398bd796ba6b7
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M libcxx/cmake/caches/AIX.cmake
    M libcxx/cmake/caches/Armv7M-picolibc.cmake
    M libcxx/src/CMakeLists.txt
    M libcxxabi/src/CMakeLists.txt
    M libunwind/src/CMakeLists.txt

  Log Message:
  -----------
  [runtimes] Always define cxx_shared, cxx_static & other targets (#80007)

This patch always defines the cxx_shared, cxx_static & other top-level
targets. However, they are marked as EXCLUDE_FROM_ALL when we don't want
to build them. Simply declaring the targets should be of no harm, and it
allows other projects to mention these targets regardless of whether
they end up being built or not.

This patch basically moves the definition of e.g. cxx_shared out of the
`if (LIBCXX_ENABLE_SHARED)` and instead marks it as EXCLUDE_FROM_ALL
conditionally on whether LIBCXX_ENABLE_SHARED is passed. It then does
the same for libunwind and libc++abi targets. I purposefully avoided to
reformat the files (which now has inconsistent indentation) because I
wanted to keep the diff minimal, and I know this is an area of the code
where folks may have downstream diffs. I will re-indent the code
separately once this patch lands.

This is a reapplication of 79ee0342dbf0, which was reverted in
a3539090884c because it broke the TSAN and the Fuchsia builds.

Resolves #77654

Differential Revision: https://reviews.llvm.org/D134221


  Commit: f8b7a65395a07073feff367145965214d95ba99a
      https://github.com/llvm/llvm-project/commit/f8b7a65395a07073feff367145965214d95ba99a
  Author: Petr Kurapov <petr.a.kurapov at intel.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M mlir/lib/Conversion/GPUToLLVMSPV/GPUToLLVMSPV.cpp
    M mlir/test/Conversion/GPUToLLVMSPV/gpu-to-llvm-spv.mlir

  Log Message:
  -----------
  [MLIR][GPU-LLVM] Add in-pass signature update for opencl kernels (#105664)

Default to Global address space for memrefs that do not have an explicit address space set in the IR.

---------

Co-authored-by: Victor Perez <victor.perez at intel.com>
Co-authored-by: Jakub Kuderski <kubakuderski at gmail.com>
Co-authored-by: Victor Perez <victor.perez at codeplay.com>


  Commit: 55d51dd9dca8220ffaf9260d56dae9f5c34b7120
      https://github.com/llvm/llvm-project/commit/55d51dd9dca8220ffaf9260d56dae9f5c34b7120
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Compiler.h
    A clang/test/AST/ByteCode/cxx1z.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix temporary lvalue base expression (#111808)

We need to use the MaterializeTemporaryExpr here so the checks in
ExprConstant.cpp do the right thing.


  Commit: b773da0c5eed06f21f4caeea5eae47cacefb376c
      https://github.com/llvm/llvm-project/commit/b773da0c5eed06f21f4caeea5eae47cacefb376c
  Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/builders/builder.py
    M lldb/test/API/lang/objc/hidden-ivars/Makefile
    M lldb/test/API/lang/objc/objc-ivar-stripped/Makefile
    M lldb/test/API/lang/objc/objc-static-method-stripped/Makefile
    M lldb/test/API/macosx/add-dsym/Makefile
    M lldb/test/API/tools/lldb-dap/module/Makefile
    M lldb/test/API/tools/lldb-dap/terminated-event/Makefile

  Log Message:
  -----------
  [lldb][test] Use $(STRIP) instead of strip in API tests (Darwin-only change) (#111816)

This makes tests more portable.
Make variables for LLVM utils are passed to `make` on Darwin as well.

Co-authored-by: Vladimir Vereschaka <vvereschaka at accesssoftek.com>


  Commit: 36a0d442eb4d2f1e0782bc2a1b1715fc7631faec
      https://github.com/llvm/llvm-project/commit/36a0d442eb4d2f1e0782bc2a1b1715fc7631faec
  Author: Harrison Hao <57025411+harrisonGPU at users.noreply.github.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/docs/CMake.rst

  Log Message:
  -----------
  [LLVM][DOCS] Add documentation for 'host' and 'Native' options in LLVM_TARGETS_TO_BUILD. (#111382)

>From https://github.com/llvm/llvm-project/issues/111356


  Commit: 1f919aa77805b951fb06b44732a87f1f83929247
      https://github.com/llvm/llvm-project/commit/1f919aa77805b951fb06b44732a87f1f83929247
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Transforms/VectorCombine/X86/extract-cmp-binop.ll

  Log Message:
  -----------
  VectorCombine: lift one-use limitation in foldExtractedCmps (#110902)

There are artificial one-use limitations on foldExtractedCmps. Adjust
the costs to account for multi-use, and strip the one-use matcher,
lifting the limitations.


  Commit: 159d694c05500a656775f4cbd6931dae9aab290a
      https://github.com/llvm/llvm-project/commit/159d694c05500a656775f4cbd6931dae9aab290a
  Author: A. Jiang <de34 at live.cn>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M libcxx/docs/ReleaseNotes/20.rst
    M libcxx/include/bitset
    A libcxx/test/std/utilities/template.bitset/bitset.members/nonstdmem.uglified.compile.pass.cpp

  Log Message:
  -----------
  [libc++] __uglify internal member names of iterators in `bitset` (#111127)

[template.bitset.general] indicates that `bitset` shouldn't have member
typedef-names `iterator` and `const_iterator`. Currently libc++'s
typedef-names are causing ambiguity in name lookup, which isn't
conforming.

As these iterator types are themselves useful, I think we should just
use __uglified member typedef-names for them.

Fixes #111125


  Commit: 90149204bd08c07eb672cd5b19d782fed3d96ddc
      https://github.com/llvm/llvm-project/commit/90149204bd08c07eb672cd5b19d782fed3d96ddc
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M .ci/generate-buildkite-pipeline-premerge

  Log Message:
  -----------
  [ci] Don't add check-all target when pstl project is enabled (#111803)

Fixes #110265

Adding check-all causes us to run some tests twice if a project specific
target like check-clang is also added.

check-pstl is an alternative but as far as I can tell, check-all does
not include this so we have not been running the tests in CI anyway.

When I tried to run check-pstl locally I got a lot of compiler errors
but have not found any instructions on how to setup a correct build
environment. Even if such instructions exist, it's probably more than we
want to do in CI.

According to Louis Dionne, the project is probably not active. So if
it's ever revived it'll be up to the new contributors to enable testing.


  Commit: 480e7f0667794822f7f3a065bed73d9a2ecc2d58
      https://github.com/llvm/llvm-project/commit/480e7f0667794822f7f3a065bed73d9a2ecc2d58
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M flang/include/flang/Optimizer/CodeGen/Target.h
    M flang/include/flang/Optimizer/Dialect/FIROpsSupport.h
    M flang/lib/Optimizer/CodeGen/Target.cpp
    M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
    M flang/lib/Optimizer/Transforms/AbstractResult.cpp
    A flang/test/Fir/abstract-results-bindc.fir
    A flang/test/Fir/struct-return-x86-64.fir

  Log Message:
  -----------
  [flang] correctly deal with bind(c) derived type result ABI (#111678)

Derived type results of BIND(C) function should be returned according
the the C ABI for returning the related C struct type.

This currently did not happen since the abstract-result pass was forcing
the Fortran ABI for all derived type results.
use the bind_c attribute that was added on call/func/dispatch in FIR to
prevent such rewrite in the abstract result pass, and update the
target-rewrite pass to deal with the struct return ABI.

So far, the target specific part of the target-rewrite is only
implemented for X86-64 according to the "System V Application Binary
Interface AMD64 v1", the other targets will hit a TODO, just like for
BIND(C), VALUE derived type arguments.

This intends to deal with
https://github.com/llvm/llvm-project/issues/102113.


  Commit: 6779376ee917279b16e256839d236cfdf8fd9ab9
      https://github.com/llvm/llvm-project/commit/6779376ee917279b16e256839d236cfdf8fd9ab9
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb/LLDB.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/visualstudio/VisualStudio.py
    M cross-project-tests/debuginfo-tests/dexter/dex/tools/Main.py
    M cross-project-tests/debuginfo-tests/dexter/dex/tools/help/Tool.py
    A cross-project-tests/debuginfo-tests/dexter/dex/utils/Imports.py

  Log Message:
  -----------
  [Dexter] Remove outdated imp dependency (#111833)

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

This patch replaces usage of the python `imp` library, which is
deprecated since python3.4 and removed in python3.12, with the
`importlib` library. As part of this update the repeated
find_module+load_module pattern is moved into a utility function, since
the importlib equivalent is much more verbose.


  Commit: a3cd269fbebecb6971e216a9c29ad8933ad7b0fc
      https://github.com/llvm/llvm-project/commit/a3cd269fbebecb6971e216a9c29ad8933ad7b0fc
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/Analysis/CostModel/RISCV/cast-half.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp2i.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-i2fp.ll

  Log Message:
  -----------
  [RISCV] Remove {s,u}int_to_fp custom op action for f16/bf16 (#111471)

It turns out that {s,u}int_to_fp nodes get their operation action from
their operand's type, not the result type, so we don't need to set it
for fp16 or bf16. vp_{s,u}int_to_fp uses the result type though so we
need to keep it.

This also means that we can lower int_to_fp for fixed length bf16
vectors already, so this adds tests for that.

The cost model test changes are due to BasicTTIImpl's getCastInstrCost
not taking into account that int_to_fp needs its legal type swapped.
This can be fixed in a later patch, but its worth noting that the
affected types in the tests currently crash when lowered anyway (due to
them needing split at LMUL > 8)


  Commit: 0a0f100a70583725428ec317138b09f935a2b9bb
      https://github.com/llvm/llvm-project/commit/0a0f100a70583725428ec317138b09f935a2b9bb
  Author: Hari Limaye <hari.limaye at arm.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/test/Other/new-pm-lto-defaults.ll

  Log Message:
  -----------
  Revert "[LTO] Run Argument Promotion before IPSCCP" (#111839)

Reverts llvm/llvm-project#111163, as this was merged prematurely.


  Commit: dabb0ddbd7a7229855156c61df1d35ad845361ac
      https://github.com/llvm/llvm-project/commit/dabb0ddbd7a7229855156c61df1d35ad845361ac
  Author: Vladimir Radosavljevic <129192835+vladimirradosavljevic at users.noreply.github.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/lib/CodeGen/MachineCopyPropagation.cpp
    A llvm/test/CodeGen/AArch64/machine-cp-constant-reg.mir

  Log Message:
  -----------
  [MCP] Skip invalidating def constant regs during forward propagation (#111129)

Before this patch, redundant COPY couldn't be removed for the following
case:
```
  %reg1 = COPY %const-reg
  ... // There is a def of %const-reg
  %reg2 = COPY killed %reg1
```
where this can be optimized to:
```
  ... // There is a def of %const-reg
  %reg2 = COPY %const-reg
```

This patch allows for such optimization by not invalidating defined
constant registers. This is safe, as architectures like AArch64 and
RISCV replace a dead definition of a GPR with a zero constant register
for certain instructions.


  Commit: 3737a5321901574b3f4b2cf0d798faea5c4a2302
      https://github.com/llvm/llvm-project/commit/3737a5321901574b3f4b2cf0d798faea5c4a2302
  Author: Tyler Nowicki <tyler.nowicki at amd.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/include/llvm/IR/Intrinsics.td
    M llvm/include/llvm/Transforms/Coroutines/ABI.h
    M llvm/include/llvm/Transforms/Coroutines/CoroInstr.h
    M llvm/include/llvm/Transforms/Coroutines/CoroSplit.h
    M llvm/lib/Transforms/Coroutines/CoroCleanup.cpp
    M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
    M llvm/lib/Transforms/Coroutines/Coroutines.cpp
    M llvm/unittests/Transforms/Coroutines/ExtraRematTest.cpp

  Log Message:
  -----------
  [Coroutines] Support for Custom ABIs (#111755)

This change extends the current method for creating ABI object to allow
users (plugin libraries) to create custom ABI objects for their needs.
This is accomplished by inheriting one of the common ABIs and overriding
one or more of the methods to create a custom ABI. To use a custom ABI
for a given coroutine the coro.begin.custom.abi intrinsic is used in
place of the coro.begin intrinsic. This takes an additional i32 arg that
specifies the index of an ABI generator for the custom ABI object in a
SmallVector passed to the CoroSplitPass ctor.

The detailed changes include:
* Add the llvm.coro.begin.custom intrinsic used to specify the index of
the custom ABI to use for the given coroutine.
* Add constructors to CoroSplit that take a list of generators that
create the custom ABI object.
* Extend the CreateNewABI function used by CoroSplit to return a
unique_ptr to an ABI object.
* Add has/getCustomABI methods to CoroBeginInst class.
* Add a unittest for a custom ABI.

See doc update here: https://github.com/llvm/llvm-project/pull/111781


  Commit: 005e601611095f1bed4ca7e6c37c17645e75ca0c
      https://github.com/llvm/llvm-project/commit/005e601611095f1bed4ca7e6c37c17645e75ca0c
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/utils/gn/secondary/lldb/test/BUILD.gn

  Log Message:
  -----------
  [gn] port 0e913237871e (LLDB_TEST_MAKE)


  Commit: 545e0593f8c59376a7ec8c6eb558babf6c9f93c1
      https://github.com/llvm/llvm-project/commit/545e0593f8c59376a7ec8c6eb558babf6c9f93c1
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M libc/src/stdio/asprintf.cpp
    M libc/src/stdio/asprintf.h
    M libc/src/stdio/printf_core/vasprintf_internal.h
    M libc/src/stdio/vasprintf.cpp
    M libc/src/stdio/vasprintf.h

  Log Message:
  -----------
  [libc] Clean up 'vasprintf' implementation (#111761)

Summary:
This had some leftover references to the old namespace and didn't put
restrict on it.


  Commit: e023d0270eb32cacdc720bbeea262b2869f7e9e4
      https://github.com/llvm/llvm-project/commit/e023d0270eb32cacdc720bbeea262b2869f7e9e4
  Author: Brox Chen <guochen2 at amd.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/test/tools/UpdateTestChecks/update_mc_test_checks/Inputs/amdgpu_dasm.txt
    M llvm/test/tools/UpdateTestChecks/update_mc_test_checks/Inputs/amdgpu_dasm.txt.expected

  Log Message:
  -----------
  [AMDGPU][test]update error dasm test for update-mc-test-check script (#111760)

The previous error test line is using a 16bit instruction to indicate an
error. However this is a poor pick.

The 16bit instructions on AMDGPU is under development and thus, some
downstream branches are not showing this exact error message. Changing
it to another error dasm code.


  Commit: f59b0c76030aff268b78d475e219708d06b982b5
      https://github.com/llvm/llvm-project/commit/f59b0c76030aff268b78d475e219708d06b982b5
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Bufferization/Transforms/Passes.td
    M mlir/lib/Dialect/Linalg/Transforms/DropUnitDims.cpp
    M mlir/test/Dialect/Linalg/loops.mlir
    M mlir/test/Dialect/Linalg/transform-patterns.mlir
    M mlir/test/Dialect/Linalg/vectorization-with-patterns.mlir

  Log Message:
  -----------
  [mlir][linalg][nfc] Delete references to args_in/args_out (#111517)

After the refactor in:
  * ed229132f1c4ea2ba0644fc345d8279e47a00565,

the `args_in` and `args_out` attributes are no longer used by
`linalg.generic`. This patch removes most the remaining references.
I've left out BufferDeallocationInternals.md, which doesn't seem
maintained anymore and is quite out of sync with other bits of MLIR
(e.g. `test.generic` instead of `linalg.generic`).


  Commit: 058ede06c4ffd4e3c9f54d947e3bfb027c2d0557
      https://github.com/llvm/llvm-project/commit/058ede06c4ffd4e3c9f54d947e3bfb027c2d0557
  Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/builders/builder.py
    M lldb/test/API/functionalities/json/symbol-file/Makefile

  Log Message:
  -----------
  [lldb][test] Use `xcrun -f strip` for API tests on Darwin (#111842)

A follow-up for https://github.com/llvm/llvm-project/pull/111816.

This is to fix buildbot failure
https://lab.llvm.org/staging/#/builders/195/builds/4242.

TestSymbolFileJSON.py doesn't pass with llvm-strip on macOS. Apparently,
llvm-strip/llvm-objcopy can't clean symbols from Mach-O nlists.


  Commit: 77c842f44cc06951975fd4a85761e0bc830d185a
      https://github.com/llvm/llvm-project/commit/77c842f44cc06951975fd4a85761e0bc830d185a
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M clang-tools-extra/clang-apply-replacements/lib/Tooling/ApplyReplacements.cpp

  Log Message:
  -----------
  [clang-apply-replacements] Avoid repeated hash lookups (NFC) (#111783)


  Commit: d2a96d170a4faa0a6c42fe5f23c073891d6118b8
      https://github.com/llvm/llvm-project/commit/d2a96d170a4faa0a6c42fe5f23c073891d6118b8
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M clang-tools-extra/clang-change-namespace/ChangeNamespace.cpp

  Log Message:
  -----------
  [clang-change-namespace] Avoid repeated hash lookups (NFC) (#111784)


  Commit: 670a4613fc5f29036f23fe357b0dbf017d019717
      https://github.com/llvm/llvm-project/commit/670a4613fc5f29036f23fe357b0dbf017d019717
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/ForwardDeclarationNamespaceCheck.cpp

  Log Message:
  -----------
  [clang-tidy] Avoid repeated hash lookups (NFC) (#111785)


  Commit: 35bbfbc7c0d0782bad5160662c9683b38329c7c1
      https://github.com/llvm/llvm-project/commit/35bbfbc7c0d0782bad5160662c9683b38329c7c1
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/lib/XRay/BlockIndexer.cpp

  Log Message:
  -----------
  [XRay] Simplify code with DenseMap::operator[] (NFC) (#111786)


  Commit: fc467b477545c9f8ef4dc36ecee4dcd2a7457787
      https://github.com/llvm/llvm-project/commit/fc467b477545c9f8ef4dc36ecee4dcd2a7457787
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

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

  Log Message:
  -----------
  [AMDGPU] Avoid repeated hash lookups (NFC) (#111787)


  Commit: 97a43242246bf4a55e68bddf3e6a0500c07803cc
      https://github.com/llvm/llvm-project/commit/97a43242246bf4a55e68bddf3e6a0500c07803cc
  Author: alx32 <103613512+alx32 at users.noreply.github.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lld/MachO/ICF.cpp
    M lld/test/MachO/icf-safe-thunks.ll

  Log Message:
  -----------
  [lld-macho] Fix ICF differentiation of safe_thunks relocs (#111811)

In `--icf=safe_thunks` mode, the linker differentiates `keepUnique`
functions by creating thunks during a post-processing step after
Identical Code Folding (ICF). While this ensures that `keepUnique`
functions themselves are not incorrectly merged, it overlooks functions
that reference these `keepUnique` symbols.

If two functions are identical except for references to different
`keepUnique` functions, the current ICF algorithm incorrectly considers
them identical because it doesn't account for the future differentiation
introduced by thunks. This leads to incorrect deduplication of functions
that should remain distinct.

To address this issue, we modify the ICF comparison to explicitly check
for references to `keepUnique` functions during deduplication. By doing
so, functions that reference different `keepUnique` symbols are
correctly identified as distinct, preventing erroneous merging and
ensuring the correctness of the linked output.


  Commit: 4ddc756bccb34f3d07e30c9ca96bba32cb0cf4f9
      https://github.com/llvm/llvm-project/commit/4ddc756bccb34f3d07e30c9ca96bba32cb0cf4f9
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M flang/include/flang/Optimizer/CodeGen/Target.h
    M flang/include/flang/Optimizer/Dialect/FIROpsSupport.h
    M flang/lib/Optimizer/CodeGen/Target.cpp
    M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
    M flang/lib/Optimizer/Transforms/AbstractResult.cpp
    R flang/test/Fir/abstract-results-bindc.fir
    R flang/test/Fir/struct-return-x86-64.fir

  Log Message:
  -----------
  Revert "[flang] correctly deal with bind(c) derived type result ABI" (#111858)

Reverts llvm/llvm-project#111678

Causes ARM failure in test suite. TYPE(C_PTR) result should not regress
even if struct ABI no implemented for the target.
https://lab.llvm.org/buildbot/#/builders/143/builds/2731
I need to revisit this.


  Commit: a3638f19bc04468c6db28a9cca50975229bfd45a
      https://github.com/llvm/llvm-project/commit/a3638f19bc04468c6db28a9cca50975229bfd45a
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M clang/test/SemaCXX/attr-lifetimebound.cpp

  Log Message:
  -----------
  [clang] Update string and string_view in lifetimebound tests (#111737)

Removes pragmas like `# 1 "<std>" 1 3` to make line numbers in failing
tests more accurate.
Use `basic_string_view` instead `string_view` to kick in GSL
owner/pointer auto inference.


  Commit: 9839b8cfb477866b8610714976cc6599f32f63e6
      https://github.com/llvm/llvm-project/commit/9839b8cfb477866b8610714976cc6599f32f63e6
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    A llvm/test/tools/llvm-reduce/issue111817-catchswitch-assert.ll
    M llvm/tools/llvm-reduce/deltas/ReduceBasicBlocks.cpp

  Log Message:
  -----------
  llvm-reduce: Fix assert on invokes with catchswitch (#111838)

This is the minimal change to avoid the assert. There's an API flaw in
invoke instructions where getLandingPad assumes all invoke unwind
blocks have landingpads, when some have catchswitch instead.

Fixes #111817


  Commit: c042d8f7b35ccb7add9c873c7e5d74f568cca115
      https://github.com/llvm/llvm-project/commit/c042d8f7b35ccb7add9c873c7e5d74f568cca115
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
    M llvm/test/CodeGen/RISCV/hwasan-check-memaccess.ll

  Log Message:
  -----------
  [RISCV] Use RISCVAsmPrinter::EmitToStreamer for EmitHwasanMemaccessSymbols. (#111792)

Add a MCSubtargetInfo& operand so we can control the subtarget for the
new calls. The old signature is kept as a wrapper to pass *STI to
maintain compatibility.

By using EmitToStreamer we are able to compress the instructions when
possible.


  Commit: c77b10746160f985625603b1e9c837b44caa5c67
      https://github.com/llvm/llvm-project/commit/c77b10746160f985625603b1e9c837b44caa5c67
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lldb/include/lldb/Host/Host.h
    M lldb/include/lldb/Utility/Log.h
    M lldb/source/API/SystemInitializerFull.cpp
    M lldb/source/Host/common/Host.cpp
    M lldb/source/Host/common/HostInfoBase.cpp
    M lldb/source/Utility/Log.cpp
    A lldb/test/Shell/Host/TestSytemLogChannel.test

  Log Message:
  -----------
  [lldb] Introduce an always-on system log category/channel (#108495)

Add an "always on" log category and channel. Unlike other, existing log
channels, it is not exposed to users. The channel is meant to be used
sparsely and deliberately for logging high-value information to the
system log.

We have a similar concept in the downstream Swift fork and this has
proven to be extremely valuable. This is especially true on macOS where
system log messages are automatically captured as part of a sysdiagnose.


  Commit: f5aec03f6dd2f92590ecec9e3419b38b11d8476e
      https://github.com/llvm/llvm-project/commit/f5aec03f6dd2f92590ecec9e3419b38b11d8476e
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M clang/lib/Analysis/ProgramPoint.cpp

  Log Message:
  -----------
  [clang][analyzer][NFC] Fix strange bracket placement


  Commit: 23309d7d9553af69b2912a159bc2e488acf69255
      https://github.com/llvm/llvm-project/commit/23309d7d9553af69b2912a159bc2e488acf69255
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/visualstudio/VisualStudio.py
    M cross-project-tests/debuginfo-tests/dexter/dex/utils/Imports.py

  Log Message:
  -----------
  [Dexter] Set up ComInterface module to be imported correctly (#111850)

Fixes issue added by: https://github.com/llvm/llvm-project/pull/111833

Following the previous commit that changed how Dexter imports modules,
the ComInterface module import became broken. This is because it had a
different directory structure to other modules, where we want to import
single file rather than a dir containing a __init__.py. For this case,
an optional extra arg has been added to load_module allowing a filename
to be specified, letting us import ComInterface.py directly and fixing
the issue.


  Commit: 03483737a7a2d72a257a5ab6ff01748ad9cf0f75
      https://github.com/llvm/llvm-project/commit/03483737a7a2d72a257a5ab6ff01748ad9cf0f75
  Author: Md Asghar Ahmad Shahid <md.asghar.ahmad.shahid at intel.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgInterfaces.td
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgNamedStructuredOps.yaml
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
    M mlir/lib/Dialect/Linalg/IR/LinalgInterfaces.cpp
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/TransposeMatmul.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
    M mlir/lib/Dialect/NVGPU/TransformOps/NVGPUTransformOps.cpp
    M mlir/python/mlir/dialects/linalg/opdsl/ops/core_named_ops.py
    M mlir/test/Dialect/Linalg/generalize-named-ops.mlir
    M mlir/test/Dialect/Linalg/invalid.mlir
    M mlir/test/Dialect/Linalg/named-ops.mlir
    M mlir/test/python/dialects/linalg/ops.py
    M mlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-yaml-gen.cpp

  Log Message:
  -----------
  [mlir][linalg] Introduce transpose semantic to 'linalg.matmul' ops. (#104783)

The main goal of this patch is to extend the semantic of 'linalg.matmul'
named op to include per operand transpose semantic while also laying out
a way to move ops definition from OpDSL to tablegen. Hence, it is
implemented in tablegen. Transpose semantic is as follows.

By default 'linalg.matmul' behavior will remain as is. Transpose
semantics can be appiled on per input operand by specifying the optional
permutation attributes (namely 'permutationA' for 1st input and
'permutationB' for 2nd input) for each operand explicitly as needed. By
default, no transpose is mandated for any of the input operand.

    Example:
    ```
%val = linalg.matmul ins(%arg0, %arg1 : memref<5x3xf32>,
memref<5x7xf32>)
              outs(%arg2: memref<3x7xf32>)
              permutationA = [1, 0]
              permutationB = [0, 1]
    ```


  Commit: cb5fbd2f60a5a588bfa4668ea8269c3568cbff6e
      https://github.com/llvm/llvm-project/commit/cb5fbd2f60a5a588bfa4668ea8269c3568cbff6e
  Author: Ellis Hoag <ellis.sparky.hoag at gmail.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/lib/CodeGen/MachineBlockPlacement.cpp
    M llvm/test/CodeGen/X86/code_placement_ext_tsp.ll
    M llvm/test/CodeGen/X86/code_placement_ext_tsp_large.ll
    M llvm/test/CodeGen/X86/code_placement_ext_tsp_size.ll

  Log Message:
  -----------
  [CodeLayout] Do not verify after assigning blocks (#111754)

Rather than invariantly running `F->verify()` when asserts are enabled,
run machine IR verification in LIT tests only.

Swap `CHECK-PERF` and `CHECK-SIZE` in `code_placement_ext_tsp_large.ll`.

Remove `={0,1,true,false}` from flags in tests.


  Commit: 25d9688c43d37c0c918e9b8ab2f67be35b0fb75f
      https://github.com/llvm/llvm-project/commit/25d9688c43d37c0c918e9b8ab2f67be35b0fb75f
  Author: yronglin <yronglin777 at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaInit.cpp
    M clang/test/AST/ast-dump-for-range-lifetime.cpp
    M clang/test/CXX/special/class.temporary/p6.cpp
    M clang/www/cxx_status.html

  Log Message:
  -----------
  [Clang] Extend lifetime of temporaries in mem-default-init for P2718R0 (#86960)

Depends on [CWG1815](https://github.com/llvm/llvm-project/pull/108039).
Fixes https://github.com/llvm/llvm-project/issues/85613.

In [[Clang] Implement P2718R0 "Lifetime extension in range-based for
loops"](https://github.com/llvm/llvm-project/pull/76361), we've not
implement the lifetime extensions for the temporaries which in
`CXXDefaultInitExpr`. As the confirmation in
https://github.com/llvm/llvm-project/issues/85613, we should extend
lifetime for that.

To avoid modifying current CodeGen rules, in a lifetime extension
context, the cleanup of `CXXDefaultInitExpr` was ignored.

---------

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


  Commit: 2190ffa0f7e874d04fd0f750142135faa5df5d6b
      https://github.com/llvm/llvm-project/commit/2190ffa0f7e874d04fd0f750142135faa5df5d6b
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M libc/src/stdio/asprintf.h
    M libc/src/stdio/vasprintf.h

  Log Message:
  -----------
  [libc] Fix missing namespace declarations


  Commit: 73e74e496ec32a13a5ae71df71364065f7be3cca
      https://github.com/llvm/llvm-project/commit/73e74e496ec32a13a5ae71df71364065f7be3cca
  Author: Eric Astor <epastor at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M clang/include/clang/AST/Attr.h
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaStmtAttr.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/test/AST/attr-print-emit.cpp
    M clang/test/Sema/annotate.c
    M clang/test/SemaTemplate/attributes.cpp
    M clang/utils/TableGen/ClangAttrEmitter.cpp

  Log Message:
  -----------
  [clang][frontend] Support applying the annotate attribute to statements (#111841)

By allowing AnnotateAttr to be applied to statements, users can place arbitrary information in the AST for later use.

For example, this can be used for HW-targeted language extensions that involve specialized loop annotations.


  Commit: c04b640a919de50342fca9e0afcbf4b710c7ea2f
      https://github.com/llvm/llvm-project/commit/c04b640a919de50342fca9e0afcbf4b710c7ea2f
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M libc/src/stdio/vasprintf.h

  Log Message:
  -----------
  [libc] Add missing config include


  Commit: cc9e7cb99b63559c5baf7e380287e5658c412370
      https://github.com/llvm/llvm-project/commit/cc9e7cb99b63559c5baf7e380287e5658c412370
  Author: TatWai Chong <78814694+tatwaichong at users.noreply.github.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Conversion/TosaToLinalg/TosaToLinalg.h
    M mlir/include/mlir/Dialect/Tosa/Transforms/Passes.td
    M mlir/lib/Conversion/TosaToLinalg/TosaToLinalgPass.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
    M mlir/test/Dialect/Tosa/invalid.mlir
    M mlir/test/Dialect/Tosa/level_check.mlir

  Log Message:
  -----------
  [mlir][tosa] Change the type of profile option to ListOption (#111214)

In tosa valiation pass, change the type of profile option to ListOption.
Now TOSA profiles is turned from hierarchical to composable. Each
profile is an independent set, i.e. an target can implement multiple
profiles.

Set the profile option to none by default, and limit to profiles if
requested.
The profiles can be specified via command line, e.g.
$ mlir-opt ... --tosa-validate="profile=bi,mi" which tells the valiation
pass that BI and MI are enabled.

Change-Id: I1fb8d0c1b27eccd768349b6eb4234093313efb57


  Commit: f2c5aa920054fa60372a161520e6ea8e8d23880d
      https://github.com/llvm/llvm-project/commit/f2c5aa920054fa60372a161520e6ea8e8d23880d
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp
    M lldb/source/Target/ScriptedThreadPlan.cpp

  Log Message:
  -----------
  [lldb] Fix a variety of LLDB_LOG format strings

LLVM now triggers an assertion when the format string and arguments
don't match. Fix a variety of incorrect format strings I discovered when
enabling logging with a debug build.


  Commit: 0fc3e4093ca5d226df37206626bfac3e4853b0db
      https://github.com/llvm/llvm-project/commit/0fc3e4093ca5d226df37206626bfac3e4853b0db
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp

  Log Message:
  -----------
  [alpha.webkit.UncountedCallArgsChecker] Skip std::forward in tryToFindPtrOrigin. (#111222)

Ignore std::forward when it appears while looking for the pointer
origin.


  Commit: 820bab8fb581f2fcd1a96b495f4762b02195d86a
      https://github.com/llvm/llvm-project/commit/820bab8fb581f2fcd1a96b495f4762b02195d86a
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp

  Log Message:
  -----------
  [alpha.webkit.UncountedCallArgsChecker] Add the support for trivial CXXInheritedCtorInitExpr. (#111198)


  Commit: 39a91413c3f79181b4a45447bdb08d04d3efc975
      https://github.com/llvm/llvm-project/commit/39a91413c3f79181b4a45447bdb08d04d3efc975
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.h
    M clang/lib/StaticAnalyzer/Checkers/WebKit/UncountedCallArgsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/UncountedLambdaCapturesChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/UncountedLocalVarsChecker.cpp

  Log Message:
  -----------
  isUncountedPtr should take QualType as an argument. (#110213)

Make isUncountedPtr take QualType as an argument instead of Type*. This
simplifies some code.


  Commit: 36c34ec967c28c77406fe85ef3237a167a243763
      https://github.com/llvm/llvm-project/commit/36c34ec967c28c77406fe85ef3237a167a243763
  Author: Abid Qadeer <haqadeer at amd.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
    M mlir/lib/Dialect/LLVMIR/IR/LLVMAttrs.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/lib/Target/LLVMIR/DebugImporter.cpp
    M mlir/lib/Target/LLVMIR/DebugImporter.h
    M mlir/lib/Target/LLVMIR/DebugTranslation.cpp
    M mlir/lib/Target/LLVMIR/DebugTranslation.h
    M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
    M mlir/test/Dialect/LLVMIR/debuginfo.mlir
    M mlir/test/Target/LLVMIR/Import/debug-info.ll
    M mlir/test/Target/LLVMIR/llvmir-debug.mlir

  Log Message:
  -----------
  [mlir][debug] Support DICommonBlock. (#111706)

A COMMON block is a named area of memory that holds a collection of
variables. Fortran subprograms may map the COMMON block memory area to a
list of variables. A common block is represented in LLVM debug by
DICommonBlock.

This PR adds support for this in MLIR. The changes are mostly mechanical
apart from small change to access the DICompileUnit when the scope of
the variable is DICommonBlock.

---------

Co-authored-by: Tobias Gysi <tobias.gysi at nextsilicon.com>


  Commit: 43ba97e7079525a9686e15a6963508dfbd493f81
      https://github.com/llvm/llvm-project/commit/43ba97e7079525a9686e15a6963508dfbd493f81
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M libcxx/src/CMakeLists.txt
    M libcxxabi/src/CMakeLists.txt
    M libunwind/src/CMakeLists.txt

  Log Message:
  -----------
  [runtimes][NFC] Reindent CMake files (#111821)

This is a purely mechanical commit for fixing the indentation of the
runtimes' CMakeLists files after #80007. That PR didn't update the
indentation in order to make the diff easier to review and for merge
conflicts to be easier to resolve (for downstream changes).

This doesn't change any code, it only reindents it.


  Commit: 3f9998af4f79e95fe8be615df9d6b898008044b9
      https://github.com/llvm/llvm-project/commit/3f9998af4f79e95fe8be615df9d6b898008044b9
  Author: Justin Fargnoli <jfargnoli at nvidia.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/test/CodeGen/NVPTX/i8x4-instructions.ll
    M llvm/test/CodeGen/NVPTX/sext-setcc.ll

  Log Message:
  -----------
  [NVPTX] Prefer prmt.b32 over bfi.b32 (#110766)

In [[NVPTX] Improve lowering of
v4i8](https://github.com/llvm/llvm-project/commit/cbafb6f2f5c99474164dcc725820cbbeb2e02e14)
@Artem-B add the ability to lower ISD::BUILD_VECTOR with bfi PTX
instructions. @Artem-B did this because:
([source](https://github.com/llvm/llvm-project/pull/67866#discussion_r1343066911))

> Under the hood byte extraction/insertion ends up as BFI/BFE
instructions, so we may as well do that in PTX, too.
https://godbolt.org/z/Tb3zWbj9b

However, the example that @Artem-B linked was targeting sm_52. On modern
architectures, ptxas uses prmt.b32.
[Example](https://godbolt.org/z/Ye4W1n84o).

Thus, remove uses of NVPTXISD::BFI in favor of NVPTXISD::PRMT.


  Commit: c893e3d02d1f7b67880090485a030b79741bba1c
      https://github.com/llvm/llvm-project/commit/c893e3d02d1f7b67880090485a030b79741bba1c
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M flang/runtime/io-stmt.cpp
    M flang/runtime/io-stmt.h

  Log Message:
  -----------
  [flang][runtime] Fix runtime crash after bad recoverable OPEN (#111454)

When an OPEN statement with a unit number fails in a recoverable manner,
the runtime needs to delete the ExternalFileUnit instance that was
created in the unit map. And we do this too soon -- that instance still
holds some of the I/O statement state that will be used by a later call
into the runtime for EndIoStatement.

Move the code that deletes the unit after a failed but recoverable OPEN
into ExternalIoStatementBase::EndIoStatement, and don't do things
afterwards that would need the I/O statement state that has been
destroyed.

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


  Commit: 4f2b65fb80a4b27e5fb88db816ed0ce174c9b1b4
      https://github.com/llvm/llvm-project/commit/4f2b65fb80a4b27e5fb88db816ed0ce174c9b1b4
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    A flang/include/flang/Semantics/program-tree.h
    M flang/include/flang/Semantics/semantics.h
    M flang/lib/Semantics/program-tree.cpp
    R flang/lib/Semantics/program-tree.h
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/semantics.cpp

  Log Message:
  -----------
  [flang] Fix references to destroyed objects (#111582)

ProgramTree instances are created as the value of a local variable in
the Pre(const parser::ProgramUnit &) member function in name resolution.
But references to these ProgramTree instances can persist in
SubprogramNameDetails symbol table entries that might survive that
function call's lifetime, and lead to trouble later when (e.g.)
expression semantics needs to deal with a possible forward reference in
a function reference in an expression being processed later in
expression checking.

So put those ProgramTree instances into a longer-lived linked list
within the SemanticsContext.

Might fix some weird crashes reported on big-endian targets (AIX &
Solaris).


  Commit: 2f22656db541e4e5c3401e7bbab25277c8438a23
      https://github.com/llvm/llvm-project/commit/2f22656db541e4e5c3401e7bbab25277c8438a23
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M flang/lib/Semantics/resolve-names-utils.cpp
    M flang/lib/Semantics/resolve-names-utils.h
    M flang/lib/Semantics/tools.cpp

  Log Message:
  -----------
  [flang] Minor cleanup (move function into /tools.cpp) (#111587)

The semantics utility GetAllNames has declarations in two header files
and a definition that really should be in the common utilities source
file. Remove the redudant declaration from resolve-names-utils.h and
move code from resolve-names-utils.cpp into Semantics/tools.cpp.


  Commit: 7e16571eb02e7e9da24fee45359e981af783d0d0
      https://github.com/llvm/llvm-project/commit/7e16571eb02e7e9da24fee45359e981af783d0d0
  Author: Adrian Vogelsgesang <avogelsgesang at salesforce.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M libcxx/docs/UserDocumentation.rst
    M lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.cpp
    A lldb/test/API/lang/cpp/libcxx-internals-recognizer/Makefile
    A lldb/test/API/lang/cpp/libcxx-internals-recognizer/TestLibcxxInternalsRecognizer.py
    A lldb/test/API/lang/cpp/libcxx-internals-recognizer/main.cpp
    R lldb/test/API/lang/cpp/std-invoke-recognizer/Makefile
    R lldb/test/API/lang/cpp/std-invoke-recognizer/TestStdInvokeRecognizer.py
    R lldb/test/API/lang/cpp/std-invoke-recognizer/main.cpp

  Log Message:
  -----------
  [lldb][libc++] Hide all libc++ implementation details from stacktraces (#108870)

This commit changes the libc++ frame recognizer to hide implementation
details of libc++ more aggressively. The applied heuristic is rather
straightforward: We consider every function name starting with `__` as
an implementation detail.

This works pretty neatly for `std::invoke`, `std::function`,
`std::sort`, `std::map::emplace` and many others. Also, this should
align quite nicely with libc++'s general coding convention of using the
`__` for their implementation details, thereby keeping the future
maintenance effort low.

However, this heuristic by itself does not work in 100% of the cases:
E.g., `std::ranges::sort` is not a function, but an object with an
overloaded `operator()`, which means that there is no actual call
`std::ranges::sort` in the call stack. Instead, there is a
`std::ranges::__sort::operator()` call. To make sure that we don't hide
this stack frame, we never hide the frame which represents the entry
point from user code into libc++ code


  Commit: 7026960ecfe156223c4126495c146ce0d42c64a7
      https://github.com/llvm/llvm-project/commit/7026960ecfe156223c4126495c146ce0d42c64a7
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M flang/include/flang/Runtime/allocator-registry.h

  Log Message:
  -----------
  [flang][runtime][NFC] Fix header guard typo (#111741)

Header guard was in sync with the filename.


  Commit: 99c8557c175e88ff1c338c4c29e3a4d63c5a46cb
      https://github.com/llvm/llvm-project/commit/99c8557c175e88ff1c338c4c29e3a4d63c5a46cb
  Author: Renato Golin <rengolin at systemcall.eu>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp

  Log Message:
  -----------
  Fix GCC build problem with 03483737a7a2


  Commit: 453d373e80f3ed8d67c92956101f7b9fa9467116
      https://github.com/llvm/llvm-project/commit/453d373e80f3ed8d67c92956101f7b9fa9467116
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M compiler-rt/lib/lsan/lsan_common.cpp

  Log Message:
  -----------
  [lsan] Add a few "\n" missing from VReport


  Commit: 62b3a4bc708885f8ded09c900a79ad509f02e54a
      https://github.com/llvm/llvm-project/commit/62b3a4bc708885f8ded09c900a79ad509f02e54a
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.barrier.wait.ll

  Log Message:
  -----------
  [AMDGPU] Improve codegen for s_barrier_init (#111866)


  Commit: ba530e6b64a27876ef5ea8e29806260d8bc00926
      https://github.com/llvm/llvm-project/commit/ba530e6b64a27876ef5ea8e29806260d8bc00926
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    A utils/bazel/llvm-project-overlay/clang-tools-extra/clang-doc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/clang-tools-extra/unittests/BUILD.bazel

  Log Message:
  -----------
  [bazel] Add initial clang-doc config (#111779)


  Commit: d36cef0b173329fa1f94ff3a92da6a50da4aff9e
      https://github.com/llvm/llvm-project/commit/d36cef0b173329fa1f94ff3a92da6a50da4aff9e
  Author: Finn Plummer <50529406+inbelic at users.noreply.github.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/test/CodeGenHLSL/builtins/wave_get_lane_index_simple.hlsl
    A clang/test/SemaHLSL/BuiltIns/WaveGetLaneIndex-errors.hlsl
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/lib/Target/DirectX/DXIL.td
    A llvm/test/CodeGen/DirectX/WaveGetLaneIndex.ll

  Log Message:
  -----------
  [HLSL][DXIL] Implement WaveGetLaneIndex Intrinsic (#111576)

- add additional lowering for directx backend in CGBuiltin.cpp
    - add directx intrinsic to IntrinsicsDirectX.td
    - add semantic check of arguments in SemaHLSL.cpp
    - add mapping to DXIL op in DXIL.td

    - add testing of semantics in WaveGetLaneIndex-errors.hlsl
    - add testing of dxil lowering in WaveGetLaneIndex.ll
  
Resolves #70105


  Commit: b800ff67dae59e194c8e9fc5d795a5932dc726f8
      https://github.com/llvm/llvm-project/commit/b800ff67dae59e194c8e9fc5d795a5932dc726f8
  Author: Donough Liu <ldm2993593805 at 163.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lldb/tools/debugserver/source/MacOSX/MachThread.cpp
    M lldb/tools/debugserver/source/MacOSX/MachThread.h

  Log Message:
  -----------
  [lldb][debugserver][NFC] Simplify macOS thread name fetching. (#111684)

Remove unnecessary `proc_pidinfo` calling.


  Commit: c2063de1593610eda0f4de33c3b89324642ed54c
      https://github.com/llvm/llvm-project/commit/c2063de1593610eda0f4de33c3b89324642ed54c
  Author: Greg Roth <grroth at microsoft.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M clang/lib/Basic/Targets/DirectX.h
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M clang/test/CodeGenHLSL/ArrayTemporary.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/OutputArguments.hlsl
    M clang/test/CodeGenHLSL/GlobalConstructorFunction.hlsl
    M clang/test/CodeGenHLSL/GlobalConstructorLib.hlsl
    M clang/test/CodeGenHLSL/GlobalConstructors.hlsl
    M clang/test/CodeGenHLSL/GlobalDestructors.hlsl
    M clang/test/CodeGenHLSL/basic_types.hlsl
    M clang/test/CodeGenHLSL/builtins/RWBuffer-annotations.hlsl
    M clang/test/CodeGenHLSL/builtins/RWBuffer-elementtype.hlsl
    M clang/test/CodeGenHLSL/builtins/RasterizerOrderedBuffer-annotations.hlsl
    M clang/test/CodeGenHLSL/builtins/StructuredBuffer-annotations.hlsl
    M clang/test/CodeGenHLSL/builtins/StructuredBuffer-elementtype.hlsl
    M clang/test/CodeGenHLSL/builtins/abs.hlsl
    M clang/test/CodeGenHLSL/builtins/ceil.hlsl
    M clang/test/CodeGenHLSL/builtins/clamp.hlsl
    M clang/test/CodeGenHLSL/builtins/cos.hlsl
    M clang/test/CodeGenHLSL/builtins/exp.hlsl
    M clang/test/CodeGenHLSL/builtins/exp2.hlsl
    M clang/test/CodeGenHLSL/builtins/floor.hlsl
    M clang/test/CodeGenHLSL/builtins/hlsl_resource_t.hlsl
    M clang/test/CodeGenHLSL/builtins/log.hlsl
    M clang/test/CodeGenHLSL/builtins/log10.hlsl
    M clang/test/CodeGenHLSL/builtins/log2.hlsl
    M clang/test/CodeGenHLSL/builtins/max.hlsl
    M clang/test/CodeGenHLSL/builtins/min.hlsl
    M clang/test/CodeGenHLSL/builtins/pow.hlsl
    M clang/test/CodeGenHLSL/builtins/round.hlsl
    M clang/test/CodeGenHLSL/builtins/saturate.hlsl
    M clang/test/CodeGenHLSL/builtins/sin.hlsl
    M clang/test/CodeGenHLSL/builtins/sqrt.hlsl
    M clang/test/CodeGenHLSL/builtins/trunc.hlsl
    M clang/test/CodeGenHLSL/export.hlsl
    M clang/test/CodeGenHLSL/float3.hlsl
    M clang/test/CodeGenHLSL/group_shared.hlsl
    M clang/test/CodeGenHLSL/half.hlsl
    M clang/test/CodeGenHLSL/implicit-norecurse-attrib.hlsl
    M clang/test/CodeGenHLSL/inline-constructors.hlsl
    M clang/test/CodeGenHLSL/inline-functions.hlsl
    M clang/test/CodeGenHLSL/semantics/GroupIndex-codegen.hlsl
    M clang/test/CodeGenHLSL/shift-mask.hlsl
    M clang/test/CodeGenHLSL/sret_output.hlsl
    M clang/test/CodeGenHLSL/static-local-ctor.hlsl
    M clang/test/CodeGenHLSL/static_global_and_function_in_cb.hlsl
    M clang/test/CodeGenHLSL/this-assignment-overload.hlsl
    M clang/test/CodeGenHLSL/this-assignment.hlsl
    M clang/test/CodeGenHLSL/this-reference.hlsl

  Log Message:
  -----------
  Switch DirectX Target to use the Itanium ABI (#111632)

To consolidate behavior of function mangling and limit the number of
places that ABI changes will need to be made, this switches the DirectX
target used for HLSL to use the Itanium ABI from the Microsoft ABI. The
Itanium ABI has greater flexibility in decisions regarding mangling of
new types of which we have more than a few yet to add.

One effect of this will be that linking library shaders compiled with
DXC will not be possible with shaders compiled with clang. That isn't
considered a terribly interesting use case and one that would likely
have been onerous to maintain anyway.

This involved adding a function to call all global destructors as the
Microsoft ABI had done.

This requires a few changes to tests. Most notably the mangling style
has changed which accounts for most of the changes. In making those
changes, I took the opportunity to harmonize some very similar tests for
greater consistency. I also shaved off some unneeded run flags that had
probably been copied over from one test to another.

Other changes effected by using the new ABI include using different
types when manipulating smaller bitfields, eliminating an unnecessary
alloca in one instance in this-assignment.hlsl, changing the way static
local initialization is guarded, and changing the order of inout
parameters getting copied in and out. That last is a subtle change in
functionality, but one where there was sufficient inconsistency in the
past that standardizing is important, but the particular direction of
the standardization is less important for the sake of existing shaders.

fixes #110736


  Commit: 747d8f3fc93d912183059142631a343fb20bd07f
      https://github.com/llvm/llvm-project/commit/747d8f3fc93d912183059142631a343fb20bd07f
  Author: vporpo <vporpodas at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
    M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp

  Log Message:
  -----------
  [SandboxVec][DAG] Implement PredIterator (#111604)

This patch implements an iterator for iterating over both use-def and
mem dependencies of MemDGNodes.


  Commit: bb937e276da11c6d85318b32006f6510877c1a2c
      https://github.com/llvm/llvm-project/commit/bb937e276da11c6d85318b32006f6510877c1a2c
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-live-out-pointer-induction.ll
    M llvm/test/Transforms/LoopVectorize/X86/float-induction-x86.ll
    M llvm/test/Transforms/LoopVectorize/iv_outside_user.ll
    M llvm/test/Transforms/LoopVectorize/no-fold-tail-by-masking-iv-external-uses.ll
    M llvm/test/Transforms/LoopVectorize/pr58811-scev-expansion.ll

  Log Message:
  -----------
  [LV] Compute value of escaped induction based on the computed end value. (#110576)

Update fixupIVUsers to compute the value for escaped inductions using
the already computed end value of the induction (EndValue), but
subtracting the step.

This results in slightly simpler codegen, as we avoid computing the full
transformed index at VectorTripCount - 1.

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


  Commit: 125262312f366bd776b668b24026dbbc8e6b4c75
      https://github.com/llvm/llvm-project/commit/125262312f366bd776b668b24026dbbc8e6b4c75
  Author: Tyler Nowicki <tyler.nowicki at amd.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
    M llvm/unittests/Transforms/Coroutines/ExtraRematTest.cpp

  Log Message:
  -----------
  [Coroutines] Improve use of unique_ptr (#111870)

* Replace usage of unique_ptr<>(new ...) -> make_unique<>();


  Commit: f6e93b8147a94a595293b47c39d20d2038c812d1
      https://github.com/llvm/llvm-project/commit/f6e93b8147a94a595293b47c39d20d2038c812d1
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

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

  Log Message:
  -----------
  AMDGPU: Minor improvement and cleanup for waterfall loop generation (#111886)

First, ReadlanePieces should be in the scope of each MachineOperand. It
is not correct if we declare in a outer scope without clearing after the
use for a MachineOperand.
Additionally, we do not need the OrigBB argyment for
emitLoadScalarOpsFromVGPRLoop, since MachineFunction (the only use) can
be obtained from LoopBB (or BodyBB).


  Commit: e34d614e7d8616f165f3f5d349db98d9924826f2
      https://github.com/llvm/llvm-project/commit/e34d614e7d8616f165f3f5d349db98d9924826f2
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp

  Log Message:
  -----------
  [Passes] Remove -enable-infer-alignment-pass flag (#111873)

This flag has been on for a while without any complaints.


  Commit: 07892aaf04032e7a18368bc8320f93f7d46ab20f
      https://github.com/llvm/llvm-project/commit/07892aaf04032e7a18368bc8320f93f7d46ab20f
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_thread_registry.cpp

  Log Message:
  -----------
  [NFC][sanitizer] Clang format sanitizer_thread_registry.cpp


  Commit: a4916d200518ac077be93995af18bd80fcb89cc2
      https://github.com/llvm/llvm-project/commit/a4916d200518ac077be93995af18bd80fcb89cc2
  Author: vporpo <vporpodas at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
    M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp

  Log Message:
  -----------
  [SandboxVec][DAG] Refactoring: Move MemPreds from DGNode to MemDGNode (#111897)


  Commit: d832a1c744fddad93ec4d8d2739c2a49a3623e02
      https://github.com/llvm/llvm-project/commit/d832a1c744fddad93ec4d8d2739c2a49a3623e02
  Author: Justin Fargnoli <jfargnoli at nvidia.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
    M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
    M llvm/test/CodeGen/NVPTX/unreachable.ll

  Log Message:
  -----------
  [NVPTX] Only run LowerUnreachable when necessary (#109868)

Before CUDA 12.3 `ptxas` did not recognize that the trap instruction
terminates a basic block. Instead, it would assume that control flow
continued to the next instruction. The next instruction could be in the
block that's lexically below it. This would lead to phantom CFG edges
being created within ptxas.

[NVPTX: Lower unreachable to exit to allow ptxas to accurately
reconstruct the
CFG.](https://github.com/llvm/llvm-project/commit/1ee4d880e8760256c606fe55b7af85a4f70d006d)
added the LowerUnreachable pass to NVPTX to work around this. Several
other WAR patches followed.

This bug in `ptxas` was fixed in CUDA 12.3 and is thus impossible to
encounter when targeting PTX ISA v8.3+

This commit reverts the WARs for the `ptxas` bug when targeting PTX ISA
v8.3+

CC @maleadt


  Commit: 29e192a0bfbc75fa66498d3b1c1d1329009f1dd2
      https://github.com/llvm/llvm-project/commit/29e192a0bfbc75fa66498d3b1c1d1329009f1dd2
  Author: Tyler Nowicki <tyler.nowicki at amd.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/docs/Coroutines.rst

  Log Message:
  -----------
  [Coroutines] Documentation for custom ABIs (#111781)

Update the llvm/docs/Coroutines.rst docs to include a full description
of Custom ABI objects. This documentation describes the how ABI objects
allow users (plugin libraries) to create custom ABI objects for their
needs.


  Commit: d5e1de6da96c1ab3b8cae68447e8ed3696a7006e
      https://github.com/llvm/llvm-project/commit/d5e1de6da96c1ab3b8cae68447e8ed3696a7006e
  Author: Robert O'Callahan <robert at ocallahan.org>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lldb/include/lldb/API/SBProcess.h
    M lldb/include/lldb/Target/Process.h
    M lldb/include/lldb/Target/StopInfo.h
    M lldb/include/lldb/lldb-enumerations.h
    M lldb/packages/Python/lldbsuite/test/gdbclientutils.py
    A lldb/packages/Python/lldbsuite/test/lldbgdbproxy.py
    A lldb/packages/Python/lldbsuite/test/lldbreverse.py
    M lldb/packages/Python/lldbsuite/test/lldbtest.py
    M lldb/source/API/SBProcess.cpp
    M lldb/source/API/SBThread.cpp
    M lldb/source/Interpreter/CommandInterpreter.cpp
    M lldb/source/Plugins/Process/Linux/NativeThreadLinux.cpp
    M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp
    M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.h
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.h
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
    M lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp
    M lldb/source/Plugins/Process/scripted/ScriptedProcess.h
    M lldb/source/Target/Process.cpp
    M lldb/source/Target/StopInfo.cpp
    M lldb/source/Target/Thread.cpp
    A lldb/test/API/functionalities/reverse-execution/Makefile
    A lldb/test/API/functionalities/reverse-execution/TestReverseContinueBreakpoints.py
    A lldb/test/API/functionalities/reverse-execution/TestReverseContinueNotSupported.py
    A lldb/test/API/functionalities/reverse-execution/main.c
    M lldb/tools/lldb-dap/JSONUtils.cpp
    M lldb/tools/lldb-dap/LLDBUtils.cpp

  Log Message:
  -----------
  [lldb] Implement basic support for reverse-continue (#99736)

This commit only adds support for the
`SBProcess::ReverseContinue()` API. A user-accessible command for this
will follow in a later commit.

This feature depends on a gdbserver implementation (e.g. `rr`) providing
support for the `bc` and `bs` packets. `lldb-server` does not support
those packets, and there is no plan to change that. So, for testing
purposes, `lldbreverse.py` wraps `lldb-server` with a Python
implementation of *very limited* record-and-replay functionality for use
by *tests only*.

The majority of this PR is test infrastructure (about 700 of the 950
lines added).


  Commit: f0ed31ce4b63a5530fd1de875c0d1467d4d2c6ea
      https://github.com/llvm/llvm-project/commit/f0ed31ce4b63a5530fd1de875c0d1467d4d2c6ea
  Author: Youngsuk Kim <youngsuk.kim at hpe.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/PGOCtxProfLowering.cpp

  Log Message:
  -----------
  [llvm][PGOCtxProfLowering] Avoid Type::getPointerTo() (NFC) (#111857)

`Type::getPointerTo()` is to be deprecated & removed soon.


  Commit: 942fefe74112acb68fa43dde44abe3ae125457e1
      https://github.com/llvm/llvm-project/commit/942fefe74112acb68fa43dde44abe3ae125457e1
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_linux.h

  Log Message:
  -----------
  [NFC][sanitizer] Reopen '/proc/%d/task' instead of seek

NFC because I am not aware of any particular
issue from seek, but reopen looks less error prone.

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


  Commit: 69b0b7e7ac3adc42df517c25ed7017b5af9be9f1
      https://github.com/llvm/llvm-project/commit/69b0b7e7ac3adc42df517c25ed7017b5af9be9f1
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

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

  Log Message:
  -----------
  [lldb] Return an llvm::Error from GetFrameBaseValue (#111882)

This fixes the following assertion: "Cannot create Expected<T> from
Error success value." The problem was that GetFrameBaseValue return
false without updating the Status argument. This patch eliminates the 
opportunity for mistakes by returning an llvm:Error.


  Commit: b3554265f24aa570bbc8693af8420a306c459f94
      https://github.com/llvm/llvm-project/commit/b3554265f24aa570bbc8693af8420a306c459f94
  Author: Chelsea Cassanova <chelsea_cassanova at apple.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lldb/include/lldb/lldb-enumerations.h

  Log Message:
  -----------
  [lldb] Add include for SBLanguages in lldb-enumerations (#111907)

This adds an include for SBLanguages.h in lldb-enumerations.h so that
files that need this enum do not have to explicitly include SBLanguages.


  Commit: 36bd9aebc428413a94f77e8daa679d1937dc2b63
      https://github.com/llvm/llvm-project/commit/36bd9aebc428413a94f77e8daa679d1937dc2b63
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M compiler-rt/lib/asan/asan_posix.cpp
    M compiler-rt/lib/dfsan/dfsan_custom.cpp
    M compiler-rt/lib/hwasan/hwasan_linux.cpp
    M compiler-rt/lib/lsan/lsan_posix.cpp
    M compiler-rt/lib/msan/msan_linux.cpp
    M compiler-rt/lib/tsan/rtl/tsan_rtl.cpp

  Log Message:
  -----------
  [sanitizer] VReport BeforeFork/AfterFork (#111900)

Forks are common suspects for unusual sanitizer behavior.
It can be handy to see them without rebuild.


  Commit: 86f78c0093100016bcb0299d1b7828c2d30e3a56
      https://github.com/llvm/llvm-project/commit/86f78c0093100016bcb0299d1b7828c2d30e3a56
  Author: Alexis Perry-Holby <aperry at lanl.gov>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M flang/docs/GettingInvolved.md

  Log Message:
  -----------
  [flang] Add a link to the ICS file for the Biweekly Flang Community Call


  Commit: b77fdf5799be6b29869f2f7969851709e03938ba
      https://github.com/llvm/llvm-project/commit/b77fdf5799be6b29869f2f7969851709e03938ba
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp

  Log Message:
  -----------
  [lldb] SetErrorStringWithFormatv -> FromErrorStringWithFormatv (NFC)


  Commit: 69c0067927293bff1401a9a050081e83dbefd282
      https://github.com/llvm/llvm-project/commit/69c0067927293bff1401a9a050081e83dbefd282
  Author: vporpo <vporpodas at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
    M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp

  Log Message:
  -----------
  [SandboxVec][DAG] Refactoring: Outline code that looks for mem nodes (#111750)


  Commit: 195486950fa64938e62f6d85d31222fa41d0ee09
      https://github.com/llvm/llvm-project/commit/195486950fa64938e62f6d85d31222fa41d0ee09
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp

  Log Message:
  -----------
  [NFC][sanitizer] Fix at_scope_exit name.


  Commit: 4b5018d2311596778cade4db5177e2ab879cc218
      https://github.com/llvm/llvm-project/commit/4b5018d2311596778cade4db5177e2ab879cc218
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/RISCV/reduced-value-repeated-and-vectorized.ll

  Log Message:
  -----------
  [SLP]Track repeated reduced value as it might be vectorized

Need to track changes with the repeated reduced value, since it might be
vectorized in the next attempt for reduction vectorization, to correctly
generate the code and avoid compiler crash.

Fixes #111887


  Commit: 16ef893e9fdec2b08dafc82f5450b41834e09039
      https://github.com/llvm/llvm-project/commit/16ef893e9fdec2b08dafc82f5450b41834e09039
  Author: Wael Yehia <wyehia at ca.ibm.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M compiler-rt/test/profile/instrprof-tmpdir.c

  Log Message:
  -----------
  [test] env -u is not supported on AIX, use `unset` instead


  Commit: c99b36554745837c549e1b46cd60db70588affcf
      https://github.com/llvm/llvm-project/commit/c99b36554745837c549e1b46cd60db70588affcf
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lldb/include/lldb/lldb-enumerations.h

  Log Message:
  -----------
  Revert "[lldb] Add include for SBLanguages in lldb-enumerations (#111907)"

Temporarily Revert until Chelsea can look at this.  With a clean build,
SBLanguages.h won't be generated in the build directory at the point
when it is included by lldb-enumerations when compiling e.g.
Broadcaster.cpp.  On a clean build (no pre-existing build directory),
the dependency ordering is not explicitly stated so the build will fail.
An incremental build will succeed.

This reverts commit b3554265f24aa570bbc8693af8420a306c459f94.


  Commit: 5deadc6eaede3d32ccdd68529f371092d4d218da
      https://github.com/llvm/llvm-project/commit/5deadc6eaede3d32ccdd68529f371092d4d218da
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_linux.h

  Log Message:
  -----------
  [NFC][sanitizer] Extract `LoadStatus` (#111909)

For #111901


  Commit: af7fa2710c998811dd72799799798f2bd4d9bff4
      https://github.com/llvm/llvm-project/commit/af7fa2710c998811dd72799799798f2bd4d9bff4
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cpp

  Log Message:
  -----------
  [sanitizer] VReport thread status for failed PTRACE_ATTACH (#111901)

Such threads can cause false leak reports,
but often it's hard to diagnose the reason of
failed PTRACE_ATTACH. Maybe we can find
a clue from `/proc/*/task/*/status`


  Commit: 48545a955c4e61f42833af7417032d816482bdfc
      https://github.com/llvm/llvm-project/commit/48545a955c4e61f42833af7417032d816482bdfc
  Author: William Junda Huang <williamjhuang at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/lib/Linker/IRMover.cpp
    A llvm/test/ThinLTO/X86/Inputs/ditemplatevalueparameter-remap.ll
    A llvm/test/ThinLTO/X86/ditemplatevalueparameter-remap.ll

  Log Message:
  -----------
  [ThinLTO] Do not duplicate import a function that is actually defined in the current module (#110064)

Doing so could cause a bug where the linker tries to remap a function
"reimported" from the current module when materializing it, causing a
lookup assert in the type mappings.


  Commit: f02252e1fd2965db007cf7be74c448b7a119c321
      https://github.com/llvm/llvm-project/commit/f02252e1fd2965db007cf7be74c448b7a119c321
  Author: Augusto Noronha <anoronha at apple.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp

  Log Message:
  -----------
  Revert "[lldb] SetErrorStringWithFormatv -> FromErrorStringWithFormatv (NFC)"

This reverts commit b77fdf5799be6b29869f2f7969851709e03938ba.


  Commit: 2ff4c25b7efff64b3b662d0bedcfe7edebcf20b9
      https://github.com/llvm/llvm-project/commit/2ff4c25b7efff64b3b662d0bedcfe7edebcf20b9
  Author: Augusto Noronha <anoronha at apple.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lldb/include/lldb/API/SBProcess.h
    M lldb/include/lldb/Target/Process.h
    M lldb/include/lldb/Target/StopInfo.h
    M lldb/include/lldb/lldb-enumerations.h
    M lldb/packages/Python/lldbsuite/test/gdbclientutils.py
    R lldb/packages/Python/lldbsuite/test/lldbgdbproxy.py
    R lldb/packages/Python/lldbsuite/test/lldbreverse.py
    M lldb/packages/Python/lldbsuite/test/lldbtest.py
    M lldb/source/API/SBProcess.cpp
    M lldb/source/API/SBThread.cpp
    M lldb/source/Interpreter/CommandInterpreter.cpp
    M lldb/source/Plugins/Process/Linux/NativeThreadLinux.cpp
    M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp
    M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.h
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.h
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
    M lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp
    M lldb/source/Plugins/Process/scripted/ScriptedProcess.h
    M lldb/source/Target/Process.cpp
    M lldb/source/Target/StopInfo.cpp
    M lldb/source/Target/Thread.cpp
    R lldb/test/API/functionalities/reverse-execution/Makefile
    R lldb/test/API/functionalities/reverse-execution/TestReverseContinueBreakpoints.py
    R lldb/test/API/functionalities/reverse-execution/TestReverseContinueNotSupported.py
    R lldb/test/API/functionalities/reverse-execution/main.c
    M lldb/tools/lldb-dap/JSONUtils.cpp
    M lldb/tools/lldb-dap/LLDBUtils.cpp

  Log Message:
  -----------
  Revert "[lldb] Implement basic support for reverse-continue (#99736)"

This reverts commit d5e1de6da96c1ab3b8cae68447e8ed3696a7006e.


  Commit: e9c8f75d45ababe7f805078bbf7bda2e7425f1b7
      https://github.com/llvm/llvm-project/commit/e9c8f75d45ababe7f805078bbf7bda2e7425f1b7
  Author: Jacob Lalonde <jalalonde at fb.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lldb/include/lldb/Target/DynamicLoader.h
    M lldb/source/Core/DynamicLoader.cpp
    M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
    M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.h
    M lldb/source/Plugins/Process/minidump/ProcessMinidump.cpp
    M lldb/source/Plugins/Process/minidump/ProcessMinidump.h
    M lldb/source/Plugins/Process/minidump/RegisterContextMinidump_x86_64.cpp
    M lldb/source/Target/Process.cpp
    M lldb/test/API/functionalities/process_save_core_minidump/TestProcessSaveCoreMinidump.py
    M lldb/test/API/functionalities/process_save_core_minidump/main.cpp

  Log Message:
  -----------
  [LLDB][Minidump] Have Minidumps save off and properly read TLS data (#109477)

This patch adds the support to `Process.cpp` to automatically save off
TLS sections, either via loading the memory region for the module, or
via reading `fs_base` via generic register. Then when Minidumps are
loaded, we now specify we want the dynamic loader to be the `POSIXDYLD`
so we can leverage the same TLS accessor code as `ProcessELFCore`. Being
able to access TLS Data is an important step for LLDB generated
minidumps to have feature parity with ELF Core dumps.


  Commit: 4f297566b3150097de26c6a23a987d2bd5fc19c5
      https://github.com/llvm/llvm-project/commit/4f297566b3150097de26c6a23a987d2bd5fc19c5
  Author: Robert O'Callahan <robert at ocallahan.org>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lldb/include/lldb/API/SBProcess.h
    M lldb/include/lldb/Target/Process.h
    M lldb/include/lldb/Target/StopInfo.h
    M lldb/include/lldb/lldb-enumerations.h
    M lldb/packages/Python/lldbsuite/test/gdbclientutils.py
    A lldb/packages/Python/lldbsuite/test/lldbgdbproxy.py
    A lldb/packages/Python/lldbsuite/test/lldbreverse.py
    M lldb/packages/Python/lldbsuite/test/lldbtest.py
    M lldb/source/API/SBProcess.cpp
    M lldb/source/API/SBThread.cpp
    M lldb/source/Interpreter/CommandInterpreter.cpp
    M lldb/source/Plugins/Process/Linux/NativeThreadLinux.cpp
    M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp
    M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.h
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.h
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
    M lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp
    M lldb/source/Plugins/Process/scripted/ScriptedProcess.h
    M lldb/source/Target/Process.cpp
    M lldb/source/Target/StopInfo.cpp
    M lldb/source/Target/Thread.cpp
    A lldb/test/API/functionalities/reverse-execution/Makefile
    A lldb/test/API/functionalities/reverse-execution/TestReverseContinueBreakpoints.py
    A lldb/test/API/functionalities/reverse-execution/TestReverseContinueNotSupported.py
    A lldb/test/API/functionalities/reverse-execution/main.c
    M lldb/tools/lldb-dap/JSONUtils.cpp
    M lldb/tools/lldb-dap/LLDBUtils.cpp

  Log Message:
  -----------
  [lldb] Implement basic support for reverse-continue (#99736)

This commit only adds support for the
`SBProcess::ReverseContinue()` API. A user-accessible command for this
will follow in a later commit.

This feature depends on a gdbserver implementation (e.g. `rr`) providing
support for the `bc` and `bs` packets. `lldb-server` does not support
those packets, and there is no plan to change that. So, for testing
purposes, `lldbreverse.py` wraps `lldb-server` with a Python
implementation of *very limited* record-and-replay functionality for use
by *tests only*.

The majority of this PR is test infrastructure (about 700 of the 950
lines added).


  Commit: fae7d6848bbb59fc2bad17adbdb34bd6a11a0651
      https://github.com/llvm/llvm-project/commit/fae7d6848bbb59fc2bad17adbdb34bd6a11a0651
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp

  Log Message:
  -----------
  [lldb] SetErrorStringWithFormatv -> FromErrorStringWithFormatv (NFC)


  Commit: c686eeb7fcc89673909e7e1f0a0a09a0da269d28
      https://github.com/llvm/llvm-project/commit/c686eeb7fcc89673909e7e1f0a0a09a0da269d28
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lldb/test/API/functionalities/reverse-execution/TestReverseContinueBreakpoints.py
    M lldb/test/API/functionalities/reverse-execution/TestReverseContinueNotSupported.py

  Log Message:
  -----------
  [lldb] skip ReverseContinue tests on Darwin

This uses lldb-server in gdbserver mode, which requires a ProcessNative
plugin.  Darwin does not have a ProcessNative plugin; it uses
debugserver instead of lldb-server.  Skip these tests.


  Commit: 1bf271d5a7de58faf525c3b90ef4a4a8ff47e688
      https://github.com/llvm/llvm-project/commit/1bf271d5a7de58faf525c3b90ef4a4a8ff47e688
  Author: William Junda Huang <williamjhuang at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/lib/Linker/IRMover.cpp
    R llvm/test/ThinLTO/X86/Inputs/ditemplatevalueparameter-remap.ll
    R llvm/test/ThinLTO/X86/ditemplatevalueparameter-remap.ll

  Log Message:
  -----------
  Revert "[ThinLTO] Do not duplicate import a function that is actually defined in the current module" (#111919)

Reverts llvm/llvm-project#110064


  Commit: 45cc74357130190b9aef9fab77646c17f2cf2a5e
      https://github.com/llvm/llvm-project/commit/45cc74357130190b9aef9fab77646c17f2cf2a5e
  Author: vporpo <vporpodas at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h

  Log Message:
  -----------
  [SandboxVec][DAG][NFC] Add comment about duplicate notes in deps() (#111915)


  Commit: cc20dd285ab72292a1d383d0779aecbe5e1ccf81
      https://github.com/llvm/llvm-project/commit/cc20dd285ab72292a1d383d0779aecbe5e1ccf81
  Author: Lang Hames <lhames at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/ELFNixPlatform.h
    M llvm/lib/ExecutionEngine/Orc/ELFNixPlatform.cpp
    M llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
    M llvm/tools/llvm-jitlink/llvm-jitlink.cpp

  Log Message:
  -----------
  [ORC][ELF] Remove the ExecutionSession& argument to ELFNixPlatform::Create.

We can get a reference to the ExecutionSession from the ObjectLinkingLayer
argument, so there's no need to pass it in separately.


  Commit: 4f320778148ba481881eb53ba065ed2a9d9bbc03
      https://github.com/llvm/llvm-project/commit/4f320778148ba481881eb53ba065ed2a9d9bbc03
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lldb/test/API/functionalities/reverse-execution/TestReverseContinueBreakpoints.py
    M lldb/test/API/functionalities/reverse-execution/TestReverseContinueNotSupported.py

  Log Message:
  -----------
  Revert "[lldb] skip ReverseContinue tests on Darwin"

This reverts commit c686eeb7fcc89673909e7e1f0a0a09a0da269d28.


  Commit: a28e7ce378d717e6aacbdc3089974b93b6b62948
      https://github.com/llvm/llvm-project/commit/a28e7ce378d717e6aacbdc3089974b93b6b62948
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp

  Log Message:
  -----------
  Revert "[lldb] SetErrorStringWithFormatv -> FromErrorStringWithFormatv (NFC)"

This reverts commit fae7d6848bbb59fc2bad17adbdb34bd6a11a0651.


  Commit: 3bef742559f1556569423ec63c70b97dff1d426e
      https://github.com/llvm/llvm-project/commit/3bef742559f1556569423ec63c70b97dff1d426e
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lldb/include/lldb/API/SBProcess.h
    M lldb/include/lldb/Target/Process.h
    M lldb/include/lldb/Target/StopInfo.h
    M lldb/include/lldb/lldb-enumerations.h
    M lldb/packages/Python/lldbsuite/test/gdbclientutils.py
    R lldb/packages/Python/lldbsuite/test/lldbgdbproxy.py
    R lldb/packages/Python/lldbsuite/test/lldbreverse.py
    M lldb/packages/Python/lldbsuite/test/lldbtest.py
    M lldb/source/API/SBProcess.cpp
    M lldb/source/API/SBThread.cpp
    M lldb/source/Interpreter/CommandInterpreter.cpp
    M lldb/source/Plugins/Process/Linux/NativeThreadLinux.cpp
    M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp
    M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.h
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.h
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
    M lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp
    M lldb/source/Plugins/Process/scripted/ScriptedProcess.h
    M lldb/source/Target/Process.cpp
    M lldb/source/Target/StopInfo.cpp
    M lldb/source/Target/Thread.cpp
    R lldb/test/API/functionalities/reverse-execution/Makefile
    R lldb/test/API/functionalities/reverse-execution/TestReverseContinueBreakpoints.py
    R lldb/test/API/functionalities/reverse-execution/TestReverseContinueNotSupported.py
    R lldb/test/API/functionalities/reverse-execution/main.c
    M lldb/tools/lldb-dap/JSONUtils.cpp
    M lldb/tools/lldb-dap/LLDBUtils.cpp

  Log Message:
  -----------
  Revert "[lldb] Implement basic support for reverse-continue (#99736)"

Reverting this again; I added a commit which added @skipIfDarwin
markers to the TestReverseContinueBreakpoints.py and
TestReverseContinueNotSupported.py API tests, which use lldb-server
in gdbserver mode which does not work on Darwin.  But the aarch64 ubuntu
bot reported a failure on TestReverseContinueBreakpoints.py,
https://lab.llvm.org/buildbot/#/builders/59/builds/6397

  File "/home/tcwg-buildbot/worker/lldb-aarch64-ubuntu/llvm-project/lldb/test/API/functionalities/reverse-execution/TestReverseContinueBreakpoints.py", line 63, in test_reverse_continue_skip_breakpoint
    self.reverse_continue_skip_breakpoint_internal(async_mode=False)
  File "/home/tcwg-buildbot/worker/lldb-aarch64-ubuntu/llvm-project/lldb/test/API/functionalities/reverse-execution/TestReverseContinueBreakpoints.py", line 81, in reverse_continue_skip_breakpoint_internal
    self.expect(
  File "/home/tcwg-buildbot/worker/lldb-aarch64-ubuntu/llvm-project/lldb/packages/Python/lldbsuite/test/lldbtest.py", line 2372, in expect
    self.runCmd(
  File "/home/tcwg-buildbot/worker/lldb-aarch64-ubuntu/llvm-project/lldb/packages/Python/lldbsuite/test/lldbtest.py", line 1002, in runCmd
    self.assertTrue(self.res.Succeeded(), msg + output)
AssertionError: False is not true : Process should be stopped due to history boundary
Error output:
error: Process must be launched.

This reverts commit 4f297566b3150097de26c6a23a987d2bd5fc19c5.


  Commit: 2647505027d8c01fc920b04aced8cec742a4b2ed
      https://github.com/llvm/llvm-project/commit/2647505027d8c01fc920b04aced8cec742a4b2ed
  Author: Finn Plummer <50529406+inbelic at users.noreply.github.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M clang/include/clang/Basic/Builtins.td
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Sema/SemaHLSL.cpp
    A clang/test/CodeGenHLSL/builtins/degrees.hlsl
    A clang/test/SemaHLSL/BuiltIns/degrees-errors.hlsl
    M clang/test/SemaHLSL/BuiltIns/half-float-only-errors.hlsl
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    A llvm/test/CodeGen/DirectX/degrees.ll
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/degrees.ll
    A llvm/test/CodeGen/SPIRV/opencl/degrees.ll

  Log Message:
  -----------
  [HLSL] Implement the `degrees` intrinsic (#111209)

- add degrees builtin
    - link degrees api in hlsl_intrinsics.h
    - add degrees intrinsic to IntrinsicsDirectX.td
    - add degrees intrinsic to IntrinsicsSPIRV.td
- add lowering from clang builtin to dx/spv intrinsics in CGBuiltin.cpp
    - add semantic checks to SemaHLSL.cpp
- add expansion of directx intrinsic to llvm fmul for DirectX in
DXILIntrinsicExpansion.cpp
    - add mapping to spir-v intrinsic in SPIRVInstructionSelector.cpp

    - add test coverage:
- degrees.hlsl -> check hlsl lowering to dx/spv degrees intrinsics
- degrees-errors.hlsl/half-float-only-errors -> check semantic warnings
- hlsl-intrinsics/degrees.ll -> check lowering of spir-v degrees
intrinsic to SPIR-V backend
- DirectX/degrees.ll -> check expansion and scalarization of directx
degrees intrinsic to fmul
      
Resolves #99104


  Commit: 6640dac22b567e5f6c328ca56cf9bf43d45509e6
      https://github.com/llvm/llvm-project/commit/6640dac22b567e5f6c328ca56cf9bf43d45509e6
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M utils/bazel/llvm-project-overlay/clang-tools-extra/include-cleaner/BUILD.bazel

  Log Message:
  -----------
  [bazel] Add include-cleaner tests (#111924)


  Commit: 1037f577bd66ab03bc494120f024f2a52008e285
      https://github.com/llvm/llvm-project/commit/1037f577bd66ab03bc494120f024f2a52008e285
  Author: Igor Kudrin <ikudrin at accesssoftek.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lld/ELF/SymbolTable.cpp
    M lld/test/ELF/version-script-reassign-glob.s
    A lld/test/ELF/version-script-warn.s

  Log Message:
  -----------
  [lld][elf] Warn if '*' pattern is used multiple times in version scripts (#102669)

If this pattern is used more than once in version script(s), only one
will have an effect, so it's probably a user error and can be diagnosed.


  Commit: 0add1741d58e4b8d6cbc5f50e1fac86296680e5b
      https://github.com/llvm/llvm-project/commit/0add1741d58e4b8d6cbc5f50e1fac86296680e5b
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M utils/bazel/llvm-project-overlay/lldb/source/Plugins/BUILD.bazel

  Log Message:
  -----------
  [bazel] Port e9c8f75d45ababe7f805078bbf7bda2e7425f1b7 (#111928)


  Commit: 774c953cf8f8ff2fe45b07f388a687748b775878
      https://github.com/llvm/llvm-project/commit/774c953cf8f8ff2fe45b07f388a687748b775878
  Author: yronglin <yronglin777 at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst

  Log Message:
  -----------
  [NFC][clang] Fix typo in ReleaseNotes (#111930)

Fix a typo in ReleaseNotes that introduced by
https://github.com/llvm/llvm-project/pull/86960.

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


  Commit: 9c81a2476566b068ef54fd51ab2540933542b2a6
      https://github.com/llvm/llvm-project/commit/9c81a2476566b068ef54fd51ab2540933542b2a6
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M compiler-rt/lib/asan/asan_descriptions.cpp

  Log Message:
  -----------
  [asan] Prevent printing invalid parent thread (#111916)

By default reuse can happend only after
`UINT32_MAX` threads, so it's almost NFC.


  Commit: 72fb37922577997f3666203dbdb2601f0fc97748
      https://github.com/llvm/llvm-project/commit/72fb37922577997f3666203dbdb2601f0fc97748
  Author: YunQiang Su <yunqiang at isrc.iscas.ac.cn>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    A llvm/test/CodeGen/AArch64/fp-fcanonicalize.ll
    M llvm/test/CodeGen/AArch64/fp-maximumnum-minimumnum.ll

  Log Message:
  -----------
  AArch64: Select FCANONICALIZE (#104429)

FMINNM/FMAXNM instructions of AArch64 follow IEEE754-2008. We can use
them to canonicalize a floating point number. And
FMINNUM_IEEE/FMAXNUM_IEEE is used by something like expanding
FMINIMUMNUM/FMAXIMUMNUM, so let's define them.

---------

Co-authored-by: Your Name <you at example.com>


  Commit: 6c398abb75da5413152f97a780ddb3b3b2b6a0b7
      https://github.com/llvm/llvm-project/commit/6c398abb75da5413152f97a780ddb3b3b2b6a0b7
  Author: Caio Oliveira <cmarcelo at gmail.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M mlir/utils/spirv/gen_spirv_dialect.py

  Log Message:
  -----------
  [NFC][mlir][spirv] Fix syntax warnings in gen_spirv_dialect.py (#111775)

In the context of regular expressions, Python (used to) gracefully
ignore the escape behavior of `\` in some contexts, e.g. for
representing the regular expression `\w+`. However in newer versions of
Python this now gives a warning in the form

```
SyntaxWarning: invalid escape sequence '\w'
```

Fix by explicitly using raw strings instead.


  Commit: e3894f58e1a534c57f53b3beb21d6b2f0d3382b2
      https://github.com/llvm/llvm-project/commit/e3894f58e1a534c57f53b3beb21d6b2f0d3382b2
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/test/CodeGen/AArch64/arm64-popcnt.ll
    M llvm/test/CodeGen/RISCV/rv32zbb.ll
    M llvm/test/CodeGen/RISCV/rv64zbb.ll
    M llvm/test/CodeGen/X86/ispow2.ll
    M llvm/test/CodeGen/X86/known-never-zero.ll

  Log Message:
  -----------
  [CodeGenPrepare] Convert `ctpop(X) ==/!= 1` into `ctpop(X) u</u> 2/1` (#111284)

Some targets have better codegen for `ctpop(X) u< 2` than `ctpop(X) ==
1`. After https://github.com/llvm/llvm-project/pull/100899, we set the
range of ctpop's return value to indicate the argument/result is
non-zero.

This patch converts `ctpop(X) ==/!= 1` into `ctpop(X) u</u> 2/1` in CGP
to fix https://github.com/llvm/llvm-project/issues/95255.


  Commit: cbfcea1fc2154c92880278878610e16faba979be
      https://github.com/llvm/llvm-project/commit/cbfcea1fc2154c92880278878610e16faba979be
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M libc/test/src/string/CMakeLists.txt

  Log Message:
  -----------
  [libc] Temporarily disable strerror test on NVPTX

Summary:
This is failing on the NVPTX buildbot,
https://lab.llvm.org/buildbot/#/builders/69/builds/6997/. I cannot
reproduce it locally so I'm disabling it temporarily so the bot is
green.


  Commit: 9f8ae7844dee7bb5527a59249e74885fb3bfb4a9
      https://github.com/llvm/llvm-project/commit/9f8ae7844dee7bb5527a59249e74885fb3bfb4a9
  Author: Adrian Vogelsgesang <avogelsgesang at salesforce.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/locations/Makefile
    M lldb/test/API/tools/lldb-dap/locations/TestDAP_locations.py
    R lldb/test/API/tools/lldb-dap/locations/main.c
    A lldb/test/API/tools/lldb-dap/locations/main.cpp
    M lldb/tools/lldb-dap/JSONUtils.cpp
    M lldb/tools/lldb-dap/JSONUtils.h
    M lldb/tools/lldb-dap/lldb-dap.cpp

  Log Message:
  -----------
  [lldb-dap] Implement value locations for function pointers (#104589)

This commit adds `valueLocationReference` to function pointers and
function references. Thereby, users can navigate directly to the
pointed-to function from within the "variables" pane.

In general, it would be useful to also a add similar location references
also to member function pointers, `std::source_location`,
`std::function`, and many more. Doing so would require extending the
formatters to provide such a source code location.

There were two RFCs about this a while ago:

https://discourse.llvm.org/t/rfc-extending-formatters-with-a-source-code-reference/68375
https://discourse.llvm.org/t/rfc-sbvalue-metadata-provider/68377/26

However, both RFCs ended without a conclusion. As such, this commit now
implements the lowest-hanging fruit, i.e. function pointers. If people
find it useful, I will revive the RFC afterwards.


  Commit: 9882b35a3a3e46d749b801bd0b98c3d90af6006c
      https://github.com/llvm/llvm-project/commit/9882b35a3a3e46d749b801bd0b98c3d90af6006c
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Target/X86/X86InstrFragmentsSIMD.td
    M llvm/lib/Target/X86/X86InstrSSE.td
    M llvm/test/CodeGen/X86/fp-strict-scalar-cmp.ll

  Log Message:
  -----------
  [X86][StrictFP] Combine fcmp + select to fmin/fmax for some predicates (#109512)

X86 maxss/minss etc. instructions won't turn SNaN to QNaN, so we can
combine fcmp + select to them for some predicates.


  Commit: 0bc02b999a9686ba240b7a68d3f1cbbf037d2170
      https://github.com/llvm/llvm-project/commit/0bc02b999a9686ba240b7a68d3f1cbbf037d2170
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
    M clang/test/SemaCXX/cxx20-ctad-type-alias.cpp

  Log Message:
  -----------
  [Clang] Instantiate Typedefs referenced by type alias deduction guides (#111804)

TypedefNameDecl referenced by a synthesized CTAD guide for type aliases
was not transformed previously, resulting in a substitution failure in
BuildDeductionGuideForTypeAlias() when substituting into the
right-hand-side deduction guide.

This patch fixes it in the way we have been doing since
https://reviews.llvm.org/D80743. We transform all the function
parameters, parenting referenced TypedefNameDecls with the
CXXDeductionGuideDecl. Then we instantiate these declarations in
FindInstantiatedDecl() as we build up the eventual deduction guide,
using the mechanism introduced in D80743

Fixes #111508


  Commit: ec3e0a5900894c82e1763aa8597f47111edf6246
      https://github.com/llvm/llvm-project/commit/ec3e0a5900894c82e1763aa8597f47111edf6246
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/test/CodeGen/AArch64/arm64-popcnt.ll
    M llvm/test/CodeGen/RISCV/rv32zbb.ll
    M llvm/test/CodeGen/RISCV/rv64zbb.ll
    M llvm/test/CodeGen/X86/ispow2.ll
    M llvm/test/CodeGen/X86/known-never-zero.ll

  Log Message:
  -----------
  Revert "[CodeGenPrepare] Convert `ctpop(X) ==/!= 1` into `ctpop(X) u</u> 2/1`" (#111932)

Reverts llvm/llvm-project#111284 to fix clang stage2 builds.
Investigating...

Failed buildbots:
https://lab.llvm.org/buildbot/#/builders/76/builds/3576
https://lab.llvm.org/buildbot/#/builders/168/builds/4308
https://lab.llvm.org/buildbot/#/builders/127/builds/1087


  Commit: 126ed16525c92af1025a86b582c087d213b47145
      https://github.com/llvm/llvm-project/commit/126ed16525c92af1025a86b582c087d213b47145
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp

  Log Message:
  -----------
  [ARM] Fix formatting (NFC)

I'm about to post a PR in this area.


  Commit: 51e9430a0c767243411d4b81c284700f89719277
      https://github.com/llvm/llvm-project/commit/51e9430a0c767243411d4b81c284700f89719277
  Author: lntue <lntue at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M libc/src/__support/FPUtil/double_double.h
    M libc/src/__support/macros/optimization.h
    M libc/src/math/generic/cos.cpp
    M libc/src/math/generic/pow.cpp
    M libc/src/math/generic/range_reduction_double_common.h
    M libc/src/math/generic/range_reduction_double_fma.h
    M libc/src/math/generic/range_reduction_double_nofma.h
    M libc/src/math/generic/sin.cpp
    M libc/src/math/generic/sincos.cpp
    M libc/src/math/generic/sincos_eval.h
    M libc/src/math/generic/tan.cpp
    M libc/test/src/math/cos_test.cpp
    M libc/test/src/math/sin_test.cpp
    M libc/test/src/math/tan_test.cpp

  Log Message:
  -----------
  [libc][math] Improve performance of double precision trig functions. (#111793)

- Improve the accuracy of fast pass' range reduction.
- Provide tighter error estimations.
- Reduce the table size when `LIBC_MATH_SMALL_TABLES` flag is set.


  Commit: e01ae3920dd98779f2e58aa8f103ae3b6c6b5499
      https://github.com/llvm/llvm-project/commit/e01ae3920dd98779f2e58aa8f103ae3b6c6b5499
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_linux.h

  Log Message:
  -----------
  [NFC][sanitizer] Use tid_t instead of int in ThreadLister (#111941)


  Commit: 59b2945c705671a676806b8985c3ade8d6088ab1
      https://github.com/llvm/llvm-project/commit/59b2945c705671a676806b8985c3ade8d6088ab1
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_linux_test.cpp

  Log Message:
  -----------
  [sanitizer] Fix ThreadLister::IsAlive (#111942)

'status_path_' must include `tid`.
Regression from #111909.


  Commit: 36b07077673b6c639804160c6b31ce57718e13db
      https://github.com/llvm/llvm-project/commit/36b07077673b6c639804160c6b31ce57718e13db
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

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

  Log Message:
  -----------
  [clang][bytecode] Return an lvalue path for dummy pointers (#111862)

Not doing this is wrong in general and we need to reject expressions
where it would matter differently.


  Commit: 374886a360424d5f1c38359378a504408a9f64ed
      https://github.com/llvm/llvm-project/commit/374886a360424d5f1c38359378a504408a9f64ed
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cpp

  Log Message:
  -----------
  [NFC][sanitizer] Check suspended threads outside `ThreadSuspender::SuspendThread` (#111943)

Allows to distinguish failure from stopped threads.


  Commit: 36639af8adcd302e12f2962fd2b917d41323e5ae
      https://github.com/llvm/llvm-project/commit/36639af8adcd302e12f2962fd2b917d41323e5ae
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cpp

  Log Message:
  -----------
  [NFC][sanitizer] VReport incomplete list (#111944)


  Commit: e556f0787cb9675a120fcfc91156edcd27047772
      https://github.com/llvm/llvm-project/commit/e556f0787cb9675a120fcfc91156edcd27047772
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M compiler-rt/lib/asan/asan_descriptions.cpp
    M compiler-rt/lib/asan/asan_descriptions.h

  Log Message:
  -----------
  [NFC][asan] Cleanup AsanThreadIdAndName ctor/init (#111923)

Co-authored-by: YunQiang Su <yunqiang at isrc.iscas.ac.cn>


  Commit: df4c91342577cd9a74f168ad8c98380538d5e7c4
      https://github.com/llvm/llvm-project/commit/df4c91342577cd9a74f168ad8c98380538d5e7c4
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M compiler-rt/lib/asan/asan_descriptions.cpp

  Log Message:
  -----------
  [asan] Print `unique_id` instead of `tid` (#111925)

Before the first reuse, after 2^32 threads
they are equal.


  Commit: 3cb4d20d5bcefd98454d0e181cd89f8ee6f16498
      https://github.com/llvm/llvm-project/commit/3cb4d20d5bcefd98454d0e181cd89f8ee6f16498
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_thread_registry.h

  Log Message:
  -----------
  [NFC][sanitizer] Simplify GetThreadLocked

Now we can pass `invalid tid`.


  Commit: bf81bd800fbcf1d11f149d897f55409e27ec59fb
      https://github.com/llvm/llvm-project/commit/bf81bd800fbcf1d11f149d897f55409e27ec59fb
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/Arch/LoongArch.cpp
    M lld/ELF/Arch/X86.cpp
    M lld/ELF/Arch/X86_64.cpp
    M lld/ELF/LinkerScript.cpp

  Log Message:
  -----------
  [ELF] Pass Ctx &


  Commit: 15de239406bfc0a1dfbd0640490c4bd5d1e0ac33
      https://github.com/llvm/llvm-project/commit/15de239406bfc0a1dfbd0640490c4bd5d1e0ac33
  Author: Serge Pavlov <sepavloff at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm/Bitcode/LLVMBitCodes.h
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/test/Bitcode/compatibility.ll
    M llvm/test/Bitcode/operand-bundles.ll

  Log Message:
  -----------
  [IR] Allow MDString in operand bundles (#110805)

This change implements support of metadata strings in operand bundle
values. It makes possible calls like:

    call void @some_func(i32 %x) [ "foo"(i32 42, metadata !"abc") ]

It requires some extension of the bitcode serialization. As SSA values
and metadata are stored in different tables, there must be a way to
distinguish them during deserialization. It is implemented by putting a
special marker before the metadata index. The marker cannot be treated
as a reference to any SSA value, so it unambiguously identifies
metadata. It allows extending the bitcode serialization without breaking
compatibility.

Metadata as operand bundle values are intended to be used in
floating-point function calls. They would represent the same information
as now is passed by the constrained intrinsic arguments.


  Commit: c22588c7cdc5a82afd825ce90f21f922dedee98b
      https://github.com/llvm/llvm-project/commit/c22588c7cdc5a82afd825ce90f21f922dedee98b
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lld/ELF/EhFrame.cpp
    M lld/ELF/InputFiles.h
    M lld/ELF/InputSection.cpp
    M lld/ELF/InputSection.h
    M lld/ELF/OutputSections.cpp
    M lld/ELF/OutputSections.h

  Log Message:
  -----------
  [ELF] Move InputSectionBase::file to SectionBase

... and add getCtx (file->ctx). This allows InputSectionBase and
OutputSection to access ctx without taking an extra function argument.


  Commit: e018f550d0c40bd99294cdd943c23bbec3804ace
      https://github.com/llvm/llvm-project/commit/e018f550d0c40bd99294cdd943c23bbec3804ace
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lld/ELF/ARMErrataFix.cpp
    M lld/ELF/Arch/Mips.cpp
    M lld/ELF/DWARF.cpp

  Log Message:
  -----------
  [ELF] Pass Ctx &


  Commit: 25cda9e069bc5948f38dde0d2e07814a7bf3fc71
      https://github.com/llvm/llvm-project/commit/25cda9e069bc5948f38dde0d2e07814a7bf3fc71
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lld/ELF/AArch64ErrataFix.cpp
    M lld/ELF/ARMErrataFix.cpp
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/Arch/RISCV.cpp
    M lld/ELF/Driver.cpp
    M lld/ELF/InputSection.h
    M lld/ELF/OutputSections.cpp
    M lld/ELF/Relocations.cpp
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h

  Log Message:
  -----------
  [ELF] Pass Ctx & to SyntheticSection


  Commit: 1fd79f105da64cec7986807c1d9c4896bd39dafa
      https://github.com/llvm/llvm-project/commit/1fd79f105da64cec7986807c1d9c4896bd39dafa
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp

  Log Message:
  -----------
  [clang][bytecode] Check number of addcarry/subborrow args (#111952)

Apparently this can fail as well.


  Commit: d91c103a107ab16b59c1bb67687233a1100d7ecf
      https://github.com/llvm/llvm-project/commit/d91c103a107ab16b59c1bb67687233a1100d7ecf
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lld/ELF/InputSection.h
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h

  Log Message:
  -----------
  [ELF] Pass Ctx & to SyntheticSections


  Commit: d656b2063262d59c3565e63095104c01d1f6a5a3
      https://github.com/llvm/llvm-project/commit/d656b2063262d59c3565e63095104c01d1f6a5a3
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUSplitModule.cpp
    A llvm/test/tools/llvm-split/AMDGPU/indirect-call-inline-asm-debug.ll
    A llvm/test/tools/llvm-split/AMDGPU/indirect-call-inline-asm.ll
    R llvm/test/tools/llvm-split/AMDGPU/kernels-alias-dependencies.ll
    M llvm/test/tools/llvm-split/AMDGPU/kernels-dependency-indirect.ll

  Log Message:
  -----------
  [AMDGPU][SplitModule] Cleanup CallsExternal Handling (#106528)

- Don't treat inline ASM as indirect calls
- Remove call to alias testing, which was broken (only working by pure
luck right now) and isn't needed anyway. GlobalOpt should take care of
them for us.


  Commit: 81bd712f928b3c736d83252df75c1c1bd3374122
      https://github.com/llvm/llvm-project/commit/81bd712f928b3c736d83252df75c1c1bd3374122
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M lld/ELF/AArch64ErrataFix.cpp
    M lld/ELF/ARMErrataFix.cpp
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/Arch/RISCV.cpp
    M lld/ELF/InputSection.cpp
    M lld/ELF/InputSection.h
    M lld/ELF/LinkerScript.cpp
    M lld/ELF/OutputSections.cpp
    M lld/ELF/Relocations.cpp
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h
    M lld/ELF/Writer.cpp

  Log Message:
  -----------
  [ELF] Revert Ctx & parameters from SyntheticSection

Since Ctx &ctx is a member variable,
1f391a75af8685e6bba89421443d72ac6a186599
7a5b9ef54eb96abd8415fd893576c42e51fd95db
e2f0ec3a3a8a2981be8a1aac2004cfb9064c61e8 can be reverted.


  Commit: 173c68239d1d11f4e36c8af07a28310da67568a7
      https://github.com/llvm/llvm-project/commit/173c68239d1d11f4e36c8af07a28310da67568a7
  Author: Fabian Ritter <fabian.ritter at amd.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-flat.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-private.mir
    M llvm/test/CodeGen/AMDGPU/chain-hi-to-lo.ll
    M llvm/test/CodeGen/AMDGPU/flat-address-space.ll
    M llvm/test/CodeGen/AMDGPU/memcpy-crash-issue63986.ll
    M llvm/test/CodeGen/AMDGPU/memcpy-libcall.ll
    M llvm/test/CodeGen/AMDGPU/memcpy-param-combinations.ll
    M llvm/test/CodeGen/AMDGPU/memmove-param-combinations.ll
    M llvm/test/CodeGen/AMDGPU/sdwa-commute.ll
    M llvm/test/CodeGen/AMDGPU/unaligned-load-store.ll

  Log Message:
  -----------
  [AMDGPU] Enable unaligned scratch accesses (#110219)

This allows us to emit wide generic and scratch memory accesses when we
do not have alignment information. In cases where accesses happen to be
properly aligned or where generic accesses do not go to scratch memory,
this improves performance of the generated code by a factor of up to 16x
and reduces code size, especially when lowering memcpy and memmove
intrinsics.

Also: Make the use of the FeatureUnalignedScratchAccess feature more
consistent: FeatureUnalignedScratchAccess and EnableFlatScratch are now
orthogonal, whereas, before, code assumed that the latter implies the
former at some places.

Part of SWDEV-455845.


  Commit: 65780f4d8e34461e6bd3baf2ff77496f97874b94
      https://github.com/llvm/llvm-project/commit/65780f4d8e34461e6bd3baf2ff77496f97874b94
  Author: Dmitry Polukhin <34227995+dmpolukhin at users.noreply.github.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang/lib/Lex/Preprocessor.cpp
    A clang/test/Headers/import_header_unit_after_pragma.cpp

  Log Message:
  -----------
  [C++20][Modules] Allow import for a header unit after #pragma (#111662)

Summary:
`#pragma` and headers that finish with them shouldn't prevent `import
"header_unit.h"` syntax.

Test Plan: check-clang


  Commit: ff04bb8f4064274aedcb6e916079132ab6042a10
      https://github.com/llvm/llvm-project/commit/ff04bb8f4064274aedcb6e916079132ab6042a10
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Program.cpp
    M clang/lib/AST/ByteCode/Program.h
    M clang/test/AST/ByteCode/cxx1z.cpp

  Log Message:
  -----------
  [clang][bytecode] Use PredefinedExpr as base for its variable (#111956)

This fixes the error message generated.


  Commit: bff2b8c06f362b6b4c761fc1d3951da2bddf17de
      https://github.com/llvm/llvm-project/commit/bff2b8c06f362b6b4c761fc1d3951da2bddf17de
  Author: Longsheng Mou <longshengmou at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M mlir/test/Dialect/SparseTensor/codegen.mlir
    A mlir/test/Dialect/SparseTensor/no_lowering.mlir

  Log Message:
  -----------
  [mlir][sparse][test] Adjust tests for `LowerSparseOpsToForeach` (#110976)

This PR relocates the tests added in #109435 to a new file named
`no_lowering.mlir` and adds some new tests.


  Commit: 8bb12ca28f7f195aa483fdb5921681ec373564ab
      https://github.com/llvm/llvm-project/commit/8bb12ca28f7f195aa483fdb5921681ec373564ab
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  [clang][NFC] Update `cxx_dr_status.html`


  Commit: bb4696ce3051be820de91c8c98b2649af1680236
      https://github.com/llvm/llvm-project/commit/bb4696ce3051be820de91c8c98b2649af1680236
  Author: Dmitriy Smirnov <dmitriy.smirnov at arm.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgOps.td
    M mlir/lib/Dialect/Linalg/Transforms/WinogradConv2D.cpp
    M mlir/test/Dialect/Linalg/transform-tile-and-winograd-rewrite.mlir
    M mlir/test/Dialect/Linalg/transform-tile-winograd.mlir
    M mlir/test/Dialect/Linalg/winograd-conv2d-rewrite.mlir

  Log Message:
  -----------
  [mlir][linalg] Fix for bias handling for Winograd (#110331)

PR makes winograd.output_transform op a destination style op and fixes
handing of a pre-existing data in its output argument (i.e. possibly
pre-initialized with bias, which was discarded before).

---------

Signed-off-by: Dmitriy Smirnov <dmitriy.smirnov at arm.com>


  Commit: ebeb56af5f8f1ff9da8f5a7e98348f460d223de1
      https://github.com/llvm/llvm-project/commit/ebeb56af5f8f1ff9da8f5a7e98348f460d223de1
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:

  Log Message:
  -----------
  [lldb] Only send "posix" error codes through the gdb-remote protocol (#108170)

The other side has no way of telling which namespace do these codes
belong to, so mashing them all together is not very helpful.

I'm mainly doing this to simplify some code in a pending patch
<https://github.com/llvm/llvm-project/pull/106774/files#r1752628604>,
and I've picked the posix error category semi-randomly. If we wanted to
be serious about assigning meaning to these error codes, we should
create a special error category for "gdb errors".


  Commit: b222f319306a9cad9ac11183b7036ff45097c26f
      https://github.com/llvm/llvm-project/commit/b222f319306a9cad9ac11183b7036ff45097c26f
  Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    R lldb/test/Shell/SymbolFile/DWARF/no_unique_address-with-bitfields.cpp
    A lldb/test/Shell/SymbolFile/DWARF/x86/no_unique_address-with-bitfields.cpp

  Log Message:
  -----------
  [lldb][test] Fixed the test `no_unique_address-with-bitfields` (#111902)

Fixed the error `unable to create target: 'No available targets are
compatible with triple "x86_64-apple-macosx10.4.0"'` running `clang
--target=x86_64-apple-macosx -c -gdwarf -o %t %s`.


  Commit: 72f339de45bb590f25571c4c447a725e6f1dd8d7
      https://github.com/llvm/llvm-project/commit/72f339de45bb590f25571c4c447a725e6f1dd8d7
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/ScalarEvolution.h
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    A llvm/test/Transforms/LoopVectorize/AArch64/low_trip_count_predicates.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll

  Log Message:
  -----------
  [LoopVectorize] Use predicated version of getSmallConstantMaxTripCount (#109928)

There are a number of places where we call getSmallConstantMaxTripCount
without passing a vector of predicates:

getSmallBestKnownTC
isIndvarOverflowCheckKnownFalse
computeMaxVF
isMoreProfitable

I've changed all of these to now pass in a predicate vector so that
we get the benefit of making better vectorisation choices when we
know the max trip count for loops that require SCEV predicate checks.

I've tried to add tests that cover all the cases affected by these
changes.


  Commit: 1276ce9e9713b2a0802004676fad7e40980396d5
      https://github.com/llvm/llvm-project/commit/1276ce9e9713b2a0802004676fad7e40980396d5
  Author: Emilio Cota <ecg at google.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgInterfaces.td
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgNamedStructuredOps.yaml
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
    M mlir/lib/Dialect/Linalg/IR/LinalgInterfaces.cpp
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/TransposeMatmul.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
    M mlir/lib/Dialect/NVGPU/TransformOps/NVGPUTransformOps.cpp
    M mlir/python/mlir/dialects/linalg/opdsl/ops/core_named_ops.py
    M mlir/test/Dialect/Linalg/generalize-named-ops.mlir
    M mlir/test/Dialect/Linalg/invalid.mlir
    M mlir/test/Dialect/Linalg/named-ops.mlir
    M mlir/test/python/dialects/linalg/ops.py
    M mlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-yaml-gen.cpp

  Log Message:
  -----------
  Revert "[mlir][linalg] Introduce transpose semantic to 'linalg.matmul' ops. (#104783)"

This reverts commit 03483737a7a2d72a257a5ab6ff01748ad9cf0f75 and
99c8557, which is a fix-up on top of the former.

I'm reverting because this commit broke two tests:
  mlir/test/python/integration/dialects/linalg/opsrun.py
  mlir/test/python/integration/dialects/transform.py
See https://lab.llvm.org/buildbot/#/builders/138/builds/4872

I'm not familiar with the tests, so I'm leaving it to the original author
to either remove or adapt the broken tests, as discussed here:
  https://github.com/llvm/llvm-project/pull/104783#issuecomment-2406390905


  Commit: a4402039bffd788b9af82435fd5a2fb311fdc6e8
      https://github.com/llvm/llvm-project/commit/a4402039bffd788b9af82435fd5a2fb311fdc6e8
  Author: Sebastian Kreutzer <SebastianKreutzer at gmx.net>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang/include/clang/Basic/CodeGenOptions.def
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Driver/XRayArgs.h
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/XRayArgs.cpp
    A clang/test/Driver/XRay/xray-shared.cpp
    M compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake
    M compiler-rt/cmake/config-ix.cmake
    M compiler-rt/include/xray/xray_interface.h
    M compiler-rt/lib/xray/CMakeLists.txt
    A compiler-rt/lib/xray/xray_dso_init.cpp
    M compiler-rt/lib/xray/xray_init.cpp
    M compiler-rt/lib/xray/xray_interface.cpp
    M compiler-rt/lib/xray/xray_interface_internal.h
    M compiler-rt/lib/xray/xray_trampoline_x86_64.S
    M compiler-rt/lib/xray/xray_x86_64.cpp
    A compiler-rt/test/xray/TestCases/Posix/basic-mode-dso.cpp
    A compiler-rt/test/xray/TestCases/Posix/clang-xray-shared.cpp
    A compiler-rt/test/xray/TestCases/Posix/dlopen.cpp
    A compiler-rt/test/xray/TestCases/Posix/dso-dep-chains.cpp
    A compiler-rt/test/xray/TestCases/Posix/patch-premain-dso.cpp
    A compiler-rt/test/xray/TestCases/Posix/patching-unpatching-dso.cpp

  Log Message:
  -----------
  [XRay] Add support for instrumentation of DSOs on x86_64 (#90959)

This PR introduces shared library (DSO) support for XRay based on a
revised version of the implementation outlined in [this
RFC](https://discourse.llvm.org/t/rfc-upstreaming-dso-instrumentation-support-for-xray/73000).
The feature enables the patching and handling of events from DSOs,
supporting both libraries linked at startup or explicitly loaded, e.g.
via `dlopen`.
This patch adds the following:
- The `-fxray-shared` flag to enable the feature (turned off by default)
- A small runtime library that is linked into every instrumented DSO,
providing position-independent trampolines and code to register with the
main XRay runtime
- Changes to the XRay runtime to support management and patching of
multiple objects

These changes are fully backward compatible, i.e. running without
instrumented DSOs will produce identical traces (in terms of recorded
function IDs) to the previous implementation.

Due to my limited ability to test on other architectures, this feature
is only implemented and tested with x86_64. Extending support to other
architectures is fairly straightforward, requiring only a
position-independent implementation of the architecture-specific
trampoline implementation (see
`compiler-rt/lib/xray/xray_trampoline_x86_64.S` for reference).

This patch does not include any functionality to resolve function IDs
from DSOs for the provided logging/tracing modes. These modes still work
and will record calls from DSOs, but symbol resolution for these
functions in not available. Getting this to work properly requires
recording information about the loaded DSOs and should IMO be discussed
in a separate RFC, as there are mulitple feasible approaches.

@petrhosek @jplehr


  Commit: 42ec740d0347a89b656c9be5ac4a7e4d8bcd30d5
      https://github.com/llvm/llvm-project/commit/42ec740d0347a89b656c9be5ac4a7e4d8bcd30d5
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang/lib/AST/ExprConstant.cpp

  Log Message:
  -----------
  [clang][ExprConstant] Remove an outdated TODO comment (#111959)

Seems like passing the quantities directly seems to work fine.


  Commit: 7b0d56be1d002e9cf0d8dda8ecaee99c5dbc88cf
      https://github.com/llvm/llvm-project/commit/7b0d56be1d002e9cf0d8dda8ecaee99c5dbc88cf
  Author: Petar Avramovic <Petar.Avramovic at amd.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/docs/AMDGPUUsage.rst
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.ballot.i32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.ballot.i64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ballot.i32.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ballot.i64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ballot.i64.wave32.ll

  Log Message:
  -----------
  AMDGPU/GlobalISel: Fix inst-selection of ballot (#109986)

Both input and output of ballot are lane-masks:
result is lane-mask with 'S32/S64 LLT and SGPR bank'
input is lane-mask with 'S1 LLT and VCC reg bank'.
Ballot copies bits from input lane-mask for
all active lanes and puts 0 for inactive lanes.
GlobalISel did not set 0 in result for inactive lanes
for non-constant input.


  Commit: 777142937a599d8a9cea5964b415d9cd13016d79
      https://github.com/llvm/llvm-project/commit/777142937a599d8a9cea5964b415d9cd13016d79
  Author: Simon Camphausen <simon.camphausen at iml.fraunhofer.de>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp
    M mlir/test/Conversion/MemRefToEmitC/memref-to-emitc-failed.mlir

  Log Message:
  -----------
  [mlir][EmitC] Fail on memrefs with 0 dims in type conversion (#111965)

This let's the type conversion fail instead of generating invalid array
types.


  Commit: 80c15c48d1fbb53478c9400e598abcbdcae0d962
      https://github.com/llvm/llvm-project/commit/80c15c48d1fbb53478c9400e598abcbdcae0d962
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ExprConstShared.h
    M clang/lib/AST/ExprConstant.cpp
    M clang/test/Sema/builtin-assume-aligned.c
    M clang/test/SemaCXX/builtin-assume-aligned.cpp

  Log Message:
  -----------
  [clang][bytecode] Implement __builtin_assume_aligned (#111968)


  Commit: 73ad416ebf9d11b876f22ede0ee90f660192869f
      https://github.com/llvm/llvm-project/commit/73ad416ebf9d11b876f22ede0ee90f660192869f
  Author: Dominik Adamski <dominik.adamski at amd.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
    M flang/lib/Optimizer/Analysis/CMakeLists.txt
    A flang/test/Analysis/AliasAnalysis/alias-analysis-omp-target-1.fir
    A flang/test/Analysis/AliasAnalysis/alias-analysis-omp-target-2.fir

  Log Message:
  -----------
  [OpenMP][Flang] Enable alias analysis inside omp target region (#111670)

At present, alias analysis does not work for operations inside OMP
target regions because the FIR declare operations within OMP target do
not offer sufficient information for alias analysis. Consequently, it is
necessary to examine the FIR code outside the OMP target region.


  Commit: f74f568b29885c3fa63c44e33f91f3bb7281138e
      https://github.com/llvm/llvm-project/commit/f74f568b29885c3fa63c44e33f91f3bb7281138e
  Author: Balázs Kéri <balazs.keri at ericsson.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/PointerSubChecker.cpp
    M clang/test/Analysis/pointer-sub.c

  Log Message:
  -----------
  [clang][analyzer] PointerSubChecker should not warn on pointers converted to numerical type (#111846)

Pointer values casted to integer (non-pointer) type should be able to be
subtracted as usual.


  Commit: 6a65e98fa7901dc1de91172d065fafb16ce89d77
      https://github.com/llvm/llvm-project/commit/6a65e98fa7901dc1de91172d065fafb16ce89d77
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/test/Transforms/InstCombine/ispow2.ll

  Log Message:
  -----------
  [InstCombine] Drop range attributes in `foldIsPowerOf2` (#111946)

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


  Commit: 65da32c634a8345fcbe021f69fc6a609d074c08c
      https://github.com/llvm/llvm-project/commit/65da32c634a8345fcbe021f69fc6a609d074c08c
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    A llvm/test/Transforms/LoopVectorize/RISCV/blend-any-of-reduction-cost.ll

  Log Message:
  -----------
  [LV] Account for any-of reduction when computing costs of blend phis.

Any-of reductions are narrowed to i1. Update the legacy cost model to
use the correct type when computing the cost of a phi that gets lowered
to selects (BLEND).

This fixes a divergence between legacy and VPlan-based cost models after
36fc291b6ec6d.

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


  Commit: d941254da94c8a5897689a74012a57de279c2c9e
      https://github.com/llvm/llvm-project/commit/d941254da94c8a5897689a74012a57de279c2c9e
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M lldb/test/API/functionalities/process_save_core_minidump/TestProcessSaveCoreMinidump.py

  Log Message:
  -----------
  [lldb][test] Fix var name typo in TestProcessSaveCoreMinidump


  Commit: 4451f9f812d458f6b53785b27869674caf01e67b
      https://github.com/llvm/llvm-project/commit/4451f9f812d458f6b53785b27869674caf01e67b
  Author: Sebastian Kreutzer <sebastian.kreutzer at stud.tu-darmstadt.de>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang/include/clang/Driver/XRayArgs.h
    M clang/lib/Driver/XRayArgs.cpp
    M compiler-rt/include/xray/xray_interface.h
    M compiler-rt/lib/xray/xray_interface.cpp

  Log Message:
  -----------
  [XRay] Fix LLVM include in xray_interface.cpp (#111978)

Removes a dependency on LLVM in `xray_interface.cpp` by replacing
`llvm_unreachable` with compiler-rt's `UNREACHABLE`.
Applies clang-format to some unformatted changes. 

Original PR: #90959


  Commit: 0163ac1f53abc0a0f6e5b7e56912c1dee67e7f32
      https://github.com/llvm/llvm-project/commit/0163ac1f53abc0a0f6e5b7e56912c1dee67e7f32
  Author: Mats Petersson <mats.petersson at arm.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    A flang/test/Lower/OpenMP/Todo/reduction-inscan.f90
    A flang/test/Lower/OpenMP/Todo/reduction-task.f90
    A flang/test/Lower/OpenMP/Todo/target-inreduction.f90
    A flang/test/Lower/OpenMP/Todo/task-inreduction.f90
    M flang/test/Lower/OpenMP/Todo/task_mergeable.f90
    A flang/test/Lower/OpenMP/Todo/taskgroup-task-reduction.f90
    A flang/test/Lower/OpenMP/Todo/taskloop.f90
    A flang/test/Lower/OpenMP/Todo/taskwait-depend.f90
    A flang/test/Lower/OpenMP/Todo/taskwait-nowait.f90

  Log Message:
  -----------
  [Flang][OpenMP]Add tests for TODOs and small changes to improve messages (#111562)

The bulk of this change are new tests to check that we get a "Not yet
implemneted: *some stuff here*" message when using some not yet
supported OpenMP functionality.

For some of these cases, this also means adding additional clauses to a
filter list in OpenMP.cpp - this changes nothing [to the best of my
understanding] other than allowing the clause to get to the point where
it can be rejected in a TODO with a more clear message. One of the TOOD
filters were missing Mergeable clause, so this was also added and the
existing test updated for the new more specific error message.

There is no functional change intended here.


  Commit: b5ea5be2a714e28bac57d417c221f687efe396bf
      https://github.com/llvm/llvm-project/commit/b5ea5be2a714e28bac57d417c221f687efe396bf
  Author: Sam Elliott <quic_aelliott at quicinc.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
    M llvm/test/MC/RISCV/insn.s

  Log Message:
  -----------
  [RISCV][MC] Fix >32bit .insn Directives (#111878)

The original patch had a reasonably significant bug. You could not use
`.insn` to assemble encodings that had any bits set above the low 32
bits. This is due to the fact that `getMachineOpValue` was truncating
the immediate value, and I did not commit enough tests of useful cases.

This changes the result of `getMachineOpValue` to be able to return the
48-bit and 64-bit immediates needed for the wider `.insn` directives.

I took the opportunity to move some of the test cases around in the file
to make looking at the output of `llvm-objdump` a little clearer.


  Commit: 303c8d20601d810c177f6646f771c1eb3f29ab8c
      https://github.com/llvm/llvm-project/commit/303c8d20601d810c177f6646f771c1eb3f29ab8c
  Author: Rin Dobrescu <irina.dobrescu at arm.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseV1.td
    A llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-forwarding.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-neon-instructions.s

  Log Message:
  -----------
  [AArch64] Add SchedReadAdvance to Neoverse-V1 scheduling model. (#111538)

Introduce a description of late forwarding to the Neoverse-V1 Scheduling model.


  Commit: 90627a5a190a99ae2991d524580d866484aaba16
      https://github.com/llvm/llvm-project/commit/90627a5a190a99ae2991d524580d866484aaba16
  Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang/include/clang/Basic/CodeGenOptions.def
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Driver/XRayArgs.h
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/XRayArgs.cpp
    R clang/test/Driver/XRay/xray-shared.cpp
    M compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake
    M compiler-rt/cmake/config-ix.cmake
    M compiler-rt/include/xray/xray_interface.h
    M compiler-rt/lib/xray/CMakeLists.txt
    R compiler-rt/lib/xray/xray_dso_init.cpp
    M compiler-rt/lib/xray/xray_init.cpp
    M compiler-rt/lib/xray/xray_interface.cpp
    M compiler-rt/lib/xray/xray_interface_internal.h
    M compiler-rt/lib/xray/xray_trampoline_x86_64.S
    M compiler-rt/lib/xray/xray_x86_64.cpp
    R compiler-rt/test/xray/TestCases/Posix/basic-mode-dso.cpp
    R compiler-rt/test/xray/TestCases/Posix/clang-xray-shared.cpp
    R compiler-rt/test/xray/TestCases/Posix/dlopen.cpp
    R compiler-rt/test/xray/TestCases/Posix/dso-dep-chains.cpp
    R compiler-rt/test/xray/TestCases/Posix/patch-premain-dso.cpp
    R compiler-rt/test/xray/TestCases/Posix/patching-unpatching-dso.cpp

  Log Message:
  -----------
  Revert "[XRay] Add support for instrumentation of DSOs on x86_64 (#90959)"

This reverts commit a4402039bffd788b9af82435fd5a2fb311fdc6e8 and 4451f9f812d458f6b53785b27869674caf01e67b


  Commit: 14705a912f6296700cef4d2aa7eb100f71dfbd0a
      https://github.com/llvm/llvm-project/commit/14705a912f6296700cef4d2aa7eb100f71dfbd0a
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/statepoint-twoaddr.mir
    M llvm/test/CodeGen/AMDGPU/expand-variadic-call.ll
    M llvm/test/CodeGen/X86/tls-align.ll

  Log Message:
  -----------
  CodeGen: Remove redundant REQUIRES registered-target from tests (#111982)

These are already in target specific test directories.


  Commit: 900ea21ffb38ba5b783b20f394c43c6c89d58086
      https://github.com/llvm/llvm-project/commit/900ea21ffb38ba5b783b20f394c43c6c89d58086
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/docs/CodingStandards.rst

  Log Message:
  -----------
  [NFC][CodingStandard] Add additional example for if-else brace rule (#111733)

Add example to document that single statement `else` needs a brace if
the associated `if` needs a brace.


  Commit: fa789dffb1e12c2aece0187aeacc48dfb1768340
      https://github.com/llvm/llvm-project/commit/fa789dffb1e12c2aece0187aeacc48dfb1768340
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGDecl.cpp
    M clang/lib/CodeGen/CGException.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/Targets/SystemZ.cpp
    M llvm/examples/BrainF/BrainF.cpp
    M llvm/include/llvm-c/Core.h
    M llvm/include/llvm/IR/IntrinsicInst.h
    M llvm/include/llvm/IR/Intrinsics.h
    M llvm/include/llvm/IR/MatrixBuilder.h
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/CodeGen/ExpandLargeFpConvert.cpp
    M llvm/lib/CodeGen/ExpandMemCmp.cpp
    M llvm/lib/CodeGen/ExpandVectorPredication.cpp
    M llvm/lib/CodeGen/HardwareLoops.cpp
    M llvm/lib/CodeGen/IntrinsicLowering.cpp
    M llvm/lib/CodeGen/SafeStack.cpp
    M llvm/lib/CodeGen/SjLjEHPrepare.cpp
    M llvm/lib/CodeGen/StackProtector.cpp
    M llvm/lib/CodeGen/WasmEHPrepare.cpp
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/IR/Core.cpp
    M llvm/lib/IR/DIBuilder.cpp
    M llvm/lib/IR/DebugProgramInstruction.cpp
    M llvm/lib/IR/IRBuilder.cpp
    M llvm/lib/IR/IntrinsicInst.cpp
    M llvm/lib/IR/Intrinsics.cpp
    M llvm/lib/IR/Module.cpp
    M llvm/lib/IR/VectorBuilder.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64StackTagging.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/SMEABIPass.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAtomicOptimizer.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUImageIntrinsicOptimizer.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSwLowerLDS.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUUnifyDivergentExitNodes.cpp
    M llvm/lib/Target/AMDGPU/SIAnnotateControlFlow.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/ARM/ARMParallelDSP.cpp
    M llvm/lib/Target/ARM/MVETailPredication.cpp
    M llvm/lib/Target/BPF/BPFAbstractMemberAccess.cpp
    M llvm/lib/Target/BPF/BPFAdjustOpt.cpp
    M llvm/lib/Target/BPF/BPFPreserveStaticOffset.cpp
    M llvm/lib/Target/DirectX/DXILOpLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonGenExtract.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
    M llvm/lib/Target/Hexagon/HexagonVectorCombine.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
    M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCLowerMASSVEntries.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/SPIRV/SPIRVPrepareFunctions.cpp
    M llvm/lib/Target/SystemZ/SystemZTDC.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyLowerRefTypesIntPtrConv.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86InstCombineIntrinsic.cpp
    M llvm/lib/Target/X86/X86PartialReduction.cpp
    M llvm/lib/Target/X86/X86WinEHState.cpp
    M llvm/lib/Target/XCore/XCoreLowerThreadLocal.cpp
    M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
    M llvm/lib/Transforms/Coroutines/Coroutines.cpp
    M llvm/lib/Transforms/IPO/CrossDSOCFI.cpp
    M llvm/lib/Transforms/IPO/SampleProfileProbe.cpp
    M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/BoundsChecking.cpp
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/KCFI.cpp
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
    M llvm/lib/Transforms/Instrumentation/SanitizerCoverage.cpp
    M llvm/lib/Transforms/Instrumentation/ThreadSanitizer.cpp
    M llvm/lib/Transforms/ObjCARC/ARCRuntimeEntryPoints.h
    M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
    M llvm/lib/Transforms/Scalar/LoopDataPrefetch.cpp
    M llvm/lib/Transforms/Scalar/LoopFlatten.cpp
    M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
    M llvm/lib/Transforms/Scalar/LowerGuardIntrinsic.cpp
    M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
    M llvm/lib/Transforms/Scalar/MakeGuardsExplicit.cpp
    M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
    M llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
    M llvm/lib/Transforms/Scalar/Scalarizer.cpp
    M llvm/lib/Transforms/Utils/AssumeBundleBuilder.cpp
    M llvm/lib/Transforms/Utils/CloneFunction.cpp
    M llvm/lib/Transforms/Utils/CodeExtractor.cpp
    M llvm/lib/Transforms/Utils/EntryExitInstrumenter.cpp
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    M llvm/lib/Transforms/Utils/IntegerDivision.cpp
    M llvm/lib/Transforms/Utils/Local.cpp
    M llvm/lib/Transforms/Utils/LowerGlobalDtors.cpp
    M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
    M llvm/lib/Transforms/Utils/PredicateInfo.cpp
    M llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
    M llvm/lib/Transforms/Utils/RelLookupTableConverter.cpp
    M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
    M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/tools/llvm-reduce/deltas/ReduceOpcodes.cpp
    M llvm/unittests/Analysis/AssumeBundleQueriesTest.cpp
    M llvm/unittests/Analysis/MemorySSATest.cpp
    M llvm/unittests/Analysis/ValueTrackingTest.cpp
    M llvm/unittests/IR/BasicBlockTest.cpp
    M llvm/unittests/IR/DebugInfoTest.cpp
    M llvm/unittests/IR/IRBuilderTest.cpp
    M llvm/unittests/IR/IntrinsicsTest.cpp
    M llvm/unittests/IR/PatternMatch.cpp
    M llvm/unittests/IR/VPIntrinsicTest.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
    M mlir/include/mlir/Dialect/LLVMIR/LLVMIntrinsicOps.td
    M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
    M polly/lib/CodeGen/IslExprBuilder.cpp
    M polly/lib/CodeGen/PerfMonitor.cpp

  Log Message:
  -----------
  [NFC] Rename `Intrinsic::getDeclaration` to `getOrInsertDeclaration` (#111752)

Rename the function to reflect its correct behavior and to be consistent
with `Module::getOrInsertFunction`. This is also in preparation of
adding a new `Intrinsic::getDeclaration` that will have behavior similar
to `Module::getFunction` (i.e, just lookup, no creation).


  Commit: c84f75966af79a381e27e6ffc9481c1fae2fcb4f
      https://github.com/llvm/llvm-project/commit/c84f75966af79a381e27e6ffc9481c1fae2fcb4f
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M libc/src/math/generic/cos.cpp
    M libc/src/math/generic/range_reduction_double_common.h

  Log Message:
  -----------
  [libc] Fix compilation of new trig functions (#111987)


  Commit: 26b832a9ec03d0a35baaf00d81f607004fe2a8cf
      https://github.com/llvm/llvm-project/commit/26b832a9ec03d0a35baaf00d81f607004fe2a8cf
  Author: Daniel Mokeev <mokeev.gh at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    A llvm/test/CodeGen/RISCV/orc-b-patterns.ll

  Log Message:
  -----------
  [RISCV] Add DAG combine to turn (sub (shl X, 8-Y), (shr X, Y)) into orc.b (#111828)

This patch generalizes the DAG combine for `(sub (shl X, 8), X) =>
(orc.b X)`
into the more general form of `(sub (shl X, 8 - Y), (srl X, Y)) =>
(orc.b X)`.

Alive2 generalized proof: https://alive2.llvm.org/ce/z/dFcf_n
Related issue: https://github.com/llvm/llvm-project/issues/96595
Related PR: https://github.com/llvm/llvm-project/pull/96680


  Commit: 9a696b68b735fa01276d16d39370f9102fee4a0b
      https://github.com/llvm/llvm-project/commit/9a696b68b735fa01276d16d39370f9102fee4a0b
  Author: Emilio Cota <ecg at google.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/test/CodeGen/NVPTX/i8x4-instructions.ll
    M llvm/test/CodeGen/NVPTX/sext-setcc.ll

  Log Message:
  -----------
  Revert "[NVPTX] Prefer prmt.b32 over bfi.b32 (#110766)"

This reverts commit 3f9998af4f79e95fe8be615df9d6b898008044b9.

It breaks downstream tests with egregious numerical differences.

Unfortunately no upstream tests are broken, but the fact that
a prior iteration of the commit (pre-optimization) does work
with our downstream tests (coming from the Triton repo) supports
the claim that the final version of the commit is incorrect.

Reverting now so that the original author can evaluate.


  Commit: c8da2253f9aa4dff039e9ed766ff0f865632a0eb
      https://github.com/llvm/llvm-project/commit/c8da2253f9aa4dff039e9ed766ff0f865632a0eb
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp

  Log Message:
  -----------
  [Clang] Replace Intrinsic::getDeclaration with getOrInsertDeclaration (#111990)

Fix build failure from the rename change. Looks like one additional
reference sneaked in between pre-commit checks and the commit itself.


  Commit: ed7251b3aeb7c471dc50e9409e83a9ec01f40df5
      https://github.com/llvm/llvm-project/commit/ed7251b3aeb7c471dc50e9409e83a9ec01f40df5
  Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang/include/clang/Sema/Overload.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/SemaLookup.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/test/SemaTemplate/cwg2398.cpp

  Log Message:
  -----------
  Revert "[clang] Implement TTP P0522 pack matching for deduced function template calls. (#111457)"

See discussion in https://github.com/llvm/llvm-project/pull/111711

This reverts commit 4dadf42c1a74dd4e37db9ffd6fbb3027f59751a7.


  Commit: bdd46cc6b74eeed14936f1373bbb6446e09979fe
      https://github.com/llvm/llvm-project/commit/bdd46cc6b74eeed14936f1373bbb6446e09979fe
  Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/TemplateDeduction.h
    M clang/lib/Sema/SemaLookup.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/test/SemaTemplate/cwg2398.cpp

  Log Message:
  -----------
  Revert "[clang] CWG2398: improve overload resolution backwards compat (#107350)"

See discussion in https://github.com/llvm/llvm-project/pull/111711

This reverts commit 224519b08945637a85e9798c78286643288f7b77.


  Commit: efcfa6e711689ada546c323316145ecd749d380a
      https://github.com/llvm/llvm-project/commit/efcfa6e711689ada546c323316145ecd749d380a
  Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Frontend/FrontendActions.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/test/CXX/temp/temp.arg/temp.arg.template/p3-0x.cpp
    M clang/test/CXX/temp/temp.param/p12.cpp
    M clang/test/Modules/cxx-templates.cpp
    M clang/test/SemaCXX/make_integer_seq.cpp
    M clang/test/SemaTemplate/cwg2398.cpp
    M clang/test/SemaTemplate/temp_arg_nontype.cpp
    M clang/test/SemaTemplate/temp_arg_template.cpp
    M clang/test/SemaTemplate/temp_arg_template_p0522.cpp
    M clang/test/Templight/templight-empty-entries-fix.cpp
    M clang/test/Templight/templight-prior-template-arg.cpp

  Log Message:
  -----------
  Revert "Reland: [clang] Finish implementation of P0522 (#111711)"

See discussion in https://github.com/llvm/llvm-project/pull/111711

This reverts commit 6213aa5e58a7d32bdc82dd40322fb1bab83c4783.


  Commit: 870d37dd1257d211f96797bf041280b2260ed260
      https://github.com/llvm/llvm-project/commit/870d37dd1257d211f96797bf041280b2260ed260
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

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

  Log Message:
  -----------
  [AMDGPU] Rewrite RegSeqNames using !foreach. NFC. (#111994)

This reduces the total number of TableGen records produced by AMDGPU.td
by about 6%.


  Commit: c8554e13eec048180d003af2aa7b2cc8498d4fba
      https://github.com/llvm/llvm-project/commit/c8554e13eec048180d003af2aa7b2cc8498d4fba
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Basic/IdentifierTable.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/test/CXX/drs/cwg14xx.cpp
    M clang/test/CXX/drs/cwg25xx.cpp
    M clang/test/CXX/lex/lex.literal/lex.ext/p1.cpp
    M clang/test/CXX/lex/lex.literal/lex.ext/p10.cpp
    M clang/test/CXX/lex/lex.literal/lex.ext/p11.cpp
    M clang/test/CXX/lex/lex.literal/lex.ext/p3.cpp
    M clang/test/CXX/lex/lex.literal/lex.ext/p4.cpp
    M clang/test/CXX/lex/lex.literal/lex.ext/p5.cpp
    M clang/test/CXX/lex/lex.literal/lex.ext/p6.cpp
    M clang/test/CXX/lex/lex.literal/lex.ext/p7.cpp
    M clang/test/CXX/lex/lex.literal/lex.ext/p8.cpp
    M clang/test/CXX/lex/lex.literal/lex.ext/p9.cpp
    M clang/test/CXX/over/over.oper/over.literal/p2.cpp
    M clang/test/CXX/over/over.oper/over.literal/p3.cpp
    M clang/test/CXX/over/over.oper/over.literal/p5.cpp
    M clang/test/CXX/over/over.oper/over.literal/p6.cpp
    M clang/test/CXX/over/over.oper/over.literal/p7.cpp
    M clang/test/CXX/over/over.oper/over.literal/p8.cpp
    M clang/test/FixIt/fixit-c++11.cpp
    M clang/test/Parser/cxx11-user-defined-literals.cpp
    M clang/test/SemaCXX/cxx11-user-defined-literals-unused.cpp
    M clang/test/SemaCXX/cxx11-user-defined-literals.cpp
    M clang/test/SemaCXX/cxx2a-consteval.cpp
    M clang/test/SemaCXX/cxx98-compat.cpp
    M clang/test/SemaCXX/literal-operators.cpp
    M clang/test/SemaCXX/no-warn-user-defined-literals-in-system-headers.cpp
    M clang/test/SemaCXX/reserved-identifier.cpp
    M clang/test/SemaCXX/warn-xor-as-pow.cpp

  Log Message:
  -----------
  Turn `-Wdeprecated-literal-operator` on by default (#111027)

It would be nice to see what our users think about this change, as this
is something that WG21/EWG quite wants to fix a handful of questionable
issues with UB. Depending on the outcome of this after being committed,
we might instead suggest EWG undeprecate this, and require a bit of
'magic' from the lexer.

Additionally, this patch makes it so we emit this diagnostic ALSO in
cases where the literal name is reserved. It doesn't make sense to limit
that.

---------

Co-authored-by: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>


  Commit: a2bd5db00d07bc28fcfb3350b9d50e72e6350cba
      https://github.com/llvm/llvm-project/commit/a2bd5db00d07bc28fcfb3350b9d50e72e6350cba
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M lldb/utils/lldb-dotest/CMakeLists.txt
    M lldb/utils/lldb-dotest/lldb-dotest.in

  Log Message:
  -----------
  [lldb] Fix finding make tool for tests (#111980)

Fixes 0e913237871e8c9290e82be30be8b3484952eee0 /
https://github.com/llvm/llvm-project/pull/111531

For reasons I can't explain, a clean build works fine for me, and all
the bots are working fine. But if I rebuild in some way the make tool
becomes None.

Looking at the other variables, they had these extra lines so I've added
those for make and it seems to solve the problem.


  Commit: c3a10dc8498b1e501f5a32b082b63b0c1fc499a5
      https://github.com/llvm/llvm-project/commit/c3a10dc8498b1e501f5a32b082b63b0c1fc499a5
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    A llvm/test/CodeGen/AArch64/consecutive-stores-of-faddv.ll

  Log Message:
  -----------
  [AArch64] Disable consecutive store merging when Neon is unavailable (#111519)

Lowering fixed-size BUILD_VECTORS without Neon may introduce stack
spills, leading to more stores/reloads than if the stores were not
merged. In some cases, it can also prevent using paired store
instructions.

In the future, we may want to relax when SVE is available, but
currently, the SVE lowerings for BUILD_VECTOR are limited to a few
specific cases.


  Commit: bd12729a828c653da53f7182dda29982123913db
      https://github.com/llvm/llvm-project/commit/bd12729a828c653da53f7182dda29982123913db
  Author: Alejandro Álvarez Ayllón <alejandro.alvarez at sonarsource.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/PrettyPrinter.h
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/TypePrinter.cpp
    M clang/lib/ASTMatchers/ASTMatchersInternal.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp

  Log Message:
  -----------
  [clang] Ignore inline namespace for `hasName` (#109147)

Add a new enumeration `SuppressInlineNamespaceMode` to `PrintingPolicy` that
is explicit about how to handle inline namespaces. `SuppressInlineNamespace`
uses that enumeration now instead of a Boolean value.

Specializing a template from an inline namespace should be transparent.
For instance

```
namespace foo {
    inline namespace v1 {
        template<typename A>
        void function(A&);
    }
}

namespace foo {
    template<>
    void function<int>(int&);
}
```

`hasName` should match both declarations of `foo::function`.

Makes the behavior of `matchesNodeFullSlow` and `matchesNodeFullFast`
consistent, fixing an assert inside `HasNameMatcher::matchesNode`.


  Commit: 923fef903853d61ccef39e8ac770693bf145207f
      https://github.com/llvm/llvm-project/commit/923fef903853d61ccef39e8ac770693bf145207f
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M libcxxabi/CMakeLists.txt

  Log Message:
  -----------
  [libc++abi] Remove unused LIBCXXABI_LIBCXX_INCLUDES CMake option (#111824)

This hasn't been used for several years, so it's effectively dead code
at this point.


  Commit: 33c14f19656c751bbbc083e4a168ab898e583bfd
      https://github.com/llvm/llvm-project/commit/33c14f19656c751bbbc083e4a168ab898e583bfd
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M libcxx/utils/ci/run-buildbot

  Log Message:
  -----------
  [libc++] Add output groups to run-buildbot (#111739)

This improves the CI output by providing collapsable sections for
sub-parts of our build.

This was originally opened as #75233.

Co-authored-by: eric <eric at efcs.ca>


  Commit: f7eb2715425d9cc25ec5acbcaab7eca323513f25
      https://github.com/llvm/llvm-project/commit/f7eb2715425d9cc25ec5acbcaab7eca323513f25
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir

  Log Message:
  -----------
  [mlir][vector] Add more tests for ConvertVectorToLLVM (7/n) (#111895)

Adds tests with scalable vectors for the Vector-To-LLVM conversion pass.
Covers the following Ops:
  * vector.fma
  * vector.reduce


  Commit: 1c94388f38c61c77d16abd9e164c78790ab23b58
      https://github.com/llvm/llvm-project/commit/1c94388f38c61c77d16abd9e164c78790ab23b58
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/CMakeLists.txt
    M llvm/lib/Target/RISCV/RISCV.h
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
    A llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
    A llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll
    M llvm/test/CodeGen/RISCV/rvv/vl-opt-op-info.ll

  Log Message:
  -----------
  [RISCV] Introduce VLOptimizer pass (#108640)

The purpose of this optimization is to make the VL argument, for
instructions that have a VL argument, as small as possible. This is
implemented by visiting each instruction in reverse order and checking
that if it has a VL argument, whether the VL can be reduced.

By putting this pass before VSETVLI insertion, we see three kinds of
changes to generated code:
1. Eliminate VSETVLI instructions
2. Reduce the VL toggle on VSETVLI instructions that also change vtype
3. Reduce the VL set by a VSETVLI instruction

The list of supported instructions is currently whitelisted for safety.
In the future, we could add more instructions to `isSupportedInstr` to
support even more VL optimization.

We originally wrote this pass because vector GEP instructions do not
take a VL, which leads us to emit code that uses VL=VLMAX to implement
GEP in the RISC-V backend. As a result, some of the vector instructions
will write to lanes, specifically between the intended VL and VLMAX,
that will never be read. As an alternative to this pass, we considered
adding a vector predicated GEP instruction, but this would not fit well
into the intrinsic type system since GEP has a variable number of
arguments, each with arbitrary types. The second approach we considered
was to put this pass after VSETVLI insertion, but we found that it was
more difficult to recognize optimization opportunities, especially
across basic block boundaries -- the data flow analysis was also a bit
more expensive and complex.

While this pass solves the GEP problem, we have expanded it to handle
more cases of VL optimization, and there is opportunity for the analysis
to be improved to enable even more optimization. We have a few follow up
patches to post, but figured this would be a good start.

---------

Co-authored-by: Craig Topper <craig.topper at sifive.com>
Co-authored-by: Kito Cheng <kito.cheng at sifive.com>


  Commit: 5dac691b66accd2f80c4291280efd5368986d7af
      https://github.com/llvm/llvm-project/commit/5dac691b66accd2f80c4291280efd5368986d7af
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Target/RISCV/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 1c94388f38c6


  Commit: 4b3f251bada55cfc20a2c72321fa0bbfd7a759d5
      https://github.com/llvm/llvm-project/commit/4b3f251bada55cfc20a2c72321fa0bbfd7a759d5
  Author: donald chen <chenxunyu1993 at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M flang/lib/Optimizer/Transforms/StackArrays.cpp
    M mlir/include/mlir/Analysis/DataFlow/DeadCodeAnalysis.h
    M mlir/include/mlir/Analysis/DataFlow/DenseAnalysis.h
    M mlir/include/mlir/Analysis/DataFlow/SparseAnalysis.h
    M mlir/include/mlir/Analysis/DataFlowFramework.h
    M mlir/include/mlir/IR/Block.h
    M mlir/lib/Analysis/DataFlow/DeadCodeAnalysis.cpp
    M mlir/lib/Analysis/DataFlow/DenseAnalysis.cpp
    M mlir/lib/Analysis/DataFlow/IntegerRangeAnalysis.cpp
    M mlir/lib/Analysis/DataFlow/LivenessAnalysis.cpp
    M mlir/lib/Analysis/DataFlow/SparseAnalysis.cpp
    M mlir/lib/Analysis/DataFlowFramework.cpp
    M mlir/lib/Dialect/Arith/Transforms/IntRangeOptimizations.cpp
    M mlir/test/lib/Analysis/DataFlow/TestDeadCodeAnalysis.cpp
    M mlir/test/lib/Analysis/DataFlow/TestDenseBackwardDataFlowAnalysis.cpp
    M mlir/test/lib/Analysis/DataFlow/TestDenseForwardDataFlowAnalysis.cpp
    M mlir/test/lib/Analysis/DataFlow/TestSparseBackwardDataFlowAnalysis.cpp
    M mlir/test/lib/Analysis/TestDataFlowFramework.cpp

  Log Message:
  -----------
  [mlir] [dataflow] unify semantics of program point (#110344)

The concept of a 'program point' in the original data flow framework is
ambiguous. It can refer to either an operation or a block itself. This
representation has different interpretations in forward and backward
data-flow analysis. In forward data-flow analysis, the program point of
an operation represents the state after the operation, while in backward
data flow analysis, it represents the state before the operation. When
using forward or backward data-flow analysis, it is crucial to carefully
handle this distinction to ensure correctness.

This patch refactors the definition of program point, unifying the
interpretation of program points in both forward and backward data-flow
analysis.

How to integrate this patch?

For dense forward data-flow analysis and other analysis (except dense
backward data-flow analysis), the program point corresponding to the
original operation can be obtained by `getProgramPointAfter(op)`, and
the program point corresponding to the original block can be obtained by
`getProgramPointBefore(block)`.

For dense backward data-flow analysis, the program point corresponding
to the original operation can be obtained by
`getProgramPointBefore(op)`, and the program point corresponding to the
original block can be obtained by `getProgramPointAfter(block)`.

NOTE: If you need to get the lattice of other data-flow analyses in
dense backward data-flow analysis, you should still use the dense
forward data-flow approach. For example, to get the Executable state of
a block in dense backward data-flow analysis and add the dependency of
the current operation, you should write:

``getOrCreateFor<Executable>(getProgramPointBefore(op),
getProgramPointBefore(block))``

In case above, we use getProgramPointBefore(op) because the analysis we
rely on is dense backward data-flow, and we use
getProgramPointBefore(block) because the lattice we query is the result
of a non-dense backward data flow computation.

related dsscussion:
https://discourse.llvm.org/t/rfc-unify-the-semantics-of-program-points/80671/8
corresponding PSA:
https://discourse.llvm.org/t/psa-program-point-semantics-change/81479


  Commit: a8a66245954f8ef079708d314f0059d6c3e07b28
      https://github.com/llvm/llvm-project/commit/a8a66245954f8ef079708d314f0059d6c3e07b28
  Author: Ralf Jung <post at ralfj.de>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/docs/LangRef.rst

  Log Message:
  -----------
  [IR] LangRef: state explicitly that floats generally behave according to IEEE-754 (#102140)

Fixes https://github.com/llvm/llvm-project/issues/60942: IEEE semantics
is likely what many frontends want (it definitely is what Rust wants),
and it is what LLVM passes already assume when they use APFloat to
propagate float operations.

This does not reflect what happens on x87, but what happens there is
just plain unsound (https://github.com/llvm/llvm-project/issues/89885,
https://github.com/llvm/llvm-project/issues/44218); there is no coherent
specification that will describe this behavior correctly -- the backend
in combination with standard LLVM passes is just fundamentally buggy in
a hard-to-fix-way.

There's also the questions around flushing subnormals to zero, but [this
discussion](https://discourse.llvm.org/t/questions-about-llvm-canonicalize/79378)
seems to indicate a general stance of: this is specific non-standard
hardware behavior, and generally needs LLVM to be told that basic float
ops do not return the standard result. Just naively running
LLVM-compiled code on hardware configured to flush subnormals will lead
to #89885-like issues.

AFAIK this is also what Alive2 implements (@nunoplopes please correct me
if I am wrong).


  Commit: e34e27f19820af958db7c3b93de7f489aa3bf4dc
      https://github.com/llvm/llvm-project/commit/e34e27f19820af958db7c3b93de7f489aa3bf4dc
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/InlineAdvisor.h
    M llvm/include/llvm/Analysis/InlineCost.h
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/lib/Analysis/InlineAdvisor.cpp
    M llvm/lib/Analysis/InlineCost.cpp
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
    A llvm/test/Transforms/Inline/AMDGPU/amdgpu-inline-only-one-live-use.ll

  Log Message:
  -----------
  [TTI][AMDGPU] Allow targets to adjust `LastCallToStaticBonus` via `getInliningLastCallToStaticBonus`  (#111311)

Currently we will not be able to inline a large function even if it only
has one live use because the inline cost is still very high after
applying `LastCallToStaticBonus`, which is a constant. This could
significantly impact the performance because CSR spill is very
expensive.

This PR adds a new function `getInliningLastCallToStaticBonus` to TTI to
allow targets to customize this value.

Fixes SWDEV-471398.


  Commit: 2d133aaaeb97df62a92de80dae48f6bd8859a9e3
      https://github.com/llvm/llvm-project/commit/2d133aaaeb97df62a92de80dae48f6bd8859a9e3
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

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

  Log Message:
  -----------
  [OpenACC] Fix 'classof' for two unused types.

While implementing a different clause, I discovered these placeholder
clauses had their 'classof' implementation done incorrectly, so this
fixes that.


  Commit: bae17a2682c8fcc58c1b7248427b153dba7cb39b
      https://github.com/llvm/llvm-project/commit/bae17a2682c8fcc58c1b7248427b153dba7cb39b
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang/include/clang/Basic/OpenACCKinds.h

  Log Message:
  -----------
  [OpenACC] Make all AST enums have an underlying type.

We store these in a few places, so ensuring they are kept in a uint8_t
will minimize the amount of storage on the stack.


  Commit: c13f806f17ac61961015e38b69c8b39ba7d454ac
      https://github.com/llvm/llvm-project/commit/c13f806f17ac61961015e38b69c8b39ba7d454ac
  Author: Javed Absar <106147771+javedabsar1 at users.noreply.github.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgInterfaces.h
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgInterfaces.td
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
    M mlir/lib/Dialect/Linalg/IR/LinalgInterfaces.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Specialize.cpp
    A mlir/test/Dialect/Linalg/roundtrip-broadcast.mlir
    A mlir/test/Dialect/Linalg/roundtrip-transpose.mlir
    A mlir/test/Dialect/Linalg/specialize-generic-ops-fail.mlir
    M mlir/test/Dialect/Linalg/transform-op-specialize.mlir

  Log Message:
  -----------
  [mlir][linalg] raise generic to named ops. (#110421)

Add support for specializing linalg.broadcast and linalg.transform from generic. Also, does some refactoring to reuse specialization checks, migrating some common uses to op interface methods.


  Commit: 8b17916217e8443a2740e387ca2ff93acdb46988
      https://github.com/llvm/llvm-project/commit/8b17916217e8443a2740e387ca2ff93acdb46988
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

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

  Log Message:
  -----------
  [RISCV] Fix -Wunused-function in RISCVVLOptimizer.cpp (NFC)

/llvm-project/llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp:125:21:
error: unused function 'operator<<' [-Werror,-Wunused-function]
static raw_ostream &operator<<(raw_ostream &OS, const OperandInfo &OI) {
                    ^
1 error generated.


  Commit: e8dd95e97bd45c8ee3cc2a3d95c9a6198a970d80
      https://github.com/llvm/llvm-project/commit/e8dd95e97bd45c8ee3cc2a3d95c9a6198a970d80
  Author: vporpo <vporpodas at google.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
    M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp

  Log Message:
  -----------
  [SandboxVec][DAG] Extend DAG (#111908)

This patch implements growing the DAG towards the top or bottom. This
does the necessary dependency checks and adds new mem dependencies.


  Commit: 67160c5ab5f5b7fd5fa7851abcfde367c8a9f91b
      https://github.com/llvm/llvm-project/commit/67160c5ab5f5b7fd5fa7851abcfde367c8a9f91b
  Author: Janek van Oirschot <janek.vanoirschot at amd.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUMCResourceInfo.cpp
    M llvm/test/CodeGen/AMDGPU/function-resource-usage.ll
    A llvm/test/CodeGen/AMDGPU/recursive-resource-usage-mcexpr.ll

  Log Message:
  -----------
  [AMDGPU] Avoid resource propagation for recursion through multiple functions (#111004)

Avoid constructing recursive MCExpr definitions when multiple functions
cause a recursion.

Fixes #110863


  Commit: 2d5f3b0a61fb171617012a2c3ba05fd31fb3bb1d
      https://github.com/llvm/llvm-project/commit/2d5f3b0a61fb171617012a2c3ba05fd31fb3bb1d
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIPreEmitPeephole.cpp
    M llvm/test/CodeGen/AMDGPU/amdgpu-demote-scc-branches.ll
    M llvm/test/CodeGen/AMDGPU/branch-condition-and.ll
    M llvm/test/CodeGen/AMDGPU/else.ll
    M llvm/test/CodeGen/AMDGPU/fptoi.i128.ll
    M llvm/test/CodeGen/AMDGPU/i1-copy-from-loop.ll
    A llvm/test/CodeGen/AMDGPU/insert-handle-flat-vmem-ds.mir
    R llvm/test/CodeGen/AMDGPU/insert-skips-flat-vmem-ds.mir
    M llvm/test/CodeGen/AMDGPU/insert-skips-gfx10.mir
    M llvm/test/CodeGen/AMDGPU/insert-skips-gfx12.mir
    M llvm/test/CodeGen/AMDGPU/insert-skips-gws.mir
    M llvm/test/CodeGen/AMDGPU/insert-skips-ignored-insts.mir
    M llvm/test/CodeGen/AMDGPU/itofp.i128.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.whole.wave-w64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umax.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umin.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/remove-short-exec-branches-gpr-idx-mode.mir
    M llvm/test/CodeGen/AMDGPU/remove-short-exec-branches-special-instructions.mir
    M llvm/test/CodeGen/AMDGPU/ret_jump.ll
    M llvm/test/CodeGen/AMDGPU/si-unify-exit-return-unreachable.ll
    M llvm/test/CodeGen/AMDGPU/skip-branch-taildup-ret.mir

  Log Message:
  -----------
  [AMDGPU][SIPreEmitPeephole] mustRetainExeczBranch: use BranchProbability and TargetSchedmodel (#109818)

Remove s_cbranch_execnz branches if the transformation is
profitable according to `BranchProbability` and `TargetSchedmodel`.


  Commit: 1c6688ae3449da9c8fee1e1c12c892223496fb4c
      https://github.com/llvm/llvm-project/commit/1c6688ae3449da9c8fee1e1c12c892223496fb4c
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M lld/ELF/LinkerScript.cpp
    A lld/test/ELF/linkerscript/provide-defined.s

  Log Message:
  -----------
  [ELF] Make shouldAddProvideSym return values consistent when demoted to Undefined

Case: `PROVIDE(f1 = bar);` when both `f1` and `bar` are in separate
sections that would be discarded by GC.

Due to `demoteDefined`, `shouldAddProvideSym(f1)` may initially return
false (when Defined) and then return true (been demoted to Undefined).

```
addScriptReferencedSymbolsToSymTable
  shouldAddProvideSym(f1): false
  // the RHS (bar) is not added to `referencedSymbols` and may be GCed
declareSymbols
  shouldAddProvideSym(f1): false
markLive
demoteSymbolsAndComputeIsPreemptible
  // demoted f1 to Undefined
processSymbolAssignments
  addSymbol
    shouldAddProvideSym(f1): true
```

The inconsistency can cause `cmd->expression()` in `addSymbol` to be
evaluated, leading to `symbol not found: bar` errors (since `bar` in the
RHS is not in `referencedSymbols` and is GCed) (#111478).

Fix this by adding a `sym->isUsedInRegularObj` condition, making
`shouldAddProvideSym(f1)` values consistent. In addition, we need a
`sym->exportDynamic` condition to keep provide-shared.s working.

Fixes: ebb326a51fec37b5a47e5702e8ea157cd4f835cd

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


  Commit: b1746894deebe3fa8d0d18e56c0d33c37ef916cd
      https://github.com/llvm/llvm-project/commit/b1746894deebe3fa8d0d18e56c0d33c37ef916cd
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

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

  Log Message:
  -----------
  [AMDGPU] Fix -Wunused-variable in non-assertion builds after #109818


  Commit: 75774c1c364711d365dae14028edfda5122a0d50
      https://github.com/llvm/llvm-project/commit/75774c1c364711d365dae14028edfda5122a0d50
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/test/tools/llvm-profdata/memprof-merge-versions.test
    M llvm/tools/llvm-profdata/llvm-profdata.cpp

  Log Message:
  -----------
  [llvm-profdata] Default to MemProf version 3 (#108863)

It's very confusing to have support for Verion 3 but not default to
it.  This patch teaches llvm-profdata to use MemProf version 3 by
default.


  Commit: eef6c0926ea5075c7b67a8f6023bfc775563d1f6
      https://github.com/llvm/llvm-project/commit/eef6c0926ea5075c7b67a8f6023bfc775563d1f6
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp

  Log Message:
  -----------
  [ARM] Avoid repeated hash lookups (NFC) (#111935)


  Commit: 8a53dc69c2e9a67cb1b7ea9a568bc0194889f114
      https://github.com/llvm/llvm-project/commit/8a53dc69c2e9a67cb1b7ea9a568bc0194889f114
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/lib/DebugInfo/LogicalView/Readers/LVCodeViewVisitor.cpp

  Log Message:
  -----------
  [DebugInfo] Avoid repeated map lookups (NFC) (#111936)


  Commit: 2acec3ee21e846ce48c643b431b804a893d18cde
      https://github.com/llvm/llvm-project/commit/2acec3ee21e846ce48c643b431b804a893d18cde
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/lib/ExecutionEngine/JITLink/EHFrameSupport.cpp

  Log Message:
  -----------
  [ExecutionEngine] Avoid repeated hash lookups (NFC) (#111937)


  Commit: 0f476277d52b3d31739fe8a1b06791f1747e152d
      https://github.com/llvm/llvm-project/commit/0f476277d52b3d31739fe8a1b06791f1747e152d
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/lib/ObjectYAML/COFFEmitter.cpp

  Log Message:
  -----------
  [ObjectYAML] Avoid repeated hash lookups (NFC) (#111938)


  Commit: 3f156ef4cc333bcf9389addd1e0054b654501d7e
      https://github.com/llvm/llvm-project/commit/3f156ef4cc333bcf9389addd1e0054b654501d7e
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang-tools-extra/clangd/Headers.cpp
    M clang-tools-extra/clangd/XRefs.cpp

  Log Message:
  -----------
  [clangd] Simplify code with *Map::operator[] (NFC) (#111939)


  Commit: 5b25c31351ad1b10a3819411379b3258869c1e1b
      https://github.com/llvm/llvm-project/commit/5b25c31351ad1b10a3819411379b3258869c1e1b
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang/include/clang/AST/OpenACCClause.h
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/OpenACCClauses.def
    M clang/include/clang/Basic/OpenACCKinds.h
    M clang/include/clang/Parse/Parser.h
    M clang/include/clang/Sema/SemaOpenACC.h
    M clang/lib/AST/OpenACCClause.cpp
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/Parse/ParseOpenACC.cpp
    M clang/lib/Sema/SemaOpenACC.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/test/AST/ast-print-openacc-loop-construct.cpp
    M clang/test/ParserOpenACC/parse-clauses.c
    M clang/test/SemaOpenACC/compute-construct-device_type-clause.c
    M clang/test/SemaOpenACC/loop-construct-auto_seq_independent-clauses.c
    M clang/test/SemaOpenACC/loop-construct-device_type-clause.c
    A clang/test/SemaOpenACC/loop-construct-gang-ast.cpp
    A clang/test/SemaOpenACC/loop-construct-gang-clause.cpp
    M clang/tools/libclang/CIndex.cpp

  Log Message:
  -----------
  [OpenACC] Implement loop 'gang' clause. (#112006)

The 'gang' clause is used to specify parallel execution of loops, thus
has some complicated rules depending on the 'loop's associated compute
construct. This patch implements all of those.


  Commit: 089227feaf0efb5e540783a5542655e25669e7d8
      https://github.com/llvm/llvm-project/commit/089227feaf0efb5e540783a5542655e25669e7d8
  Author: Adrian Prantl <aprantl at apple.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M lldb/include/lldb/Expression/DiagnosticManager.h
    M lldb/include/lldb/Interpreter/CommandReturnObject.h
    M lldb/include/lldb/Utility/Args.h
    A lldb/include/lldb/Utility/DiagnosticsRendering.h
    M lldb/include/lldb/Utility/Status.h
    M lldb/source/Commands/CommandObjectDWIMPrint.cpp
    M lldb/source/Commands/CommandObjectExpression.cpp
    R lldb/source/Commands/DiagnosticRendering.h
    M lldb/source/Expression/DiagnosticManager.cpp
    M lldb/source/Expression/FunctionCaller.cpp
    M lldb/source/Expression/LLVMUserExpression.cpp
    M lldb/source/Interpreter/CommandInterpreter.cpp
    M lldb/source/Interpreter/CommandObject.cpp
    M lldb/source/Interpreter/CommandReturnObject.cpp
    M lldb/source/Interpreter/Options.cpp
    M lldb/source/Utility/Args.cpp
    M lldb/source/Utility/CMakeLists.txt
    A lldb/source/Utility/DiagnosticsRendering.cpp
    M lldb/source/Utility/Status.cpp
    M lldb/test/API/commands/expression/diagnostics/TestExprDiagnostics.py
    A lldb/test/Shell/Commands/command-dwim-print.test
    A lldb/test/Shell/Commands/command-options.test
    M lldb/unittests/Interpreter/CMakeLists.txt
    R lldb/unittests/Interpreter/TestCommandObjectExpression.cpp
    M lldb/unittests/Utility/CMakeLists.txt
    A lldb/unittests/Utility/DiagnosticsRenderingTest.cpp

  Log Message:
  -----------
  Support inline diagnostics in CommandReturnObject (#110901)

and implement them for dwim-print (a.k.a. `p`) as an example.

The next step will be to expose them as structured data in
SBCommandReturnObject.


  Commit: b96ebee1fab2b281c97deb54f3d61c469fe07d01
      https://github.com/llvm/llvm-project/commit/b96ebee1fab2b281c97deb54f3d61c469fe07d01
  Author: Jacques Pienaar <jpienaar at google.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M mlir/include/mlir/IR/AsmState.h
    M mlir/unittests/IR/AttributeTest.cpp

  Log Message:
  -----------
  [mlir] Fix allocateAndCopyWithAlign for immutable (#108679)

Previously this would assert when attempting to getMutableData.


  Commit: 50866e84d1da8462aeb96607bf6d9e5bbd5869c5
      https://github.com/llvm/llvm-project/commit/50866e84d1da8462aeb96607bf6d9e5bbd5869c5
  Author: Janek van Oirschot <janek.vanoirschot at amd.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUMCResourceInfo.cpp
    M llvm/test/CodeGen/AMDGPU/function-resource-usage.ll
    R llvm/test/CodeGen/AMDGPU/recursive-resource-usage-mcexpr.ll

  Log Message:
  -----------
  Revert "[AMDGPU] Avoid resource propagation for recursion through multiple functions" (#112013)

Reverts llvm/llvm-project#111004


  Commit: 2c01b278580212914ec037bb5dd9b73702dfe7f1
      https://github.com/llvm/llvm-project/commit/2c01b278580212914ec037bb5dd9b73702dfe7f1
  Author: Sunho Kim <ksunhokim123 at gmail.com>
  Date:   2024-10-12 (Sat, 12 Oct 2024)

  Changed paths:
    A llvm/include/llvm/ExecutionEngine/Orc/JITLinkRedirectableSymbolManager.h
    A llvm/include/llvm/ExecutionEngine/Orc/RedirectionManager.h
    M llvm/lib/ExecutionEngine/Orc/CMakeLists.txt
    A llvm/lib/ExecutionEngine/Orc/JITLinkRedirectableSymbolManager.cpp
    A llvm/lib/ExecutionEngine/Orc/RedirectionManager.cpp
    M llvm/unittests/ExecutionEngine/Orc/CMakeLists.txt
    A llvm/unittests/ExecutionEngine/Orc/JITLinkRedirectionManagerTest.cpp

  Log Message:
  -----------
  [ORC] Introduce RedirectionManager interface and implementation using JITLink.


  Commit: 04af63b267c391a4b0a0fb61060f724f8b5bc2be
      https://github.com/llvm/llvm-project/commit/04af63b267c391a4b0a0fb61060f724f8b5bc2be
  Author: Sunho Kim <ksunhokim123 at gmail.com>
  Date:   2024-10-12 (Sat, 12 Oct 2024)

  Changed paths:
    M llvm/examples/Kaleidoscope/BuildingAJIT/Chapter3/KaleidoscopeJIT.h
    M llvm/examples/SpeculativeJIT/SpeculativeJIT.cpp
    M llvm/include/llvm/ExecutionEngine/Orc/CompileOnDemandLayer.h
    A llvm/include/llvm/ExecutionEngine/Orc/IRPartitionLayer.h
    M llvm/include/llvm/ExecutionEngine/Orc/LLJIT.h
    M llvm/lib/ExecutionEngine/Orc/CMakeLists.txt
    M llvm/lib/ExecutionEngine/Orc/CompileOnDemandLayer.cpp
    A llvm/lib/ExecutionEngine/Orc/IRPartitionLayer.cpp
    M llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
    M llvm/tools/lli/lli.cpp

  Log Message:
  -----------
  [ORC] Introduce IRPartitionLayer for common partition functionality.


  Commit: 188ede28e046c911cb8e604fd1adc2b5cc1f264b
      https://github.com/llvm/llvm-project/commit/188ede28e046c911cb8e604fd1adc2b5cc1f264b
  Author: Sunho Kim <ksunhokim123 at gmail.com>
  Date:   2024-10-12 (Sat, 12 Oct 2024)

  Changed paths:
    M compiler-rt/lib/orc/common.h
    M compiler-rt/lib/orc/elfnix_platform.cpp
    M llvm/include/llvm/ExecutionEngine/Orc/JITLinkRedirectableSymbolManager.h
    A llvm/include/llvm/ExecutionEngine/Orc/ReOptimizeLayer.h
    M llvm/include/llvm/ExecutionEngine/Orc/RedirectionManager.h
    M llvm/lib/ExecutionEngine/Orc/CMakeLists.txt
    M llvm/lib/ExecutionEngine/Orc/JITLinkRedirectableSymbolManager.cpp
    A llvm/lib/ExecutionEngine/Orc/ReOptimizeLayer.cpp
    M llvm/unittests/ExecutionEngine/Orc/CMakeLists.txt
    M llvm/unittests/ExecutionEngine/Orc/JITLinkRedirectionManagerTest.cpp
    A llvm/unittests/ExecutionEngine/Orc/ReOptimizeLayerTest.cpp

  Log Message:
  -----------
  [ORC] Implement basic reoptimization.


  Commit: 03447ab98d33ad946fcffe212eb3235b41d09b59
      https://github.com/llvm/llvm-project/commit/03447ab98d33ad946fcffe212eb3235b41d09b59
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    A llvm/test/CodeGen/X86/vector-shift-lut.ll

  Log Message:
  -----------
  [X86] Add test coverage for #110317

Add tests showing potential to use PSHUFB for shifts of constant uniform values by using a pre-computed LUT of all legal shift amounts


  Commit: 64bcb27d97137a1fd4f2f85025d414201c67b2d2
      https://github.com/llvm/llvm-project/commit/64bcb27d97137a1fd4f2f85025d414201c67b2d2
  Author: Caio Oliveira <caio.oliveira at intel.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M mlir/utils/spirv/gen_spirv_dialect.py

  Log Message:
  -----------
  [mlir][spirv] Make gen_spirv_dialect.py more precise when finding inst_category (#111777)

Use a word boundary, current code was currently failing when parsing the
definition of because it would also match
`CooperativeMatrixOp` from a later mention of
`SPIRV_KHR_CooperativeMatrixOperandsAttr`.


  Commit: 697d65ded678f405b637e769f1b0bcc755c8461a
      https://github.com/llvm/llvm-project/commit/697d65ded678f405b637e769f1b0bcc755c8461a
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M flang/examples/FeatureList/FeatureList.cpp
    M flang/examples/FlangOmpReport/FlangOmpReportVisitor.cpp
    M flang/examples/FlangOmpReport/FlangOmpReportVisitor.h
    M flang/include/flang/Parser/dump-parse-tree.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M flang/lib/Parser/openmp-parsers.cpp
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/check-omp-structure.h
    M flang/lib/Semantics/resolve-directives.cpp
    A flang/test/Lower/OpenMP/Todo/map-modifiers-close.f90
    A flang/test/Lower/OpenMP/Todo/map-modifiers-ompxhold.f90
    A flang/test/Lower/OpenMP/Todo/map-modifiers-present.f90
    A flang/test/Parser/OpenMP/map-modifiers.f90
    A flang/test/Semantics/OpenMP/map-modifiers.f90

  Log Message:
  -----------
  [flang][OpenMP] Parsing support for map type modifiers (#111860)

This commit adds parsing of type modifiers for the MAP clause: CLOSE,
OMPX_HOLD, and PRESENT. The support for ALWAYS has already existed.

The new modifiers are not yet handled in lowering: when present, a TODO
message is emitted and compilation stops.


  Commit: 222d8fadb458d9b27c27e3314337ac3771b1d33b
      https://github.com/llvm/llvm-project/commit/222d8fadb458d9b27c27e3314337ac3771b1d33b
  Author: Sunho Kim <ksunhokim123 at gmail.com>
  Date:   2024-10-12 (Sat, 12 Oct 2024)

  Changed paths:
    M llvm/unittests/ExecutionEngine/Orc/JITLinkRedirectionManagerTest.cpp

  Log Message:
  -----------
  [ORC] Try to skip unsupported targets in reoptimization test.

Many build bots are getting failures because of this:
https://lab.llvm.org/buildbot/#/builders/140/builds/8600
https://lab.llvm.org/buildbot/#/builders/137/builds/6824
https://lab.llvm.org/buildbot/#/builders/140/builds/8600


  Commit: 7fea5c034ca1e08403da39d64f20b08a6e7542bd
      https://github.com/llvm/llvm-project/commit/7fea5c034ca1e08403da39d64f20b08a6e7542bd
  Author: Sunho Kim <ksunhokim123 at gmail.com>
  Date:   2024-10-12 (Sat, 12 Oct 2024)

  Changed paths:
    M llvm/unittests/ExecutionEngine/Orc/ReOptimizeLayerTest.cpp

  Log Message:
  -----------
  [ORC] Try to skip unsupported targets in another reoptimization test.

Skipping another reoptimization test when target is not found.


  Commit: 756ef97eeb7fccd45d1120023f6489961a4f8938
      https://github.com/llvm/llvm-project/commit/756ef97eeb7fccd45d1120023f6489961a4f8938
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

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

  Log Message:
  -----------
  [gn build] Port 04af63b267c3


  Commit: 4ef737a43e1677626ec2c2f1c024472dde3051b9
      https://github.com/llvm/llvm-project/commit/4ef737a43e1677626ec2c2f1c024472dde3051b9
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/utils/gn/secondary/lldb/source/Utility/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 089227feaf0e


  Commit: 91627546cdc22467d65884f67009f559739b16b1
      https://github.com/llvm/llvm-project/commit/91627546cdc22467d65884f67009f559739b16b1
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

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

  Log Message:
  -----------
  [gn build] Port 188ede28e046


  Commit: 7f1b465c6ae476e59dc90652d58fc648932d23b1
      https://github.com/llvm/llvm-project/commit/7f1b465c6ae476e59dc90652d58fc648932d23b1
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

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

  Log Message:
  -----------
  [gn build] Port 2c01b2785802


  Commit: 2aa1dbf9c92e3b27954ba9166c927616625073e8
      https://github.com/llvm/llvm-project/commit/2aa1dbf9c92e3b27954ba9166c927616625073e8
  Author: Jorge Gorbe Moya <jgorbe at google.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/unittests/SandboxIR/RegionTest.cpp

  Log Message:
  -----------
  [SandboxIR] Add a test for creating non-contiguous Regions. (#112027)

It checks that a Region can have non-contiguous instructions, and that
when iterating through it you don't get the instructions in-between that
aren't part of the Region.


  Commit: 48bda00b281a432d6de5e5e5dde6c5d66b992ac8
      https://github.com/llvm/llvm-project/commit/48bda00b281a432d6de5e5e5dde6c5d66b992ac8
  Author: Sirraide <aeternalmail at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/ComputeDependence.h
    M clang/include/clang/AST/Expr.h
    M clang/include/clang/Sema/ScopeInfo.h
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/Template.h
    M clang/lib/AST/ComputeDependence.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaLambda.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateVariadic.cpp
    M clang/test/CXX/expr/expr.prim/expr.prim.lambda/blocks.mm
    A clang/test/SemaCXX/block-packs.cpp

  Log Message:
  -----------
  [Clang] [Sema] Don't crash on unexpanded pack in invalid block literal (#110762)

Consider #109148:
```c++
template <typename ...Ts>
void f() {
    [] {
        (^Ts);
    };
}
```

When we encounter `^Ts`, we try to parse a block and subsequently call
`DiagnoseUnexpandedParameterPack()` (in `ActOnBlockArguments()`), which
sees `Ts` and sets `ContainsUnexpandedParameterPack` to `true` in the
`LambdaScopeInfo` of the enclosing lambda. However, the entire block is
subsequently discarded entirely because it isn’t even syntactically
well-formed. As a result, `ContainsUnexpandedParameterPack` is `true`
despite the lambda’s body no longer containing any unexpanded packs,
which causes an assertion the next time
`DiagnoseUnexpandedParameterPack()` is called.

This pr moves handling of unexpanded parameter packs into
`CapturingScopeInfo` instead so that the same logic is used for both
blocks and lambdas. This fixes this issue since the
`ContainsUnexpandedParameterPack` flag is now part of the block (and
before that, its `CapturingScopeInfo`) and no longer affects the
surrounding lambda directly when the block is parsed. Moreover, this
change makes blocks actually usable with pack expansion.

This fixes #109148.


  Commit: 2bb3d3a3f32ffaef3d9b6a27db7f1941f0cb1136
      https://github.com/llvm/llvm-project/commit/2bb3d3a3f32ffaef3d9b6a27db7f1941f0cb1136
  Author: Krystian Stasiowski <sdkrystian at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/DeclTemplate.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/AST/DeclTemplate.cpp
    M clang/lib/Sema/SemaConcept.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaInit.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    A clang/test/CXX/temp/temp.constr/temp.constr.decl/p4.cpp
    A clang/test/CXX/temp/temp.spec/temp.expl.spec/p7.cpp
    M clang/test/Modules/cxx-templates.cpp

  Log Message:
  -----------
  Reapply "[Clang][Sema] Refactor collection of multi-level template argument lists (#106585, #111173)" (#111852)

This patch reapplies #111173, fixing a bug when instantiating dependent
expressions that name a member template that is later explicitly
specialized for a class specialization that is implicitly instantiated.

The bug is addressed by adding the `hasMemberSpecialization` function,
which return `true` if _any_ redeclaration is a member specialization.
This is then used when determining the instantiation pattern for a
specialization of a template, and when collecting template arguments for
a specialization of a template.


  Commit: f0909e3a991c7b6515cafe2ce0a069a856fe675f
      https://github.com/llvm/llvm-project/commit/f0909e3a991c7b6515cafe2ce0a069a856fe675f
  Author: Sterling-Augustine <56981066+Sterling-Augustine at users.noreply.github.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/Context.h
    M llvm/include/llvm/SandboxIR/Utils.h
    M llvm/unittests/SandboxIR/UtilsTest.cpp

  Log Message:
  -----------
  [SandboxIR] Add utility function to find the base Value for Mem instructions (#112030)


  Commit: bc53359b92e0fa3e1cf70505e1f2399f07c850d5
      https://github.com/llvm/llvm-project/commit/bc53359b92e0fa3e1cf70505e1f2399f07c850d5
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang/www/c_status.html

  Log Message:
  -----------
  Update the C status page with papers adopted in Minneapolis


  Commit: 31b85c6ead3e0e2979272046548f3ae8a51db289
      https://github.com/llvm/llvm-project/commit/31b85c6ead3e0e2979272046548f3ae8a51db289
  Author: vporpo <vporpodas at google.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Interval.h
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
    M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/IntervalTest.cpp

  Log Message:
  -----------
  [SandboxVec][Interval] Implement Interval::comesBefore() (#112026)

This patch implements `Interval::comesBefore(const Interval &Other)`
which returns true if this interval is strictly before Other in program
order. The function asserts that the intervals are disjoint.


  Commit: adaa603224fee842b4f71824617adb3b0c7d9cf1
      https://github.com/llvm/llvm-project/commit/adaa603224fee842b4f71824617adb3b0c7d9cf1
  Author: Ellis Hoag <ellis.sparky.hoag at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/lib/CodeGen/MachineVerifier.cpp
    A llvm/test/MachineVerifier/test_multiple_errors.mir

  Log Message:
  -----------
  [MachineVerifier] Report errors from one thread at a time (#111605)

Create the `ReportedErrors` class to track the number of reported errors
during verification. The class will block reporting errors if some other
thread is currently reporting an error.

I've encountered a case where there were many different verifications
reporting errors at the same time on different threads. This ensures
that we don't start printing the error from one case until we are
completely done printing errors from other cases. Most of the time
`AbortOnError = true` so we usually abort after reporting the first
error.

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


  Commit: 58d97034c9c149d175c66440d31f46e9dfd4b760
      https://github.com/llvm/llvm-project/commit/58d97034c9c149d175c66440d31f46e9dfd4b760
  Author: Fabian Mora <fmora.dev at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Conversion/OpenMPToLLVM/ConvertOpenMPToLLVM.h
    M mlir/include/mlir/InitAllExtensions.h
    M mlir/lib/Conversion/OpenMPToLLVM/OpenMPToLLVM.cpp
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/test/Conversion/OpenMPToLLVM/convert-to-llvmir.mlir

  Log Message:
  -----------
  [mlir][OpenMP] Implement the ConvertToLLVMPatternInterface (#101997)

This patch implements the `ConvertToLLVMPatternInterface` for the OpenMP
dialect, allowing `convert-to-llvm` to act on the OpenMP dialect.


  Commit: cc8edbca7de9204915c84477b8c03a33abeb7775
      https://github.com/llvm/llvm-project/commit/cc8edbca7de9204915c84477b8c03a33abeb7775
  Author: vporpo <vporpodas at google.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Interval.h

  Log Message:
  -----------
  [SandboxVec][Interval][NFC] Rename From/To to Top/Bottom (#112034)

The API was already using top()/bottom() but internally we were still
using From/To. This patch fixes this.

Top/Bottom seems a better choice because implies program order, whereas
From/To does not.


  Commit: 2967e5f8007d873a3e9d97870d2461d0827a3976
      https://github.com/llvm/llvm-project/commit/2967e5f8007d873a3e9d97870d2461d0827a3976
  Author: Alex Bradbury <asb at igalia.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
    M llvm/test/CodeGen/RISCV/GlobalISel/vararg.ll
    M llvm/test/CodeGen/RISCV/abds-neg.ll
    M llvm/test/CodeGen/RISCV/abds.ll
    M llvm/test/CodeGen/RISCV/abdu-neg.ll
    M llvm/test/CodeGen/RISCV/add-before-shl.ll
    M llvm/test/CodeGen/RISCV/alloca.ll
    M llvm/test/CodeGen/RISCV/atomic-cmpxchg.ll
    M llvm/test/CodeGen/RISCV/callee-saved-gprs.ll
    M llvm/test/CodeGen/RISCV/calling-conv-ilp32-ilp32f-common.ll
    M llvm/test/CodeGen/RISCV/calling-conv-ilp32-ilp32f-ilp32d-common.ll
    M llvm/test/CodeGen/RISCV/calling-conv-ilp32d.ll
    M llvm/test/CodeGen/RISCV/calling-conv-ilp32e.ll
    M llvm/test/CodeGen/RISCV/calling-conv-lp64-lp64f-lp64d-common.ll
    M llvm/test/CodeGen/RISCV/calling-conv-lp64e.ll
    M llvm/test/CodeGen/RISCV/calling-conv-rv32f-ilp32.ll
    M llvm/test/CodeGen/RISCV/calling-conv-rv32f-ilp32e.ll
    M llvm/test/CodeGen/RISCV/calling-conv-vector-float.ll
    M llvm/test/CodeGen/RISCV/calls.ll
    M llvm/test/CodeGen/RISCV/double-calling-conv.ll
    M llvm/test/CodeGen/RISCV/double-convert-strict.ll
    M llvm/test/CodeGen/RISCV/double-convert.ll
    M llvm/test/CodeGen/RISCV/fastcc-bf16.ll
    M llvm/test/CodeGen/RISCV/fastcc-float.ll
    M llvm/test/CodeGen/RISCV/fastcc-half.ll
    M llvm/test/CodeGen/RISCV/fastcc-int.ll
    M llvm/test/CodeGen/RISCV/fastcc-without-f-reg.ll
    M llvm/test/CodeGen/RISCV/fold-addi-loadstore.ll
    M llvm/test/CodeGen/RISCV/forced-atomics.ll
    M llvm/test/CodeGen/RISCV/fp128.ll
    M llvm/test/CodeGen/RISCV/frame.ll
    M llvm/test/CodeGen/RISCV/get-setcc-result-type.ll
    M llvm/test/CodeGen/RISCV/hoist-global-addr-base.ll
    M llvm/test/CodeGen/RISCV/intrinsic-cttz-elts-vscale.ll
    M llvm/test/CodeGen/RISCV/legalize-fneg.ll
    M llvm/test/CodeGen/RISCV/llvm.exp10.ll
    M llvm/test/CodeGen/RISCV/llvm.frexp.ll
    M llvm/test/CodeGen/RISCV/memcpy.ll
    M llvm/test/CodeGen/RISCV/memset-inline.ll
    M llvm/test/CodeGen/RISCV/misched-load-clustering.ll
    M llvm/test/CodeGen/RISCV/neg-abs.ll
    M llvm/test/CodeGen/RISCV/nontemporal.ll
    M llvm/test/CodeGen/RISCV/overflow-intrinsics.ll
    M llvm/test/CodeGen/RISCV/pr63816.ll
    M llvm/test/CodeGen/RISCV/push-pop-popret.ll
    M llvm/test/CodeGen/RISCV/riscv-codegenprepare-asm.ll
    M llvm/test/CodeGen/RISCV/riscv-shifted-extend.ll
    M llvm/test/CodeGen/RISCV/rv32zbb.ll
    M llvm/test/CodeGen/RISCV/rvv/binop-splats.ll
    M llvm/test/CodeGen/RISCV/rvv/bitreverse-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/bitreverse-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/bswap-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/bswap-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/combine-store.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-binop-splats.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitreverse-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitreverse.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bswap-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bswap.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-calling-conv-fastcc.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctlz-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctpop-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-cttz-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-elen.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-expandload-int.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-buildvec.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp2i.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-insert.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-buildvec.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-splat.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-llrint.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-lrint.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-gather.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-scatter.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-int-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-setcc-int-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-vslide1down.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-vslide1up.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shufflevector-vnsrl.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-load-store-asm.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-unaligned.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vaaddu.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vadd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vand-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vdiv-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vdivu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmacc-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmax-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmaxu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmin-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vminu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmul-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vnmsac-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vor-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vp-splat.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vpmerge.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vrem-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vremu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vrsub-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsadd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsadd.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsaddu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsaddu.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssub-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssub.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssubu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssubu.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsub-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwadd.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwaddu.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwmul.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwmulsu.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwsub.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwsubu.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vxor-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fpclamptosat_vec.ll
    M llvm/test/CodeGen/RISCV/rvv/masked-tama.ll
    M llvm/test/CodeGen/RISCV/rvv/memset-inline.ll
    M llvm/test/CodeGen/RISCV/rvv/no-reserved-frame.ll
    M llvm/test/CodeGen/RISCV/rvv/pr104480.ll
    M llvm/test/CodeGen/RISCV/rvv/rvv-args-by-mem.ll
    M llvm/test/CodeGen/RISCV/rvv/setcc-int-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/setcc-integer.ll
    M llvm/test/CodeGen/RISCV/rvv/splat-vector-split-i64-vl-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/stepvector.ll
    M llvm/test/CodeGen/RISCV/rvv/unmasked-ta.ll
    M llvm/test/CodeGen/RISCV/rvv/unmasked-tu.ll
    M llvm/test/CodeGen/RISCV/rvv/vaadd.ll
    M llvm/test/CodeGen/RISCV/rvv/vaaddu-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vaaddu.ll
    M llvm/test/CodeGen/RISCV/rvv/vadc.ll
    M llvm/test/CodeGen/RISCV/rvv/vadd-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vadd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vadd.ll
    M llvm/test/CodeGen/RISCV/rvv/vand-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vand-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vand.ll
    M llvm/test/CodeGen/RISCV/rvv/vandn-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vandn-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vandn.ll
    M llvm/test/CodeGen/RISCV/rvv/vasub.ll
    M llvm/test/CodeGen/RISCV/rvv/vasubu.ll
    M llvm/test/CodeGen/RISCV/rvv/vclmul.ll
    M llvm/test/CodeGen/RISCV/rvv/vclmulh.ll
    M llvm/test/CodeGen/RISCV/rvv/vdiv-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vdiv-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vdiv.ll
    M llvm/test/CodeGen/RISCV/rvv/vdivu-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vdivu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vdivu.ll
    M llvm/test/CodeGen/RISCV/rvv/vec3-setcc-crash.ll
    M llvm/test/CodeGen/RISCV/rvv/vmacc-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vmacc.ll
    M llvm/test/CodeGen/RISCV/rvv/vmadc.carry.in.ll
    M llvm/test/CodeGen/RISCV/rvv/vmadc.ll
    M llvm/test/CodeGen/RISCV/rvv/vmadd-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vmadd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vmadd.ll
    M llvm/test/CodeGen/RISCV/rvv/vmax-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vmax-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vmax.ll
    M llvm/test/CodeGen/RISCV/rvv/vmaxu-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vmaxu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vmaxu.ll
    M llvm/test/CodeGen/RISCV/rvv/vmin-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vmin-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vmin.ll
    M llvm/test/CodeGen/RISCV/rvv/vminu-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vminu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vminu.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsbc.borrow.in.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsbc.ll
    M llvm/test/CodeGen/RISCV/rvv/vmseq.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsge.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsgeu.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsgt.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsgtu.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsle.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsleu.ll
    M llvm/test/CodeGen/RISCV/rvv/vmslt.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsltu.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsne.ll
    M llvm/test/CodeGen/RISCV/rvv/vmul-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vmul-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vmul.ll
    M llvm/test/CodeGen/RISCV/rvv/vmulh.ll
    M llvm/test/CodeGen/RISCV/rvv/vmulhsu.ll
    M llvm/test/CodeGen/RISCV/rvv/vmulhu.ll
    M llvm/test/CodeGen/RISCV/rvv/vmv.s.x.ll
    M llvm/test/CodeGen/RISCV/rvv/vmv.v.x.ll
    M llvm/test/CodeGen/RISCV/rvv/vnmsac-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vnmsac.ll
    M llvm/test/CodeGen/RISCV/rvv/vnmsub-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vnmsub.ll
    M llvm/test/CodeGen/RISCV/rvv/vor-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vor-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vor.ll
    M llvm/test/CodeGen/RISCV/rvv/vp-splat.ll
    M llvm/test/CodeGen/RISCV/rvv/vpmerge-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vreductions-int-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vrem-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vrem-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vrem.ll
    M llvm/test/CodeGen/RISCV/rvv/vremu-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vremu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vremu.ll
    M llvm/test/CodeGen/RISCV/rvv/vrsub-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vrsub-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vrsub.ll
    M llvm/test/CodeGen/RISCV/rvv/vsadd-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vsadd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vsadd.ll
    M llvm/test/CodeGen/RISCV/rvv/vsaddu-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vsaddu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vsaddu.ll
    M llvm/test/CodeGen/RISCV/rvv/vsbc.ll
    M llvm/test/CodeGen/RISCV/rvv/vselect-int.ll
    M llvm/test/CodeGen/RISCV/rvv/vsmul.ll
    M llvm/test/CodeGen/RISCV/rvv/vsplats-i64.ll
    M llvm/test/CodeGen/RISCV/rvv/vssub-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vssub-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vssub.ll
    M llvm/test/CodeGen/RISCV/rvv/vssubu-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vssubu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vssubu.ll
    M llvm/test/CodeGen/RISCV/rvv/vsub-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vsub-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vsub.ll
    M llvm/test/CodeGen/RISCV/rvv/vwadd-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vxor-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vxor-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vxor.ll
    M llvm/test/CodeGen/RISCV/select-optimize-multiple.ll
    M llvm/test/CodeGen/RISCV/shifts.ll
    M llvm/test/CodeGen/RISCV/split-offsets.ll
    M llvm/test/CodeGen/RISCV/split-store.ll
    M llvm/test/CodeGen/RISCV/srem-seteq-illegal-types.ll
    M llvm/test/CodeGen/RISCV/srem-vector-lkk.ll
    M llvm/test/CodeGen/RISCV/stack-slot-size.ll
    M llvm/test/CodeGen/RISCV/stack-store-check.ll
    M llvm/test/CodeGen/RISCV/tail-calls.ll
    M llvm/test/CodeGen/RISCV/unaligned-load-store.ll
    M llvm/test/CodeGen/RISCV/urem-seteq-illegal-types.ll
    M llvm/test/CodeGen/RISCV/urem-vector-lkk.ll
    M llvm/test/CodeGen/RISCV/vararg-ilp32e.ll
    M llvm/test/CodeGen/RISCV/vararg.ll
    M llvm/test/CodeGen/RISCV/wide-scalar-shift-by-byte-multiple-legalization.ll
    M llvm/test/CodeGen/RISCV/wide-scalar-shift-legalization.ll
    M llvm/test/CodeGen/RISCV/xtheadmempair.ll

  Log Message:
  -----------
  [RISCV] Enable store clustering by default (#73796)

Builds on #73789, enabling store clustering by default using the same
heuristic.


  Commit: 77aa8257acbd773c0c430cd962da1bcfbd5ee94b
      https://github.com/llvm/llvm-project/commit/77aa8257acbd773c0c430cd962da1bcfbd5ee94b
  Author: Brian Cain <bcain at quicinc.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M lld/ELF/Arch/Hexagon.cpp
    M lld/test/ELF/hexagon-shared.s

  Log Message:
  -----------
  [lld][Hexagon] Support predicated-add GOT_16_X mask lookup (#111896)

When encountering an instruction like `if (p0) r0 = add(r0,##bar at GOT)`,
lld would fail with:
```
ld.lld: error: unrecognized instruction for 16_X type: 0x7400C000
```

This issue was encountered while building libreadline with clang 19.1.0.

Fixes: #111876


  Commit: 16c8056ca9d3c28ca5e409162a0c82d5726ea655
      https://github.com/llvm/llvm-project/commit/16c8056ca9d3c28ca5e409162a0c82d5726ea655
  Author: Brox Chen <guochen2 at amd.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_t16_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_promote.s

  Log Message:
  -----------
  [AMDGPU][test] update test with update_mc_test_check (#111913)

a non-functional change

Update test script with update_mc_test_check script and sort the
testline to be alphabetic order. This helps to maintain the test file in
a clean state


  Commit: 3ed8acf2f077fe250773f2ada986c7114adcbb85
      https://github.com/llvm/llvm-project/commit/3ed8acf2f077fe250773f2ada986c7114adcbb85
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

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

  Log Message:
  -----------
  [SLP][NFC]Simplify check for external user parent basic block, NFC.


  Commit: 111b062f63ba52552f41e425449ba1db048dc51a
      https://github.com/llvm/llvm-project/commit/111b062f63ba52552f41e425449ba1db048dc51a
  Author: Shourya Goel <shouryagoel10000 at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M libc/src/__support/CPP/string_view.h
    M libc/src/__support/CPP/utility/in_place.h
    M libc/src/__support/FPUtil/NearestIntegerOperations.h
    M libc/test/src/math/RoundToIntegerTest.h

  Log Message:
  -----------
  [libc] Fix for adding macro I (#111872)

We have two (EDIT: 4) files in which we are using `I`. This PR replaces
them with alternatives like `i` and `IDX` etc.


  Commit: 1de71652fd232163dadfee68e2f2b3f0d6dfb1e1
      https://github.com/llvm/llvm-project/commit/1de71652fd232163dadfee68e2f2b3f0d6dfb1e1
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/include/llvm/IR/ModuleSummaryIndex.h
    M llvm/include/llvm/Transforms/IPO/MemProfContextDisambiguation.h
    M llvm/lib/Analysis/ModuleSummaryAnalysis.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
    A llvm/test/ThinLTO/X86/memprof-icp.ll

  Log Message:
  -----------
  [MemProf] Support cloning for indirect calls with ThinLTO (#110625)

This patch enables support for cloning in indirect callsites.

This is done by synthesizing callsite records for each virtual call
target from the profile metadata. In the thin link all the synthesized
records for a particular indirect callsite initially share the same
context node, but support is added to partition the callsites and
outgoing edges based on the callee function, creating a separate node
for each target.

In the LTO backend, when cloning is needed we first perform indirect
call promotion, then change the target of the new direct call to the
desired clone.

Note this is ThinLTO-specific, since for regular LTO indirect call
promotion should have already occurred.


  Commit: 38b010258baa8f543210f06b2e448ce9cbb3915a
      https://github.com/llvm/llvm-project/commit/38b010258baa8f543210f06b2e448ce9cbb3915a
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/test/MC/AArch64/global-tagging.ll

  Log Message:
  -----------
  [MTE] Also test alignment and size of MTE globals (#112039)


  Commit: 9a97a57d9ee9dbaa4f7ecfdaba565171ea49b7ac
      https://github.com/llvm/llvm-project/commit/9a97a57d9ee9dbaa4f7ecfdaba565171ea49b7ac
  Author: Eric Astor <epastor at google.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang/docs/ClangPlugins.rst
    M clang/docs/ReleaseNotes.rst
    M clang/examples/Attribute/Attribute.cpp
    M clang/include/clang/Basic/ParsedAttrInfo.h
    M clang/lib/Sema/SemaStmtAttr.cpp
    M clang/test/Frontend/plugin-attribute.cpp

  Log Message:
  -----------
  [clang][frontend] Add support for attribute plugins for statement attributes (#110334)

We already have support for declaration attributes; this is just a matter of extending the plugin infrastructure to cover one more case.


  Commit: 8b46d40221f3c302e9c28e3ad7c79767f905a862
      https://github.com/llvm/llvm-project/commit/8b46d40221f3c302e9c28e3ad7c79767f905a862
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/orc-b-patterns.ll

  Log Message:
  -----------
  [RISCV] Re-generate orc-b-patterns.ll for store clustering. NFC

The patch added orc-b-patterns.ll landed while store clustering was
still in review.


  Commit: 82b40fd4fd2f3f723d30b666f8766973da4166db
      https://github.com/llvm/llvm-project/commit/82b40fd4fd2f3f723d30b666f8766973da4166db
  Author: Tex Riddell <texr at microsoft.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/lib/CodeGen/ReplaceWithVeclib.cpp
    M llvm/test/CodeGen/AArch64/replace-with-veclib-armpl.ll
    M llvm/test/CodeGen/AArch64/replace-with-veclib-sleef-scalable.ll
    M llvm/test/CodeGen/AArch64/replace-with-veclib-sleef.ll

  Log Message:
  -----------
  Fix scalar overload name constructed by ReplaceWithVeclib.cpp (#111095)

ReplaceWithVeclib.cpp would construct overload name using all the
arguments in the intrinsic, but overloads should only be constructed
from arguments for which isVectorIntrinsicWithOverloadTypeAtArg returns
true, including the return type first (index -1).

Additionally,
- skip when `Intrinsic::not_intrinsic`, otherwise
`isVectorIntrinsicWithOverloadTypeAtArg` asserts for some
IntrinsicCalls.

Unblocks translation for pow and atan2 intrinsics.

Fixes #111093


  Commit: abe148a09f61fa341f80376c763ea4706cfca30e
      https://github.com/llvm/llvm-project/commit/abe148a09f61fa341f80376c763ea4706cfca30e
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M compiler-rt/lib/asan/asan_fuchsia.cpp
    M compiler-rt/lib/asan/asan_thread.cpp
    M compiler-rt/lib/asan/asan_thread.h
    M compiler-rt/lib/memprof/memprof_thread.cpp
    M compiler-rt/lib/memprof/memprof_thread.h
    M compiler-rt/lib/sanitizer_common/sanitizer_thread_registry.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_thread_registry.h
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_thread_registry_test.cpp

  Log Message:
  -----------
  [NFC][sanitizer][asan] Promote stack_id into ThreadContextBase (#111917)

`parent_id` and `stack_id` represent location
where the thread was created, so it's reasonable
to keep them togeter.

For now, only Asan and MemProf use `stack_id`,
but it will be halpfull to print thread origin from
other sanitizers as well.

For #111948


  Commit: f4cf6242fb7179c672568969c3eccdf4cd4b9420
      https://github.com/llvm/llvm-project/commit/f4cf6242fb7179c672568969c3eccdf4cd4b9420
  Author: Thomas Symalla <5754458+tsymalla at users.noreply.github.com>
  Date:   2024-10-12 (Sat, 12 Oct 2024)

  Changed paths:
    M llvm/docs/Coroutines.rst

  Log Message:
  -----------
  [Docs] Fix typo in recent coro docs (#112005)


  Commit: 637054640ec2e40209791d5e4fc5a332ac80fc52
      https://github.com/llvm/llvm-project/commit/637054640ec2e40209791d5e4fc5a332ac80fc52
  Author: Michael Jones <michaelrj at google.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M libc/src/__support/str_to_integer.h

  Log Message:
  -----------
  [libc] Make strtointeger handle all bigint types (#111926)

Needed for #110894

The strtointeger code was updated to support some bigint types in #85201
but not all. This patch finishes the cleanup so that it can work for a
wider range of types.


  Commit: 902520256b397108c3917540af8680ed0de96292
      https://github.com/llvm/llvm-project/commit/902520256b397108c3917540af8680ed0de96292
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rv32xtheadbb.ll
    M llvm/test/CodeGen/RISCV/rv64xtheadbb.ll

  Log Message:
  -----------
  [RISCV] Make (sext_inreg X, i1) legal for XTHeadBb to cover the existing isel pattern.

I just happened to notice the untested isel pattern.


  Commit: e1cff8bf816b41b4fb1333533ee1225ae2148a0d
      https://github.com/llvm/llvm-project/commit/e1cff8bf816b41b4fb1333533ee1225ae2148a0d
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M compiler-rt/lib/lsan/lsan_common.cpp
    M compiler-rt/lib/lsan/lsan_flags.inc
    A compiler-rt/test/lsan/TestCases/flag_tries.c

  Log Message:
  -----------
  [lsan] Add debug option to "deflake" leaks (#112037)

There are hard to debug leaks which look like
false.

In general, repeating leak checking should not
affect set of leaks significantly, especial
`at_exit` leak checking.

But if we see significant discrepancy, it may give
us a clue for investigation.


  Commit: aa44f59abf399f81585898fb95e66518ef3591af
      https://github.com/llvm/llvm-project/commit/aa44f59abf399f81585898fb95e66518ef3591af
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/CMakeLists.txt
    A compiler-rt/lib/sanitizer_common/sanitizer_thread_history.cpp
    A compiler-rt/lib/sanitizer_common/sanitizer_thread_history.h
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_thread_registry_test.cpp

  Log Message:
  -----------
  [NFC][sanitizer] Add Debug utility to print thread history (#111948)

For #111949


  Commit: 6d4edf2f75f7ec09420f18f7806f480f5b090b40
      https://github.com/llvm/llvm-project/commit/6d4edf2f75f7ec09420f18f7806f480f5b090b40
  Author: Youngsuk Kim <youngsuk.kim at hpe.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp

  Log Message:
  -----------
  [clang][CGOpenMPRuntime] Avoid Type::getPointerTo() (NFC) (#112017)

`llvm::Type::getPointerTo()` is to be deprecated & removed soon.


  Commit: f1367a473d9682a058c7f8c397ed2a787d071826
      https://github.com/llvm/llvm-project/commit/f1367a473d9682a058c7f8c397ed2a787d071826
  Author: Nicolas van Kempen <nvankemp at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/modernize/UseStartsEndsWithCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseStartsEndsWithCheck.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-starts-ends-with.rst
    M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/string
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-starts-ends-with.cpp

  Log Message:
  -----------
  [clang-tidy][modernize-use-starts-ends-with] Add support for two ends_with patterns (#110448)

Add support for the following two patterns:
```
haystack.compare(haystack.length() - needle.length(), needle.length(), needle) == 0;
haystack.rfind(needle) == (haystack.size() - needle.size());
```


  Commit: fa81868fe6fb030675014da051e437913df0292c
      https://github.com/llvm/llvm-project/commit/fa81868fe6fb030675014da051e437913df0292c
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M compiler-rt/lib/asan/asan_thread.cpp
    M compiler-rt/lib/hwasan/hwasan_thread.cpp
    M compiler-rt/lib/lsan/lsan_common.cpp
    M compiler-rt/lib/lsan/lsan_common.h
    M compiler-rt/lib/lsan/lsan_thread.cpp
    A compiler-rt/test/lsan/TestCases/print_threads.c

  Log Message:
  -----------
  [lsan] Log thread history (#111949)

Only with high verbosity and leak reports, or thread logging requested.


  Commit: 24ac6cf4f7fe0dd4358614066e6159130f7f11e7
      https://github.com/llvm/llvm-project/commit/24ac6cf4f7fe0dd4358614066e6159130f7f11e7
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

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

  Log Message:
  -----------
  [bazel] Port 58d97034c9c149d175c66440d31f46e9dfd4b760 (#112064)


  Commit: 1c28f3113377da218d67dc76aa0876b6250ceb6a
      https://github.com/llvm/llvm-project/commit/1c28f3113377da218d67dc76aa0876b6250ceb6a
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M lld/ELF/Arch/AArch64.cpp
    M lld/ELF/CallGraphSort.cpp
    M lld/ELF/CallGraphSort.h
    M lld/ELF/Driver.cpp
    M lld/ELF/InputFiles.cpp
    M lld/ELF/InputSection.cpp
    M lld/ELF/MapFile.cpp
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h
    M lld/ELF/Writer.cpp

  Log Message:
  -----------
  [ELF] Pass Ctx &


  Commit: 0fba8381d2a71ff440fdf0ae30d59a0bf07fea75
      https://github.com/llvm/llvm-project/commit/0fba8381d2a71ff440fdf0ae30d59a0bf07fea75
  Author: Iuri Chaer <ichaer at splunk.com>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M clang/docs/ClangFormatStyleOptions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Format/Format.h
    M clang/lib/Format/BreakableToken.cpp
    M clang/lib/Format/BreakableToken.h
    M clang/lib/Format/ContinuationIndenter.cpp
    M clang/lib/Format/Format.cpp
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/unittests/Format/ConfigParseTest.cpp
    M clang/unittests/Format/FormatTest.cpp
    M clang/unittests/Format/FormatTestComments.cpp

  Log Message:
  -----------
  [clang-format] Introduce "ReflowComments: IndentOnly" to re-indent comments without breaking internal structure (think Doxygen). (#96804)

* Convert `ReflowComments` from boolean into a new `enum` which can take
on the value `RCS_Never`, `RCS_IndentOnly`, or `RCS_Always`. The first
one is equivalent to the old `false`, the third one is `true`, and the
middle one means that multiline comments should only have their
indentation corrected, which is what Doxygen users will want.
* Preserve backward compatibility while parsing `ReflowComments`.


  Commit: 1ac6ef5af28b72e534496a9833a2b75a2aba66cc
      https://github.com/llvm/llvm-project/commit/1ac6ef5af28b72e534496a9833a2b75a2aba66cc
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-12 (Sat, 12 Oct 2024)

  Changed paths:
    M clang/test/CMakeLists.txt

  Log Message:
  -----------
  clang: Add llvm-mc to CLANG_TEST_DEPS (#112032)

Attempt to fit sporadic precommit test failures in
hip-partial-link.hip

The driver really shouldn't be using llvm-mc in the first place
though, filed #112031 to fix this.


  Commit: 966bee739c270c5b5a9ee7e0902cf1fd36ffab0d
      https://github.com/llvm/llvm-project/commit/966bee739c270c5b5a9ee7e0902cf1fd36ffab0d
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-10-12 (Sat, 12 Oct 2024)

  Changed paths:
    M llvm/test/Transforms/InstCombine/is_fpclass.ll

  Log Message:
  -----------
  [InstCombine][NFC] Fix typo in is_fpclass.ll (#112067)

This typo causes alive2 to crash.


  Commit: 6dd773b6505fdc712885a353a1439d8ea328021d
      https://github.com/llvm/llvm-project/commit/6dd773b6505fdc712885a353a1439d8ea328021d
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M lld/ELF/AArch64ErrataFix.cpp
    M lld/ELF/ARMErrataFix.cpp
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/Arch/X86_64.cpp
    M lld/ELF/InputFiles.cpp
    M lld/ELF/InputSection.cpp
    M lld/ELF/LinkerScript.cpp
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h
    M lld/ELF/Thunks.cpp

  Log Message:
  -----------
  [ELF] Pass Ctx &


  Commit: 9bf2e20b17e4199d871d4622fbe43b5a2a52b513
      https://github.com/llvm/llvm-project/commit/9bf2e20b17e4199d871d4622fbe43b5a2a52b513
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/Driver.cpp
    M lld/ELF/InputSection.cpp
    M lld/ELF/LinkerScript.cpp
    M lld/ELF/OutputSections.cpp
    M lld/ELF/OutputSections.h
    M lld/ELF/Relocations.cpp
    M lld/ELF/SyntheticSections.cpp

  Log Message:
  -----------
  [ELF] Pass Ctx & to OutputSection


  Commit: 23c64beeccc03c6a8329314ecd75864e09bb6d97
      https://github.com/llvm/llvm-project/commit/23c64beeccc03c6a8329314ecd75864e09bb6d97
  Author: Pavel Samolysov <samolisov at gmail.com>
  Date:   2024-10-12 (Sat, 12 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
    M llvm/unittests/Transforms/Instrumentation/PGOInstrumentationTest.cpp

  Log Message:
  -----------
  [PGO] Preserve analysis results when nothing was instrumented (#93421)

The `PGOInstrumentationGen` pass should preserve all analysis results
when nothing was actually instrumented. Currently, only modules that
contain at least a single function definition are instrumented. When a
module contains only function declarations and, optionally, global
variable definitions (a module for the regular-LTO phase for thin-LTO
when LTOUnit splitting is enabled, for example), such module is not
instrumented (yet?) and there is no reason to invalidate any analysis
results.

NFC.


  Commit: c33133279bc25ec6e25ddd5fd13ca173bf716f3e
      https://github.com/llvm/llvm-project/commit/c33133279bc25ec6e25ddd5fd13ca173bf716f3e
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M lld/ELF/InputSection.cpp
    M lld/ELF/InputSection.h
    M lld/ELF/OutputSections.cpp

  Log Message:
  -----------
  [ELF] Pass Ctx & to InputSection


  Commit: d0606c265e8eb800cc59f182b38b3e0427ba0200
      https://github.com/llvm/llvm-project/commit/d0606c265e8eb800cc59f182b38b3e0427ba0200
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M lld/ELF/Driver.cpp
    M lld/ELF/InputSection.cpp
    M lld/ELF/InputSection.h
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h

  Log Message:
  -----------
  [ELF] Make .comment have a non-full file

This ensures that SectionBase::file is non-null except
InputSection::discarded.


  Commit: dd326b122506421aba2368053103767f4c56e2ba
      https://github.com/llvm/llvm-project/commit/dd326b122506421aba2368053103767f4c56e2ba
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M lld/ELF/Driver.cpp
    M lld/ELF/DriverUtils.cpp
    M lld/ELF/InputFiles.cpp
    M lld/ELF/Symbols.cpp
    M lld/ELF/Symbols.h
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h
    M lld/ELF/Writer.cpp

  Log Message:
  -----------
  [ELF] Pass Ctx &


  Commit: 436701d88c1384d3f72c44dd152cd55e47ef2de3
      https://github.com/llvm/llvm-project/commit/436701d88c1384d3f72c44dd152cd55e47ef2de3
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-10-11 (Fri, 11 Oct 2024)

  Changed paths:
    M .ci/generate-buildkite-pipeline-premerge
    M .github/new-prs-labeler.yml
    M .github/workflows/release-binaries.yml
    M bolt/include/bolt/Core/BinaryBasicBlock.h
    M bolt/include/bolt/Core/BinaryContext.h
    M bolt/include/bolt/Core/BinaryFunction.h
    M bolt/include/bolt/Core/FunctionLayout.h
    A bolt/include/bolt/Passes/ContinuityStats.h
    M bolt/include/bolt/Passes/IdenticalCodeFolding.h
    M bolt/include/bolt/Passes/LongJmp.h
    M bolt/include/bolt/Profile/BoltAddressTranslation.h
    M bolt/lib/Core/BinaryContext.cpp
    M bolt/lib/Core/BinaryEmitter.cpp
    M bolt/lib/Core/BinaryFunction.cpp
    M bolt/lib/Core/DIEBuilder.cpp
    M bolt/lib/Core/DebugNames.cpp
    M bolt/lib/Core/FunctionLayout.cpp
    M bolt/lib/Core/GDBIndex.cpp
    M bolt/lib/Passes/ADRRelaxationPass.cpp
    M bolt/lib/Passes/BinaryPasses.cpp
    M bolt/lib/Passes/CMakeLists.txt
    A bolt/lib/Passes/ContinuityStats.cpp
    M bolt/lib/Passes/IdenticalCodeFolding.cpp
    M bolt/lib/Passes/LongJmp.cpp
    M bolt/lib/Passes/PatchEntries.cpp
    M bolt/lib/Passes/VeneerElimination.cpp
    M bolt/lib/Profile/BoltAddressTranslation.cpp
    M bolt/lib/Profile/YAMLProfileReader.cpp
    M bolt/lib/Rewrite/BinaryPassManager.cpp
    M bolt/lib/Rewrite/DWARFRewriter.cpp
    M bolt/lib/Rewrite/PseudoProbeRewriter.cpp
    M bolt/lib/Rewrite/RewriteInstance.cpp
    A bolt/test/AArch64/adr-relaxation.s
    A bolt/test/X86/cfg-discontinuity-reporting.test
    M clang-tools-extra/clang-apply-replacements/CMakeLists.txt
    M clang-tools-extra/clang-apply-replacements/lib/Tooling/ApplyReplacements.cpp
    M clang-tools-extra/clang-change-namespace/CMakeLists.txt
    M clang-tools-extra/clang-change-namespace/ChangeNamespace.cpp
    M clang-tools-extra/clang-doc/CMakeLists.txt
    M clang-tools-extra/clang-include-fixer/CMakeLists.txt
    M clang-tools-extra/clang-include-fixer/find-all-symbols/CMakeLists.txt
    M clang-tools-extra/clang-include-fixer/plugin/CMakeLists.txt
    M clang-tools-extra/clang-move/CMakeLists.txt
    M clang-tools-extra/clang-query/CMakeLists.txt
    M clang-tools-extra/clang-reorder-fields/CMakeLists.txt
    M clang-tools-extra/clang-tidy/CMakeLists.txt
    M clang-tools-extra/clang-tidy/abseil/CMakeLists.txt
    M clang-tools-extra/clang-tidy/altera/CMakeLists.txt
    M clang-tools-extra/clang-tidy/android/CMakeLists.txt
    M clang-tools-extra/clang-tidy/boost/CMakeLists.txt
    M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
    M clang-tools-extra/clang-tidy/bugprone/ForwardDeclarationNamespaceCheck.cpp
    M clang-tools-extra/clang-tidy/cert/CMakeLists.txt
    M clang-tools-extra/clang-tidy/concurrency/CMakeLists.txt
    M clang-tools-extra/clang-tidy/cppcoreguidelines/CMakeLists.txt
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp
    M clang-tools-extra/clang-tidy/darwin/CMakeLists.txt
    M clang-tools-extra/clang-tidy/fuchsia/CMakeLists.txt
    M clang-tools-extra/clang-tidy/google/CMakeLists.txt
    M clang-tools-extra/clang-tidy/hicpp/CMakeLists.txt
    M clang-tools-extra/clang-tidy/linuxkernel/CMakeLists.txt
    M clang-tools-extra/clang-tidy/llvm/CMakeLists.txt
    M clang-tools-extra/clang-tidy/llvmlibc/CMakeLists.txt
    M clang-tools-extra/clang-tidy/misc/CMakeLists.txt
    M clang-tools-extra/clang-tidy/modernize/CMakeLists.txt
    M clang-tools-extra/clang-tidy/modernize/UseStartsEndsWithCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseStartsEndsWithCheck.h
    M clang-tools-extra/clang-tidy/modernize/UseStdFormatCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseStdFormatCheck.h
    M clang-tools-extra/clang-tidy/modernize/UseStdPrintCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseStdPrintCheck.h
    M clang-tools-extra/clang-tidy/mpi/CMakeLists.txt
    M clang-tools-extra/clang-tidy/objc/CMakeLists.txt
    M clang-tools-extra/clang-tidy/openmp/CMakeLists.txt
    M clang-tools-extra/clang-tidy/performance/CMakeLists.txt
    M clang-tools-extra/clang-tidy/performance/MoveConstArgCheck.cpp
    M clang-tools-extra/clang-tidy/plugin/CMakeLists.txt
    M clang-tools-extra/clang-tidy/portability/CMakeLists.txt
    M clang-tools-extra/clang-tidy/portability/PortabilityTidyModule.cpp
    A clang-tools-extra/clang-tidy/portability/TemplateVirtualMemberFunctionCheck.cpp
    A clang-tools-extra/clang-tidy/portability/TemplateVirtualMemberFunctionCheck.h
    M clang-tools-extra/clang-tidy/readability/CMakeLists.txt
    M clang-tools-extra/clang-tidy/rename_check.py
    M clang-tools-extra/clang-tidy/tool/CMakeLists.txt
    M clang-tools-extra/clang-tidy/utils/CMakeLists.txt
    M clang-tools-extra/clang-tidy/utils/FormatStringConverter.cpp
    M clang-tools-extra/clang-tidy/utils/FormatStringConverter.h
    M clang-tools-extra/clang-tidy/zircon/CMakeLists.txt
    M clang-tools-extra/clangd/CMakeLists.txt
    M clang-tools-extra/clangd/Headers.cpp
    M clang-tools-extra/clangd/XRefs.cpp
    M clang-tools-extra/clangd/index/remote/CMakeLists.txt
    M clang-tools-extra/clangd/index/remote/marshalling/CMakeLists.txt
    M clang-tools-extra/clangd/index/remote/unimplemented/CMakeLists.txt
    M clang-tools-extra/clangd/support/CMakeLists.txt
    M clang-tools-extra/clangd/tool/CMakeLists.txt
    M clang-tools-extra/clangd/xpc/CMakeLists.txt
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/list.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-starts-ends-with.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-std-format.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-std-print.rst
    A clang-tools-extra/docs/clang-tidy/checks/portability/template-virtual-member-function.rst
    M clang-tools-extra/include-cleaner/lib/CMakeLists.txt
    M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/inttypes.h
    M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/string
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-starts-ends-with.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-print.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/move-const-arg.cpp
    A clang-tools-extra/test/clang-tidy/checkers/portability/template-virtual-member-function.cpp
    M clang/cmake/caches/Android.cmake
    M clang/cmake/caches/Fuchsia-stage2.cmake
    M clang/docs/AddressSanitizer.rst
    M clang/docs/ClangFormatStyleOptions.rst
    M clang/docs/ClangPlugins.rst
    M clang/docs/HardwareAssistedAddressSanitizerDesign.rst
    M clang/docs/LeakSanitizer.rst
    M clang/docs/MemorySanitizer.rst
    M clang/docs/ReleaseNotes.rst
    M clang/docs/ThreadSanitizer.rst
    M clang/docs/UndefinedBehaviorSanitizer.rst
    M clang/examples/Attribute/Attribute.cpp
    M clang/include/clang/AST/Attr.h
    M clang/include/clang/AST/ComputeDependence.h
    M clang/include/clang/AST/DeclBase.h
    M clang/include/clang/AST/DeclTemplate.h
    M clang/include/clang/AST/Expr.h
    M clang/include/clang/AST/OpenACCClause.h
    M clang/include/clang/AST/OpenMPClause.h
    M clang/include/clang/AST/PrettyPrinter.h
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/OpenACCClauses.def
    M clang/include/clang/Basic/OpenACCKinds.h
    M clang/include/clang/Basic/ParsedAttrInfo.h
    M clang/include/clang/Basic/PlistSupport.h
    M clang/include/clang/Basic/TokenKinds.def
    M clang/include/clang/Basic/riscv_vector.td
    A clang/include/clang/CIR/.clang-tidy
    A clang/include/clang/CIR/CIRGenerator.h
    A clang/include/clang/CIR/FrontendAction/CIRGenAction.h
    A clang/include/clang/CIRFrontendAction/.clang-tidy
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Format/Format.h
    M clang/include/clang/Parse/Parser.h
    M clang/include/clang/Sema/ScopeInfo.h
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/SemaOpenACC.h
    M clang/include/clang/Sema/SemaOpenMP.h
    M clang/include/clang/Sema/Template.h
    M clang/include/clang/Serialization/ASTReader.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Compiler.h
    M clang/lib/AST/ByteCode/EvaluationResult.cpp
    M clang/lib/AST/ByteCode/Function.h
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ByteCode/Opcodes.td
    M clang/lib/AST/ByteCode/Pointer.cpp
    M clang/lib/AST/ByteCode/Program.cpp
    M clang/lib/AST/ByteCode/Program.h
    M clang/lib/AST/ComputeDependence.cpp
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclBase.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/AST/DeclTemplate.cpp
    M clang/lib/AST/ExprConstShared.h
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/OpenACCClause.cpp
    M clang/lib/AST/OpenMPClause.cpp
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/AST/TypePrinter.cpp
    M clang/lib/ASTMatchers/ASTMatchersInternal.cpp
    M clang/lib/Analysis/ProgramPoint.cpp
    M clang/lib/Basic/IdentifierTable.cpp
    M clang/lib/Basic/OpenMPKinds.cpp
    M clang/lib/Basic/Targets/DirectX.h
    A clang/lib/CIR/.clang-tidy
    M clang/lib/CIR/CMakeLists.txt
    A clang/lib/CIR/CodeGen/CIRGenModule.cpp
    A clang/lib/CIR/CodeGen/CIRGenModule.h
    A clang/lib/CIR/CodeGen/CIRGenTypeCache.h
    A clang/lib/CIR/CodeGen/CIRGenerator.cpp
    A clang/lib/CIR/CodeGen/CMakeLists.txt
    A clang/lib/CIR/FrontendAction/CIRGenAction.cpp
    A clang/lib/CIR/FrontendAction/CMakeLists.txt
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDecl.cpp
    M clang/lib/CodeGen/CGException.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M clang/lib/CodeGen/Targets/AMDGPU.cpp
    M clang/lib/CodeGen/Targets/SystemZ.cpp
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/MultilibBuilder.cpp
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/Cuda.cpp
    M clang/lib/Driver/ToolChains/Flang.cpp
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/lib/Format/BreakableToken.cpp
    M clang/lib/Format/BreakableToken.h
    M clang/lib/Format/ContinuationIndenter.cpp
    M clang/lib/Format/Format.cpp
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/lib/Frontend/FrontendActions.cpp
    M clang/lib/Frontend/TextDiagnostic.cpp
    M clang/lib/FrontendTool/CMakeLists.txt
    M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
    M clang/lib/Headers/avx512fintrin.h
    M clang/lib/Headers/avxintrin.h
    M clang/lib/Headers/cpuid.h
    M clang/lib/Headers/emmintrin.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Headers/pmmintrin.h
    M clang/lib/Headers/xmmintrin.h
    M clang/lib/Lex/PPMacroExpansion.cpp
    M clang/lib/Lex/Preprocessor.cpp
    M clang/lib/Parse/ParseOpenACC.cpp
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Parse/ParseTemplate.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaARM.cpp
    M clang/lib/Sema/SemaAvailability.cpp
    M clang/lib/Sema/SemaConcept.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaFunctionEffects.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/lib/Sema/SemaInit.cpp
    M clang/lib/Sema/SemaLambda.cpp
    M clang/lib/Sema/SemaOpenACC.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/SemaStmtAttr.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Sema/SemaTemplateVariadic.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    M clang/lib/StaticAnalyzer/Checkers/PointerSubChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.h
    M clang/lib/StaticAnalyzer/Checkers/WebKit/UncountedCallArgsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/UncountedLambdaCapturesChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/UncountedLocalVarsChecker.cpp
    M clang/lib/StaticAnalyzer/Core/SValBuilder.cpp
    M clang/lib/Tooling/Inclusions/HeaderIncludes.cpp
    M clang/test/AST/ByteCode/builtin-functions.cpp
    M clang/test/AST/ByteCode/codegen.cpp
    A clang/test/AST/ByteCode/cxx1z.cpp
    M clang/test/AST/ByteCode/new-delete.cpp
    M clang/test/AST/ast-dump-for-range-lifetime.cpp
    M clang/test/AST/ast-print-openacc-loop-construct.cpp
    M clang/test/AST/attr-print-emit.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp
    M clang/test/Analysis/pointer-sub.c
    M clang/test/Analysis/range_casts.c
    A clang/test/CIR/hello.c
    A clang/test/CIR/lit.local.cfg
    M clang/test/CMakeLists.txt
    M clang/test/CXX/drs/cwg14xx.cpp
    M clang/test/CXX/drs/cwg1xx.cpp
    M clang/test/CXX/drs/cwg25xx.cpp
    M clang/test/CXX/expr/expr.prim/expr.prim.lambda/blocks.mm
    M clang/test/CXX/lex/lex.literal/lex.ext/p1.cpp
    M clang/test/CXX/lex/lex.literal/lex.ext/p10.cpp
    M clang/test/CXX/lex/lex.literal/lex.ext/p11.cpp
    M clang/test/CXX/lex/lex.literal/lex.ext/p3.cpp
    M clang/test/CXX/lex/lex.literal/lex.ext/p4.cpp
    M clang/test/CXX/lex/lex.literal/lex.ext/p5.cpp
    M clang/test/CXX/lex/lex.literal/lex.ext/p6.cpp
    M clang/test/CXX/lex/lex.literal/lex.ext/p7.cpp
    M clang/test/CXX/lex/lex.literal/lex.ext/p8.cpp
    M clang/test/CXX/lex/lex.literal/lex.ext/p9.cpp
    M clang/test/CXX/over/over.oper/over.literal/p2.cpp
    M clang/test/CXX/over/over.oper/over.literal/p3.cpp
    M clang/test/CXX/over/over.oper/over.literal/p5.cpp
    M clang/test/CXX/over/over.oper/over.literal/p6.cpp
    M clang/test/CXX/over/over.oper/over.literal/p7.cpp
    M clang/test/CXX/over/over.oper/over.literal/p8.cpp
    M clang/test/CXX/special/class.temporary/p6.cpp
    M clang/test/CXX/temp/temp.arg/temp.arg.template/p3-0x.cpp
    A clang/test/CXX/temp/temp.constr/temp.constr.decl/p4.cpp
    M clang/test/CXX/temp/temp.fct.spec/temp.deduct/temp.deduct.type/p9-0x.cpp
    M clang/test/CXX/temp/temp.param/p12.cpp
    A clang/test/CXX/temp/temp.spec/temp.expl.spec/p7.cpp
    M clang/test/CodeGen/RISCV/riscv-atomics.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-handcrafted/rvv-tuple-utils.c
    M clang/test/CodeGen/X86/avx-builtins.c
    M clang/test/CodeGen/X86/avx512f-builtins.c
    M clang/test/CodeGen/X86/sse-builtins.c
    M clang/test/CodeGen/X86/sse2-builtins.c
    M clang/test/CodeGen/X86/sse3-builtins.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_ldr_str_zt.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_zero_zt.c
    M clang/test/CodeGen/atomics-sema-alignment.c
    A clang/test/CodeGen/attr-target-version-riscv-invalid.c
    A clang/test/CodeGen/attr-target-version-riscv.c
    R clang/test/CodeGenCUDA/amdgpu-func-attrs.cu
    A clang/test/CodeGenCXX/attr-target-version-riscv.cpp
    M clang/test/CodeGenHLSL/ArrayTemporary.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/OutputArguments.hlsl
    M clang/test/CodeGenHLSL/GlobalConstructorFunction.hlsl
    M clang/test/CodeGenHLSL/GlobalConstructorLib.hlsl
    M clang/test/CodeGenHLSL/GlobalConstructors.hlsl
    M clang/test/CodeGenHLSL/GlobalDestructors.hlsl
    M clang/test/CodeGenHLSL/basic_types.hlsl
    M clang/test/CodeGenHLSL/builtins/RWBuffer-annotations.hlsl
    M clang/test/CodeGenHLSL/builtins/RWBuffer-elementtype.hlsl
    M clang/test/CodeGenHLSL/builtins/RasterizerOrderedBuffer-annotations.hlsl
    M clang/test/CodeGenHLSL/builtins/StructuredBuffer-annotations.hlsl
    M clang/test/CodeGenHLSL/builtins/StructuredBuffer-elementtype.hlsl
    M clang/test/CodeGenHLSL/builtins/abs.hlsl
    M clang/test/CodeGenHLSL/builtins/ceil.hlsl
    M clang/test/CodeGenHLSL/builtins/clamp.hlsl
    M clang/test/CodeGenHLSL/builtins/cos.hlsl
    A clang/test/CodeGenHLSL/builtins/degrees.hlsl
    M clang/test/CodeGenHLSL/builtins/exp.hlsl
    M clang/test/CodeGenHLSL/builtins/exp2.hlsl
    M clang/test/CodeGenHLSL/builtins/floor.hlsl
    M clang/test/CodeGenHLSL/builtins/hlsl_resource_t.hlsl
    M clang/test/CodeGenHLSL/builtins/log.hlsl
    M clang/test/CodeGenHLSL/builtins/log10.hlsl
    M clang/test/CodeGenHLSL/builtins/log2.hlsl
    M clang/test/CodeGenHLSL/builtins/max.hlsl
    M clang/test/CodeGenHLSL/builtins/min.hlsl
    M clang/test/CodeGenHLSL/builtins/pow.hlsl
    M clang/test/CodeGenHLSL/builtins/round.hlsl
    M clang/test/CodeGenHLSL/builtins/saturate.hlsl
    M clang/test/CodeGenHLSL/builtins/sign.hlsl
    M clang/test/CodeGenHLSL/builtins/sin.hlsl
    M clang/test/CodeGenHLSL/builtins/sqrt.hlsl
    M clang/test/CodeGenHLSL/builtins/trunc.hlsl
    M clang/test/CodeGenHLSL/builtins/wave_get_lane_index_simple.hlsl
    M clang/test/CodeGenHLSL/convergence/do.while.hlsl
    M clang/test/CodeGenHLSL/convergence/for.hlsl
    M clang/test/CodeGenHLSL/convergence/while.hlsl
    M clang/test/CodeGenHLSL/export.hlsl
    M clang/test/CodeGenHLSL/float3.hlsl
    M clang/test/CodeGenHLSL/group_shared.hlsl
    M clang/test/CodeGenHLSL/half.hlsl
    M clang/test/CodeGenHLSL/implicit-norecurse-attrib.hlsl
    M clang/test/CodeGenHLSL/inline-constructors.hlsl
    M clang/test/CodeGenHLSL/inline-functions.hlsl
    M clang/test/CodeGenHLSL/semantics/GroupIndex-codegen.hlsl
    M clang/test/CodeGenHLSL/shift-mask.hlsl
    M clang/test/CodeGenHLSL/sret_output.hlsl
    M clang/test/CodeGenHLSL/static-local-ctor.hlsl
    M clang/test/CodeGenHLSL/static_global_and_function_in_cb.hlsl
    M clang/test/CodeGenHLSL/this-assignment-overload.hlsl
    M clang/test/CodeGenHLSL/this-assignment.hlsl
    M clang/test/CodeGenHLSL/this-reference.hlsl
    M clang/test/Driver/amdgpu-openmp-toolchain.c
    A clang/test/Driver/cuda-short-ptr.cu
    M clang/test/Driver/flang/flang.f90
    M clang/test/Driver/flang/flang_ucase.F90
    M clang/test/Driver/flang/multiple-inputs-mixed.f90
    M clang/test/Driver/flang/multiple-inputs.f90
    M clang/test/FixIt/fixit-c++11.cpp
    A clang/test/Frontend/highlight-text.c
    M clang/test/Frontend/plugin-attribute.cpp
    A clang/test/Headers/header-unit-common-cmp-cat.cpp
    A clang/test/Headers/import_header_unit_after_pragma.cpp
    M clang/test/Misc/constexpr-subobj-init-source-ranges.cpp
    M clang/test/Modules/cxx-templates.cpp
    M clang/test/Modules/embed-files-compressed.cpp
    A clang/test/Modules/gh110401.cppm
    M clang/test/OpenMP/amdgcn-attributes.cpp
    M clang/test/OpenMP/interchange_ast_print.cpp
    M clang/test/OpenMP/interchange_codegen.cpp
    M clang/test/OpenMP/interchange_messages.cpp
    M clang/test/Parser/cxx11-user-defined-literals.cpp
    M clang/test/Parser/cxx2c-pack-indexing.cpp
    M clang/test/ParserOpenACC/parse-clauses.c
    M clang/test/Preprocessor/feature_tests.cpp
    M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_add_sub_za16.c
    M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_b16b16.cpp
    M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_fmlas16.c
    M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_mopa_nonwide.c
    M clang/test/Sema/aarch64-streaming-sme-or-nonstreaming-sve-builtins.c
    M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2.cpp
    M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_aes_bitperm_sha3_sm4.cpp
    M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_bfloat.cpp
    M clang/test/Sema/aarch64-sve2p1-intrinsics/acle_sve2p1_b16b16.cpp
    M clang/test/Sema/annotate.c
    M clang/test/Sema/asm.c
    M clang/test/Sema/attr-availability.c
    M clang/test/Sema/attr-nonblocking-constraints.cpp
    M clang/test/Sema/builtin-assume-aligned.c
    A clang/test/Sema/caret-diags-register-variable.cpp
    M clang/test/SemaCXX/alloc-align-attr.cpp
    M clang/test/SemaCXX/attr-lifetimebound.cpp
    A clang/test/SemaCXX/attr-target-version-riscv.cpp
    A clang/test/SemaCXX/block-packs.cpp
    M clang/test/SemaCXX/builtin-assume-aligned-tmpl.cpp
    M clang/test/SemaCXX/builtin-assume-aligned.cpp
    M clang/test/SemaCXX/cxx11-user-defined-literals-unused.cpp
    M clang/test/SemaCXX/cxx11-user-defined-literals.cpp
    M clang/test/SemaCXX/cxx20-ctad-type-alias.cpp
    M clang/test/SemaCXX/cxx2a-consteval.cpp
    M clang/test/SemaCXX/cxx98-compat.cpp
    M clang/test/SemaCXX/literal-operators.cpp
    M clang/test/SemaCXX/make_integer_seq.cpp
    M clang/test/SemaCXX/no-warn-user-defined-literals-in-system-headers.cpp
    A clang/test/SemaCXX/noescape-attr.cpp
    M clang/test/SemaCXX/pragma-pack-packed-2.cpp
    M clang/test/SemaCXX/reserved-identifier.cpp
    M clang/test/SemaCXX/warn-xor-as-pow.cpp
    A clang/test/SemaHLSL/BuiltIns/WaveGetLaneIndex-errors.hlsl
    A clang/test/SemaHLSL/BuiltIns/degrees-errors.hlsl
    M clang/test/SemaHLSL/BuiltIns/half-float-only-errors.hlsl
    M clang/test/SemaObjCXX/noescape.mm
    M clang/test/SemaOpenACC/compute-construct-device_type-clause.c
    M clang/test/SemaOpenACC/loop-construct-auto_seq_independent-clauses.c
    M clang/test/SemaOpenACC/loop-construct-device_type-clause.c
    A clang/test/SemaOpenACC/loop-construct-gang-ast.cpp
    A clang/test/SemaOpenACC/loop-construct-gang-clause.cpp
    M clang/test/SemaTemplate/attributes.cpp
    M clang/test/SemaTemplate/concepts.cpp
    M clang/test/SemaTemplate/cwg2398.cpp
    M clang/test/SemaTemplate/ms-function-specialization-class-scope.cpp
    A clang/test/SemaTemplate/recovery-crash-cxx20.cpp
    M clang/test/SemaTemplate/temp_arg_nontype.cpp
    M clang/test/SemaTemplate/temp_arg_template.cpp
    M clang/test/SemaTemplate/temp_arg_template_p0522.cpp
    M clang/test/Templight/templight-empty-entries-fix.cpp
    M clang/test/Templight/templight-prior-template-arg.cpp
    M clang/tools/clang-scan-deps/ClangScanDeps.cpp
    M clang/tools/libclang/CIndex.cpp
    M clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
    M clang/unittests/Format/ConfigParseTest.cpp
    M clang/unittests/Format/FormatTest.cpp
    M clang/unittests/Format/FormatTestComments.cpp
    M clang/unittests/Format/FormatTestProto.cpp
    M clang/unittests/Support/TimeProfilerTest.cpp
    M clang/utils/TableGen/ClangAttrEmitter.cpp
    M clang/utils/TableGen/SveEmitter.cpp
    M clang/www/c_status.html
    M clang/www/cxx_dr_status.html
    M clang/www/cxx_status.html
    M compiler-rt/include/sanitizer/ubsan_interface.h
    M compiler-rt/lib/asan/asan_descriptions.cpp
    M compiler-rt/lib/asan/asan_descriptions.h
    M compiler-rt/lib/asan/asan_fuchsia.cpp
    M compiler-rt/lib/asan/asan_posix.cpp
    M compiler-rt/lib/asan/asan_thread.cpp
    M compiler-rt/lib/asan/asan_thread.h
    M compiler-rt/lib/dfsan/dfsan_custom.cpp
    M compiler-rt/lib/hwasan/hwasan_linux.cpp
    M compiler-rt/lib/hwasan/hwasan_thread.cpp
    M compiler-rt/lib/lsan/lsan_common.cpp
    M compiler-rt/lib/lsan/lsan_common.h
    M compiler-rt/lib/lsan/lsan_flags.inc
    M compiler-rt/lib/lsan/lsan_posix.cpp
    M compiler-rt/lib/lsan/lsan_thread.cpp
    M compiler-rt/lib/memprof/memprof_thread.cpp
    M compiler-rt/lib/memprof/memprof_thread.h
    M compiler-rt/lib/msan/msan_linux.cpp
    M compiler-rt/lib/orc/common.h
    M compiler-rt/lib/orc/elfnix_platform.cpp
    M compiler-rt/lib/profile/InstrProfiling.h
    M compiler-rt/lib/profile/InstrProfilingInternal.h
    M compiler-rt/lib/profile/InstrProfilingPort.h
    M compiler-rt/lib/profile/InstrProfilingUtil.h
    M compiler-rt/lib/rtsan/rtsan.cpp
    M compiler-rt/lib/rtsan/rtsan_assertions.h
    M compiler-rt/lib/rtsan/rtsan_context.h
    M compiler-rt/lib/rtsan/tests/rtsan_test_assertions.cpp
    M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors.cpp
    M compiler-rt/lib/sanitizer_common/CMakeLists.txt
    M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
    M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_linux.h
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
    M compiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cpp
    A compiler-rt/lib/sanitizer_common/sanitizer_thread_history.cpp
    A compiler-rt/lib/sanitizer_common/sanitizer_thread_history.h
    M compiler-rt/lib/sanitizer_common/sanitizer_thread_registry.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_thread_registry.h
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_linux_test.cpp
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_thread_registry_test.cpp
    M compiler-rt/lib/scudo/standalone/combined.h
    M compiler-rt/lib/scudo/standalone/memtag.h
    M compiler-rt/lib/tsan/rtl/tsan_rtl.cpp
    A compiler-rt/test/lsan/TestCases/flag_tries.c
    A compiler-rt/test/lsan/TestCases/print_threads.c
    M compiler-rt/test/profile/instrprof-tmpdir.c
    M compiler-rt/test/profile/instrprof-write-file-atexit-explicitly.c
    M compiler-rt/test/rtsan/blocking_call.cpp
    M compiler-rt/test/rtsan/exit_stats.cpp
    A compiler-rt/test/sanitizer_common/TestCases/Darwin/freadlink.c
    R compiler-rt/test/sanitizer_common/TestCases/FreeBSD/md5.cpp
    R compiler-rt/test/sanitizer_common/TestCases/FreeBSD/sha2.cpp
    R compiler-rt/test/sanitizer_common/TestCases/NetBSD/md5.cpp
    R compiler-rt/test/sanitizer_common/TestCases/NetBSD/sha2.cpp
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb/LLDB.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/visualstudio/VisualStudio.py
    M cross-project-tests/debuginfo-tests/dexter/dex/tools/Main.py
    M cross-project-tests/debuginfo-tests/dexter/dex/tools/help/Tool.py
    A cross-project-tests/debuginfo-tests/dexter/dex/utils/Imports.py
    M cross-project-tests/lit.cfg.py
    M cross-project-tests/lit.site.cfg.py.in
    M flang/docs/FlangDriver.md
    M flang/docs/GettingInvolved.md
    M flang/docs/ImplementingASemanticCheck.md
    M flang/docs/Overview.md
    M flang/examples/FeatureList/FeatureList.cpp
    M flang/examples/FlangOmpReport/FlangOmpReport.cpp
    M flang/examples/FlangOmpReport/FlangOmpReportVisitor.cpp
    M flang/examples/FlangOmpReport/FlangOmpReportVisitor.h
    M flang/include/flang/Common/Fortran-features.h
    M flang/include/flang/Optimizer/Analysis/AliasAnalysis.h
    M flang/include/flang/Parser/dump-parse-tree.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/include/flang/Runtime/allocator-registry.h
    A flang/include/flang/Semantics/program-tree.h
    M flang/include/flang/Semantics/semantics.h
    M flang/include/flang/Tools/CrossToolHelpers.h
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Frontend/FrontendActions.cpp
    M flang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M flang/lib/Lower/OpenMP/Clauses.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
    M flang/lib/Optimizer/Analysis/CMakeLists.txt
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/lib/Optimizer/Passes/CMakeLists.txt
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    M flang/lib/Optimizer/Transforms/StackArrays.cpp
    M flang/lib/Parser/openmp-parsers.cpp
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/check-call.cpp
    M flang/lib/Semantics/check-declarations.cpp
    M flang/lib/Semantics/check-directive-structure.h
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/check-omp-structure.h
    M flang/lib/Semantics/program-tree.cpp
    R flang/lib/Semantics/program-tree.h
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/lib/Semantics/resolve-names-utils.cpp
    M flang/lib/Semantics/resolve-names-utils.h
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/semantics.cpp
    M flang/lib/Semantics/tools.cpp
    M flang/runtime/CMakeLists.txt
    M flang/runtime/io-stmt.cpp
    M flang/runtime/io-stmt.h
    A flang/test/Analysis/AliasAnalysis/alias-analysis-omp-target-1.fir
    A flang/test/Analysis/AliasAnalysis/alias-analysis-omp-target-2.fir
    M flang/test/CMakeLists.txt
    M flang/test/Driver/aarch64-outline-atomics.f90
    M flang/test/Driver/color-diagnostics-forwarding.f90
    M flang/test/Driver/compiler-options.f90
    M flang/test/Driver/convert.f90
    M flang/test/Driver/default-backend-pipelines.f90
    M flang/test/Driver/disable-ext-name-interop.f90
    M flang/test/Driver/driver-version.f90
    M flang/test/Driver/escaped-backslash.f90
    M flang/test/Driver/fdefault.f90
    M flang/test/Driver/flarge-sizes.f90
    M flang/test/Driver/fopenmp.f90
    M flang/test/Driver/frame-pointer-forwarding.f90
    M flang/test/Driver/frontend-forwarding.f90
    M flang/test/Driver/hlfir-no-hlfir-error.f90
    M flang/test/Driver/intrinsic-module-path.f90
    M flang/test/Driver/large-data-threshold.f90
    M flang/test/Driver/lto-flags.f90
    M flang/test/Driver/macro-def-undef.F90
    M flang/test/Driver/missing-input.f90
    M flang/test/Driver/multiple-input-files.f90
    M flang/test/Driver/omp-driver-offload.f90
    M flang/test/Driver/predefined-macros-compiler-version.F90
    M flang/test/Driver/std2018-wrong.f90
    M flang/test/Driver/std2018.f90
    M flang/test/Driver/supported-suffices/f03-suffix.f03
    M flang/test/Driver/supported-suffices/f08-suffix.f08
    M flang/test/Driver/use-module-error.f90
    M flang/test/Driver/use-module.f90
    M flang/test/Driver/version-loops.f90
    M flang/test/Driver/wextra-ok.f90
    M flang/test/Fir/convert-to-llvm.fir
    M flang/test/Fir/invalid.fir
    M flang/test/HLFIR/hlfir-flags.f90
    M flang/test/Lower/Intrinsics/command_argument_count.f90
    M flang/test/Lower/Intrinsics/exit.f90
    M flang/test/Lower/Intrinsics/ieee_is_normal.f90
    M flang/test/Lower/Intrinsics/isnan.f90
    M flang/test/Lower/Intrinsics/log.f90
    M flang/test/Lower/Intrinsics/modulo.f90
    A flang/test/Lower/OpenMP/Todo/map-modifiers-close.f90
    A flang/test/Lower/OpenMP/Todo/map-modifiers-ompxhold.f90
    A flang/test/Lower/OpenMP/Todo/map-modifiers-present.f90
    M flang/test/Lower/OpenMP/Todo/omp-declarative-allocate.f90
    M flang/test/Lower/OpenMP/Todo/omp-declare-reduction.f90
    M flang/test/Lower/OpenMP/Todo/omp-declare-simd.f90
    A flang/test/Lower/OpenMP/Todo/reduction-inscan.f90
    A flang/test/Lower/OpenMP/Todo/reduction-task.f90
    A flang/test/Lower/OpenMP/Todo/target-inreduction.f90
    A flang/test/Lower/OpenMP/Todo/task-inreduction.f90
    M flang/test/Lower/OpenMP/Todo/task_mergeable.f90
    A flang/test/Lower/OpenMP/Todo/taskgroup-task-reduction.f90
    A flang/test/Lower/OpenMP/Todo/taskloop.f90
    A flang/test/Lower/OpenMP/Todo/taskwait-depend.f90
    A flang/test/Lower/OpenMP/Todo/taskwait-nowait.f90
    M flang/test/Lower/OpenMP/parallel-lastprivate-clause-scalar.f90
    M flang/test/Lower/OpenMP/parallel-wsloop-reduction-byref.f90
    M flang/test/Lower/OpenMP/parallel-wsloop-reduction.f90
    A flang/test/Parser/OpenMP/map-modifiers.f90
    M flang/test/Semantics/OpenMP/do05-positivecase.f90
    A flang/test/Semantics/OpenMP/map-modifiers.f90
    A flang/test/Semantics/OpenMP/name-conflict.f90
    A flang/test/Semantics/OpenMP/shared-pointer.f90
    A flang/test/Semantics/call42.f90
    M flang/test/Semantics/io14.f90
    A flang/test/Semantics/named-construct-declaration-conflict.f90
    M flang/test/Semantics/separate-mp02.f90
    M flang/test/lit.cfg.py
    M flang/tools/f18/CMakeLists.txt
    M flang/tools/flang-driver/CMakeLists.txt
    M flang/tools/flang-driver/driver.cpp
    M libc/cmake/modules/LLVMLibCTestRules.cmake
    M libc/include/llvm-libc-macros/math-function-macros.h
    M libc/src/__support/CPP/string_view.h
    M libc/src/__support/CPP/utility/in_place.h
    M libc/src/__support/FPUtil/NearestIntegerOperations.h
    M libc/src/__support/FPUtil/double_double.h
    M libc/src/__support/macros/optimization.h
    M libc/src/__support/str_to_integer.h
    M libc/src/math/generic/cos.cpp
    M libc/src/math/generic/pow.cpp
    M libc/src/math/generic/range_reduction_double_common.h
    M libc/src/math/generic/range_reduction_double_fma.h
    M libc/src/math/generic/range_reduction_double_nofma.h
    M libc/src/math/generic/sin.cpp
    M libc/src/math/generic/sincos.cpp
    M libc/src/math/generic/sincos_eval.h
    M libc/src/math/generic/tan.cpp
    M libc/src/stdio/asprintf.cpp
    M libc/src/stdio/asprintf.h
    M libc/src/stdio/printf_core/vasprintf_internal.h
    M libc/src/stdio/vasprintf.cpp
    M libc/src/stdio/vasprintf.h
    M libc/src/stdlib/qsort_data.h
    M libc/src/stdlib/quick_sort.h
    M libc/test/include/CMakeLists.txt
    R libc/test/include/IsSignalingTest.h
    A libc/test/include/iscanonical_test.c
    M libc/test/include/issignaling_test.c
    R libc/test/include/issignaling_test.cpp
    R libc/test/include/issignalingf_test.cpp
    R libc/test/include/issignalingl_test.cpp
    M libc/test/src/math/RoundToIntegerTest.h
    M libc/test/src/math/cos_test.cpp
    M libc/test/src/math/sin_test.cpp
    M libc/test/src/math/tan_test.cpp
    M libc/test/src/string/CMakeLists.txt
    M libclc/CMakeLists.txt
    R libclc/README.TXT
    A libclc/README.md
    M libcxx/CMakeLists.txt
    M libcxx/cmake/Modules/HandleLibCXXABI.cmake
    M libcxx/cmake/caches/AIX.cmake
    M libcxx/cmake/caches/Armv7M-picolibc.cmake
    M libcxx/docs/FeatureTestMacroTable.rst
    M libcxx/docs/ReleaseNotes/20.rst
    M libcxx/docs/Status/Cxx23Papers.csv
    M libcxx/docs/UserDocumentation.rst
    M libcxx/include/CMakeLists.txt
    A libcxx/include/__type_traits/is_implicit_lifetime.h
    M libcxx/include/bitset
    M libcxx/include/module.modulemap
    M libcxx/include/type_traits
    M libcxx/include/version
    M libcxx/modules/std/type_traits.inc
    M libcxx/src/CMakeLists.txt
    M libcxx/test/configs/armv7m-picolibc-libc++.cfg.in
    A libcxx/test/configs/llvm-libc++-mingw.cfg.in
    R libcxx/test/configs/llvm-libc++-shared-mingw.cfg.in
    R libcxx/test/configs/llvm-libc++-static-mingw.cfg.in
    M libcxx/test/libcxx/type_traits/is_specialization.verify.cpp
    M libcxx/test/std/atomics/atomics.lockfree/is_always_lock_free.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/type_traits.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    A libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_implicit_lifetime.pass.cpp
    A libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_implicit_lifetime.verify.cpp
    A libcxx/test/std/utilities/template.bitset/bitset.members/nonstdmem.uglified.compile.pass.cpp
    M libcxx/utils/ci/run-buildbot
    M libcxx/utils/generate_feature_test_macro_components.py
    M libcxxabi/CMakeLists.txt
    M libcxxabi/src/CMakeLists.txt
    M libcxxabi/src/abort_message.cpp
    M libcxxabi/src/abort_message.h
    M libcxxabi/src/cxa_default_handlers.cpp
    M libcxxabi/src/cxa_exception_storage.cpp
    M libcxxabi/src/cxa_guard_impl.h
    M libcxxabi/src/cxa_handlers.cpp
    M libcxxabi/src/cxa_thread_atexit.cpp
    M libcxxabi/src/cxa_vector.cpp
    M libcxxabi/src/cxa_virtual.cpp
    M libcxxabi/src/demangle/DemangleConfig.h
    M libcxxabi/src/stdlib_new_delete.cpp
    M libunwind/src/CMakeLists.txt
    M lld/ELF/AArch64ErrataFix.cpp
    M lld/ELF/ARMErrataFix.cpp
    M lld/ELF/Arch/AArch64.cpp
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/Arch/Hexagon.cpp
    M lld/ELF/Arch/LoongArch.cpp
    M lld/ELF/Arch/Mips.cpp
    M lld/ELF/Arch/RISCV.cpp
    M lld/ELF/Arch/X86.cpp
    M lld/ELF/Arch/X86_64.cpp
    M lld/ELF/CallGraphSort.cpp
    M lld/ELF/CallGraphSort.h
    M lld/ELF/DWARF.cpp
    M lld/ELF/Driver.cpp
    M lld/ELF/DriverUtils.cpp
    M lld/ELF/EhFrame.cpp
    M lld/ELF/InputFiles.cpp
    M lld/ELF/InputFiles.h
    M lld/ELF/InputSection.cpp
    M lld/ELF/InputSection.h
    M lld/ELF/LinkerScript.cpp
    M lld/ELF/MapFile.cpp
    M lld/ELF/OutputSections.cpp
    M lld/ELF/OutputSections.h
    M lld/ELF/Relocations.cpp
    M lld/ELF/SymbolTable.cpp
    M lld/ELF/Symbols.cpp
    M lld/ELF/Symbols.h
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h
    M lld/ELF/Target.h
    M lld/ELF/Thunks.cpp
    M lld/ELF/Writer.cpp
    M lld/MachO/ICF.cpp
    M lld/test/ELF/hexagon-shared.s
    A lld/test/ELF/linkerscript/provide-defined.s
    A lld/test/ELF/riscv-pcrel-hilo-error-sections.s
    M lld/test/ELF/riscv-pcrel-hilo-error.s
    M lld/test/ELF/version-script-reassign-glob.s
    A lld/test/ELF/version-script-warn.s
    M lld/test/MachO/icf-safe-thunks.ll
    M lldb/docs/index.rst
    M lldb/docs/use/tutorial.rst
    M lldb/include/lldb/API/SBDefines.h
    M lldb/include/lldb/Expression/DiagnosticManager.h
    M lldb/include/lldb/Host/Host.h
    M lldb/include/lldb/Interpreter/CommandReturnObject.h
    M lldb/include/lldb/Symbol/SymbolContext.h
    M lldb/include/lldb/Target/DynamicLoader.h
    M lldb/include/lldb/Target/StackFrame.h
    M lldb/include/lldb/Utility/Args.h
    A lldb/include/lldb/Utility/DiagnosticsRendering.h
    M lldb/include/lldb/Utility/Log.h
    M lldb/include/lldb/Utility/Status.h
    M lldb/packages/Python/lldbsuite/test/builders/builder.py
    M lldb/packages/Python/lldbsuite/test/dotest.py
    M lldb/scripts/generate-sbapi-dwarf-enum.py
    M lldb/source/API/SBThread.cpp
    M lldb/source/API/SystemInitializerFull.cpp
    M lldb/source/Commands/CommandObjectDWIMPrint.cpp
    M lldb/source/Commands/CommandObjectExpression.cpp
    M lldb/source/Commands/CommandObjectThread.cpp
    R lldb/source/Commands/DiagnosticRendering.h
    M lldb/source/Core/DynamicLoader.cpp
    M lldb/source/Expression/DWARFExpression.cpp
    M lldb/source/Expression/DiagnosticManager.cpp
    M lldb/source/Expression/FunctionCaller.cpp
    M lldb/source/Expression/IRExecutionUnit.cpp
    M lldb/source/Expression/LLVMUserExpression.cpp
    M lldb/source/Host/common/Host.cpp
    M lldb/source/Host/common/HostInfoBase.cpp
    M lldb/source/Interpreter/CommandInterpreter.cpp
    M lldb/source/Interpreter/CommandObject.cpp
    M lldb/source/Interpreter/CommandReturnObject.cpp
    M lldb/source/Interpreter/Options.cpp
    M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
    M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.h
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
    M lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp
    M lldb/source/Plugins/Process/minidump/ProcessMinidump.cpp
    M lldb/source/Plugins/Process/minidump/ProcessMinidump.h
    M lldb/source/Plugins/Process/minidump/RegisterContextMinidump_x86_64.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFIndex.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFIndex.h
    M lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.h
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
    M lldb/source/Symbol/SymbolContext.cpp
    M lldb/source/Target/Process.cpp
    M lldb/source/Target/ScriptedThreadPlan.cpp
    M lldb/source/Target/StackFrame.cpp
    M lldb/source/Utility/Args.cpp
    M lldb/source/Utility/CMakeLists.txt
    A lldb/source/Utility/DiagnosticsRendering.cpp
    M lldb/source/Utility/Log.cpp
    M lldb/source/Utility/Status.cpp
    M lldb/test/API/CMakeLists.txt
    M lldb/test/API/commands/expression/diagnostics/TestExprDiagnostics.py
    M lldb/test/API/functionalities/archives/TestBSDArchives.py
    M lldb/test/API/functionalities/json/symbol-file/Makefile
    M lldb/test/API/functionalities/process_save_core_minidump/TestProcessSaveCoreMinidump.py
    M lldb/test/API/functionalities/process_save_core_minidump/main.cpp
    M lldb/test/API/lang/c/shared_lib_stripped_symbols/TestSharedLibStrippedSymbols.py
    A lldb/test/API/lang/cpp/libcxx-internals-recognizer/Makefile
    A lldb/test/API/lang/cpp/libcxx-internals-recognizer/TestLibcxxInternalsRecognizer.py
    A lldb/test/API/lang/cpp/libcxx-internals-recognizer/main.cpp
    R lldb/test/API/lang/cpp/std-invoke-recognizer/Makefile
    R lldb/test/API/lang/cpp/std-invoke-recognizer/TestStdInvokeRecognizer.py
    R lldb/test/API/lang/cpp/std-invoke-recognizer/main.cpp
    M lldb/test/API/lang/objc/hidden-ivars/Makefile
    M lldb/test/API/lang/objc/objc-ivar-stripped/Makefile
    M lldb/test/API/lang/objc/objc-static-method-stripped/Makefile
    M lldb/test/API/lit.cfg.py
    M lldb/test/API/lit.site.cfg.py.in
    M lldb/test/API/macosx/add-dsym/Makefile
    M lldb/test/API/macosx/duplicate-archive-members/TestDuplicateMembers.py
    M lldb/test/API/python_api/global_module_cache/TestGlobalModuleCache.py
    M lldb/test/API/tools/lldb-dap/locations/Makefile
    M lldb/test/API/tools/lldb-dap/locations/TestDAP_locations.py
    R lldb/test/API/tools/lldb-dap/locations/main.c
    A lldb/test/API/tools/lldb-dap/locations/main.cpp
    M lldb/test/API/tools/lldb-dap/module/Makefile
    M lldb/test/API/tools/lldb-dap/runInTerminal/TestDAP_runInTerminal.py
    M lldb/test/API/tools/lldb-dap/terminated-event/Makefile
    M lldb/test/CMakeLists.txt
    A lldb/test/Shell/Commands/command-dwim-print.test
    A lldb/test/Shell/Commands/command-options.test
    A lldb/test/Shell/Host/TestSytemLogChannel.test
    M lldb/test/Shell/ObjectFile/ELF/elf-memory.test
    R lldb/test/Shell/SymbolFile/DWARF/no_unique_address-with-bitfields.cpp
    A lldb/test/Shell/SymbolFile/DWARF/x86/no_unique_address-with-bitfields.cpp
    M lldb/test/Shell/helper/toolchain.py
    M lldb/test/Shell/lit.site.cfg.py.in
    M lldb/tools/debugserver/source/MacOSX/MachThread.cpp
    M lldb/tools/debugserver/source/MacOSX/MachThread.h
    M lldb/tools/lldb-dap/JSONUtils.cpp
    M lldb/tools/lldb-dap/JSONUtils.h
    M lldb/tools/lldb-dap/lldb-dap.cpp
    M lldb/unittests/Interpreter/CMakeLists.txt
    R lldb/unittests/Interpreter/TestCommandObjectExpression.cpp
    M lldb/unittests/Utility/CMakeLists.txt
    A lldb/unittests/Utility/DiagnosticsRenderingTest.cpp
    M lldb/utils/lldb-dotest/CMakeLists.txt
    M lldb/utils/lldb-dotest/lldb-dotest.in
    M llvm/CMakeLists.txt
    M llvm/Maintainers.md
    M llvm/cmake/modules/HandleLLVMOptions.cmake
    M llvm/docs/AMDGPUUsage.rst
    M llvm/docs/CMake.rst
    M llvm/docs/CodingStandards.rst
    M llvm/docs/Coroutines.rst
    M llvm/docs/GettingStarted.rst
    M llvm/docs/GwpAsan.rst
    M llvm/docs/LangRef.rst
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/docs/SPIRVUsage.rst
    M llvm/examples/BrainF/BrainF.cpp
    M llvm/examples/Kaleidoscope/BuildingAJIT/Chapter3/KaleidoscopeJIT.h
    M llvm/examples/SpeculativeJIT/SpeculativeJIT.cpp
    M llvm/include/llvm-c/Core.h
    M llvm/include/llvm/ADT/APFixedPoint.h
    M llvm/include/llvm/ADT/APFloat.h
    M llvm/include/llvm/Analysis/InlineAdvisor.h
    M llvm/include/llvm/Analysis/InlineCost.h
    M llvm/include/llvm/Analysis/ScalarEvolution.h
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/include/llvm/AsmParser/LLLexer.h
    M llvm/include/llvm/AsmParser/LLParser.h
    M llvm/include/llvm/Bitcode/LLVMBitCodes.h
    M llvm/include/llvm/CGData/CodeGenData.h
    M llvm/include/llvm/CGData/CodeGenDataReader.h
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/Config/abi-breaking.h.cmake
    M llvm/include/llvm/Config/config.h.cmake
    M llvm/include/llvm/DebugInfo/DWARF/DWARFDie.h
    M llvm/include/llvm/DebugInfo/DWARF/DWARFTypePrinter.h
    M llvm/include/llvm/ExecutionEngine/Orc/CompileOnDemandLayer.h
    M llvm/include/llvm/ExecutionEngine/Orc/ELFNixPlatform.h
    A llvm/include/llvm/ExecutionEngine/Orc/IRPartitionLayer.h
    A llvm/include/llvm/ExecutionEngine/Orc/JITLinkRedirectableSymbolManager.h
    M llvm/include/llvm/ExecutionEngine/Orc/LLJIT.h
    M llvm/include/llvm/ExecutionEngine/Orc/MachOPlatform.h
    A llvm/include/llvm/ExecutionEngine/Orc/ReOptimizeLayer.h
    A llvm/include/llvm/ExecutionEngine/Orc/RedirectionManager.h
    M llvm/include/llvm/Frontend/OpenMP/ClauseT.h
    M llvm/include/llvm/Frontend/OpenMP/OMP.td
    M llvm/include/llvm/IR/FixedMetadataKinds.def
    M llvm/include/llvm/IR/IntrinsicInst.h
    M llvm/include/llvm/IR/Intrinsics.h
    M llvm/include/llvm/IR/Intrinsics.td
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/include/llvm/IR/MatrixBuilder.h
    M llvm/include/llvm/IR/ModuleSummaryIndex.h
    M llvm/include/llvm/IR/SymbolTableListTraits.h
    M llvm/include/llvm/LTO/LTO.h
    M llvm/include/llvm/LTO/LTOBackend.h
    M llvm/include/llvm/SandboxIR/Context.h
    M llvm/include/llvm/SandboxIR/PassManager.h
    M llvm/include/llvm/SandboxIR/Utils.h
    M llvm/include/llvm/Support/TimeProfiler.h
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    A llvm/include/llvm/Transforms/Coroutines/ABI.h
    A llvm/include/llvm/Transforms/Coroutines/CoroInstr.h
    A llvm/include/llvm/Transforms/Coroutines/CoroShape.h
    M llvm/include/llvm/Transforms/Coroutines/CoroSplit.h
    A llvm/include/llvm/Transforms/Coroutines/MaterializationUtils.h
    A llvm/include/llvm/Transforms/Coroutines/SpillUtils.h
    A llvm/include/llvm/Transforms/Coroutines/SuspendCrossingInfo.h
    M llvm/include/llvm/Transforms/IPO/MemProfContextDisambiguation.h
    M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
    M llvm/include/llvm/Transforms/Utils/SimplifyLibCalls.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Interval.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h
    A llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/NullPass.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SeedCollector.h
    M llvm/lib/Analysis/ConstantFolding.cpp
    M llvm/lib/Analysis/InlineAdvisor.cpp
    M llvm/lib/Analysis/InlineCost.cpp
    M llvm/lib/Analysis/ModuleSummaryAnalysis.cpp
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/AsmParser/LLLexer.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/CGData/CMakeLists.txt
    M llvm/lib/CGData/CodeGenData.cpp
    M llvm/lib/CGData/CodeGenDataReader.cpp
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/lib/CodeGen/EarlyIfConversion.cpp
    M llvm/lib/CodeGen/ExpandLargeFpConvert.cpp
    M llvm/lib/CodeGen/ExpandMemCmp.cpp
    M llvm/lib/CodeGen/ExpandVectorPredication.cpp
    M llvm/lib/CodeGen/HardwareLoops.cpp
    M llvm/lib/CodeGen/IntrinsicLowering.cpp
    M llvm/lib/CodeGen/LiveDebugValues/LiveDebugValues.cpp
    M llvm/lib/CodeGen/LiveDebugValues/VarLocBasedImpl.cpp
    M llvm/lib/CodeGen/MachineBlockPlacement.cpp
    M llvm/lib/CodeGen/MachineCopyPropagation.cpp
    M llvm/lib/CodeGen/MachineVerifier.cpp
    M llvm/lib/CodeGen/ReplaceWithVeclib.cpp
    M llvm/lib/CodeGen/SafeStack.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/CodeGen/SjLjEHPrepare.cpp
    M llvm/lib/CodeGen/StackProtector.cpp
    M llvm/lib/CodeGen/WasmEHPrepare.cpp
    M llvm/lib/DebugInfo/DWARF/CMakeLists.txt
    M llvm/lib/DebugInfo/DWARF/DWARFDie.cpp
    R llvm/lib/DebugInfo/DWARF/DWARFTypePrinter.cpp
    M llvm/lib/DebugInfo/LogicalView/Readers/LVCodeViewVisitor.cpp
    M llvm/lib/ExecutionEngine/JITLink/EHFrameSupport.cpp
    M llvm/lib/ExecutionEngine/Orc/CMakeLists.txt
    M llvm/lib/ExecutionEngine/Orc/CompileOnDemandLayer.cpp
    M llvm/lib/ExecutionEngine/Orc/ELFNixPlatform.cpp
    A llvm/lib/ExecutionEngine/Orc/IRPartitionLayer.cpp
    A llvm/lib/ExecutionEngine/Orc/JITLinkRedirectableSymbolManager.cpp
    M llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
    M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
    A llvm/lib/ExecutionEngine/Orc/ReOptimizeLayer.cpp
    A llvm/lib/ExecutionEngine/Orc/RedirectionManager.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/IR/ConstantFPRange.cpp
    M llvm/lib/IR/ConstantFold.cpp
    M llvm/lib/IR/Core.cpp
    M llvm/lib/IR/DIBuilder.cpp
    M llvm/lib/IR/DebugProgramInstruction.cpp
    M llvm/lib/IR/IRBuilder.cpp
    M llvm/lib/IR/IntrinsicInst.cpp
    M llvm/lib/IR/Intrinsics.cpp
    M llvm/lib/IR/Module.cpp
    M llvm/lib/IR/VectorBuilder.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/LTO/CMakeLists.txt
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/LTO/LTOBackend.cpp
    M llvm/lib/ObjectYAML/COFFEmitter.cpp
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/SandboxIR/PassManager.cpp
    M llvm/lib/Support/APFixedPoint.cpp
    M llvm/lib/Support/APFloat.cpp
    M llvm/lib/Support/TimeProfiler.cpp
    M llvm/lib/Support/Unix/Threading.inc
    M llvm/lib/Support/Windows/Threading.inc
    M llvm/lib/Target/AArch64/AArch64GlobalsTagging.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseV1.td
    M llvm/lib/Target/AArch64/AArch64StackTagging.cpp
    M llvm/lib/Target/AArch64/AArch64Subtarget.h
    M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/lib/Target/AArch64/SMEABIPass.cpp
    M llvm/lib/Target/AArch64/SVEInstrFormats.td
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUAtomicOptimizer.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUCtorDtorLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
    M llvm/lib/Target/AMDGPU/AMDGPUImageIntrinsicOptimizer.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
    M llvm/lib/Target/AMDGPU/AMDGPUSplitModule.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSwLowerLDS.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
    M llvm/lib/Target/AMDGPU/AMDGPUUnifyDivergentExitNodes.cpp
    M llvm/lib/Target/AMDGPU/FLATInstructions.td
    M llvm/lib/Target/AMDGPU/GCNIterativeScheduler.cpp
    M llvm/lib/Target/AMDGPU/GCNRegPressure.cpp
    M llvm/lib/Target/AMDGPU/GCNRegPressure.h
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.h
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIAnnotateControlFlow.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIPreEmitPeephole.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
    M llvm/lib/Target/AMDGPU/VOP1Instructions.td
    M llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp
    M llvm/lib/Target/ARM/ARMBaseRegisterInfo.h
    M llvm/lib/Target/ARM/ARMFrameLowering.cpp
    M llvm/lib/Target/ARM/ARMFrameLowering.h
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.h
    M llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
    M llvm/lib/Target/ARM/ARMParallelDSP.cpp
    M llvm/lib/Target/ARM/ARMSubtarget.cpp
    M llvm/lib/Target/ARM/ARMSubtarget.h
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.h
    M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
    M llvm/lib/Target/ARM/MVETailPredication.cpp
    M llvm/lib/Target/ARM/Thumb1FrameLowering.cpp
    M llvm/lib/Target/ARM/Thumb2InstrInfo.cpp
    M llvm/lib/Target/BPF/BPFAbstractMemberAccess.cpp
    M llvm/lib/Target/BPF/BPFAdjustOpt.cpp
    M llvm/lib/Target/BPF/BPFPreserveStaticOffset.cpp
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
    M llvm/lib/Target/DirectX/DXILOpLowering.cpp
    M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.cpp
    M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.h
    M llvm/lib/Target/Hexagon/HexagonGenExtract.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
    M llvm/lib/Target/Hexagon/HexagonVectorCombine.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
    M llvm/lib/Target/NVPTX/NVPTXRegisterInfo.cpp
    M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
    M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
    M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.cpp
    M llvm/lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCLowerMASSVEntries.cpp
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/CMakeLists.txt
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
    M llvm/lib/Target/RISCV/RISCV.h
    M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
    M llvm/lib/Target/RISCV/RISCVInstrFormats.td
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
    A llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVEmitNonSemanticDI.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    M llvm/lib/Target/SPIRV/SPIRVPrepareFunctions.cpp
    M llvm/lib/Target/SystemZ/SystemZTDC.cpp
    M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.h
    M llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyLowerRefTypesIntPtrConv.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.h
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/lib/Target/X86/X86InstCombineIntrinsic.cpp
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Target/X86/X86InstrFragmentsSIMD.td
    M llvm/lib/Target/X86/X86InstrSSE.td
    M llvm/lib/Target/X86/X86PartialReduction.cpp
    M llvm/lib/Target/X86/X86SelectionDAGInfo.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.h
    M llvm/lib/Target/X86/X86WinEHState.cpp
    M llvm/lib/Target/XCore/XCoreLowerThreadLocal.cpp
    M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
    R llvm/lib/Transforms/Coroutines/ABI.h
    M llvm/lib/Transforms/Coroutines/CoroCleanup.cpp
    M llvm/lib/Transforms/Coroutines/CoroEarly.cpp
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
    R llvm/lib/Transforms/Coroutines/CoroInstr.h
    M llvm/lib/Transforms/Coroutines/CoroInternal.h
    R llvm/lib/Transforms/Coroutines/CoroShape.h
    M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
    M llvm/lib/Transforms/Coroutines/Coroutines.cpp
    M llvm/lib/Transforms/Coroutines/MaterializationUtils.cpp
    R llvm/lib/Transforms/Coroutines/MaterializationUtils.h
    M llvm/lib/Transforms/Coroutines/SpillUtils.cpp
    R llvm/lib/Transforms/Coroutines/SpillUtils.h
    M llvm/lib/Transforms/Coroutines/SuspendCrossingInfo.cpp
    R llvm/lib/Transforms/Coroutines/SuspendCrossingInfo.h
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/IPO/CrossDSOCFI.cpp
    M llvm/lib/Transforms/IPO/FunctionSpecialization.cpp
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
    M llvm/lib/Transforms/IPO/SampleProfileProbe.cpp
    M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/BoundsChecking.cpp
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/KCFI.cpp
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/PGOCtxProfLowering.cpp
    M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
    M llvm/lib/Transforms/Instrumentation/SanitizerCoverage.cpp
    M llvm/lib/Transforms/Instrumentation/ThreadSanitizer.cpp
    M llvm/lib/Transforms/ObjCARC/ARCRuntimeEntryPoints.h
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
    M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
    M llvm/lib/Transforms/Scalar/LoopDataPrefetch.cpp
    M llvm/lib/Transforms/Scalar/LoopFlatten.cpp
    M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
    M llvm/lib/Transforms/Scalar/LowerGuardIntrinsic.cpp
    M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
    M llvm/lib/Transforms/Scalar/MakeGuardsExplicit.cpp
    M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
    M llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
    M llvm/lib/Transforms/Scalar/Scalarizer.cpp
    M llvm/lib/Transforms/Utils/AssumeBundleBuilder.cpp
    M llvm/lib/Transforms/Utils/CloneFunction.cpp
    M llvm/lib/Transforms/Utils/CodeExtractor.cpp
    M llvm/lib/Transforms/Utils/EntryExitInstrumenter.cpp
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    M llvm/lib/Transforms/Utils/IntegerDivision.cpp
    M llvm/lib/Transforms/Utils/Local.cpp
    M llvm/lib/Transforms/Utils/LowerGlobalDtors.cpp
    M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
    M llvm/lib/Transforms/Utils/PredicateInfo.cpp
    M llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
    M llvm/lib/Transforms/Utils/RelLookupTableConverter.cpp
    M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
    M llvm/lib/Transforms/Vectorize/CMakeLists.txt
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
    A llvm/lib/Transforms/Vectorize/SandboxVectorizer/Interval.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
    A llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/PassRegistry.def
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/VPRecipeBuilder.h
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanValue.h
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/lib/XRay/BlockIndexer.cpp
    M llvm/runtimes/CMakeLists.txt
    M llvm/test/Analysis/CostModel/RISCV/cast-half.ll
    M llvm/test/Assembler/allockind-missing.ll
    M llvm/test/Assembler/invalid-inttype.ll
    M llvm/test/Assembler/invalid-landingpad.ll
    M llvm/test/Assembler/invalid-name.ll
    M llvm/test/Assembler/invalid-name2.ll
    A llvm/test/Assembler/noalias-addrspace-md.ll
    M llvm/test/Bitcode/amdgcn-atomic.ll
    M llvm/test/Bitcode/compatibility.ll
    M llvm/test/Bitcode/operand-bundles.ll
    M llvm/test/CodeGen/AArch64/combine_andor_with_cmps.ll
    M llvm/test/CodeGen/AArch64/concat-vector.ll
    A llvm/test/CodeGen/AArch64/consecutive-stores-of-faddv.ll
    A llvm/test/CodeGen/AArch64/fp-fcanonicalize.ll
    A llvm/test/CodeGen/AArch64/fp-maximumnum-minimumnum.ll
    M llvm/test/CodeGen/AArch64/fptosi-sat-vector.ll
    M llvm/test/CodeGen/AArch64/fptoui-sat-vector.ll
    M llvm/test/CodeGen/AArch64/load.ll
    A llvm/test/CodeGen/AArch64/machine-cp-constant-reg.mir
    M llvm/test/CodeGen/AArch64/replace-with-veclib-armpl.ll
    M llvm/test/CodeGen/AArch64/replace-with-veclib-sleef-scalable.ll
    M llvm/test/CodeGen/AArch64/replace-with-veclib-sleef.ll
    M llvm/test/CodeGen/AArch64/statepoint-twoaddr.mir
    M llvm/test/CodeGen/AArch64/store.ll
    A llvm/test/CodeGen/AArch64/sve2-bf16-converts.ll
    M llvm/test/CodeGen/AArch64/vecreduce-fmax-legalization.ll
    M llvm/test/CodeGen/AArch64/vecreduce-fmin-legalization.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-ext-mul.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/fmamix-constant-bus-violation.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/fmamix-constant-bus-violation.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fp64-atomics-gfx90a.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/frem.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/image-waterfall-loop-O0.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-sextload-local.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-zextload-local.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fdiv.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-flat.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-private.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.ballot.i32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.ballot.i64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/load-local.128.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/load-local.96.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/load-unaligned.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/madmix-constant-bus-violation.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/madmix-constant-bus-violation.mir
    M llvm/test/CodeGen/AMDGPU/aa-as-infer.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-demote-scc-branches.ll
    M llvm/test/CodeGen/AMDGPU/bb-prolog-spill-during-regalloc.ll
    M llvm/test/CodeGen/AMDGPU/branch-condition-and.ll
    M llvm/test/CodeGen/AMDGPU/chain-hi-to-lo.ll
    M llvm/test/CodeGen/AMDGPU/collapse-endcf.ll
    M llvm/test/CodeGen/AMDGPU/control-flow-fastregalloc.ll
    M llvm/test/CodeGen/AMDGPU/dag-divergence-atomic.ll
    M llvm/test/CodeGen/AMDGPU/div_i128.ll
    M llvm/test/CodeGen/AMDGPU/else.ll
    M llvm/test/CodeGen/AMDGPU/expand-variadic-call.ll
    M llvm/test/CodeGen/AMDGPU/fdiv.f16.ll
    M llvm/test/CodeGen/AMDGPU/flat-address-space.ll
    M llvm/test/CodeGen/AMDGPU/fold-int-pow2-with-fmul-or-fdiv.ll
    R llvm/test/CodeGen/AMDGPU/fp-min-max-flat-atomics-f64.ll
    R llvm/test/CodeGen/AMDGPU/fp-min-max-flat-atomics.ll
    R llvm/test/CodeGen/AMDGPU/fp-min-max-global-atomics-f64.ll
    R llvm/test/CodeGen/AMDGPU/fp-min-max-global-atomics.ll
    M llvm/test/CodeGen/AMDGPU/fp64-atomics-gfx90a.ll
    M llvm/test/CodeGen/AMDGPU/fptoi.i128.ll
    M llvm/test/CodeGen/AMDGPU/frem.ll
    A llvm/test/CodeGen/AMDGPU/gep-flags-stack-offsets.ll
    M llvm/test/CodeGen/AMDGPU/high-RP-reschedule.mir
    M llvm/test/CodeGen/AMDGPU/i1-copy-from-loop.ll
    M llvm/test/CodeGen/AMDGPU/indirect-addressing-si.ll
    A llvm/test/CodeGen/AMDGPU/insert-handle-flat-vmem-ds.mir
    R llvm/test/CodeGen/AMDGPU/insert-skips-flat-vmem-ds.mir
    M llvm/test/CodeGen/AMDGPU/insert-skips-gfx10.mir
    M llvm/test/CodeGen/AMDGPU/insert-skips-gfx12.mir
    M llvm/test/CodeGen/AMDGPU/insert-skips-gws.mir
    M llvm/test/CodeGen/AMDGPU/insert-skips-ignored-insts.mir
    M llvm/test/CodeGen/AMDGPU/itofp.i128.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ballot.i32.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ballot.i64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ballot.i64.wave32.ll
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.f32.fp8.err.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.whole.wave-w64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umax.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umin.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.barrier.wait.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/lower-ctor-dtor-constexpr-alias.ll
    M llvm/test/CodeGen/AMDGPU/lower-ctor-dtor.ll
    M llvm/test/CodeGen/AMDGPU/lower-multiple-ctor-dtor.ll
    M llvm/test/CodeGen/AMDGPU/med3-knownbits.ll
    M llvm/test/CodeGen/AMDGPU/memcpy-crash-issue63986.ll
    M llvm/test/CodeGen/AMDGPU/memcpy-libcall.ll
    M llvm/test/CodeGen/AMDGPU/memcpy-param-combinations.ll
    M llvm/test/CodeGen/AMDGPU/memmove-param-combinations.ll
    M llvm/test/CodeGen/AMDGPU/mubuf-legalize-operands-non-ptr-intrinsics.ll
    M llvm/test/CodeGen/AMDGPU/mubuf-legalize-operands.ll
    M llvm/test/CodeGen/AMDGPU/pr51516.mir
    M llvm/test/CodeGen/AMDGPU/rem_i128.ll
    M llvm/test/CodeGen/AMDGPU/remove-short-exec-branches-gpr-idx-mode.mir
    M llvm/test/CodeGen/AMDGPU/remove-short-exec-branches-special-instructions.mir
    M llvm/test/CodeGen/AMDGPU/ret_jump.ll
    A llvm/test/CodeGen/AMDGPU/schedule-amdgpu-tracker-physreg-crash.ll
    A llvm/test/CodeGen/AMDGPU/schedule-amdgpu-tracker-physreg.ll
    A llvm/test/CodeGen/AMDGPU/schedule-amdgpu-trackers.ll
    M llvm/test/CodeGen/AMDGPU/schedule-regpressure-ilp-metric-spills.mir
    M llvm/test/CodeGen/AMDGPU/schedule-relaxed-occupancy.ll
    M llvm/test/CodeGen/AMDGPU/sdwa-commute.ll
    M llvm/test/CodeGen/AMDGPU/si-unify-exit-return-unreachable.ll
    M llvm/test/CodeGen/AMDGPU/skip-branch-taildup-ret.mir
    M llvm/test/CodeGen/AMDGPU/trap-abis.ll
    M llvm/test/CodeGen/AMDGPU/unaligned-load-store.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-spill-placement-issue61083.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved.ll
    A llvm/test/CodeGen/ARM/load-store-pair-volatile.ll
    M llvm/test/CodeGen/ARM/minnum-maxnum-intrinsics.ll
    A llvm/test/CodeGen/ARM/stack-guard-nomovt.ll
    A llvm/test/CodeGen/DirectX/WaveGetLaneIndex.ll
    A llvm/test/CodeGen/DirectX/degrees.ll
    M llvm/test/CodeGen/NVPTX/i1-int-to-fp.ll
    M llvm/test/CodeGen/NVPTX/unreachable.ll
    M llvm/test/CodeGen/PowerPC/aix-cc-abi-mir.ll
    M llvm/test/CodeGen/PowerPC/vec-min-max.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/vararg.ll
    M llvm/test/CodeGen/RISCV/abds-neg.ll
    M llvm/test/CodeGen/RISCV/abds.ll
    M llvm/test/CodeGen/RISCV/abdu-neg.ll
    M llvm/test/CodeGen/RISCV/add-before-shl.ll
    M llvm/test/CodeGen/RISCV/alloca.ll
    M llvm/test/CodeGen/RISCV/atomic-cmpxchg.ll
    M llvm/test/CodeGen/RISCV/callee-saved-gprs.ll
    M llvm/test/CodeGen/RISCV/calling-conv-ilp32-ilp32f-common.ll
    M llvm/test/CodeGen/RISCV/calling-conv-ilp32-ilp32f-ilp32d-common.ll
    M llvm/test/CodeGen/RISCV/calling-conv-ilp32d.ll
    M llvm/test/CodeGen/RISCV/calling-conv-ilp32e.ll
    M llvm/test/CodeGen/RISCV/calling-conv-lp64-lp64f-lp64d-common.ll
    M llvm/test/CodeGen/RISCV/calling-conv-lp64e.ll
    M llvm/test/CodeGen/RISCV/calling-conv-rv32f-ilp32.ll
    M llvm/test/CodeGen/RISCV/calling-conv-rv32f-ilp32e.ll
    M llvm/test/CodeGen/RISCV/calling-conv-vector-float.ll
    M llvm/test/CodeGen/RISCV/calls.ll
    M llvm/test/CodeGen/RISCV/double-calling-conv.ll
    M llvm/test/CodeGen/RISCV/double-convert-strict.ll
    M llvm/test/CodeGen/RISCV/double-convert.ll
    M llvm/test/CodeGen/RISCV/fastcc-bf16.ll
    M llvm/test/CodeGen/RISCV/fastcc-float.ll
    M llvm/test/CodeGen/RISCV/fastcc-half.ll
    M llvm/test/CodeGen/RISCV/fastcc-int.ll
    M llvm/test/CodeGen/RISCV/fastcc-without-f-reg.ll
    M llvm/test/CodeGen/RISCV/fold-addi-loadstore.ll
    M llvm/test/CodeGen/RISCV/forced-atomics.ll
    M llvm/test/CodeGen/RISCV/fp128.ll
    M llvm/test/CodeGen/RISCV/frame.ll
    M llvm/test/CodeGen/RISCV/get-setcc-result-type.ll
    M llvm/test/CodeGen/RISCV/hoist-global-addr-base.ll
    M llvm/test/CodeGen/RISCV/hwasan-check-memaccess.ll
    M llvm/test/CodeGen/RISCV/intrinsic-cttz-elts-vscale.ll
    M llvm/test/CodeGen/RISCV/legalize-fneg.ll
    M llvm/test/CodeGen/RISCV/llvm.exp10.ll
    M llvm/test/CodeGen/RISCV/llvm.frexp.ll
    M llvm/test/CodeGen/RISCV/memcpy.ll
    M llvm/test/CodeGen/RISCV/memset-inline.ll
    M llvm/test/CodeGen/RISCV/misched-load-clustering.ll
    M llvm/test/CodeGen/RISCV/neg-abs.ll
    M llvm/test/CodeGen/RISCV/nontemporal.ll
    A llvm/test/CodeGen/RISCV/orc-b-patterns.ll
    M llvm/test/CodeGen/RISCV/overflow-intrinsics.ll
    M llvm/test/CodeGen/RISCV/pr63816.ll
    M llvm/test/CodeGen/RISCV/push-pop-popret.ll
    M llvm/test/CodeGen/RISCV/riscv-codegenprepare-asm.ll
    M llvm/test/CodeGen/RISCV/riscv-shifted-extend.ll
    M llvm/test/CodeGen/RISCV/rv32xtheadbb.ll
    M llvm/test/CodeGen/RISCV/rv32zbb.ll
    M llvm/test/CodeGen/RISCV/rv64xtheadbb.ll
    M llvm/test/CodeGen/RISCV/rvv/binop-splats.ll
    M llvm/test/CodeGen/RISCV/rvv/bitreverse-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/bitreverse-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/bswap-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/bswap-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/calling-conv.ll
    M llvm/test/CodeGen/RISCV/rvv/combine-store.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-binop-splats.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitreverse-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitreverse.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bswap-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bswap.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-calling-conv-fastcc.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctlz-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctpop-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-cttz-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-elen.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-expandload-int.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-buildvec.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp2i.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-i2fp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-insert.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-buildvec.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-splat.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-llrint.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-lrint.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-gather.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-scatter.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-int-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-setcc-int-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-vslide1down.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-vslide1up.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shufflevector-vnsrl.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-load-store-asm.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-unaligned.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vaaddu.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vadd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vand-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vdiv-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vdivu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmacc-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmax-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmaxu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmin-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vminu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmul-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vnmsac-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vor-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vp-splat.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vpmerge.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vrem-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vremu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vrsub-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsadd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsadd.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsaddu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsaddu.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssub-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssub.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssubu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssubu.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsub-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwadd.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwaddu.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwmul.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwmulsu.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwsub.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwsubu.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vxor-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fpclamptosat_vec.ll
    M llvm/test/CodeGen/RISCV/rvv/masked-tama.ll
    M llvm/test/CodeGen/RISCV/rvv/memset-inline.ll
    M llvm/test/CodeGen/RISCV/rvv/no-reserved-frame.ll
    M llvm/test/CodeGen/RISCV/rvv/pr104480.ll
    M llvm/test/CodeGen/RISCV/rvv/rvv-args-by-mem.ll
    M llvm/test/CodeGen/RISCV/rvv/setcc-int-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/setcc-integer.ll
    M llvm/test/CodeGen/RISCV/rvv/splat-vector-split-i64-vl-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/stepvector.ll
    M llvm/test/CodeGen/RISCV/rvv/unmasked-ta.ll
    M llvm/test/CodeGen/RISCV/rvv/unmasked-tu.ll
    M llvm/test/CodeGen/RISCV/rvv/vaadd.ll
    M llvm/test/CodeGen/RISCV/rvv/vaaddu-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vaaddu.ll
    M llvm/test/CodeGen/RISCV/rvv/vadc.ll
    M llvm/test/CodeGen/RISCV/rvv/vadd-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vadd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vadd.ll
    M llvm/test/CodeGen/RISCV/rvv/vand-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vand-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vand.ll
    M llvm/test/CodeGen/RISCV/rvv/vandn-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vandn-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vandn.ll
    M llvm/test/CodeGen/RISCV/rvv/vasub.ll
    M llvm/test/CodeGen/RISCV/rvv/vasubu.ll
    M llvm/test/CodeGen/RISCV/rvv/vclmul.ll
    M llvm/test/CodeGen/RISCV/rvv/vclmulh.ll
    M llvm/test/CodeGen/RISCV/rvv/vdiv-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vdiv-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vdiv.ll
    M llvm/test/CodeGen/RISCV/rvv/vdivu-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vdivu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vdivu.ll
    M llvm/test/CodeGen/RISCV/rvv/vec3-setcc-crash.ll
    A llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll
    M llvm/test/CodeGen/RISCV/rvv/vl-opt-op-info.ll
    M llvm/test/CodeGen/RISCV/rvv/vmacc-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vmacc.ll
    M llvm/test/CodeGen/RISCV/rvv/vmadc.carry.in.ll
    M llvm/test/CodeGen/RISCV/rvv/vmadc.ll
    M llvm/test/CodeGen/RISCV/rvv/vmadd-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vmadd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vmadd.ll
    M llvm/test/CodeGen/RISCV/rvv/vmax-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vmax-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vmax.ll
    M llvm/test/CodeGen/RISCV/rvv/vmaxu-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vmaxu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vmaxu.ll
    M llvm/test/CodeGen/RISCV/rvv/vmin-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vmin-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vmin.ll
    M llvm/test/CodeGen/RISCV/rvv/vminu-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vminu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vminu.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsbc.borrow.in.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsbc.ll
    M llvm/test/CodeGen/RISCV/rvv/vmseq.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsge.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsgeu.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsgt.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsgtu.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsle.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsleu.ll
    M llvm/test/CodeGen/RISCV/rvv/vmslt.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsltu.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsne.ll
    M llvm/test/CodeGen/RISCV/rvv/vmul-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vmul-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vmul.ll
    M llvm/test/CodeGen/RISCV/rvv/vmulh.ll
    M llvm/test/CodeGen/RISCV/rvv/vmulhsu.ll
    M llvm/test/CodeGen/RISCV/rvv/vmulhu.ll
    M llvm/test/CodeGen/RISCV/rvv/vmv.s.x.ll
    M llvm/test/CodeGen/RISCV/rvv/vmv.v.x.ll
    M llvm/test/CodeGen/RISCV/rvv/vnmsac-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vnmsac.ll
    M llvm/test/CodeGen/RISCV/rvv/vnmsub-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vnmsub.ll
    M llvm/test/CodeGen/RISCV/rvv/vor-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vor-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vor.ll
    M llvm/test/CodeGen/RISCV/rvv/vp-splat.ll
    M llvm/test/CodeGen/RISCV/rvv/vpmerge-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vreductions-int-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vrem-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vrem-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vrem.ll
    M llvm/test/CodeGen/RISCV/rvv/vremu-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vremu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vremu.ll
    M llvm/test/CodeGen/RISCV/rvv/vrsub-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vrsub-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vrsub.ll
    M llvm/test/CodeGen/RISCV/rvv/vsadd-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vsadd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vsadd.ll
    M llvm/test/CodeGen/RISCV/rvv/vsaddu-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vsaddu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vsaddu.ll
    M llvm/test/CodeGen/RISCV/rvv/vsbc.ll
    M llvm/test/CodeGen/RISCV/rvv/vselect-int.ll
    M llvm/test/CodeGen/RISCV/rvv/vsmul.ll
    M llvm/test/CodeGen/RISCV/rvv/vsplats-i64.ll
    M llvm/test/CodeGen/RISCV/rvv/vssub-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vssub-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vssub.ll
    M llvm/test/CodeGen/RISCV/rvv/vssubu-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vssubu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vssubu.ll
    M llvm/test/CodeGen/RISCV/rvv/vsub-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vsub-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vsub.ll
    M llvm/test/CodeGen/RISCV/rvv/vwadd-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vxor-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vxor-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vxor.ll
    M llvm/test/CodeGen/RISCV/select-optimize-multiple.ll
    M llvm/test/CodeGen/RISCV/shifts.ll
    M llvm/test/CodeGen/RISCV/split-offsets.ll
    M llvm/test/CodeGen/RISCV/split-store.ll
    M llvm/test/CodeGen/RISCV/srem-seteq-illegal-types.ll
    M llvm/test/CodeGen/RISCV/srem-vector-lkk.ll
    M llvm/test/CodeGen/RISCV/stack-slot-size.ll
    M llvm/test/CodeGen/RISCV/stack-store-check.ll
    M llvm/test/CodeGen/RISCV/tail-calls.ll
    M llvm/test/CodeGen/RISCV/unaligned-load-store.ll
    M llvm/test/CodeGen/RISCV/urem-seteq-illegal-types.ll
    M llvm/test/CodeGen/RISCV/urem-vector-lkk.ll
    M llvm/test/CodeGen/RISCV/vararg-ilp32e.ll
    M llvm/test/CodeGen/RISCV/vararg.ll
    M llvm/test/CodeGen/RISCV/wide-scalar-shift-by-byte-multiple-legalization.ll
    M llvm/test/CodeGen/RISCV/wide-scalar-shift-legalization.ll
    M llvm/test/CodeGen/RISCV/xtheadmempair.ll
    A llvm/test/CodeGen/SPIRV/HlslBufferLoad.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-type-pointer.ll
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/degrees.ll
    A llvm/test/CodeGen/SPIRV/opencl/degrees.ll
    M llvm/test/CodeGen/Thumb2/mve-vecreduce-fminmax.ll
    A llvm/test/CodeGen/WebAssembly/fast-isel-no-offset.ll
    M llvm/test/CodeGen/WebAssembly/fast-isel-pr47040.ll
    M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast.ll
    M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast_from_memory.ll
    M llvm/test/CodeGen/X86/avx512-shuffles/partial_permute.ll
    M llvm/test/CodeGen/X86/avx512vl-logic.ll
    M llvm/test/CodeGen/X86/code_placement_ext_tsp.ll
    M llvm/test/CodeGen/X86/code_placement_ext_tsp_large.ll
    M llvm/test/CodeGen/X86/code_placement_ext_tsp_size.ll
    M llvm/test/CodeGen/X86/fp-strict-scalar-cmp.ll
    M llvm/test/CodeGen/X86/kshift.ll
    M llvm/test/CodeGen/X86/memcpy-struct-by-value.ll
    M llvm/test/CodeGen/X86/memcpy.ll
    M llvm/test/CodeGen/X86/memset-minsize.ll
    M llvm/test/CodeGen/X86/memset-vs-memset-inline.ll
    M llvm/test/CodeGen/X86/memset.ll
    M llvm/test/CodeGen/X86/tls-align.ll
    M llvm/test/CodeGen/X86/vec_smulo.ll
    M llvm/test/CodeGen/X86/vec_umulo.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-7.ll
    M llvm/test/CodeGen/X86/vector-lzcnt-512.ll
    A llvm/test/CodeGen/X86/vector-shift-lut.ll
    M llvm/test/CodeGen/X86/vector-shuffle-512-v16.ll
    M llvm/test/CodeGen/X86/vector-shuffle-512-v8.ll
    M llvm/test/CodeGen/X86/vector-tzcnt-512.ll
    M llvm/test/CodeGen/X86/vselect-pcmp.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast_from_memory.ll
    M llvm/test/DebugInfo/NVPTX/debug-info.ll
    M llvm/test/DebugInfo/Sparc/pointer-add-unknown-offset-debug-info.ll
    M llvm/test/MC/AArch64/global-tagging.ll
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_t16_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_promote.s
    A llvm/test/MC/ARM/macho-relocs-with-addend-invalid.s
    M llvm/test/MC/ARM/macho-relocs-with-addend.s
    M llvm/test/MC/RISCV/insn-invalid.s
    M llvm/test/MC/RISCV/insn.s
    M llvm/test/MC/RISCV/insn_c-invalid.s
    M llvm/test/MC/RISCV/machine-csr-names.s
    M llvm/test/MC/RISCV/rv32-machine-csr-names.s
    M llvm/test/MC/WebAssembly/annotations.s
    R llvm/test/MC/WebAssembly/eh-assembly-legacy.s
    M llvm/test/MC/WebAssembly/eh-assembly.s
    M llvm/test/MC/WebAssembly/type-checker-errors.s
    A llvm/test/MachineVerifier/test_multiple_errors.mir
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table.td
    A llvm/test/ThinLTO/AArch64/cgdata-two-rounds-caching.ll
    A llvm/test/ThinLTO/AArch64/cgdata-two-rounds.ll
    A llvm/test/ThinLTO/AArch64/lit.local.cfg
    A llvm/test/ThinLTO/X86/memprof-icp.ll
    M llvm/test/Transforms/GVN/edge.ll
    R llvm/test/Transforms/InferAddressSpaces/AMDGPU/flat-fadd-fmin-fmax-intrinsics.ll
    M llvm/test/Transforms/InferAddressSpaces/AMDGPU/flat_atomic.ll
    A llvm/test/Transforms/InferAddressSpaces/fake-use.ll
    A llvm/test/Transforms/Inline/AMDGPU/amdgpu-inline-only-one-live-use.ll
    M llvm/test/Transforms/InstCombine/double-float-shrink-1.ll
    A llvm/test/Transforms/InstCombine/fdim.ll
    M llvm/test/Transforms/InstCombine/is_fpclass.ll
    M llvm/test/Transforms/InstCombine/ispow2.ll
    M llvm/test/Transforms/InstCombine/loadstore-metadata.ll
    M llvm/test/Transforms/InstCombine/log-pow.ll
    A llvm/test/Transforms/InstCombine/log-to-intrinsic.ll
    A llvm/test/Transforms/InstCombine/logb.ll
    A llvm/test/Transforms/InstCombine/win-fdim.ll
    M llvm/test/Transforms/InstSimplify/bitcast-vector-fold.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/blend-costs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/interleave-allocsize-not-equal-typesize.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/interleaved-store-of-first-order-recurrence.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/low_trip_count_predicates.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-call.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-strict-fadd.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-live-out-pointer-induction.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/widen-call-with-intrinsic-or-libfunc.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-gather-scatter-tailpred.ll
    A llvm/test/Transforms/LoopVectorize/RISCV/blend-any-of-reduction-cost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-accesses.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-cost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/strided-accesses.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-interleave.ll
    M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
    M llvm/test/Transforms/LoopVectorize/X86/float-induction-x86.ll
    M llvm/test/Transforms/LoopVectorize/X86/interleave-cost.ll
    M llvm/test/Transforms/LoopVectorize/X86/interleave-opaque-pointers.ll
    A llvm/test/Transforms/LoopVectorize/X86/interleave-ptradd-with-replicated-operand.ll
    M llvm/test/Transforms/LoopVectorize/X86/interleaved-accesses-hoist-load-across-store.ll
    M llvm/test/Transforms/LoopVectorize/X86/interleaved-accesses-sink-store-across-load.ll
    M llvm/test/Transforms/LoopVectorize/X86/limit-vf-by-tripcount.ll
    M llvm/test/Transforms/LoopVectorize/X86/masked-store-cost.ll
    M llvm/test/Transforms/LoopVectorize/X86/pr47437.ll
    M llvm/test/Transforms/LoopVectorize/X86/pr56319-vector-exit-cond-optimization-epilogue-vectorization.ll
    M llvm/test/Transforms/LoopVectorize/X86/replicate-uniform-call.ll
    M llvm/test/Transforms/LoopVectorize/X86/strided_load_cost.ll
    M llvm/test/Transforms/LoopVectorize/X86/vectorize-interleaved-accesses-gap.ll
    M llvm/test/Transforms/LoopVectorize/X86/vplan-native-inner-loop-only.ll
    M llvm/test/Transforms/LoopVectorize/interleaved-accesses-different-insert-position.ll
    M llvm/test/Transforms/LoopVectorize/iv_outside_user.ll
    M llvm/test/Transforms/LoopVectorize/no-fold-tail-by-masking-iv-external-uses.ll
    M llvm/test/Transforms/LoopVectorize/pr58811-scev-expansion.ll
    M llvm/test/Transforms/LoopVectorize/vplan-dot-printing.ll
    M llvm/test/Transforms/LoopVectorize/vplan-printing.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/complex-loads.ll
    A llvm/test/Transforms/SLPVectorizer/RISCV/reduced-value-repeated-and-vectorized.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/remarks-insert-into-small-vector.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/reversed-strided-node-with-external-ptr.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/scatter-vectorize-reversed.ll
    M llvm/test/Transforms/SLPVectorizer/X86/horizontal-minmax.ll
    M llvm/test/Transforms/SLPVectorizer/X86/long-full-reg-stores.ll
    M llvm/test/Transforms/SLPVectorizer/X86/remark_gather-load-redux-cost.ll
    M llvm/test/Transforms/SandboxVectorizer/default_pass_pipeline.ll
    M llvm/test/Transforms/SandboxVectorizer/user_pass_pipeline.ll
    M llvm/test/Transforms/SimplifyCFG/X86/merge-compatible-invokes-of-landingpad.ll
    M llvm/test/Transforms/SimplifyCFG/hoist-with-metadata.ll
    M llvm/test/Transforms/VectorCombine/AArch64/shuffletoidentity.ll
    M llvm/test/Transforms/VectorCombine/X86/extract-cmp-binop.ll
    A llvm/test/Verifier/noalias-addrspace.ll
    M llvm/test/tools/UpdateTestChecks/update_mc_test_checks/Inputs/amdgpu_dasm.txt
    M llvm/test/tools/UpdateTestChecks/update_mc_test_checks/Inputs/amdgpu_dasm.txt.expected
    A llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-forwarding.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-neon-instructions.s
    M llvm/test/tools/llvm-profdata/memprof-merge-versions.test
    M llvm/test/tools/llvm-profdata/sample-split-layout.test
    A llvm/test/tools/llvm-reduce/issue111817-catchswitch-assert.ll
    A llvm/test/tools/llvm-reduce/special-globals-missing-should-keep-assert.ll
    A llvm/test/tools/llvm-split/AMDGPU/indirect-call-inline-asm-debug.ll
    A llvm/test/tools/llvm-split/AMDGPU/indirect-call-inline-asm.ll
    R llvm/test/tools/llvm-split/AMDGPU/kernels-alias-dependencies.ll
    M llvm/test/tools/llvm-split/AMDGPU/kernels-dependency-indirect.ll
    M llvm/tools/lli/lli.cpp
    M llvm/tools/llvm-jitlink/llvm-jitlink.cpp
    M llvm/tools/llvm-profdata/llvm-profdata.cpp
    M llvm/tools/llvm-reduce/deltas/ReduceBasicBlocks.cpp
    M llvm/tools/llvm-reduce/deltas/ReduceOpcodes.cpp
    M llvm/tools/llvm-reduce/deltas/ReduceSpecialGlobals.cpp
    M llvm/tools/llvm-remarkutil/RemarkCounter.cpp
    M llvm/unittests/ADT/APFixedPointTest.cpp
    M llvm/unittests/Analysis/AssumeBundleQueriesTest.cpp
    M llvm/unittests/Analysis/MemorySSATest.cpp
    M llvm/unittests/Analysis/ValueTrackingTest.cpp
    M llvm/unittests/ExecutionEngine/Orc/CMakeLists.txt
    A llvm/unittests/ExecutionEngine/Orc/JITLinkRedirectionManagerTest.cpp
    A llvm/unittests/ExecutionEngine/Orc/ReOptimizeLayerTest.cpp
    M llvm/unittests/IR/BasicBlockTest.cpp
    M llvm/unittests/IR/ConstantFPRangeTest.cpp
    M llvm/unittests/IR/DebugInfoTest.cpp
    M llvm/unittests/IR/IRBuilderTest.cpp
    M llvm/unittests/IR/IntrinsicsTest.cpp
    M llvm/unittests/IR/PatternMatch.cpp
    M llvm/unittests/IR/VPIntrinsicTest.cpp
    M llvm/unittests/SandboxIR/PassTest.cpp
    M llvm/unittests/SandboxIR/RegionTest.cpp
    M llvm/unittests/SandboxIR/UtilsTest.cpp
    M llvm/unittests/Support/TimeProfilerTest.cpp
    M llvm/unittests/Transforms/Coroutines/ExtraRematTest.cpp
    M llvm/unittests/Transforms/IPO/FunctionSpecializationTest.cpp
    M llvm/unittests/Transforms/Instrumentation/PGOInstrumentationTest.cpp
    M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp
    M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/IntervalTest.cpp
    M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/SeedCollectorTest.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
    M llvm/utils/gn/build/BUILD.gn
    M llvm/utils/gn/build/toolchain/BUILD.gn
    M llvm/utils/gn/build/toolchain/target_flags.gni
    M llvm/utils/gn/secondary/bolt/lib/Passes/BUILD.gn
    M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/portability/BUILD.gn
    M llvm/utils/gn/secondary/compiler-rt/lib/BUILD.gn
    M llvm/utils/gn/secondary/compiler-rt/test/test.gni
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/Utility/BUILD.gn
    M llvm/utils/gn/secondary/lldb/test/BUILD.gn
    M llvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/DebugInfo/DWARF/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Target/RISCV/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Transforms/Vectorize/BUILD.gn
    M llvm/utils/gn/secondary/llvm/unittests/ExecutionEngine/Orc/BUILD.gn
    M llvm/utils/lit/lit/TestingConfig.py
    M mlir/include/mlir-c/Dialect/LLVM.h
    M mlir/include/mlir/Analysis/DataFlow/DeadCodeAnalysis.h
    M mlir/include/mlir/Analysis/DataFlow/DenseAnalysis.h
    M mlir/include/mlir/Analysis/DataFlow/SparseAnalysis.h
    M mlir/include/mlir/Analysis/DataFlowFramework.h
    M mlir/include/mlir/Conversion/OpenMPToLLVM/ConvertOpenMPToLLVM.h
    M mlir/include/mlir/Conversion/TosaToLinalg/TosaToLinalg.h
    M mlir/include/mlir/Dialect/Bufferization/Transforms/Passes.td
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMDialect.h
    M mlir/include/mlir/Dialect/LLVMIR/LLVMIntrinsicOps.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
    M mlir/include/mlir/Dialect/LLVMIR/Transforms/Passes.h
    M mlir/include/mlir/Dialect/LLVMIR/Transforms/Passes.td
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgInterfaces.h
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgInterfaces.td
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgOps.td
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
    M mlir/include/mlir/Dialect/SCF/IR/SCFOps.td
    M mlir/include/mlir/Dialect/Tosa/Transforms/Passes.td
    M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
    M mlir/include/mlir/IR/AsmState.h
    M mlir/include/mlir/IR/Block.h
    M mlir/include/mlir/InitAllExtensions.h
    M mlir/include/mlir/Target/LLVMIR/ModuleImport.h
    M mlir/lib/Analysis/DataFlow/DeadCodeAnalysis.cpp
    M mlir/lib/Analysis/DataFlow/DenseAnalysis.cpp
    M mlir/lib/Analysis/DataFlow/IntegerRangeAnalysis.cpp
    M mlir/lib/Analysis/DataFlow/LivenessAnalysis.cpp
    M mlir/lib/Analysis/DataFlow/SparseAnalysis.cpp
    M mlir/lib/Analysis/DataFlowFramework.cpp
    M mlir/lib/CAPI/Dialect/LLVM.cpp
    M mlir/lib/Conversion/GPUToLLVMSPV/GPUToLLVMSPV.cpp
    M mlir/lib/Conversion/MathToSPIRV/MathToSPIRV.cpp
    M mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp
    M mlir/lib/Conversion/OpenMPToLLVM/OpenMPToLLVM.cpp
    M mlir/lib/Conversion/SCFToGPU/SCFToGPU.cpp
    M mlir/lib/Conversion/TosaToLinalg/TosaToLinalgPass.cpp
    M mlir/lib/Conversion/VectorToXeGPU/VectorToXeGPU.cpp
    M mlir/lib/Dialect/Affine/Utils/Utils.cpp
    M mlir/lib/Dialect/Arith/Transforms/IntRangeOptimizations.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMAttrs.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/lib/Dialect/LLVMIR/Transforms/DIScopeForLLVMFuncOp.cpp
    M mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp
    M mlir/lib/Dialect/Linalg/IR/CMakeLists.txt
    M mlir/lib/Dialect/Linalg/IR/LinalgInterfaces.cpp
    M mlir/lib/Dialect/Linalg/Transforms/DropUnitDims.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Specialize.cpp
    M mlir/lib/Dialect/Linalg/Transforms/WinogradConv2D.cpp
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Dialect/SCF/IR/SCF.cpp
    M mlir/lib/Dialect/SPIRV/IR/SPIRVOps.cpp
    M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
    M mlir/lib/Dialect/Transform/Transforms/CheckUses.cpp
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/lib/ExecutionEngine/CMakeLists.txt
    M mlir/lib/Target/Cpp/TranslateToCpp.cpp
    M mlir/lib/Target/LLVMIR/DebugImporter.cpp
    M mlir/lib/Target/LLVMIR/DebugImporter.h
    M mlir/lib/Target/LLVMIR/DebugTranslation.cpp
    M mlir/lib/Target/LLVMIR/DebugTranslation.h
    M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/Dialect/ROCDL/ROCDLToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
    M mlir/lib/Transforms/Utils/RegionUtils.cpp
    M mlir/test/CAPI/llvm.c
    M mlir/test/Conversion/GPUToLLVMSPV/gpu-to-llvm-spv.mlir
    M mlir/test/Conversion/MathToSPIRV/math-to-gl-spirv.mlir
    M mlir/test/Conversion/MemRefToEmitC/memref-to-emitc-failed.mlir
    M mlir/test/Conversion/OpenMPToLLVM/convert-to-llvmir.mlir
    M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
    M mlir/test/Conversion/VectorToXeGPU/transfer-write-to-xegpu.mlir
    M mlir/test/Dialect/LLVMIR/debuginfo.mlir
    M mlir/test/Dialect/Linalg/loops.mlir
    A mlir/test/Dialect/Linalg/roundtrip-broadcast.mlir
    A mlir/test/Dialect/Linalg/roundtrip-transpose.mlir
    A mlir/test/Dialect/Linalg/specialize-generic-ops-fail.mlir
    M mlir/test/Dialect/Linalg/transform-op-specialize.mlir
    M mlir/test/Dialect/Linalg/transform-patterns.mlir
    M mlir/test/Dialect/Linalg/transform-tile-and-winograd-rewrite.mlir
    M mlir/test/Dialect/Linalg/transform-tile-winograd.mlir
    M mlir/test/Dialect/Linalg/vectorization-with-patterns.mlir
    M mlir/test/Dialect/Linalg/winograd-conv2d-rewrite.mlir
    M mlir/test/Dialect/MemRef/normalize-memrefs.mlir
    M mlir/test/Dialect/OpenACC/invalid.mlir
    M mlir/test/Dialect/SparseTensor/codegen.mlir
    A mlir/test/Dialect/SparseTensor/no_lowering.mlir
    M mlir/test/Dialect/Tosa/invalid.mlir
    M mlir/test/Dialect/Tosa/level_check.mlir
    M mlir/test/Dialect/Vector/canonicalize.mlir
    M mlir/test/Integration/GPU/CUDA/sm90/tma_load_128x128_stride_noswizzle.mlir
    M mlir/test/Target/Cpp/switch.mlir
    M mlir/test/Target/LLVMIR/Import/debug-info.ll
    M mlir/test/Target/LLVMIR/Import/global-variables.ll
    M mlir/test/Target/LLVMIR/llvmir-debug.mlir
    M mlir/test/Target/LLVMIR/rocdl.mlir
    M mlir/test/Transforms/loop-invariant-code-motion.mlir
    M mlir/test/lib/Analysis/DataFlow/TestDeadCodeAnalysis.cpp
    M mlir/test/lib/Analysis/DataFlow/TestDenseBackwardDataFlowAnalysis.cpp
    M mlir/test/lib/Analysis/DataFlow/TestDenseForwardDataFlowAnalysis.cpp
    M mlir/test/lib/Analysis/DataFlow/TestSparseBackwardDataFlowAnalysis.cpp
    M mlir/test/lib/Analysis/TestDataFlowFramework.cpp
    M mlir/unittests/IR/AttributeTest.cpp
    M mlir/utils/spirv/gen_spirv_dialect.py
    M offload/CMakeLists.txt
    M openmp/CMakeLists.txt
    M openmp/cmake/OpenMPTesting.cmake
    M openmp/runtime/src/CMakeLists.txt
    M openmp/tools/archer/tests/CMakeLists.txt
    M openmp/tools/archer/tests/lit.site.cfg.in
    M polly/lib/CodeGen/IslExprBuilder.cpp
    M polly/lib/CodeGen/PerfMonitor.cpp
    A utils/bazel/llvm-project-overlay/clang-tools-extra/clang-doc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/clang-tools-extra/include-cleaner/BUILD.bazel
    M utils/bazel/llvm-project-overlay/clang-tools-extra/unittests/BUILD.bazel
    M utils/bazel/llvm-project-overlay/lldb/source/Plugins/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
    M utils/bazel/llvm_configs/abi-breaking.h.cmake
    M utils/bazel/llvm_configs/config.h.cmake

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

Created using spr 1.3.4

[skip ci]


Compare: https://github.com/llvm/llvm-project/compare/efa1900174cb...436701d88c13

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