[all-commits] [llvm/llvm-project] 9ad557: [bazel] Fix build past 00128a20eec27246719d73ba427...

Florian Mayer via All-commits all-commits at lists.llvm.org
Thu Oct 10 13:45:32 PDT 2024


  Branch: refs/heads/users/fmayer/spr/mte-do-not-allow-local-aliases-to-mte-globals
  Home:   https://github.com/llvm/llvm-project
  Commit: 9ad557382564395a3098d9638132a20ecab3dff5
      https://github.com/llvm/llvm-project/commit/9ad557382564395a3098d9638132a20ecab3dff5
  Author: Danial Klimkin <dklimkin at google.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

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

  Log Message:
  -----------
  [bazel] Fix build past 00128a20eec27246719d73ba427bf821883b00b4 (#110629)


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

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/test/CodeGen/RISCV/rvv/stack-folding.ll

  Log Message:
  -----------
  [RISCV] Fold vfmv.f.s of f16 into load from stack (#110214)

After #110144, we can finish off #110129 and fold f16 vfmv.f.s into a
flh.
vfmv.f.s is only available for f16 with zvfh, which in turn requires
zfhmin so we can use flh.

bf16 has no vfmv.f.s so the extract_vector_elt is lowered as an integer
in #110144, and gets the existing integer vmv.x.s fold.


  Commit: 9e45e7facbdec209a06ee20fcfbb7d0622835e21
      https://github.com/llvm/llvm-project/commit/9e45e7facbdec209a06ee20fcfbb7d0622835e21
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-30 (Mon, 30 Sep 2024)

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

  Log Message:
  -----------
  [RISCV][GISel] Remove unused isel patterns for s32 shifts with s64 shift amount.

The legalizer doesn't appear to create these.


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

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/stack-folding.ll

  Log Message:
  -----------
  [RISCV] Update stack-folding.ll test

It needs updated after #110312. Hopefully this fixes the buildbot failures


  Commit: 23c0850d2e860c5773da6e4ee4ecf9802ba62202
      https://github.com/llvm/llvm-project/commit/23c0850d2e860c5773da6e4ee4ecf9802ba62202
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2024-09-30 (Mon, 30 Sep 2024)

  Changed paths:
    M clang/lib/Basic/Targets/RISCV.cpp
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.h
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.td
    A llvm/test/CodeGen/RISCV/inline-asm-xsfvcp.ll

  Log Message:
  -----------
  [RISCV][VCIX] Add vcix_state to GNU inline assembly register set (#106914)

https://github.com/riscv-non-isa/riscv-toolchain-conventions/pull/56
Resolved https://github.com/llvm/llvm-project/issues/106700.
This enables inline asm to have vcix_state to be a clobbered register
thus disable reordering between VCIX intrinsics and inline asm.


  Commit: c26a5227c11d827ca52ec668fce749f8cba9aeb6
      https://github.com/llvm/llvm-project/commit/c26a5227c11d827ca52ec668fce749f8cba9aeb6
  Author: Raul Tambre <raul at tambre.ee>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M compiler-rt/cmake/Modules/CompilerRTCompile.cmake

  Log Message:
  -----------
  [compiler-rt] Fix C and C++ compilers being switched when compiling tests (#110552)

The logic was simply switched. Fixes building tests for me.  
Not sure how I haven't stumbled upon this before considering this code hasn't changed lately and my setup's been the same.

Fixes: 07317bbc66d1f2d7663af3c9f04d0f6c0487ac03


  Commit: 8897dd6fc520bc2184ee906974f2fd8c78140a79
      https://github.com/llvm/llvm-project/commit/8897dd6fc520bc2184ee906974f2fd8c78140a79
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

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

  Log Message:
  -----------
  [mlir][Transforms][NFC] Dialect Conversion: Simplify `finalize` signature (#110419)

This commit simplifies the signature of `OperationConverter::finalize`.
This function always returns "success", so the return value can be
removed.

Note: Previously, this function used to return "failure" if a
materialization failed to legalize. This is now optional and happening
at a later point of time (see `config.buildMaterializations`).


  Commit: 2da417e7f6149f0f1079a8162fb25161b8a80332
      https://github.com/llvm/llvm-project/commit/2da417e7f6149f0f1079a8162fb25161b8a80332
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M mlir/lib/Conversion/GPUCommon/GPUOpsLowering.cpp
    M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir

  Log Message:
  -----------
  [mlir][GPU] gpu.printf: Do not emit duplicate format strings (#110504)

Even if the same format string is used multiple times, emit just one
`LLVM:GlobalOp`.


  Commit: ec61311e77b39fc7f9b45ffdb8a29b2d96f67265
      https://github.com/llvm/llvm-project/commit/ec61311e77b39fc7f9b45ffdb8a29b2d96f67265
  Author: Stephen Chou <stephenchouca at users.noreply.github.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/lib/TableGen/TGParser.cpp
    A llvm/test/TableGen/invalid-type-cast-patfrags.td
    A llvm/test/TableGen/multiple-type-casts-patfrags.td
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp

  Log Message:
  -----------
  [LLVM][TableGen] Support type casts of nodes with multiple results (#109728)

Currently, type casts can only be used to pattern match for intrinsics
with a single overloaded return value. For instance:
```
def int_foo : Intrinsic<[llvm_anyint_ty], []>;
def : Pat<(i32 (int_foo)), ...>;
```

This patch extends type casts to support matching intrinsics with
multiple overloaded return values. As an example, the following defines
a pattern that matches only if the overloaded intrinsic call returns an
`i16` for the first result and an `i32` for the second result:
```
def int_bar : Intrinsic<[llvm_anyint_ty, llvm_anyint_ty], []>;
def : Pat<([i16, i32] (int_bar)), ...>;
```


  Commit: 0089f39e0fb39b3f1824c10dfe511b6c07711a50
      https://github.com/llvm/llvm-project/commit/0089f39e0fb39b3f1824c10dfe511b6c07711a50
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp

  Log Message:
  -----------
  [ProfileData] Avoid repeated hash lookups (NFC) (#110619)


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

  Changed paths:
    M llvm/lib/MCA/InstrBuilder.cpp

  Log Message:
  -----------
  [MCA] Avoid repeated hash lookups (NFC) (#110622)


  Commit: 36235cee9b48b2bf951c501f943d790469bb5804
      https://github.com/llvm/llvm-project/commit/36235cee9b48b2bf951c501f943d790469bb5804
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp

  Log Message:
  -----------
  Add a testcase for the -Wdangling-assignment-gsl warning, NFC.


  Commit: 257707b45332a8d4f30df317753cece76eca7795
      https://github.com/llvm/llvm-project/commit/257707b45332a8d4f30df317753cece76eca7795
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/test/CXX/drs/cwg29xx.cpp
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  [Clang][NFC] Add a test for CWG 2913 (#110614)

I marked DR2913 as implemented in 915df1ae, but I forgot to add a
corresponding test, so running the script would fail thereafter.


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

  Changed paths:
    M flang/include/flang/Optimizer/Support/Utils.h
    M flang/lib/Optimizer/Builder/Runtime/Reduction.cpp

  Log Message:
  -----------
  [flang][NFC] simplify dispatching of reduction runtime calls (#110479)

As part of t[he RFC to replace fir.complex usages by mlir
complex](https://discourse.llvm.org/t/rfc-flang-replace-usages-of-fir-complex-by-mlir-complex-type/82292),
this patch updates the type dispatch in Reduction.cpp to use macros to
avoid naming the types everywhere and to avoid typos when copy-pasting
the if/else chains.


  Commit: 0cf4cb4bde440586c310554d93dc09e47cb9bb79
      https://github.com/llvm/llvm-project/commit/0cf4cb4bde440586c310554d93dc09e47cb9bb79
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

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

  Log Message:
  -----------
  Revert "[clang] Fix FIXME in dynamic initializer emission, NFCI"

This reverts commit 601645c3b70e2a17d18779a3a51b8bc9ecdc9aa6.

This change wasn't NFC in practice, see
https://github.com/llvm/llvm-project/issues/110232 for details.


  Commit: 3ba4092c066b589d6c16fcca2f2826cd6f51140f
      https://github.com/llvm/llvm-project/commit/3ba4092c066b589d6c16fcca2f2826cd6f51140f
  Author: Fabian Ritter <fabian.ritter at amd.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inline-asm-mismatched-size.ll
    A llvm/test/CodeGen/AMDGPU/inlineasm-mismatched-size-error.ll
    A llvm/test/CodeGen/AMDGPU/inlineasm-mismatched-size.ll

  Log Message:
  -----------
  [AMDGPU] Check vector sizes for physical register constraints in inline asm (#109955)

For register constraints that require specific register ranges, the
width of the range should match the type of the associated
parameter/return value. With this PR, we error out when that is not the
case. Previously, these cases would hit assertions or llvm_unreachables.

The handling of register constraints that require only a single register
remains more lenient to allow narrower non-vector types for the
associated IR values. For example, constraining an i16 or i8 value to a
32-bit register is still allowed.

Fixes #101190.

---------

Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>


  Commit: 8bc8b84225765cbeb31c74ac63dff05db1be79e0
      https://github.com/llvm/llvm-project/commit/8bc8b84225765cbeb31c74ac63dff05db1be79e0
  Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
    M llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
    A llvm/test/CodeGen/SPIRV/pointers/phi-valid-operand-types-rev.ll
    A llvm/test/CodeGen/SPIRV/pointers/phi-valid-operand-types.ll

  Log Message:
  -----------
  [SPIR-V] Fix inconsistency between previously deduced element type of a pointer and function's return type (#109660)

This PR improves type inference and fixes inconsistency between
previously deduced element type of a pointer and function's return type.
It fixes https://github.com/llvm/llvm-project/issues/109401 by ensuring
that OpPhi is consistent with respect to operand types.


  Commit: 3e79c7fec0665eb0e991f41922e0bc657a0ea9ea
      https://github.com/llvm/llvm-project/commit/3e79c7fec0665eb0e991f41922e0bc657a0ea9ea
  Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    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/SPIRVPreLegalizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
    M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.h
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fun-ptr-addrcast.ll
    A llvm/test/CodeGen/SPIRV/pointers/PtrCast-in-OpSpecConstantOp.ll
    A llvm/test/CodeGen/SPIRV/pointers/PtrCast-null-in-OpSpecConstantOp.ll

  Log Message:
  -----------
  [SPIR-V] Implement OpSpecConstantOp with ptr-cast operation (#109979)

This PR reworks implementation of OpSpecConstantOp with ptr-cast
operation (PtrCastToGeneric, GenericCastToPtr). Previous implementation
didn't take into account a lot of use cases, including multiple
inclusion of pointers, reference to a pointer from OpName, etc. A
reproducer is attached as a new test case.

This PR also fixes wrong type inference for IR patterns which generate
new virtual registers without SPIRV type. Previous implementation
assumed always that result has the same address space as a source that
is not the fact, and, for example, led to impossibility to emit a
ptr-cast operation in the reproducer, because wrong type inference
rendered source and destination with the same address space, eliminating
translation of G_ADDRSPACE_CAST.


  Commit: c538d5c8b2f1236f3bbba40c1abd15cf270550a5
      https://github.com/llvm/llvm-project/commit/c538d5c8b2f1236f3bbba40c1abd15cf270550a5
  Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/ignore-llvm-intrinsic.ll

  Log Message:
  -----------
  [SPIR-V] Discard some llvm intrinsics which we do not expect to actually represent code after lowering (#110233)

There are llvm intrinsics which we do not expect to actually represent
code after lowering or which are not implemented yet but can be found in
a customer's LLVM IR input. We do not want translation to crash when
these llvm intrinsics are found, and this PR fixes the issue with
translation crash for some known cases, aligned with Khronos Translator.


  Commit: 0e3476605f06abf88b04bc9b4df0ea6bfef86840
      https://github.com/llvm/llvm-project/commit/0e3476605f06abf88b04bc9b4df0ea6bfef86840
  Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/docs/SPIRVUsage.rst
    M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/arithmetic-fence.ll

  Log Message:
  -----------
  [SPIR-V] Implement support of the SPV_EXT_arithmetic_fence SPIRV extension (#110500)

This PR implements support of the SPV_EXT_arithmetic_fence SPIRV
extension:
https://htmlpreview.github.io/?https://github.com/KhronosGroup/SPIRV-Registry/blob/main/extensions/EXT/SPV_EXT_arithmetic_fence.html.


  Commit: 670a98a1b3b357724fc458ff86e3cc780054cd58
      https://github.com/llvm/llvm-project/commit/670a98a1b3b357724fc458ff86e3cc780054cd58
  Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

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

  Log Message:
  -----------
  [AArch64] Consistently use EmitToStreamer across the AArch64AsmPrinter (#110107)

In preparation for refactoring the instruction size checks being made by
PAuth-related code, switch all instruction emission in AArch64AsmPrinter
to using EmitToStreamer function.

Introduce a single-operand overload of `EmitToStreamer(MCInst)`, as the
only MCStreamer passed as the first argument is actually `*OutStreamer`.
To decrease the number of code lines changed due to clang-format, do not
touch the existing calls to two-argument EmitToStreamer function so far.


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

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/TransformOps/VectorTransformOps.td
    M mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
    A mlir/test/Dialect/Vector/shape-cast-folder.mlir
    M mlir/test/Dialect/Vector/vector-transforms.mlir

  Log Message:
  -----------
  [mlir][vector] Add a new TD Op for patterns leveraging ShapeCastOp (#110525)

Adds a new Transform Dialect Op that collects patters for dropping unit
dims from various Ops:
  * `transform.apply_patterns.vector.drop_unit_dims_with_shape_cast`.

It excludes patterns for vector.transfer Ops - these are collected
under:
  * `apply_patterns.vector.rank_reducing_subview_patterns`,

and use ShapeCastOp _and_ SubviewOp to reduce the rank (and to eliminate
unit dims).

This new TD Ops allows us to test the "ShapeCast folder" pattern in
isolation. I've extracted the only test that I could find for that
folder from "vector-transforms.mlir" and moved it to a dedicated file:
"shape-cast-folder.mlir". I also added a test case with scalable
vectors.

Changes in VectorTransforms.cpp are not needed (added a comment with
a TODO + ordered the patterns alphabetically). I am Including them here
to avoid a separate PR.


  Commit: 308c9a9451aaf8673b2c2dca6f4de384a3a06f37
      https://github.com/llvm/llvm-project/commit/308c9a9451aaf8673b2c2dca6f4de384a3a06f37
  Author: CarolineConcatto <caroline.concatto at arm.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/include/clang/Basic/arm_sme.td
    A clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_write_lane_zt.c
    M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_imm.cpp
    M llvm/include/llvm/IR/IntrinsicsAArch64.td
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
    M llvm/lib/Target/AArch64/SMEInstrFormats.td
    A llvm/test/CodeGen/AArch64/sme2-intrinsics-write-zt.ll

  Log Message:
  -----------
  [Clang][LLVM][AArch64] Add intrinsic for MOVT SME2 instruction (#97602)

This patch adds these intrinsics:

  // Variants are also available for:
  // [_s8], [_u16], [_s16], [_u32], [_s32], [_u64], [_s64]
  // [_bf16], [_f16], [_f32], [_f64]
void svwrite_lane_zt[_u8](uint64_t zt0, svuint8_t zt, uint64_t idx)
__arm_streaming __arm_inout("zt0");
void svwrite_zt[_u8](uint64_t zt0, svuint8_t zt) __arm_streaming
__arm_inout("zt0");

according to PR#324[1]
[1]https://github.com/ARM-software/acle/pull/324


  Commit: 09b8dbfa80d62e64efb09bd166324270c96badf9
      https://github.com/llvm/llvm-project/commit/09b8dbfa80d62e64efb09bd166324270c96badf9
  Author: Daniel Krupp <daniel.krupp at ericsson.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/docs/analyzer/checkers.rst
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/include/clang/StaticAnalyzer/Core/CheckerManager.h
    M clang/lib/StaticAnalyzer/Checkers/DivZeroChecker.cpp
    A clang/test/Analysis/divzero-tainted-div-difference.c
    M clang/test/Analysis/taint-diagnostic-visitor.c
    M clang/test/Analysis/taint-generic.c

  Log Message:
  -----------
  [analyzer] Add optin.taint.TaintedDiv checker (#106389)

Tainted division operation is separated out from the core.DivideZero
checker into the optional optin.taint.TaintedDiv checker. The checker
warns when the denominator in a division operation is an attacker
controlled value.


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

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/BuiltinsX86.def
    M clang/include/clang/Basic/BuiltinsX86_64.def
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/Headers/bmi2intrin.h
    M clang/test/CodeGen/X86/bmi2-builtins.c

  Log Message:
  -----------
  [clang][x86] Add constexpr support for PDEP/PEXT intrinsics (#110535)


  Commit: 091dc23a2f417ba556358784d084b13fd80c0a85
      https://github.com/llvm/llvm-project/commit/091dc23a2f417ba556358784d084b13fd80c0a85
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/lib/Analysis/BasicAliasAnalysis.cpp

  Log Message:
  -----------
  BasicAA: update comments in a routine (NFC) (#110492)

The comments in isObjectSmallerThan are outdated, as it is only ever
called with the underlying object as the first argument. Update the
comments to reflect this.


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

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    A llvm/test/Transforms/InstCombine/instcombine-verify-known-bits.ll

  Log Message:
  -----------
  [InstCombine] Fix SimplifyDemandedBits recursion cutoff for Arguments

There was a discrepancy between how SimplifyDemandedBits and
computeKnownBits handled the Argument case. computeKnownBits()
would use information from range attributes even once the
recursion limit has been reached.

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


  Commit: 39b2e35f3da7bfe3acc67f637edfdfd383f9bb03
      https://github.com/llvm/llvm-project/commit/39b2e35f3da7bfe3acc67f637edfdfd383f9bb03
  Author: Alex Bradbury <asb at igalia.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/unaligned-load-store.ll

  Log Message:
  -----------
  [RISCV][test] Precommit tests showing codegen for unaligned load/store with zbkb

We have missed opportunities for selecting pack* instructions, that will
be addressed in future patches.


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

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/X86/pmulh.ll

  Log Message:
  -----------
  Revert 412d59f0a510a05c08ed45545943dfd2f901bc5d "[DAG] combineShiftToMULH - handle zext nneg as sext"

Reverting until I can investigate a miscompilation reported by @mstorsjo


  Commit: 47861fa3f557b8017529de530914065034dbcde7
      https://github.com/llvm/llvm-project/commit/47861fa3f557b8017529de530914065034dbcde7
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    A llvm/test/Assembler/amdgcn-intrinsic-attributes.ll

  Log Message:
  -----------
  AMDGPU: Mark ds append/consume intrinsics with align 4 (#110533)

Manual says the low 2 bits of the pointer are ignored.


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

  Changed paths:
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/unittests/Symbol/TestTypeSystemClang.cpp

  Log Message:
  -----------
  [lldb][TypeSystemClang] Add warning and defensive checks when ASTContext is not fully initialized (#110481)

As this comment around target initialization implies:
```
  // This can be NULL if we don't know anything about the architecture or if
  // the target for an architecture isn't enabled in the llvm/clang that we
  // built
```

There are cases where we might fail to call `InitBuiltinTypes` when
creating the backing `ASTContext` for a `TypeSystemClang`. If that
happens, the builtins `QualType`s, e.g., `VoidPtrTy`/`IntTy`/etc., are
not initialized and dereferencing them as we do in
`GetBuiltinTypeForEncodingAndBitSize` (and other places) will lead to
nullptr-dereferences. Example backtrace:
```
(lldb) run
Assertion failed: (!isNull() && "Cannot retrieve a NULL type pointer"), function getCommonPtr, file Type.h, line 958.
Process 2680 stopped
* thread #15, name = '<lldb.process.internal-state(pid=2712)>', stop reason = hit program assert
    frame #4: 0x000000010cdf3cdc liblldb.20.0.0git.dylib`DWARFASTParserClang::ExtractIntFromFormValue(lldb_private::CompilerType const&, lldb_private::plugin::dwarf::DWARFFormValue const&) const (.cold.1) + 
liblldb.20.0.0git.dylib`DWARFASTParserClang::ParseObjCMethod(lldb_private::ObjCLanguage::MethodName const&, lldb_private::plugin::dwarf::DWARFDIE const&, lldb_private::CompilerType, ParsedDWARFTypeAttributes
, bool) (.cold.1):
->  0x10cdf3cdc <+0>:  stp    x29, x30, [sp, #-0x10]!
    0x10cdf3ce0 <+4>:  mov    x29, sp
    0x10cdf3ce4 <+8>:  adrp   x0, 545
    0x10cdf3ce8 <+12>: add    x0, x0, #0xa25 ; "ParseObjCMethod"
Target 0: (lldb) stopped.
(lldb) bt
* thread #15, name = '<lldb.process.internal-state(pid=2712)>', stop reason = hit program assert
    frame #0: 0x0000000180d08600 libsystem_kernel.dylib`__pthread_kill + 8
    frame #1: 0x0000000180d40f50 libsystem_pthread.dylib`pthread_kill + 288
    frame #2: 0x0000000180c4d908 libsystem_c.dylib`abort + 128
    frame #3: 0x0000000180c4cc1c libsystem_c.dylib`__assert_rtn + 284
  * frame #4: 0x000000010cdf3cdc liblldb.20.0.0git.dylib`DWARFASTParserClang::ExtractIntFromFormValue(lldb_private::CompilerType const&, lldb_private::plugin::dwarf::DWARFFormValue const&) const (.cold.1) + 
    frame #5: 0x0000000109d30acc liblldb.20.0.0git.dylib`lldb_private::TypeSystemClang::GetBuiltinTypeForEncodingAndBitSize(lldb::Encoding, unsigned long) + 1188
    frame #6: 0x0000000109aaaed4 liblldb.20.0.0git.dylib`DynamicLoaderMacOS::NotifyBreakpointHit(void*, lldb_private::StoppointCallbackContext*, unsigned long long, unsigned long long) + 384
```

This patch adds a one-time user-visible warning for when we fail to
initialize the AST to indicate that initialization went wrong for the
given target. Additionally, we add checks for whether one of the
`ASTContext` `QualType`s is invalid before dereferencing any builtin
types.

The warning would look as follows:
```
(lldb) target create "a.out"
Current executable set to 'a.out' (arm64).
(lldb) b main
warning: Failed to initialize builtin ASTContext types for target 'some-unknown-triple'. Printing variables may behave unexpectedly.
Breakpoint 1: where = a.out`main + 8 at stepping.cpp:5:14, address = 0x0000000100003f90
```

rdar://134869779


  Commit: 7147e88f5502c4430e386247e92937a94b3e7c5b
      https://github.com/llvm/llvm-project/commit/7147e88f5502c4430e386247e92937a94b3e7c5b
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp

  Log Message:
  -----------
  [clang][bytecode] Implement lzcnt/tzcnt/bzhi builtins (#110639)


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

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Headers/bmiintrin.h
    M clang/test/CodeGen/X86/bmi-builtins.c

  Log Message:
  -----------
  [clang][x86] Add constexpr support for all remaining BMI1 intrinsics (#110581)

BEXTR/TZCNT are already handled, so we just need to tag the rest of the intrinsics, which are all expanded to generic patterns.


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

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-comb-all-active-lanes-cvt.ll

  Log Message:
  -----------
  [LLVM][InstCombine][SVE] fcvtnt(a,all_active,b) != fcvtnt(undef,all_active,b) (#110278)

The "narrowing top" convert instructions leave the bottom half of active
elements untouched and thus the first paramater of their associated
intrinsic remains live even when there are no inactive lanes.


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

  Changed paths:
    M clang/lib/Headers/bmiintrin.h

  Log Message:
  -----------
  [clang][x86] Fix bad merge in #110581


  Commit: 79ecb814d0c929a66ad92c7b3e91191f01247ac1
      https://github.com/llvm/llvm-project/commit/79ecb814d0c929a66ad92c7b3e91191f01247ac1
  Author: lntue <lntue at google.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M libc/src/math/generic/pow.cpp
    M libc/src/math/generic/powf.cpp
    M libc/test/src/math/smoke/pow_test.cpp
    M libc/test/src/math/smoke/powf_test.cpp

  Log Message:
  -----------
  [libc][math] Fix exceptional cases pow(-0, 1/2) and pow(-inf, 1/2). (#110566)


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/SystemZ/revec-fix-109835.ll

  Log Message:
  -----------
  [SLP][REVEC] getTypeSizeInBits should apply to scalar type instead of FixedVectorType. (#110610)

reference: https://github.com/llvm/llvm-project/issues/109835


  Commit: 7b8f7beadcf1814b1f1aa985d344ca17747531a7
      https://github.com/llvm/llvm-project/commit/7b8f7beadcf1814b1f1aa985d344ca17747531a7
  Author: tigbr <160260245+tigbr at users.noreply.github.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
    M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
    A clang-tools-extra/clang-tidy/bugprone/TaggedUnionMemberCountCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/TaggedUnionMemberCountCheck.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    A clang-tools-extra/docs/clang-tidy/checks/bugprone/tagged-union-member-count.rst
    M clang-tools-extra/docs/clang-tidy/checks/list.rst
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count-counting-enum-heuristic-bad-config.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count-counting-enum-heuristic-is-disabled.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count-counting-enum-heuristic-is-enabled.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count-counting-enum-prefixes-and-suffixes.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count-counting-enum-prefixes.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count-counting-enum-suffixes.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count-strictmode-is-disabled.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count-strictmode-is-enabled.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count.c
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count.m
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count.mm

  Log Message:
  -----------
  [clang-tidy] Add new check bugprone-tagged-union-member-count (#89925)

This patch introduces a new check to find mismatches between the number
of data members in a union and the number enum values present in
variant-like structures.

Variant-like types can look something like this:

```c++
struct variant {
    enum {
        tag1,
        tag2,
    } kind;
    union {
        int i;
        char c;
    } data;
};
```

The kind data member of the variant is supposed to tell which data
member of the union is valid, however if there are fewer enum values
than union members, then it is likely a mistake.

The opposite is not that obvious, because it might be fine to have more
enum values than union data members, but for the time being I am curious
how many real bugs can be caught if we give a warning regardless.

This patch also contains a heuristic where we try to guess whether the
last enum constant is actually supposed to be a tag value for the
variant or whether it is just holding how many enum constants have been
created.

Patch by Gábor Tóthvári!


  Commit: 574e2dc5f14bd1ac8a557d5e31f4fe7d2d6cb5ae
      https://github.com/llvm/llvm-project/commit/574e2dc5f14bd1ac8a557d5e31f4fe7d2d6cb5ae
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/bugprone/BUILD.gn

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


  Commit: a88901838aad686002bb4bcc4da4625b45fb7606
      https://github.com/llvm/llvm-project/commit/a88901838aad686002bb4bcc4da4625b45fb7606
  Author: Alex Bradbury <asb at igalia.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/include/llvm/ADT/APFloat.h
    M llvm/unittests/ADT/APFloatTest.cpp

  Log Message:
  -----------
  [APFloat] Correct semantics of minimum/maximum for signaling NaN arguments (#109976)

The minimum and maximum operations were introduced in
https://reviews.llvm.org/D52764 alongside the intrinsics. The question
of NaN propagation was discussed at the time, but the resulting
semantics don't seem to match what was ultimately agreed in IEEE754-2019
or the description we now have in the LangRef at
<https://llvm.org/docs/LangRef.html#llvm-min-intrinsics-comparation>.

Essentially, the APFloat implementation doesn't quiet a signaling NaN
input when it should in order to match the LangRef and IEEE spec.


  Commit: 91ef1f7caa4c8029952fd6d36e0858811d286bab
      https://github.com/llvm/llvm-project/commit/91ef1f7caa4c8029952fd6d36e0858811d286bab
  Author: Sergei Lebedev <185856+superbobry at users.noreply.github.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M mlir/python/mlir/_mlir_libs/_mlir/__init__.pyi
    M mlir/python/mlir/_mlir_libs/_mlir/dialects/pdl.pyi
    M mlir/python/mlir/_mlir_libs/_mlir/dialects/quant.pyi
    M mlir/python/mlir/_mlir_libs/_mlir/dialects/transform/__init__.pyi
    M mlir/python/mlir/_mlir_libs/_mlir/ir.pyi
    M mlir/python/mlir/_mlir_libs/_mlir/passmanager.pyi
    M mlir/python/mlir/_mlir_libs/_mlirExecutionEngine.pyi

  Log Message:
  -----------
  A few tweaks to the MLIR .pyi files (#110488)


  Commit: c4d9cd8b747cb399a61dd987eb95ad518eb15448
      https://github.com/llvm/llvm-project/commit/c4d9cd8b747cb399a61dd987eb95ad518eb15448
  Author: Peter Smith <peter.smith at arm.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M lld/ELF/Arch/AArch64.cpp
    M lld/ELF/Relocations.cpp
    M lld/ELF/Relocations.h
    M lld/ELF/Target.h
    M lld/ELF/Thunks.cpp
    M lld/ELF/Thunks.h
    A lld/test/ELF/aarch64-thunk-bti.s

  Log Message:
  -----------
  [LLD][ELF][AArch64] Add BTI Aware long branch thunks (#108989)

When Branch Target Identification BTI is enabled all indirect branches
must target a BTI instruction. A long branch thunk is a source of
indirect branches. To date LLD has been assuming that the object
producer is responsible for putting a BTI instruction at all places the
linker might generate an indirect branch to. This is true for clang, but
not for GCC. GCC will elide the BTI instruction when it can prove that
there are no indirect branches from outside the translation unit(s). GNU
ld was fixed to generate a landing pad stub (gnu ld speak for thunk) for
the destination when a long range stub was needed [1].

This means that using GCC compiled objects with LLD may lead to LLD
generating an indirect branch to a location without a BTI. The ABI [2]
has also been clarified to say that it is a static linker's
responsibility to generate a landing pad when the target does not have a
BTI.

This patch implements the same mechansim as GNU ld. When the output ELF
file is setting the
GNU_PROPERTY_AARCH64_FEATURE_1_BTI property, then we check the
destination to see if it has a BTI instruction. If it does not we
generate a landing pad consisting of:
BTI c
B <destination>

The B <destination> can be elided if the thunk can be placed so that
control flow drops through. For example:
BTI c
<destination>:
This will be common when -ffunction-sections is used.

The landing pad thunks are effectively alternative entry points for the
function. Direct branches are unaffected but any linker generated
indirect branch needs to use the alternative. We place these as close as
possible to the destination section.

There is some further optimization possible. Consider the case:
.text
fn1
...
fn2
...

If we need landing pad thunks for both fn1 and fn2 we could order them
so that the thunk for fn1 immediately precedes fn1. This could save a
single branch. However I didn't think that would be worth the additional
complexity.

[1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106671
[2] https://github.com/ARM-software/abi-aa/issues/196


  Commit: 0344123ffb47c88c896f5d2207cd53491a9823ed
      https://github.com/llvm/llvm-project/commit/0344123ffb47c88c896f5d2207cd53491a9823ed
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/widen-call-with-intrinsic-or-libfunc.ll

  Log Message:
  -----------
  [VPlan] Manage FMFs for VPWidenCall via VPRecipeWithIRFlags. (NFC)

Update VPWidenCallRecipe to manage fast-math flags directly via
VPRecipeWithIRFlags. This addresses a TODO and allows adjusting the FMFs
directly on the recipe. Also fixes printing for flags for
VPWidenCallRecipe.


  Commit: 4b3ba64ba71c06b6bc9db347a66a7316f5edbcc4
      https://github.com/llvm/llvm-project/commit/4b3ba64ba71c06b6bc9db347a66a7316f5edbcc4
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/ScalarEvolutionExpander.h
    M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
    M llvm/test/CodeGen/WebAssembly/simd-shift-in-loop.ll
    M llvm/test/Transforms/LoopStrengthReduce/AMDGPU/preserve-addrspace-assert.ll
    M llvm/test/Transforms/LoopStrengthReduce/ARM/illegal-addr-modes.ll
    M llvm/unittests/Transforms/Utils/ScalarEvolutionExpanderTest.cpp

  Log Message:
  -----------
  [SCEVExpander] Clear flags when reusing GEP (#109293)

As pointed out in the review of #102133, SCEVExpander currently
incorrectly reuses GEP instructions that have poison-generating flags
set. Fix this by clearing the flags on the reused instruction.


  Commit: b2a6814126641baf8ec78d61a4c9d813479a4272
      https://github.com/llvm/llvm-project/commit/b2a6814126641baf8ec78d61a4c9d813479a4272
  Author: James Chesterman <James.Chesterman at arm.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

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

  Log Message:
  -----------
  [AArch64][NEON][SVE] Lower i8 to i64 partial reduction to a dot product (#110220)

An i8 to i64 partial reduction can instead be done with an i8 to i32 dot
product followed by a sign extension.


  Commit: ba340b2f475a2165430636d5b2510db3d6dd1f86
      https://github.com/llvm/llvm-project/commit/ba340b2f475a2165430636d5b2510db3d6dd1f86
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M lld/COFF/Driver.cpp
    M lld/test/COFF/Inputs/loadconfig-arm64ec.s
    A lld/test/COFF/arm64ec-loadcfg.s

  Log Message:
  -----------
  [LLD][COFF] Define remaining ARM64EC builtin symbols (#110640)

__arm64x_native_entrypoint and __guard_check_icall_a64n_fptr are
relevant only for hybrid ARM64X images, we need support for separate
namespaces before we can support them.

__hybrid_image_info_bitfield is 0 in MSVC linker in all tests I tried.


  Commit: b8b036a7fe5b6e7ec306e3b80367e22d157a492b
      https://github.com/llvm/llvm-project/commit/b8b036a7fe5b6e7ec306e3b80367e22d157a492b
  Author: Chris B <chris.bieneman at me.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/lib/AST/Decl.cpp
    M clang/test/CodeGenHLSL/builtins/wave_get_lane_index_do_while.hlsl
    M clang/test/Options/enable_16bit_types_validation_spirv.hlsl

  Log Message:
  -----------
  [HLSL] Treat `main` as any other function (#110546)

HLSL doesn't distinguish `main` from any other function. It does treat
entry points special, but they're not required to be called `main` so we
have a different attribute annotation to mark them.

At the moment this change really just changes the mangling of functions
named `main` in the Itanium mangling.

Fixes #110517

---------

Co-authored-by: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>


  Commit: a57a83fc15219184ea45fc026b917888088d43f2
      https://github.com/llvm/llvm-project/commit/a57a83fc15219184ea45fc026b917888088d43f2
  Author: B I Mohammed Abbas <the10minoverview at gmail.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M compiler-rt/lib/builtins/CMakeLists.txt
    A compiler-rt/lib/builtins/extendhfxf2.c
    M compiler-rt/lib/builtins/macho_embedded/common.txt
    A compiler-rt/test/builtins/Unit/extendhfxf2_test.c
    M llvm/utils/gn/secondary/compiler-rt/lib/builtins/BUILD.gn

  Log Message:
  -----------
  Add missing extendhfxf2 in compiler rt (#109090)

Issue: #105181
extendhfxf2 calls extendhfXfy to convert _Float16 to double, then type
casts this converted value to long double.
__uint128_t may not be available on all architectures. Thus I din't use
extendhfXfy to widen precision to 128 bits.


  Commit: cab8c876920fb1bcd9363e5b7a0cda1da46d7e7b
      https://github.com/llvm/llvm-project/commit/cab8c876920fb1bcd9363e5b7a0cda1da46d7e7b
  Author: lntue <lntue at google.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M libc/test/src/stdio/sprintf_test.cpp

  Log Message:
  -----------
  [libc] Fix race conditions in sprintf_test. (#110624)


  Commit: 14c4f28ec109ec84158d60a74d3d1b7bfa411c77
      https://github.com/llvm/llvm-project/commit/14c4f28ec109ec84158d60a74d3d1b7bfa411c77
  Author: Alex Bradbury <asb at igalia.com>
  Date:   2024-10-01 (Tue, 01 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/abdu.ll
    M llvm/test/CodeGen/RISCV/add-before-shl.ll
    M llvm/test/CodeGen/RISCV/atomic-rmw-discard.ll
    M llvm/test/CodeGen/RISCV/atomic-rmw.ll
    M llvm/test/CodeGen/RISCV/atomic-signext.ll
    M llvm/test/CodeGen/RISCV/atomicrmw-cond-sub-clamp.ll
    M llvm/test/CodeGen/RISCV/atomicrmw-uinc-udec-wrap.ll
    M llvm/test/CodeGen/RISCV/callee-saved-fpr32s.ll
    M llvm/test/CodeGen/RISCV/callee-saved-fpr64s.ll
    M llvm/test/CodeGen/RISCV/callee-saved-gprs.ll
    M llvm/test/CodeGen/RISCV/calling-conv-ilp32-ilp32f-ilp32d-common.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/forced-atomics.ll
    M llvm/test/CodeGen/RISCV/fpclamptosat.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/misched-load-clustering.ll
    M llvm/test/CodeGen/RISCV/mul.ll
    M llvm/test/CodeGen/RISCV/nontemporal.ll
    M llvm/test/CodeGen/RISCV/overflow-intrinsics.ll
    M llvm/test/CodeGen/RISCV/push-pop-popret.ll
    M llvm/test/CodeGen/RISCV/reduction-formation.ll
    M llvm/test/CodeGen/RISCV/rv32zbb.ll
    M llvm/test/CodeGen/RISCV/rv64i-shift-sext.ll
    M llvm/test/CodeGen/RISCV/rvv/expand-no-v.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vector-i8-index-cornercase.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-elen.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-buildvec.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-interleaved-access-zve32x.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-strided-load-store-asm.ll
    M llvm/test/CodeGen/RISCV/rvv/fpclamptosat_vec.ll
    M llvm/test/CodeGen/RISCV/scmp.ll
    M llvm/test/CodeGen/RISCV/shifts.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-store-check.ll
    M llvm/test/CodeGen/RISCV/ucmp.ll
    M llvm/test/CodeGen/RISCV/umulo-128-legalisation-lowering.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.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 load clustering by default (#73789)

We believe this is neutral or slightly better in the majority of cases.


  Commit: 9f81acf4ef39e05bb2833cb3d79914940f31ac6c
      https://github.com/llvm/llvm-project/commit/9f81acf4ef39e05bb2833cb3d79914940f31ac6c
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/test/CodeGen/Mips/fp16-promote.ll

  Log Message:
  -----------
  [Mips] Regenerate test checks (NFC)

Some of these check lines are insufficient to determine correctness.
Generate full check lines instead.

To reduce noise, add nounwind and use static relocation model.


  Commit: a59e5d8115bce7d75330c5206b321ea88f183e09
      https://github.com/llvm/llvm-project/commit/a59e5d8115bce7d75330c5206b321ea88f183e09
  Author: eric-xtang1008 <eric.tang at starfivetech.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/include/llvm/IR/Constants.h
    M llvm/lib/IR/ConstantFold.cpp
    M llvm/lib/IR/Constants.cpp

  Log Message:
  -----------
  [ConstantFold][RFC] Add AllowLHSConstant parameter in getBinOpAbsorber (#109736)

Add a AllowLHSConstant parameter in getBinOpAbsorber function for
supporting more binary operators.


  Commit: 2e559c3dceef94bcab7a112cc5e6600837851dab
      https://github.com/llvm/llvm-project/commit/2e559c3dceef94bcab7a112cc5e6600837851dab
  Author: c8ef <c8ef at outlook.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/tools/scan-build-py/tests/unit/test_report.py

  Log Message:
  -----------
  [NFC] Correct the misuse of the API in the Clang test-report script (#108725)

ref:
https://docs.python.org/3/library/unittest.html#unittest.TestCase.assertEqual


  Commit: f3d58f4161b86a479f68acb453e9622911c688a0
      https://github.com/llvm/llvm-project/commit/f3d58f4161b86a479f68acb453e9622911c688a0
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-10-01 (Tue, 01 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
    A 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:
  -----------
  Revert "[libc++] LWG3870: Remove `voidify` (#110355)" (#110587)

This reverts commit 78f9a8b82d772ff04a12ef95f2c9d31ee8f3e409.

This caused the LLDB test `TestDataFormatterGenericOptional.py` to fail, and we need
a bit more time to look into it.


  Commit: 007780f31e8585a7bed45bad72dc11aeca9600e4
      https://github.com/llvm/llvm-project/commit/007780f31e8585a7bed45bad72dc11aeca9600e4
  Author: lntue <lntue at google.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M compiler-rt/lib/builtins/CMakeLists.txt
    R compiler-rt/lib/builtins/extendhfxf2.c
    M compiler-rt/lib/builtins/macho_embedded/common.txt
    R compiler-rt/test/builtins/Unit/extendhfxf2_test.c
    M llvm/utils/gn/secondary/compiler-rt/lib/builtins/BUILD.gn

  Log Message:
  -----------
  Revert "Add missing extendhfxf2 in compiler rt" (#110662)

Reverts llvm/llvm-project#109090


  Commit: 8f2aa9dbad7c1400f66e1ee1c43b071a1905f3e6
      https://github.com/llvm/llvm-project/commit/8f2aa9dbad7c1400f66e1ee1c43b071a1905f3e6
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

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

  Log Message:
  -----------
  workflow/release-binaries: Checkout sources before downloading artifacts (#109349)

The actions/checkout step will clear the current directory, so we need
to checkout the sources first so that the downloaded artifacts won't be
deleted.


  Commit: 9cd289fa4a7355e1bfd3129ba9c755f979fd0a72
      https://github.com/llvm/llvm-project/commit/9cd289fa4a7355e1bfd3129ba9c755f979fd0a72
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M .github/workflows/release-documentation.yml

  Log Message:
  -----------
  workflows/release-documentation: Submit a pull request with changes (#108247)

This is instead of pushing directly. Creating a pull request is slightly
more work for the release manager, but it is more secure as we no longer
need a secret with write access to the www-releases repo.


  Commit: fe61dbf1d3350d11ab975e45f805f3bfe885b8b7
      https://github.com/llvm/llvm-project/commit/fe61dbf1d3350d11ab975e45f805f3bfe885b8b7
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/Type.h
    M clang/include/clang/AST/TypeProperties.td
    M clang/include/clang/Basic/AMDGPUTypes.def
    M clang/include/clang/Serialization/ASTBitCodes.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/AST/MicrosoftMangle.cpp
    M clang/lib/AST/NSAPI.cpp
    M clang/lib/AST/PrintfFormatString.cpp
    M clang/lib/AST/Type.cpp
    M clang/lib/AST/TypeLoc.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDebugInfo.h
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M clang/lib/Index/USRGeneration.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Serialization/ASTCommon.cpp
    M clang/lib/Serialization/ASTReader.cpp
    M clang/tools/libclang/CIndex.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp

  Log Message:
  -----------
  [AMDGPU] Specify width and align for all AMDGPU builtin types. NFC. (#109656)

This will be used in ASTContext::getTypeInfo which needs this
information for all builtin types, not just pointers.


  Commit: 936142e0e77902802005e2129cd8389059d849fd
      https://github.com/llvm/llvm-project/commit/936142e0e77902802005e2129cd8389059d849fd
  Author: vdonaldson <37090318+vdonaldson at users.noreply.github.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/runtime/Float128Math/CMakeLists.txt
    M flang/runtime/Float128Math/math-entries.h
    A flang/runtime/Float128Math/nearbyint.cpp
    A flang/test/Lower/Intrinsics/ieee_rint_int.f90

  Log Message:
  -----------
  [flang] IEEE_RINT, IEEE_INT (#110509)

IEEE_RINT rounds a real value to an integer-valued real.

IEEE_INT rounds a real value to an integer value.
The primary IEEE_INT result is generated with a call to IEEE_RINT.


  Commit: 2672037e3666ba2153ca4e9de75675f72ea08b22
      https://github.com/llvm/llvm-project/commit/2672037e3666ba2153ca4e9de75675f72ea08b22
  Author: Brox Chen <guochen2 at amd.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/VOP1Instructions.td
    M llvm/lib/Target/AMDGPU/VOP2Instructions.td
    M llvm/lib/Target/AMDGPU/VOP3Instructions.td
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-ashr.s16.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-lshr.s16.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-pattern-smed3.s16.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-pattern-umed3.s16.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-shl.s16.mir
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_dpp8.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_dpp8.txt

  Log Message:
  -----------
  [AMDGPU][True16][MC] Support VOP3 only instructions with true16 and fake16 (#109891)

Update VOP3 only instructions with true16 and fake16 formats. 

This patch includes instructions:
V_MUL_LO_U16
V_MAX_U16
V_MAX_I16
V_MIN_U16
V_MIN_I16
V_LSHLREV_B16
V_LSHRREV_B16
V_ASHRREV_I16


  Commit: be6b4f69799861dc1f175a53c9a15d3c8afd3ed2
      https://github.com/llvm/llvm-project/commit/be6b4f69799861dc1f175a53c9a15d3c8afd3ed2
  Author: Steven Perron <stevenperron at google.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/test/CodeGenHLSL/semantics/DispatchThreadID.hlsl

  Log Message:
  -----------
  [HLSL][SPIRV] Fix calling convention for call in entry function. (#110542)

Fix the calling convention used for the call in the entry point
wrapper. No calling convention is currently set. It can easily use the
calling convention of the function that is being called.

Without this, there is a mismatch in the calling convention between the
call site and the callee. This is undefined behaviour.


  Commit: bb78a0b33496fb0140cec1a92a689505f53253b7
      https://github.com/llvm/llvm-project/commit/bb78a0b33496fb0140cec1a92a689505f53253b7
  Author: c8ef <c8ef at outlook.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/test/CXX/expr/expr.prim/expr.prim.req/requires-expr.cpp

  Log Message:
  -----------
  [clang] Fix the local parameter of void type inside the `Requires` expression. (#109831)

Fixes #109538.

In this patch, we introduce diagnostic for required expression
parameters in the same way as function parameters, fix the issue of
handling void type parameters, and align the behavior with GCC and other
compilers.


  Commit: 677e8cd6ff51e178bcb4669104763f71a2de106c
      https://github.com/llvm/llvm-project/commit/677e8cd6ff51e178bcb4669104763f71a2de106c
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-10-01 (Tue, 01 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
    M libcxxabi/lib/cxxabiv1.exp
    M libcxxabi/lib/itanium-base.exp
    A libcxxabi/lib/symbols-not-reexported.exp
    M libcxxabi/src/CMakeLists.txt

  Log Message:
  -----------
  [libc++] Avoid re-exporting a few specific symbols from libc++abi (#109054)

In 6a884a9aef39, I synchronized the export list of libc++abi to the
export list of libc++. From the linker's perspective, this caused these
symbols to be taken from libc++.dylib instead of libc++abi.dylib.

However, that can be problematic when back-deploying. Indeed, this means
that the linker will encode an undefined reference to be fullfilled by
libc++.dylib, but when backdeploying against an older system, that
symbol might only be available in libc++abi.dylib.

Most of the symbols that started being re-exported after 6a884a9aef39
turn out to be implementation details of libc++abi, so nobody really
depends on them and this back-deployment issue is inconsequential.

However, we ran into issues with a few of these symbols while testing
LLVM 19, which led to this patch. This slipped between the cracks and
that is why the patch is coming so long after the original patch landed.

In the future, a follow-up cleanup would be to stop exporting most of
the _cxxabiv1_foo_type_infoE symbols from both libc++abi and libc++
since they are implementation details that nobody should be relying on.

rdar://131984512


  Commit: 97da34e0157d928e3cd0e9722b40ccf0d5769b5b
      https://github.com/llvm/llvm-project/commit/97da34e0157d928e3cd0e9722b40ccf0d5769b5b
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2024-10-01 (Tue, 01 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/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/ParserOpenACC/parse-clauses.cpp
    M clang/test/SemaOpenACC/compute-construct-device_type-clause.c
    M clang/test/SemaOpenACC/loop-construct-auto_seq_independent-clauses.c
    A clang/test/SemaOpenACC/loop-construct-collapse-ast.cpp
    A clang/test/SemaOpenACC/loop-construct-collapse-clause.cpp
    M clang/test/SemaOpenACC/loop-construct-device_type-clause.c
    M clang/tools/libclang/CIndex.cpp

  Log Message:
  -----------
  [OpenACC] Add 'collapse' clause AST/basic Sema implementation (#109461)

The 'collapse' clause on a 'loop' construct is used to specify how many
nested loops are associated with the 'loop' construct. It takes an
optional 'force' tag, and an integer constant expression as arguments.

There are many other restrictions based on the contents of the loop/etc,
but those are implemented in followup patches, for now, this patch just
adds the AST node and does basic argument checking on the loop-count.


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

  Changed paths:
    M libcxx/utils/ci/run-buildbot

  Log Message:
  -----------
  [libc++] Run additional LLDB data formatters tests as part of libc++'s CI (#110570)


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

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

  Log Message:
  -----------
  [NFC] Fix line width to fit in 80 columns (#110605)


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

  Changed paths:
    M clang/utils/TableGen/TableGen.cpp
    M libc/utils/HdrGen/Main.cpp
    M llvm/include/llvm/TableGen/Main.h
    M llvm/lib/TableGen/TableGenBackendSkeleton.cpp
    M mlir/lib/Tools/mlir-tblgen/MlirTblgenMain.cpp

  Log Message:
  -----------
  [TableGen] Change TableGenMain to use const RecordKeeper (#110578)

Change TableGenMain's `MainFn` argument to be a function that accepts a
const reference to RecordKeeper.

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: 017c2aba61a2a0c97c7e71aa7610de7f3c0150e6
      https://github.com/llvm/llvm-project/commit/017c2aba61a2a0c97c7e71aa7610de7f3c0150e6
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/utils/TableGen/ASTTableGen.h
    M clang/utils/TableGen/ClangAttrEmitter.cpp

  Log Message:
  -----------
  [Clang][TableGen] Change ClangAttrEmitter to use const Record * (#110584)

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: 52e7c699a5a0cbc157773cd1790a669d14d681cf
      https://github.com/llvm/llvm-project/commit/52e7c699a5a0cbc157773cd1790a669d14d681cf
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/utils/TableGen/ClangDiagnosticsEmitter.cpp

  Log Message:
  -----------
  [Clang][TableGen] Change ClangDiagnosticEmitter to use const Record * (#110585)

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: 5831eed8d038951eee0f9379de001a55ce352eb0
      https://github.com/llvm/llvm-project/commit/5831eed8d038951eee0f9379de001a55ce352eb0
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/utils/TableGen/ClangOpcodesEmitter.cpp

  Log Message:
  -----------
  [Clang][TableGen] Change Opcodes Emitter to use const Record * (#110588)

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: fdfd326a012f76bcab37e09e2d452fb379827676
      https://github.com/llvm/llvm-project/commit/fdfd326a012f76bcab37e09e2d452fb379827676
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/utils/TableGen/ClangOpenCLBuiltinEmitter.cpp

  Log Message:
  -----------
  [Clang][LLVM] Change OpenCL Emitter to use const Record * (#110590)

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: 9d95e2614e425f154cb5720d9eb276c25a26524e
      https://github.com/llvm/llvm-project/commit/9d95e2614e425f154cb5720d9eb276c25a26524e
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/include/llvm/TableGen/Record.h
    M llvm/lib/TableGen/Record.cpp
    M llvm/lib/TableGen/TGParser.cpp
    M llvm/lib/TableGen/TGParser.h
    M llvm/utils/TableGen/Common/CodeGenRegisters.cpp
    M llvm/utils/TableGen/SearchableTableEmitter.cpp

  Log Message:
  -----------
  [TableGen] Change all type pointers to const (#110602)

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: 2469d7e361a2b7c8c814665a69dba09a4b17813a
      https://github.com/llvm/llvm-project/commit/2469d7e361a2b7c8c814665a69dba09a4b17813a
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/include/llvm/IR/Intrinsics.h
    M llvm/lib/IR/CMakeLists.txt
    M llvm/lib/IR/Function.cpp
    M llvm/lib/IR/IntrinsicInst.cpp
    A llvm/lib/IR/Intrinsics.cpp

  Log Message:
  -----------
  [NFC] Add a new Intrinsics.cpp file for intrinsic code (#110078)

Add new file Intrinsics.cpp and move all functions in the `Intrinsic`
namespace to it.


  Commit: 60b604a1982c309f37af89a75a40c145d3e4cfa4
      https://github.com/llvm/llvm-project/commit/60b604a1982c309f37af89a75a40c145d3e4cfa4
  Author: Zibi Sarbinowski <zibi at ca.ibm.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M libcxx/test/libcxx/utilities/memory/util.smartptr/util.smartptr.shared/libcxx.control_block_layout.pass.cpp

  Log Message:
  -----------
  [libc++][z/OS] Fix shared_ptr control block test when aligned allocation is not available (#109693)

This PR fixes the shared_ptr control block layout test that was recently updated in #76756.
When aligned allocation/deallocation is not available, part of the test doesn't work.


  Commit: 2026501cf107fcb3cbd51026ba25fda3af823941
      https://github.com/llvm/llvm-project/commit/2026501cf107fcb3cbd51026ba25fda3af823941
  Author: Tzung-Han Juang <tzunghan.juang at gmail.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h
    M mlir/include/mlir/Dialect/Bufferization/Transforms/FuncBufferizableOpInterfaceImpl.h
    M mlir/lib/Dialect/Bufferization/IR/BufferizableOpInterface.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/FuncBufferizableOpInterfaceImpl.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/OneShotModuleBufferize.cpp
    M mlir/test/Dialect/Bufferization/Transforms/transform-ops.mlir
    M mlir/test/Dialect/LLVM/transform-e2e.mlir
    M mlir/test/Dialect/Linalg/matmul-shared-memory-padding.mlir
    M mlir/test/Dialect/Linalg/pad-to-specific-memory-space.mlir
    M mlir/test/Dialect/Vector/transform-vector.mlir
    M mlir/test/Examples/transform/ChH/full.mlir

  Log Message:
  -----------
  [MLIR] Make `OneShotModuleBufferize` use `OpInterface` (#110322)

**Description:** 
This PR replaces a part of `FuncOp` and `CallOp` with
`FunctionOpInterface` and `CallOpInterface` in `OneShotModuleBufferize`.
Also fix the error from an integration test in the a previous PR
attempt. (https://github.com/llvm/llvm-project/pull/107295)

The below fixes skip `CallOpInterface` so that the assertions are not
triggered.


https://github.com/llvm/llvm-project/blob/8d780007625108a7f34e40efb8604b858e04c60c/mlir/lib/Dialect/Bufferization/Transforms/OneShotModuleBufferize.cpp#L254-L259


https://github.com/llvm/llvm-project/blob/8d780007625108a7f34e40efb8604b858e04c60c/mlir/lib/Dialect/Bufferization/Transforms/OneShotModuleBufferize.cpp#L311-L315

**Related Discord Discussion:**
[Link](https://discord.com/channels/636084430946959380/642426447167881246/1280556809911799900)

---------

Co-authored-by: erick-xanadu <110487834+erick-xanadu at users.noreply.github.com>


  Commit: 28be39f174f109923c321b4111d21028db432e3e
      https://github.com/llvm/llvm-project/commit/28be39f174f109923c321b4111d21028db432e3e
  Author: Kiran Chandramohan <kiran.chandramohan at arm.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/include/clang/Driver/Options.td
    A flang/test/Driver/B-opt.f90
    A flang/test/Driver/Inputs/B_opt_tree/dir1/i386-unknown-linux-ld
    A flang/test/Driver/Inputs/B_opt_tree/dir1/ld
    A flang/test/Driver/Inputs/B_opt_tree/dir2/ld
    A flang/test/Driver/Inputs/B_opt_tree/dir3/prefix-ld

  Log Message:
  -----------
  [Flang][Driver] Enable the -B option (#109965)

The option provides the search prefix for executables, libraries and
data files.

The option is implemented in the common portion of the Driver and only
needs to be enabled in Flang. Test added is a copy of the relevant test
in Clang.


  Commit: d0f67773b213383b6e1c9331fb00f2d4c14bfcb2
      https://github.com/llvm/llvm-project/commit/d0f67773b213383b6e1c9331fb00f2d4c14bfcb2
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/test/Lower/OpenMP/delayed-privatization-reduction-byref.f90
    M flang/test/Lower/OpenMP/delayed-privatization-reduction.f90
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOpsInterfaces.td
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/test/Dialect/OpenMP/invalid.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir
    M mlir/test/Target/LLVMIR/openmp-private.mlir

  Log Message:
  -----------
  [MLIR][OpenMP] Normalize handling of entry block arguments (#109808)

This patch introduces a new MLIR interface for the OpenMP dialect aimed
at providing a uniform way of verifying and handling entry block
arguments defined by OpenMP clauses.

The approach consists in defining a set of overrideable methods that
return the number of block arguments the operation holds regarding each
of the clauses that may define them. These by default return 0, but they
are overriden by the corresponding clause through the
`extraClassDeclaration` mechanism.

Another set of interface methods to get the actual lists of block
arguments is defined, which is implemented based on the previously
described methods. These implicitly define a standardized ordering
between the list of block arguments associated to each clause, based on
the alphabetical ordering of their names. They should be the preferred
way of matching operation arguments and entry block arguments to that
operation's first region.

Some updates are made to the printing/parsing of `omp.parallel` to
follow the expected order between `private` and `reduction` clauses, as
well as the MLIR to LLVM IR translation pass to access block arguments
using the new interface. Unit tests of operations impacted by additional
verification checks and sorting of entry block arguments.


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

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Headers/bmi2intrin.h
    M clang/test/CodeGen/X86/bmi2-builtins.c

  Log Message:
  -----------
  [clang][x86] Add constexpr support for MULX intrinsics (#110654)

With this patch all BMI2 intrinsics can now be used in constant expressions


  Commit: 2a2c35a9a652ba8562884ec76008979c761df207
      https://github.com/llvm/llvm-project/commit/2a2c35a9a652ba8562884ec76008979c761df207
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

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

  Log Message:
  -----------
  [InstCombine] Fold `icmp spred (mul nsw X, Z), (mul nsw Y, Z)` into `icmp spred X, Y` (#110630)

```
icmp spred (mul nsw X, Z), (mul nsw Y, Z) -> icmp spred X, Y iff Z > 0
icmp spred (mul nsw X, Z), (mul nsw Y, Z) -> icmp spred Y, X iff Z < 0
```
Alive2: https://alive2.llvm.org/ce/z/9fXFfn


  Commit: 616d1d2e998aa7a26059dc36fa04875c469f69cd
      https://github.com/llvm/llvm-project/commit/616d1d2e998aa7a26059dc36fa04875c469f69cd
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

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

  Log Message:
  -----------
  [gn build] Port 2469d7e361a2


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

  Changed paths:
    M llvm/lib/DebugInfo/LogicalView/Core/LVCompare.cpp

  Log Message:
  -----------
  [DebugInfo] Avoid repeated hash lookups (NFC) (#110620)


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

  Changed paths:
    M llvm/lib/ExecutionEngine/Orc/Debugging/VTuneSupportPlugin.cpp

  Log Message:
  -----------
  [ExecutionEngine] Avoid repeated hash lookups (NFC) (#110621)


  Commit: 8395b3f60f1f4afef45475c7b96f698e28615c4d
      https://github.com/llvm/llvm-project/commit/8395b3f60f1f4afef45475c7b96f698e28615c4d
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/test/CodeGen/AMDGPU/local-stack-alloc-add-references.gfx8.mir

  Log Message:
  -----------
  AMDGPU: Mark scc dead when materialized frame base registers


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

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

  Log Message:
  -----------
  AMDGPU: Fix executable permissions on file


  Commit: 7ca4128d349ece40245c7cef280f808cf1283eab
      https://github.com/llvm/llvm-project/commit/7ca4128d349ece40245c7cef280f808cf1283eab
  Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td

  Log Message:
  -----------
  [AArch64] Generalize the instruction size checking in AsmPrinter (#110108)

Most of PAuth-related code counts the instructions being inserted and
asserts that no more bytes are emitted than the size returned by the
getInstSizeInBytes(MI) method. This check seems useful not only for
PAuth-related instructions. Also, reimplementing it globally in
AArch64AsmPrinter makes it more robust and simplifies further
refactoring of PAuth-related code.


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

  Changed paths:
    M llvm/include/llvm/IR/GEPNoWrapFlags.h
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp

  Log Message:
  -----------
  [IR] Extract helper for GEPNoWrapFlags intersection (NFC)

When combining two geps into one by adding the offsets, we have
to take some care when intersecting the flags, because nusw flags
cannot be straightforwardly preserved.

Add a helper for this on GEPNoWrapFlags so we won't have to repeat
this logic in various places.


  Commit: 16ba126a1465f6194c1f39a15740d72d30379c73
      https://github.com/llvm/llvm-project/commit/16ba126a1465f6194c1f39a15740d72d30379c73
  Author: Fabian Ritter <fabian.ritter at amd.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    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

  Log Message:
  -----------
  [AMDGPU][GlobalISel][NFC] Use amdhsa target for flat/private tests (#110672)

As a proxy criterion, mesa targets have unaligned-access-mode (which
determines whether the hardware allows unaligned memory accesses) not
set whereas amdhsa targets do. This PR changes tests to use amdhsa
instead of mesa and inserts additional checks with unaligned-access-mode
unset explicitly.

This is in preparation for PR #110219, which will generate different
code depending on the unaligned-access-mode.


  Commit: 55c70f6d893452d3b7b2005bc6b5d208f2e840ba
      https://github.com/llvm/llvm-project/commit/55c70f6d893452d3b7b2005bc6b5d208f2e840ba
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.h
    M clang/test/AST/ByteCode/records.cpp

  Log Message:
  -----------
  [clang][bytecode] Check GetPtrBase ops for null pointers (#110673)


  Commit: cd40070bfc77ab2641e69d3e749206ee5c5bbb42
      https://github.com/llvm/llvm-project/commit/cd40070bfc77ab2641e69d3e749206ee5c5bbb42
  Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

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

  Log Message:
  -----------
  [RegisterPressure] NFC: Clean up RP handling for instructions with overlapping Def/Use (#109875)

The current RP handling for uses of an MI that overlap with defs is
confusing and unnecessary. Moreover, the lane masks do not accurately
model the liveness behavior of the subregs. This cleans things up a bit
and more accurately models subreg lane liveness by sinking the use
handling into subsent Uses loop.

The effect of this PR is to replace

A. `increaseRegPressure(Reg, LiveAfter, ~LiveAfter & LiveBefore)`

with 

B. `increaseRegPressure(Reg, LiveAfter, LiveBefore)`

Note that A (Defs loop) and B (Uses loop) have different definitions of
LiveBefore

A. `LiveBefore = (LiveAfter & ~DefLanes) | UseLanes`

and 

B. `LiveBefore =  LiveAfter | UseLanes`

Also note, `increaseRegPressure` will exit if `PrevMask` (`LiveAfter`
for both A/B) has any active lanes, thus these calls will only have an
effect if `LiveAfter` is 0.


A. NewMask = ~LiveAfter & ((LiveAfter & ~DefLanes) | UseLanes) => (1 &
UseLanes) => UseLanes = (0 | UseLanes) => (LiveAfter | UseLanes) =
NewMask B.


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

  Changed paths:
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp

  Log Message:
  -----------
  [clang][bytecode] Implement ia32_{pdep,pext} builtins (#110675)


  Commit: cdb3ebf1e62df060767863e1e683409d6077ca6e
      https://github.com/llvm/llvm-project/commit/cdb3ebf1e62df060767863e1e683409d6077ca6e
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
    M flang/test/Lower/OpenMP/DelayedPrivatization/distribute-standalone-private.f90
    M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-multiple-variables.f90
    M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-simple.f90
    M flang/test/Lower/OpenMP/Todo/omp-default-clause-inner-loop.f90
    M flang/test/Lower/OpenMP/common-block-map.f90
    M flang/test/Lower/OpenMP/default-clause-byref.f90
    M flang/test/Lower/OpenMP/default-clause.f90
    M flang/test/Lower/OpenMP/delayed-privatization-private-firstprivate.f90
    M flang/test/Lower/OpenMP/derived-type-map.f90
    M flang/test/Lower/OpenMP/distribute-parallel-do-simd.f90
    M flang/test/Lower/OpenMP/distribute-parallel-do.f90
    M flang/test/Lower/OpenMP/firstprivate-commonblock.f90
    M flang/test/Lower/OpenMP/hlfir-seqloop-parallel.f90
    M flang/test/Lower/OpenMP/implicit-dsa.f90
    M flang/test/Lower/OpenMP/map-component-ref.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-add-byref.f90
    M flang/test/Lower/OpenMP/parallel-reduction-add.f90
    M flang/test/Lower/OpenMP/parallel-wsloop.f90
    M flang/test/Lower/OpenMP/private-commonblock.f90
    M flang/test/Lower/OpenMP/sections-array-reduction.f90
    M flang/test/Lower/OpenMP/sections-reduction.f90
    M flang/test/Lower/OpenMP/statement-function.f90
    M flang/test/Lower/OpenMP/target.f90
    M flang/test/Lower/OpenMP/unstructured.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-add-byref.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-add.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-logical-and-byref.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-logical-and.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-logical-eqv-byref.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-logical-eqv.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-logical-neqv-byref.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-logical-neqv.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-logical-or-byref.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-logical-or.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-mul-byref.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-mul.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-multi.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-multiple-clauses.f90
    M flang/test/Transforms/omp-map-info-finalization.fir
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/test/Conversion/OpenMPToLLVM/convert-to-llvmir.mlir
    M mlir/test/Dialect/OpenMP/invalid.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir
    M mlir/test/Target/LLVMIR/omptarget-array-sectioning-host.mlir
    M mlir/test/Target/LLVMIR/omptarget-byref-bycopy-generation-device.mlir
    M mlir/test/Target/LLVMIR/omptarget-byref-bycopy-generation-host.mlir
    M mlir/test/Target/LLVMIR/omptarget-constant-alloca-raise.mlir
    M mlir/test/Target/LLVMIR/omptarget-constant-indexing-device-region.mlir
    M mlir/test/Target/LLVMIR/omptarget-debug.mlir
    M mlir/test/Target/LLVMIR/omptarget-debug2.mlir
    M mlir/test/Target/LLVMIR/omptarget-declare-target-llvm-device.mlir
    M mlir/test/Target/LLVMIR/omptarget-depend-host-only.mlir
    M mlir/test/Target/LLVMIR/omptarget-depend.mlir
    M mlir/test/Target/LLVMIR/omptarget-fortran-allocatable-types-host.mlir
    M mlir/test/Target/LLVMIR/omptarget-fortran-common-block-host.mlir
    M mlir/test/Target/LLVMIR/omptarget-nested-record-type-mapping-host.mlir
    M mlir/test/Target/LLVMIR/omptarget-parallel-llvm.mlir
    M mlir/test/Target/LLVMIR/omptarget-record-type-mapping-host.mlir
    M mlir/test/Target/LLVMIR/omptarget-region-device-llvm.mlir
    M mlir/test/Target/LLVMIR/omptarget-region-host-only.mlir
    M mlir/test/Target/LLVMIR/omptarget-region-llvm.mlir
    M mlir/test/Target/LLVMIR/omptarget-region-parallel-llvm.mlir
    M mlir/test/Target/LLVMIR/omptarget-target-inside-task.mlir
    M mlir/test/Target/LLVMIR/openmp-data-target-device.mlir
    M mlir/test/Target/LLVMIR/openmp-parallel-reduction-cleanup.mlir
    M mlir/test/Target/LLVMIR/openmp-parallel-reduction-multiblock.mlir
    M mlir/test/Target/LLVMIR/openmp-private.mlir
    M mlir/test/Target/LLVMIR/openmp-reduction-array-sections.mlir
    M mlir/test/Target/LLVMIR/openmp-reduction-init-arg.mlir
    M mlir/test/Target/LLVMIR/openmp-reduction-sections.mlir
    M mlir/test/Target/LLVMIR/openmp-reduction.mlir
    M mlir/test/Target/LLVMIR/openmp-target-private.mlir
    M mlir/test/Target/LLVMIR/openmp-target-use-device-nested.mlir
    M mlir/test/Target/LLVMIR/openmp-task-target-device.mlir
    M mlir/test/Target/LLVMIR/openmp-wsloop-reduction-cleanup.mlir

  Log Message:
  -----------
  [MLIR][OpenMP] Normalize representation of entry block arg-defining clauses (#109809)

This patch updates printing and parsing of operations including clauses
that define entry block arguments to the operation's region. This
impacts `in_reduction`, `map`, `private`, `reduction` and
`task_reduction`.

The proposed representation to be used by all such clauses is the
following:
```
<clause_name>([byref] [@<sym>] %value -> %block_arg [, ...] : <type>[, ...]) {
  ...
}
```

The `byref` tag is only allowed for reduction-like clauses and the
`@<sym>` is required and only allowed for the `private` and
reduction-like clauses. The `map` clause does not accept any of these
two.

This change fixes some currently broken op representations, like
`omp.teams` or `omp.sections` reduction:
```
omp.teams reduction([byref] @<sym> -> %value : <type>) {
^bb0(%block_arg : <type>):
  ...
}
```

Additionally, it addresses some redundancy in the representation of the
previously mentioned cases, as well as e.g. `map` in `omp.target`. The
problem is that the block argument name after the arrow is not checked
in any way, which makes some misleading representations legal:
```mlir
omp.target map_entries(%x -> %arg1, %y -> %arg0, %z -> %doesnt_exist : !llvm.ptr, !llvm.ptr, !llvm.ptr) {
^bb0(%arg0 : !llvm.ptr, %arg1 : !llvm.ptr, %arg2 : !llvm.ptr):
  ...
}
```

In that case, `%x` maps to `%arg0`, contrary to what the representation
states, and `%z` maps to `%arg2`. `%doesnt_exist` is not resolved, so it
would likely cause issues if used anywhere inside of the operation's
region.

The solution implemented in this patch makes it so that values
introduced after the arrow on the representation of these clauses
implicitly define the corresponding entry block arguments, removing the
potential for these problematic representations. This is what is already
implemented for the `private` and `reduction` clauses of `omp.parallel`.

There are a couple of consequences of this change:
- Entry block argument-defining clauses must come at the end of the
operation's representation and in alphabetical order. This is because
they are printed/parsed as part of the region and a standardized
ordering is needed to reliably match op arguments with their
corresponding entry block arguments via the `BlockArgOpenMPOpInterface`.
- We can no longer define per-clause assembly formats to be reused by
all operations that take these clauses, since they must be passed to a
custom printer including the region and arguments of all other entry
block argument-defining clauses. Code duplication and potential for
introducing issues is minimized by providing the generic
`{print,parse}BlockArgRegion` helpers and associated structures.

MLIR and Flang lowering unit tests are updated due to changes in the
order and formatting of impacted operations.


  Commit: 9f6f6afa31b52792dc1ec8ffa960dff394c22c72
      https://github.com/llvm/llvm-project/commit/9f6f6afa31b52792dc1ec8ffa960dff394c22c72
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Utils/LoopSimplify.cpp

  Log Message:
  -----------
  LoopSimplify: strip dependency on DA (NFC) (#107379)

Since no passes compute DependenceAnalysis via the PassManager, there is
no value in preserving it here. Hence, strip the unnecessary dependency
on DependenceAnalysis.


  Commit: c66dee4c6bd650ef20105532a311a95abb25ece5
      https://github.com/llvm/llvm-project/commit/c66dee4c6bd650ef20105532a311a95abb25ece5
  Author: Gang Chen <gangc at amd.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

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

  Log Message:
  -----------
  [AMDGPU] Refactor several functions for merging with downstream work. (#110562)

For setScore, the root function is setScoreByInterval with RegInterval
input
For determineWait, the root function is determineWait with RegInterval
input


  Commit: 5894d4e8e4fc506443c2fdeb8474484f3a1ecbe4
      https://github.com/llvm/llvm-project/commit/5894d4e8e4fc506443c2fdeb8474484f3a1ecbe4
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
    M flang/test/Lower/OpenMP/target.f90
    M flang/test/Lower/OpenMP/use-device-ptr-to-use-device-addr.f90
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOpsInterfaces.td
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/test/Dialect/OpenMP/ops.mlir
    M mlir/test/Target/LLVMIR/omptarget-llvm.mlir
    M mlir/test/Target/LLVMIR/openmp-target-use-device-nested.mlir

  Log Message:
  -----------
  [MLIR][OpenMP] Use map format to represent use_device_{addr,ptr} (#109810)

This patch updates the `omp.target_data` operation to use the same
formatting as `map` clauses on `omp.target` for `use_device_addr` and
`use_device_ptr`. This is done so the mapping that is being enforced
between op arguments and associated entry block arguments is explicit.

The way it is achieved is by marking these clauses as entry block
argument-defining and adjusting printer/parsers accordingly.

As a result of this change, block arguments for `use_device_addr` come
before those for `use_device_ptr`, which is the opposite of the previous
undocumented situation. Some unit tests are updated based on this
change, in addition to those updated because of the format change.


  Commit: d071fdab44ad2abfdc21a14d0aa9518195ba78e4
      https://github.com/llvm/llvm-project/commit/d071fdab44ad2abfdc21a14d0aa9518195ba78e4
  Author: Youngsuk Kim <youngsuk.kim at hpe.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp

  Log Message:
  -----------
  [llvm][OMPIRBuilder] Avoid Type::getPointerTo() (NFC) (#110678)

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


  Commit: c63112a9118277a20ae440f3f69189c0937e8f4d
      https://github.com/llvm/llvm-project/commit/c63112a9118277a20ae440f3f69189c0937e8f4d
  Author: lntue <lntue at google.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M libc/hdr/CMakeLists.txt
    M libc/hdr/stdio_macros.h
    A libc/hdr/stdio_overlay.h
    M libc/hdr/types/CMakeLists.txt
    M libc/hdr/types/FILE.h
    M libc/hdr/types/cookie_io_functions_t.h
    M libc/hdr/types/off_t.h
    M libc/include/llvm-libc-macros/stdio-macros.h
    M libc/src/__support/File/linux/CMakeLists.txt
    M libc/src/stdio/asprintf.h
    M libc/src/stdio/gpu/CMakeLists.txt
    M libc/src/stdio/gpu/file.h
    M libc/src/stdio/gpu/fprintf.cpp
    M libc/src/stdio/gpu/getchar.cpp
    M libc/src/stdio/gpu/printf.cpp
    M libc/src/stdio/gpu/putchar.cpp
    M libc/src/stdio/gpu/puts.cpp
    M libc/src/stdio/gpu/vfprintf.cpp
    M libc/src/stdio/gpu/vfprintf_utils.h
    M libc/src/stdio/gpu/vprintf.cpp
    M libc/src/stdio/linux/CMakeLists.txt
    M libc/src/stdio/printf_core/CMakeLists.txt
    M libc/src/stdio/vsscanf.cpp
    M libc/test/src/__support/File/file_test.cpp
    M libc/test/src/__support/File/platform_file_test.cpp
    M libc/test/src/fcntl/fcntl_test.cpp
    M libc/test/src/math/smoke/RIntTest.h
    M libc/test/src/stdio/fgetc_test.cpp
    M libc/test/src/stdio/fgetc_unlocked_test.cpp
    M libc/test/src/stdio/fgets_test.cpp
    M libc/test/src/stdio/fileop_test.cpp
    M libc/test/src/stdio/fopencookie_test.cpp
    M libc/test/src/stdio/fprintf_test.cpp
    M libc/test/src/stdio/fscanf_test.cpp
    M libc/test/src/stdio/ftell_test.cpp
    M libc/test/src/stdio/putc_test.cpp
    M libc/test/src/stdio/setbuf_test.cpp
    M libc/test/src/stdio/setvbuf_test.cpp
    M libc/test/src/stdio/sscanf_test.cpp
    M libc/test/src/stdio/ungetc_test.cpp
    M libc/test/src/stdio/unlocked_fileop_test.cpp
    M libc/test/src/stdio/vfprintf_test.cpp
    M libc/test/src/stdio/vfscanf_test.cpp
    M libc/test/src/unistd/getopt_test.cpp
    M libc/test/src/wchar/wctob_test.cpp

  Log Message:
  -----------
  [libc][stdio] Use proxy headers of stdio.h in src and test folders. (#110067)

https://github.com/llvm/llvm-project/issues/60481


  Commit: 4e52e6a0135ab7eab628dee2e1b10774852cdb77
      https://github.com/llvm/llvm-project/commit/4e52e6a0135ab7eab628dee2e1b10774852cdb77
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M mlir/docs/Dialects/OpenMPDialect/_index.md

  Log Message:
  -----------
  [MLIR][OpenMP] Document entry block argument-defining clauses (NFC) (#109811)

This patch adds general information on the proposed approach to unify
the handling and representation of clauses that define entry block
arguments attached to operations that accept them.


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

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/local-stack-alloc-add-references.gfx8.mir

  Log Message:
  -----------
  AMDGPU: Add missing tests for local stack alloc s_add_i32 handling

None of these tested the case where the non-frame index operand
was a register.


  Commit: 54a49658990e827173f3a3198331df7cbe50b0c0
      https://github.com/llvm/llvm-project/commit/54a49658990e827173f3a3198331df7cbe50b0c0
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/test/Dialect/OpenMP/invalid.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir

  Log Message:
  -----------
  [MLIR][OpenMP] Improve omp.section block arguments handling (#110266)

The `omp.section` operation is an outlier in that the block arguments it
has are defined by clauses on the required parent `omp.sections`
operation.

This patch updates the definition of this operation introducing the
`BlockArgOpenMPOpInterface` to simplify the handling and verification of
these block arguments, implemented based on the parent `omp.sections`.


  Commit: 0eb26021d2a95cbe69b3b7c9f271f4a59b0f52a4
      https://github.com/llvm/llvm-project/commit/0eb26021d2a95cbe69b3b7c9f271f4a59b0f52a4
  Author: serge-sans-paille <sguelton at mozilla.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M libcxx/include/__format/format_arg_store.h
    M libcxx/include/__memory/compressed_pair.h

  Log Message:
  -----------
  [libc++] Remove potential 0-sized array in __compressed_pair_padding (#109028)


  Commit: 0de0354aa8dcd6afab625c6833cb0f40309c2961
      https://github.com/llvm/llvm-project/commit/0de0354aa8dcd6afab625c6833cb0f40309c2961
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/test/TableGen/intrinsic-attrs.td
    M llvm/utils/TableGen/IntrinsicEmitter.cpp

  Log Message:
  -----------
  [LLVM][TableGen] Decrease code size of `Intrinsic::getAttributes` (#110573)

Decrease code size of `Intrinsic::getAttributes` function by uniquing
the function and argument attributes separately and using the
`IntrinsicsToAttributesMap` to store argument attribute ID in low 8 bits
and function attribute ID in upper 8 bits.

This reduces the number of cases to handle in the generated switch from
368 to 131, which is ~2.8x reduction in the number of switch cases.

Also eliminate the fixed size array `AS` and `NumAttrs` variable, and
instead call `AttributeList::get` directly from each case, with an
inline array of the <index, AttribueSet> pairs.


  Commit: 0dab02258addb0c93a7c9b4143cbbf130f36f73f
      https://github.com/llvm/llvm-project/commit/0dab02258addb0c93a7c9b4143cbbf130f36f73f
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/cast-operand-extracted.ll

  Log Message:
  -----------
  [SLP][NFC]Add a test with external cast and extracted operand, NFC


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

  Changed paths:
    M llvm/include/llvm/IR/Attributes.h
    M llvm/include/llvm/IR/Attributes.td
    M llvm/lib/IR/AttributeImpl.h
    M llvm/lib/IR/Attributes.cpp
    M llvm/unittests/IR/AttributesTest.cpp
    M llvm/utils/TableGen/Attributes.cpp

  Log Message:
  -----------
  [IR][Attribute] Add support for intersecting AttributeLists; NFC (#109719)

Add support for taking the intersection of two AttributeLists s.t the
result list contains attributes that are valid in the context of both
inputs.

i.e if we have `nonnull align(32) noundef` intersected with `nonnull
align(16) dereferenceable(10)`, the result is `nonnull align(16)`.

Further it handles attributes that are not-droppable. For example
dropping `byval` can change the nature of a callsite/function so its
impossible to correct a correct intersection if its dropped from the
result. i.e `nonnull byval(i64)` intersected with `nonnull` is
invalid.

The motivation for the infrastructure is to enable sinking/hoisting
callsites with differing attributes.


  Commit: fef3566a25ff0e34fb87339ba5e13eca17cec00f
      https://github.com/llvm/llvm-project/commit/fef3566a25ff0e34fb87339ba5e13eca17cec00f
  Author: Nikhil Kalra <nkalra at apple.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Transforms/Passes.h
    M mlir/lib/Dialect/Arith/Transforms/IntNarrowing.cpp
    M mlir/tools/mlir-tblgen/PassGen.cpp
    M mlir/unittests/TableGen/PassGenTest.cpp

  Log Message:
  -----------
  [mlir] Pass Options ownership modifications (#110582)

This change makes two (related) changes: 

First, it updates the tablegen option for `ListOption` to emit a
`SmallVector` instead of an `ArrayRef`. This brings `ListOption` more
inline with the traditional `Option`, where values are typically
provided using types that have storage. After this change, all options
should be fully owned by a Pass' `Options` object after it has been
fully constructed, unless the underlying type of the `Option` explicitly
indicates otherwise.

Second, it updates the generated constructors for Passes to consume
options by value instead of reference, and prefers moving options into
the pass itself. This should be more efficient for non-trivial options
objects, where the previous interface forced a copy to be materialized.
Now, at worst case the API materializes a copy (no worse than before);
at best-case, all options objects are moved into place. Ideally, we
could update the Pass constructor to take an r-value reference to the
Options object instead, but this approach will require numerous changes
to existing passes and their factory functions.

---------

Authored-by: Nikhil Kalra <nkalra at apple.com>


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

  Changed paths:
    M mlir/include/mlir/TableGen/Predicate.h
    M mlir/lib/TableGen/Predicate.cpp
    M mlir/tools/mlir-tblgen/BytecodeDialectGen.cpp
    M mlir/tools/mlir-tblgen/OmpOpGen.cpp
    M mlir/tools/mlir-tblgen/OpDocGen.cpp
    M mlir/tools/mlir-tblgen/SPIRVUtilsGen.cpp
    M mlir/tools/tblgen-to-irdl/OpDefinitionsGen.cpp

  Log Message:
  -----------
  [MLIR][TableGen] Change MLIR TableGen to use const Record * (#110687)

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: 5366bf5b6642f826b2f69a3083a63727d9de771b
      https://github.com/llvm/llvm-project/commit/5366bf5b6642f826b2f69a3083a63727d9de771b
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M libcxx/include/algorithm

  Log Message:
  -----------
  [libc++][NFC] Improve the synopsis of <algorithm>


  Commit: 748f5404ccdf28d4beef37efdaeba7a1701ab425
      https://github.com/llvm/llvm-project/commit/748f5404ccdf28d4beef37efdaeba7a1701ab425
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/cmake/caches/Release.cmake

  Log Message:
  -----------
  workflows/release-binaries: Use static ZSTD on macOS (#109909)

On macOS the shared zstd library points to a homebrew install that isn't
very stable for users.


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

  Changed paths:
    M clang/lib/Headers/bmiintrin.h
    M clang/lib/Headers/lzcntintrin.h
    M clang/lib/Headers/tbmintrin.h

  Log Message:
  -----------
  [clang][headers][x86] Reduce clang-format warnings when updating x86 headers

While adding constexpr support the CI code_formatting stage was being flooded with opening brace warnings.


  Commit: e7edd53e2de5731e67b2f25dcffd1f804ae55ad5
      https://github.com/llvm/llvm-project/commit/e7edd53e2de5731e67b2f25dcffd1f804ae55ad5
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

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

  Log Message:
  -----------
  [bazel] Port c63112a9118277a20ae440f3f69189c0937e8f4d (#110706)


  Commit: b16e69494811c5908c1ab2a8cf56b70b5834698c
      https://github.com/llvm/llvm-project/commit/b16e69494811c5908c1ab2a8cf56b70b5834698c
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-10-01 (Tue, 01 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/X86/cast-operand-extracted.ll
    M llvm/test/Transforms/SLPVectorizer/insertelement-uses-vectorized-index.ll

  Log Message:
  -----------
  [SLP]Try to keep operand of external casts as scalars, if profitable

If the cost of original scalar instruction + cast is better than the
extractelement from the vector cast instruction, better to keep original
scalar instructions, where possible

Reviewers: RKSimon

Reviewed By: RKSimon

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


  Commit: 335e1372671c78a8cc6f023f962d621ad48703bb
      https://github.com/llvm/llvm-project/commit/335e1372671c78a8cc6f023f962d621ad48703bb
  Author: Johannes Doerfert <johannes at jdoerfert.de>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/IPO/Attributor.h
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/test/Transforms/Attributor/value-simplify-pointer-info.ll

  Log Message:
  -----------
  [Attributor][FIX] Track returned pointer offsets (#110534)

If the pointer returned by a function is not "the base pointer" but has
an offset, we need to track the offset such that users can apply it to
their offset chain when they create accesses.
This was reported by @ye-luo and reduced test cases are included. The
OffsetInfo was moved and the container was replaced with a set to avoid
excessive growth. Otherwise, the patch just replaces the "returns
pointer" flag with the "returned offsets", and deals with the applying
to offsets at the call site.

---------

Co-authored-by: Johannes Doerfert <jdoerfert at llnl.gov>


  Commit: 2d3119c3d914467c350902c6532443b53d1715d3
      https://github.com/llvm/llvm-project/commit/2d3119c3d914467c350902c6532443b53d1715d3
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/captured-frame-index.ll

  Log Message:
  -----------
  AMDGPU: Add more tests for frame index code quality

There are also some bugs with sgpr constraints.


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

  Changed paths:
    M clang/utils/TableGen/ClangOptionDocEmitter.cpp

  Log Message:
  -----------
  [Clang][TableGen] Change OptionDoc Emitter to use const Record * (#110592)

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: 1d39b4f7175d8d75af6e3711dc7fa88a13df5af1
      https://github.com/llvm/llvm-project/commit/1d39b4f7175d8d75af6e3711dc7fa88a13df5af1
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/utils/TableGen/ClangSACheckersEmitter.cpp

  Log Message:
  -----------
  [Clang][TableGen] Change SACheckersEmitter to use const Record * (#110596)

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: e9dbdb20f26c3a08849f22c4e2460bbaeba531c7
      https://github.com/llvm/llvm-project/commit/e9dbdb20f26c3a08849f22c4e2460bbaeba531c7
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/utils/TableGen/NeonEmitter.cpp
    M clang/utils/TableGen/SveEmitter.cpp

  Log Message:
  -----------
  [Clang][TableGen] Change NeonEmitter to use const Record * (#110597)

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: 47e3d8dc7e885f322d42785105163895ad0c943e
      https://github.com/llvm/llvm-project/commit/47e3d8dc7e885f322d42785105163895ad0c943e
  Author: Shourya Goel <shouryagoel10000 at gmail.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/math/index.rst
    M libc/spec/stdc.td
    M libc/src/__support/FPUtil/BasicOperations.h
    M libc/src/math/CMakeLists.txt
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/issignaling.cpp
    A libc/src/math/generic/issignalingf.cpp
    A libc/src/math/generic/issignalingf128.cpp
    A libc/src/math/generic/issignalingf16.cpp
    A libc/src/math/generic/issignalingl.cpp
    A libc/src/math/issignaling.h
    A libc/src/math/issignalingf.h
    A libc/src/math/issignalingf128.h
    A libc/src/math/issignalingf16.h
    A libc/src/math/issignalingl.h
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/IsSignalingTest.h
    A libc/test/src/math/smoke/issignaling_test.cpp
    A libc/test/src/math/smoke/issignalingf128_test.cpp
    A libc/test/src/math/smoke/issignalingf16_test.cpp
    A libc/test/src/math/smoke/issignalingf_test.cpp
    A libc/test/src/math/smoke/issignalingl_test.cpp

  Log Message:
  -----------
  [libc][math] Implement `issignaling[f|l]` as a libc math function (#110556)

This PR implements the issignaling function as part of the libc math
library, addressing the TODO items mentioned in #110011

The addition of this function is crucial for completing the
implementation of remaining math macros, as referenced in #109201


  Commit: 4206c37bd11887c2c9dfc99e484753f6b8230a90
      https://github.com/llvm/llvm-project/commit/4206c37bd11887c2c9dfc99e484753f6b8230a90
  Author: Zequan Wu <zequanwu at google.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/CMakeLists.txt
    R lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugArangeSet.cpp
    R lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugArangeSet.h
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugAranges.cpp
    M lldb/unittests/SymbolFile/DWARF/SymbolFileDWARFTests.cpp
    M llvm/include/llvm/DebugInfo/DWARF/DWARFDebugArangeSet.h
    M llvm/lib/DebugInfo/DWARF/DWARFDebugArangeSet.cpp

  Log Message:
  -----------
  [lldb][DWARF] Replace lldb's DWARFDebugArangeSet with llvm's (#110058)

They are close enough to swap lldb's `DWARFDebugArangeSet` with the llvm
one.

The difference is that llvm's `DWARFDebugArangeSet` add empty ranges
when extracting. To accommodate this, `DWARFDebugAranges` in lldb
filters out empty ranges when extracting.


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

  Changed paths:
    M libc/src/__support/sign.h
    M libc/test/UnitTest/FPMatcher.h
    M libc/test/src/__support/FPUtil/dyadic_float_test.cpp
    M libc/test/src/__support/FPUtil/fpbits_test.cpp
    M libc/test/src/math/FDimTest.h
    M libc/test/src/math/HypotTest.h
    M libc/test/src/math/ILogbTest.h
    M libc/test/src/math/LdExpTest.h
    M libc/test/src/math/NextAfterTest.h
    M libc/test/src/math/RIntTest.h
    M libc/test/src/math/RemQuoTest.h
    M libc/test/src/math/RoundToIntegerTest.h
    M libc/test/src/math/atanhf_test.cpp
    M libc/test/src/math/smoke/AddTest.h
    M libc/test/src/math/smoke/DivTest.h
    M libc/test/src/math/smoke/FDimTest.h
    M libc/test/src/math/smoke/GetPayloadTest.h
    M libc/test/src/math/smoke/ILogbTest.h
    M libc/test/src/math/smoke/LdExpTest.h
    M libc/test/src/math/smoke/MulTest.h
    M libc/test/src/math/smoke/NearbyIntTest.h
    M libc/test/src/math/smoke/NextAfterTest.h
    M libc/test/src/math/smoke/NextTowardTest.h
    M libc/test/src/math/smoke/RIntTest.h
    M libc/test/src/math/smoke/RemQuoTest.h
    M libc/test/src/math/smoke/SetPayloadSigTest.h
    M libc/test/src/math/smoke/SetPayloadTest.h
    M libc/test/src/math/smoke/SubTest.h
    M libc/test/src/math/smoke/TotalOrderMagTest.h
    M libc/test/src/math/smoke/TotalOrderTest.h
    M libc/test/src/math/smoke/atanhf_test.cpp

  Log Message:
  -----------
  [libc] Move struct Sign into LIBC_NAMESPACE (#110709)

The struct Sign should be in the correct namespace. Also update the
various tests that use it.


  Commit: d8df118545bf0aff3b03d923ca1aa205e7e74f43
      https://github.com/llvm/llvm-project/commit/d8df118545bf0aff3b03d923ca1aa205e7e74f43
  Author: Sarah Spall <sarahspall at microsoft.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/include/clang/AST/CanonicalType.h
    M clang/lib/AST/ExprClassification.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/Sema/SemaOverload.cpp
    A clang/test/AST/HLSL/ArrayAssignable.hlsl
    A clang/test/CodeGenHLSL/ArrayAssignable.hlsl
    A clang/test/SemaHLSL/ArrayAssignable_errors.hlsl

  Log Message:
  -----------
  [HLSL] Array by-value assignment (#109323)

Make Constant Arrays in HLSL assignable. 
Closes #109043


  Commit: f957d080e9e9702ea9519d795f549e2bc37e3067
      https://github.com/llvm/llvm-project/commit/f957d080e9e9702ea9519d795f549e2bc37e3067
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/GenericMachineInstrs.h
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.h
    M llvm/lib/Target/RISCV/RISCVInstrGISel.td
    A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-extract-subvector.mir

  Log Message:
  -----------
  [RISCV][GISEL] Legalize G_EXTRACT_SUBVECTOR (#109426)

This is heavily based on the SelectionDAG lowerEXTRACT_SUBVECTOR code.


  Commit: 2fca0effb4e1cbb620b7f21e9b867198ba20028a
      https://github.com/llvm/llvm-project/commit/2fca0effb4e1cbb620b7f21e9b867198ba20028a
  Author: eddyz87 <eddyz87 at gmail.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/lib/Target/BPF/BPFMIPeephole.cpp
    A llvm/test/CodeGen/BPF/bpf-fastcall-4.ll
    A llvm/test/CodeGen/BPF/bpf-fastcall-5.ll

  Log Message:
  -----------
  [BPF] fix sub-register handling for bpf_fastcall (#110618)

bpf_fastcall induced spill/fill pairs should be generated for
sub-register as well as for sub-registers. At the moment this is not the
case, e.g.:

    $ cat t.c
    extern int foo(void) __attribute__((bpf_fastcall));

    int bar(int a) {
      foo();
      return a;
    }

    $ clang --target=bpf -mcpu=v3 -O2 -S t.c -o -
    ...
    call foo
    w0 = w1
    exit

Modify BPFMIPeephole.cpp:collectBPFFastCalls() to check sub-registers
liveness and thus produce correct code for example above:

    *(u64 *)(r10 - 8) = r1
    call foo
    r1 = *(u64 *)(r10 - 8)
    w0 = w1
    exit


  Commit: fa6c02a93d402aff1f9ffdb45efff9c1f44df52a
      https://github.com/llvm/llvm-project/commit/fa6c02a93d402aff1f9ffdb45efff9c1f44df52a
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.h

  Log Message:
  -----------
  [RISCV][GISEL] Remove unused LegalizerHelper argument from legalizeExtractSubvector. NFC.

This argument was leftover from a draft version of the patch that added it.


  Commit: a20020192845c1b9461b2b34308f19aa444676b4
      https://github.com/llvm/llvm-project/commit/a20020192845c1b9461b2b34308f19aa444676b4
  Author: Evgenii Stepanov <eugeni.stepanov at gmail.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/tests/memtag_test.cpp

  Log Message:
  -----------
  [scudo] Fix wording for unsupported test reason. (#110716)


  Commit: 9c72a9db7b6f81c1c902b8e691bf079652afa540
      https://github.com/llvm/llvm-project/commit/9c72a9db7b6f81c1c902b8e691bf079652afa540
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M compiler-rt/lib/asan/asan_win_common_runtime_thunk.cpp

  Log Message:
  -----------
  [compiler-rt] [asan] Remove superfluous trailing semicolons (#110641)

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: extra ';' outside of a function is incompatible with C++98
[-Wc++98-compat-extra-semi]


  Commit: 5cabf1505d2180083ae3cf34abd79924cbcdbdbf
      https://github.com/llvm/llvm-project/commit/5cabf1505d2180083ae3cf34abd79924cbcdbdbf
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Support/KnownBits.h
    M llvm/lib/Support/KnownBits.cpp
    M llvm/unittests/Support/KnownBitsTest.cpp

  Log Message:
  -----------
  [KnownBits] Make `avg{Ceil,Floor}S` optimal (#110688)

Rewrite the signed functions in terms of the unsigned ones which are
already optimal.


  Commit: 32ffc9fdc2cd422c88c926b862adb3de726e3888
      https://github.com/llvm/llvm-project/commit/32ffc9fdc2cd422c88c926b862adb3de726e3888
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/utils/gn/secondary/lldb/source/Plugins/SymbolFile/DWARF/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 4206c37bd118


  Commit: e45b44c630eb382eeb2ca8ed0fd52e973955e868
      https://github.com/llvm/llvm-project/commit/e45b44c630eb382eeb2ca8ed0fd52e973955e868
  Author: Alex Bradbury <asb at igalia.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td
    M llvm/test/CodeGen/RISCV/unaligned-load-store.ll

  Log Message:
  -----------
  [RISCV] Add pattern for PACK/PACKH in common misaligned load case (#110644)

PACKH is currently only selected for assembling the first two bytes of a
misligned load. A fairly complex RV32-only pattern is added for
producing PACKH+PACKH+PACK to assemble the result of a misaligned 32-bit
load.

Another pattern was added that just covers PACKH for shifted offsets 16
and 24, producing a packh and shift to replace two shifts and an 'or'.
This slightly improves RV64IZKBK for a 64-bit load, but fails to match
for the misaligned 32-bit load because the load of the upper byte is
anyext in the SelectionDAG.

I wrote the patch this way because it was quick and easy and has at
least some benefit, but the "right" approach probably merits further
discussion. Introducing target-specific SDNodes for PACK* and having
custom lowering for unaligned load/stores that introduces those nodes
them seems like it might be attractive. However, adding these patterns does provide benefit - so that's what this patch does for now.


  Commit: 916c83020967d72a5870b4b3d058998f367acd1a
      https://github.com/llvm/llvm-project/commit/916c83020967d72a5870b4b3d058998f367acd1a
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVGISel.td
    M llvm/test/CodeGen/RISCV/GlobalISel/shift.ll

  Log Message:
  -----------
  Revert "[RISCV][GISel] Remove unused isel patterns for s32 shifts with s64 shift amount."

This reverts commit 9e45e7facbdec209a06ee20fcfbb7d0622835e21.

I found a way that these can be used. I think it's a bug somewhere
else that I need to address separately first.


  Commit: 9c2843275e8bce09837767c0e453a68bc164116c
      https://github.com/llvm/llvm-project/commit/9c2843275e8bce09837767c0e453a68bc164116c
  Author: Sirraide <aeternalmail at gmail.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Object/Archive.h
    M llvm/lib/Object/Archive.cpp

  Log Message:
  -----------
  [NFC] Make 'Triple&' param a 'const&' instead (#110628)

There isn’t really a reason for it not to be a `const&` (afaict), and it
is a bit annoying because some APIs (e.g. `TargetMachine::getTargetTriple()`) 
return a `const Triple&`.


  Commit: 9ec229dd3ede6368ee5fecf9b9731d8d21d8b1d2
      https://github.com/llvm/llvm-project/commit/9ec229dd3ede6368ee5fecf9b9731d8d21d8b1d2
  Author: Zibi Sarbinowski <zibi at ca.ibm.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/test/CodeGen/PowerPC/ppc-xmmintrin.c

  Log Message:
  -----------
  [SystemZ][z/OS] fix ppc-xmmintrin.c on z/OS (#109676)

This will fix the following failure seeing on z/OS:

```
In file included from clang/test/CodeGen/PowerPC/ppc-xmmintrin.c:31:
In file included from build/lib/clang/20/include/ppc_wrappers/xmmintrin.h:44:
In file included from build/lib/clang/20/include/altivec.h:48:
In file included from build/bin/../include/c++/v1/stddef.h:27:
In file included from build/bin/../include/c++/v1/__config:14:
In file included from build/bin/../include/c++/v1/__configuration/abi.h:15:
In file included from build/bin/../include/c++/v1/__configuration/platform.h:35:
/usr/include/features.h:1:20: error: expected unqualified-id
    1 |                    ??=if                       ??/
      |                    ^
/usr/include/features.h:2140:20: error: expected unqualified-id
 2140 |                    ??=endif /* __features_h */
      |                    ^
```
Adding `-nostdlibinc` will not use standard system include path and it
will prevent above errors.


  Commit: 98c9523113b550eaca3728bf30cbc346af5eff07
      https://github.com/llvm/llvm-project/commit/98c9523113b550eaca3728bf30cbc346af5eff07
  Author: Evgenii Stepanov <eugeni.stepanov at gmail.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

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

  Log Message:
  -----------
  [scudo] Fix isOwned on MTE devices. (#110717)

If called on an address that is actually not owned, the header tag might not
match. This would cause an MTE fault in Chunk::isValid.

Disable tag checks in isOwned().


  Commit: 60af1548e138ecd8b899f23bdf91ee294d777239
      https://github.com/llvm/llvm-project/commit/60af1548e138ecd8b899f23bdf91ee294d777239
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64StackTagging.cpp
    M llvm/test/CodeGen/AArch64/stack-tagging-dbg-assign-tag-offset.ll
    M llvm/test/CodeGen/AArch64/stack-tagging-dbg-declare-tag-offset.ll
    M llvm/test/CodeGen/AArch64/stack-tagging-dbg-value-tag-offset-nopad.ll
    M llvm/test/CodeGen/AArch64/stack-tagging-prologue.ll

  Log Message:
  -----------
  [MTE] Allow stack history for API level >=35 (#110328)


  Commit: f3c408d1726f6a921212faf68085f68bf8533f0c
      https://github.com/llvm/llvm-project/commit/f3c408d1726f6a921212faf68085f68bf8533f0c
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/debug-counter.ll

  Log Message:
  -----------
  [SLP]Add debug counter support

Fixes #110725

Reviewers: aeubanks

Reviewed By: aeubanks

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


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

  Changed paths:
    M mlir/python/mlir/dialects/tensor.py
    M mlir/test/python/dialects/sparse_tensor/dialect.py

  Log Message:
  -----------
  [MLIR][Python] Add `encoding` argument to `tensor.empty` Python function (#110656)

Hi @xurui1995 @makslevental,

I think in https://github.com/llvm/llvm-project/pull/103087 there's
unintended regression where user can no longer create sparse tensors
with `tensor.empty`.

Previously I could pass:
```python
out = tensor.empty(tensor_type, [])
```
where `tensor_type` contained `shape`, `dtype`, and `encoding`.

With the latest 
```python
tensor.empty(sizes: Sequence[Union[int, Value]], element_type: Type, *, loc=None, ip=None)
```
it's no longer possible.

I propose to add `encoding` argument which is passed to
`RankedTensorType.get(static_sizes, element_type, encoding)` (I updated
one of the tests to check it).


  Commit: 67432f20491a0fa6b05f8a3a91f88e26175453d6
      https://github.com/llvm/llvm-project/commit/67432f20491a0fa6b05f8a3a91f88e26175453d6
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    A libcxx/include/__cxx03/CMakeLists.txt
    A libcxx/include/__cxx03/__algorithm/adjacent_find.h
    A libcxx/include/__cxx03/__algorithm/all_of.h
    A libcxx/include/__cxx03/__algorithm/any_of.h
    A libcxx/include/__cxx03/__algorithm/binary_search.h
    A libcxx/include/__cxx03/__algorithm/clamp.h
    A libcxx/include/__cxx03/__algorithm/comp.h
    A libcxx/include/__cxx03/__algorithm/comp_ref_type.h
    A libcxx/include/__cxx03/__algorithm/copy.h
    A libcxx/include/__cxx03/__algorithm/copy_backward.h
    A libcxx/include/__cxx03/__algorithm/copy_if.h
    A libcxx/include/__cxx03/__algorithm/copy_move_common.h
    A libcxx/include/__cxx03/__algorithm/copy_n.h
    A libcxx/include/__cxx03/__algorithm/count.h
    A libcxx/include/__cxx03/__algorithm/count_if.h
    A libcxx/include/__cxx03/__algorithm/equal.h
    A libcxx/include/__cxx03/__algorithm/equal_range.h
    A libcxx/include/__cxx03/__algorithm/fill.h
    A libcxx/include/__cxx03/__algorithm/fill_n.h
    A libcxx/include/__cxx03/__algorithm/find.h
    A libcxx/include/__cxx03/__algorithm/find_end.h
    A libcxx/include/__cxx03/__algorithm/find_first_of.h
    A libcxx/include/__cxx03/__algorithm/find_if.h
    A libcxx/include/__cxx03/__algorithm/find_if_not.h
    A libcxx/include/__cxx03/__algorithm/find_segment_if.h
    A libcxx/include/__cxx03/__algorithm/fold.h
    A libcxx/include/__cxx03/__algorithm/for_each.h
    A libcxx/include/__cxx03/__algorithm/for_each_n.h
    A libcxx/include/__cxx03/__algorithm/for_each_segment.h
    A libcxx/include/__cxx03/__algorithm/generate.h
    A libcxx/include/__cxx03/__algorithm/generate_n.h
    A libcxx/include/__cxx03/__algorithm/half_positive.h
    A libcxx/include/__cxx03/__algorithm/in_found_result.h
    A libcxx/include/__cxx03/__algorithm/in_fun_result.h
    A libcxx/include/__cxx03/__algorithm/in_in_out_result.h
    A libcxx/include/__cxx03/__algorithm/in_in_result.h
    A libcxx/include/__cxx03/__algorithm/in_out_out_result.h
    A libcxx/include/__cxx03/__algorithm/in_out_result.h
    A libcxx/include/__cxx03/__algorithm/includes.h
    A libcxx/include/__cxx03/__algorithm/inplace_merge.h
    A libcxx/include/__cxx03/__algorithm/is_heap.h
    A libcxx/include/__cxx03/__algorithm/is_heap_until.h
    A libcxx/include/__cxx03/__algorithm/is_partitioned.h
    A libcxx/include/__cxx03/__algorithm/is_permutation.h
    A libcxx/include/__cxx03/__algorithm/is_sorted.h
    A libcxx/include/__cxx03/__algorithm/is_sorted_until.h
    A libcxx/include/__cxx03/__algorithm/iter_swap.h
    A libcxx/include/__cxx03/__algorithm/iterator_operations.h
    A libcxx/include/__cxx03/__algorithm/lexicographical_compare.h
    A libcxx/include/__cxx03/__algorithm/lexicographical_compare_three_way.h
    A libcxx/include/__cxx03/__algorithm/lower_bound.h
    A libcxx/include/__cxx03/__algorithm/make_heap.h
    A libcxx/include/__cxx03/__algorithm/make_projected.h
    A libcxx/include/__cxx03/__algorithm/max.h
    A libcxx/include/__cxx03/__algorithm/max_element.h
    A libcxx/include/__cxx03/__algorithm/merge.h
    A libcxx/include/__cxx03/__algorithm/min.h
    A libcxx/include/__cxx03/__algorithm/min_element.h
    A libcxx/include/__cxx03/__algorithm/min_max_result.h
    A libcxx/include/__cxx03/__algorithm/minmax.h
    A libcxx/include/__cxx03/__algorithm/minmax_element.h
    A libcxx/include/__cxx03/__algorithm/mismatch.h
    A libcxx/include/__cxx03/__algorithm/move.h
    A libcxx/include/__cxx03/__algorithm/move_backward.h
    A libcxx/include/__cxx03/__algorithm/next_permutation.h
    A libcxx/include/__cxx03/__algorithm/none_of.h
    A libcxx/include/__cxx03/__algorithm/nth_element.h
    A libcxx/include/__cxx03/__algorithm/partial_sort.h
    A libcxx/include/__cxx03/__algorithm/partial_sort_copy.h
    A libcxx/include/__cxx03/__algorithm/partition.h
    A libcxx/include/__cxx03/__algorithm/partition_copy.h
    A libcxx/include/__cxx03/__algorithm/partition_point.h
    A libcxx/include/__cxx03/__algorithm/pop_heap.h
    A libcxx/include/__cxx03/__algorithm/prev_permutation.h
    A libcxx/include/__cxx03/__algorithm/pstl.h
    A libcxx/include/__cxx03/__algorithm/push_heap.h
    A libcxx/include/__cxx03/__algorithm/ranges_adjacent_find.h
    A libcxx/include/__cxx03/__algorithm/ranges_all_of.h
    A libcxx/include/__cxx03/__algorithm/ranges_any_of.h
    A libcxx/include/__cxx03/__algorithm/ranges_binary_search.h
    A libcxx/include/__cxx03/__algorithm/ranges_clamp.h
    A libcxx/include/__cxx03/__algorithm/ranges_contains.h
    A libcxx/include/__cxx03/__algorithm/ranges_contains_subrange.h
    A libcxx/include/__cxx03/__algorithm/ranges_copy.h
    A libcxx/include/__cxx03/__algorithm/ranges_copy_backward.h
    A libcxx/include/__cxx03/__algorithm/ranges_copy_if.h
    A libcxx/include/__cxx03/__algorithm/ranges_copy_n.h
    A libcxx/include/__cxx03/__algorithm/ranges_count.h
    A libcxx/include/__cxx03/__algorithm/ranges_count_if.h
    A libcxx/include/__cxx03/__algorithm/ranges_ends_with.h
    A libcxx/include/__cxx03/__algorithm/ranges_equal.h
    A libcxx/include/__cxx03/__algorithm/ranges_equal_range.h
    A libcxx/include/__cxx03/__algorithm/ranges_fill.h
    A libcxx/include/__cxx03/__algorithm/ranges_fill_n.h
    A libcxx/include/__cxx03/__algorithm/ranges_find.h
    A libcxx/include/__cxx03/__algorithm/ranges_find_end.h
    A libcxx/include/__cxx03/__algorithm/ranges_find_first_of.h
    A libcxx/include/__cxx03/__algorithm/ranges_find_if.h
    A libcxx/include/__cxx03/__algorithm/ranges_find_if_not.h
    A libcxx/include/__cxx03/__algorithm/ranges_find_last.h
    A libcxx/include/__cxx03/__algorithm/ranges_for_each.h
    A libcxx/include/__cxx03/__algorithm/ranges_for_each_n.h
    A libcxx/include/__cxx03/__algorithm/ranges_generate.h
    A libcxx/include/__cxx03/__algorithm/ranges_generate_n.h
    A libcxx/include/__cxx03/__algorithm/ranges_includes.h
    A libcxx/include/__cxx03/__algorithm/ranges_inplace_merge.h
    A libcxx/include/__cxx03/__algorithm/ranges_is_heap.h
    A libcxx/include/__cxx03/__algorithm/ranges_is_heap_until.h
    A libcxx/include/__cxx03/__algorithm/ranges_is_partitioned.h
    A libcxx/include/__cxx03/__algorithm/ranges_is_permutation.h
    A libcxx/include/__cxx03/__algorithm/ranges_is_sorted.h
    A libcxx/include/__cxx03/__algorithm/ranges_is_sorted_until.h
    A libcxx/include/__cxx03/__algorithm/ranges_iterator_concept.h
    A libcxx/include/__cxx03/__algorithm/ranges_lexicographical_compare.h
    A libcxx/include/__cxx03/__algorithm/ranges_lower_bound.h
    A libcxx/include/__cxx03/__algorithm/ranges_make_heap.h
    A libcxx/include/__cxx03/__algorithm/ranges_max.h
    A libcxx/include/__cxx03/__algorithm/ranges_max_element.h
    A libcxx/include/__cxx03/__algorithm/ranges_merge.h
    A libcxx/include/__cxx03/__algorithm/ranges_min.h
    A libcxx/include/__cxx03/__algorithm/ranges_min_element.h
    A libcxx/include/__cxx03/__algorithm/ranges_minmax.h
    A libcxx/include/__cxx03/__algorithm/ranges_minmax_element.h
    A libcxx/include/__cxx03/__algorithm/ranges_mismatch.h
    A libcxx/include/__cxx03/__algorithm/ranges_move.h
    A libcxx/include/__cxx03/__algorithm/ranges_move_backward.h
    A libcxx/include/__cxx03/__algorithm/ranges_next_permutation.h
    A libcxx/include/__cxx03/__algorithm/ranges_none_of.h
    A libcxx/include/__cxx03/__algorithm/ranges_nth_element.h
    A libcxx/include/__cxx03/__algorithm/ranges_partial_sort.h
    A libcxx/include/__cxx03/__algorithm/ranges_partial_sort_copy.h
    A libcxx/include/__cxx03/__algorithm/ranges_partition.h
    A libcxx/include/__cxx03/__algorithm/ranges_partition_copy.h
    A libcxx/include/__cxx03/__algorithm/ranges_partition_point.h
    A libcxx/include/__cxx03/__algorithm/ranges_pop_heap.h
    A libcxx/include/__cxx03/__algorithm/ranges_prev_permutation.h
    A libcxx/include/__cxx03/__algorithm/ranges_push_heap.h
    A libcxx/include/__cxx03/__algorithm/ranges_remove.h
    A libcxx/include/__cxx03/__algorithm/ranges_remove_copy.h
    A libcxx/include/__cxx03/__algorithm/ranges_remove_copy_if.h
    A libcxx/include/__cxx03/__algorithm/ranges_remove_if.h
    A libcxx/include/__cxx03/__algorithm/ranges_replace.h
    A libcxx/include/__cxx03/__algorithm/ranges_replace_copy.h
    A libcxx/include/__cxx03/__algorithm/ranges_replace_copy_if.h
    A libcxx/include/__cxx03/__algorithm/ranges_replace_if.h
    A libcxx/include/__cxx03/__algorithm/ranges_reverse.h
    A libcxx/include/__cxx03/__algorithm/ranges_reverse_copy.h
    A libcxx/include/__cxx03/__algorithm/ranges_rotate.h
    A libcxx/include/__cxx03/__algorithm/ranges_rotate_copy.h
    A libcxx/include/__cxx03/__algorithm/ranges_sample.h
    A libcxx/include/__cxx03/__algorithm/ranges_search.h
    A libcxx/include/__cxx03/__algorithm/ranges_search_n.h
    A libcxx/include/__cxx03/__algorithm/ranges_set_difference.h
    A libcxx/include/__cxx03/__algorithm/ranges_set_intersection.h
    A libcxx/include/__cxx03/__algorithm/ranges_set_symmetric_difference.h
    A libcxx/include/__cxx03/__algorithm/ranges_set_union.h
    A libcxx/include/__cxx03/__algorithm/ranges_shuffle.h
    A libcxx/include/__cxx03/__algorithm/ranges_sort.h
    A libcxx/include/__cxx03/__algorithm/ranges_sort_heap.h
    A libcxx/include/__cxx03/__algorithm/ranges_stable_partition.h
    A libcxx/include/__cxx03/__algorithm/ranges_stable_sort.h
    A libcxx/include/__cxx03/__algorithm/ranges_starts_with.h
    A libcxx/include/__cxx03/__algorithm/ranges_swap_ranges.h
    A libcxx/include/__cxx03/__algorithm/ranges_transform.h
    A libcxx/include/__cxx03/__algorithm/ranges_unique.h
    A libcxx/include/__cxx03/__algorithm/ranges_unique_copy.h
    A libcxx/include/__cxx03/__algorithm/ranges_upper_bound.h
    A libcxx/include/__cxx03/__algorithm/remove.h
    A libcxx/include/__cxx03/__algorithm/remove_copy.h
    A libcxx/include/__cxx03/__algorithm/remove_copy_if.h
    A libcxx/include/__cxx03/__algorithm/remove_if.h
    A libcxx/include/__cxx03/__algorithm/replace.h
    A libcxx/include/__cxx03/__algorithm/replace_copy.h
    A libcxx/include/__cxx03/__algorithm/replace_copy_if.h
    A libcxx/include/__cxx03/__algorithm/replace_if.h
    A libcxx/include/__cxx03/__algorithm/reverse.h
    A libcxx/include/__cxx03/__algorithm/reverse_copy.h
    A libcxx/include/__cxx03/__algorithm/rotate.h
    A libcxx/include/__cxx03/__algorithm/rotate_copy.h
    A libcxx/include/__cxx03/__algorithm/sample.h
    A libcxx/include/__cxx03/__algorithm/search.h
    A libcxx/include/__cxx03/__algorithm/search_n.h
    A libcxx/include/__cxx03/__algorithm/set_difference.h
    A libcxx/include/__cxx03/__algorithm/set_intersection.h
    A libcxx/include/__cxx03/__algorithm/set_symmetric_difference.h
    A libcxx/include/__cxx03/__algorithm/set_union.h
    A libcxx/include/__cxx03/__algorithm/shift_left.h
    A libcxx/include/__cxx03/__algorithm/shift_right.h
    A libcxx/include/__cxx03/__algorithm/shuffle.h
    A libcxx/include/__cxx03/__algorithm/sift_down.h
    A libcxx/include/__cxx03/__algorithm/simd_utils.h
    A libcxx/include/__cxx03/__algorithm/sort.h
    A libcxx/include/__cxx03/__algorithm/sort_heap.h
    A libcxx/include/__cxx03/__algorithm/stable_partition.h
    A libcxx/include/__cxx03/__algorithm/stable_sort.h
    A libcxx/include/__cxx03/__algorithm/swap_ranges.h
    A libcxx/include/__cxx03/__algorithm/three_way_comp_ref_type.h
    A libcxx/include/__cxx03/__algorithm/transform.h
    A libcxx/include/__cxx03/__algorithm/uniform_random_bit_generator_adaptor.h
    A libcxx/include/__cxx03/__algorithm/unique.h
    A libcxx/include/__cxx03/__algorithm/unique_copy.h
    A libcxx/include/__cxx03/__algorithm/unwrap_iter.h
    A libcxx/include/__cxx03/__algorithm/unwrap_range.h
    A libcxx/include/__cxx03/__algorithm/upper_bound.h
    A libcxx/include/__cxx03/__assert
    A libcxx/include/__cxx03/__atomic/aliases.h
    A libcxx/include/__cxx03/__atomic/atomic.h
    A libcxx/include/__cxx03/__atomic/atomic_base.h
    A libcxx/include/__cxx03/__atomic/atomic_flag.h
    A libcxx/include/__cxx03/__atomic/atomic_init.h
    A libcxx/include/__cxx03/__atomic/atomic_lock_free.h
    A libcxx/include/__cxx03/__atomic/atomic_ref.h
    A libcxx/include/__cxx03/__atomic/atomic_sync.h
    A libcxx/include/__cxx03/__atomic/check_memory_order.h
    A libcxx/include/__cxx03/__atomic/contention_t.h
    A libcxx/include/__cxx03/__atomic/cxx_atomic_impl.h
    A libcxx/include/__cxx03/__atomic/fence.h
    A libcxx/include/__cxx03/__atomic/is_always_lock_free.h
    A libcxx/include/__cxx03/__atomic/kill_dependency.h
    A libcxx/include/__cxx03/__atomic/memory_order.h
    A libcxx/include/__cxx03/__atomic/to_gcc_order.h
    A libcxx/include/__cxx03/__bit/bit_cast.h
    A libcxx/include/__cxx03/__bit/bit_ceil.h
    A libcxx/include/__cxx03/__bit/bit_floor.h
    A libcxx/include/__cxx03/__bit/bit_log2.h
    A libcxx/include/__cxx03/__bit/bit_width.h
    A libcxx/include/__cxx03/__bit/blsr.h
    A libcxx/include/__cxx03/__bit/byteswap.h
    A libcxx/include/__cxx03/__bit/countl.h
    A libcxx/include/__cxx03/__bit/countr.h
    A libcxx/include/__cxx03/__bit/endian.h
    A libcxx/include/__cxx03/__bit/has_single_bit.h
    A libcxx/include/__cxx03/__bit/invert_if.h
    A libcxx/include/__cxx03/__bit/popcount.h
    A libcxx/include/__cxx03/__bit/rotate.h
    A libcxx/include/__cxx03/__bit_reference
    A libcxx/include/__cxx03/__charconv/chars_format.h
    A libcxx/include/__cxx03/__charconv/from_chars_integral.h
    A libcxx/include/__cxx03/__charconv/from_chars_result.h
    A libcxx/include/__cxx03/__charconv/tables.h
    A libcxx/include/__cxx03/__charconv/to_chars.h
    A libcxx/include/__cxx03/__charconv/to_chars_base_10.h
    A libcxx/include/__cxx03/__charconv/to_chars_floating_point.h
    A libcxx/include/__cxx03/__charconv/to_chars_integral.h
    A libcxx/include/__cxx03/__charconv/to_chars_result.h
    A libcxx/include/__cxx03/__charconv/traits.h
    A libcxx/include/__cxx03/__chrono/calendar.h
    A libcxx/include/__cxx03/__chrono/concepts.h
    A libcxx/include/__cxx03/__chrono/convert_to_timespec.h
    A libcxx/include/__cxx03/__chrono/convert_to_tm.h
    A libcxx/include/__cxx03/__chrono/day.h
    A libcxx/include/__cxx03/__chrono/duration.h
    A libcxx/include/__cxx03/__chrono/exception.h
    A libcxx/include/__cxx03/__chrono/file_clock.h
    A libcxx/include/__cxx03/__chrono/formatter.h
    A libcxx/include/__cxx03/__chrono/hh_mm_ss.h
    A libcxx/include/__cxx03/__chrono/high_resolution_clock.h
    A libcxx/include/__cxx03/__chrono/leap_second.h
    A libcxx/include/__cxx03/__chrono/literals.h
    A libcxx/include/__cxx03/__chrono/local_info.h
    A libcxx/include/__cxx03/__chrono/month.h
    A libcxx/include/__cxx03/__chrono/month_weekday.h
    A libcxx/include/__cxx03/__chrono/monthday.h
    A libcxx/include/__cxx03/__chrono/ostream.h
    A libcxx/include/__cxx03/__chrono/parser_std_format_spec.h
    A libcxx/include/__cxx03/__chrono/statically_widen.h
    A libcxx/include/__cxx03/__chrono/steady_clock.h
    A libcxx/include/__cxx03/__chrono/sys_info.h
    A libcxx/include/__cxx03/__chrono/system_clock.h
    A libcxx/include/__cxx03/__chrono/time_point.h
    A libcxx/include/__cxx03/__chrono/time_zone.h
    A libcxx/include/__cxx03/__chrono/time_zone_link.h
    A libcxx/include/__cxx03/__chrono/tzdb.h
    A libcxx/include/__cxx03/__chrono/tzdb_list.h
    A libcxx/include/__cxx03/__chrono/weekday.h
    A libcxx/include/__cxx03/__chrono/year.h
    A libcxx/include/__cxx03/__chrono/year_month.h
    A libcxx/include/__cxx03/__chrono/year_month_day.h
    A libcxx/include/__cxx03/__chrono/year_month_weekday.h
    A libcxx/include/__cxx03/__chrono/zoned_time.h
    A libcxx/include/__cxx03/__compare/common_comparison_category.h
    A libcxx/include/__cxx03/__compare/compare_partial_order_fallback.h
    A libcxx/include/__cxx03/__compare/compare_strong_order_fallback.h
    A libcxx/include/__cxx03/__compare/compare_three_way.h
    A libcxx/include/__cxx03/__compare/compare_three_way_result.h
    A libcxx/include/__cxx03/__compare/compare_weak_order_fallback.h
    A libcxx/include/__cxx03/__compare/is_eq.h
    A libcxx/include/__cxx03/__compare/ordering.h
    A libcxx/include/__cxx03/__compare/partial_order.h
    A libcxx/include/__cxx03/__compare/strong_order.h
    A libcxx/include/__cxx03/__compare/synth_three_way.h
    A libcxx/include/__cxx03/__compare/three_way_comparable.h
    A libcxx/include/__cxx03/__compare/weak_order.h
    A libcxx/include/__cxx03/__concepts/arithmetic.h
    A libcxx/include/__cxx03/__concepts/assignable.h
    A libcxx/include/__cxx03/__concepts/boolean_testable.h
    A libcxx/include/__cxx03/__concepts/class_or_enum.h
    A libcxx/include/__cxx03/__concepts/common_reference_with.h
    A libcxx/include/__cxx03/__concepts/common_with.h
    A libcxx/include/__cxx03/__concepts/constructible.h
    A libcxx/include/__cxx03/__concepts/convertible_to.h
    A libcxx/include/__cxx03/__concepts/copyable.h
    A libcxx/include/__cxx03/__concepts/derived_from.h
    A libcxx/include/__cxx03/__concepts/destructible.h
    A libcxx/include/__cxx03/__concepts/different_from.h
    A libcxx/include/__cxx03/__concepts/equality_comparable.h
    A libcxx/include/__cxx03/__concepts/invocable.h
    A libcxx/include/__cxx03/__concepts/movable.h
    A libcxx/include/__cxx03/__concepts/predicate.h
    A libcxx/include/__cxx03/__concepts/regular.h
    A libcxx/include/__cxx03/__concepts/relation.h
    A libcxx/include/__cxx03/__concepts/same_as.h
    A libcxx/include/__cxx03/__concepts/semiregular.h
    A libcxx/include/__cxx03/__concepts/swappable.h
    A libcxx/include/__cxx03/__concepts/totally_ordered.h
    A libcxx/include/__cxx03/__condition_variable/condition_variable.h
    A libcxx/include/__cxx03/__config
    A libcxx/include/__cxx03/__config_site.in
    A libcxx/include/__cxx03/__configuration/abi.h
    A libcxx/include/__cxx03/__configuration/availability.h
    A libcxx/include/__cxx03/__configuration/compiler.h
    A libcxx/include/__cxx03/__configuration/language.h
    A libcxx/include/__cxx03/__configuration/platform.h
    A libcxx/include/__cxx03/__coroutine/coroutine_handle.h
    A libcxx/include/__cxx03/__coroutine/coroutine_traits.h
    A libcxx/include/__cxx03/__coroutine/noop_coroutine_handle.h
    A libcxx/include/__cxx03/__coroutine/trivial_awaitables.h
    A libcxx/include/__cxx03/__debug_utils/randomize_range.h
    A libcxx/include/__cxx03/__debug_utils/sanitizers.h
    A libcxx/include/__cxx03/__debug_utils/strict_weak_ordering_check.h
    A libcxx/include/__cxx03/__exception/exception.h
    A libcxx/include/__cxx03/__exception/exception_ptr.h
    A libcxx/include/__cxx03/__exception/nested_exception.h
    A libcxx/include/__cxx03/__exception/operations.h
    A libcxx/include/__cxx03/__exception/terminate.h
    A libcxx/include/__cxx03/__expected/bad_expected_access.h
    A libcxx/include/__cxx03/__expected/expected.h
    A libcxx/include/__cxx03/__expected/unexpect.h
    A libcxx/include/__cxx03/__expected/unexpected.h
    A libcxx/include/__cxx03/__filesystem/copy_options.h
    A libcxx/include/__cxx03/__filesystem/directory_entry.h
    A libcxx/include/__cxx03/__filesystem/directory_iterator.h
    A libcxx/include/__cxx03/__filesystem/directory_options.h
    A libcxx/include/__cxx03/__filesystem/file_status.h
    A libcxx/include/__cxx03/__filesystem/file_time_type.h
    A libcxx/include/__cxx03/__filesystem/file_type.h
    A libcxx/include/__cxx03/__filesystem/filesystem_error.h
    A libcxx/include/__cxx03/__filesystem/operations.h
    A libcxx/include/__cxx03/__filesystem/path.h
    A libcxx/include/__cxx03/__filesystem/path_iterator.h
    A libcxx/include/__cxx03/__filesystem/perm_options.h
    A libcxx/include/__cxx03/__filesystem/perms.h
    A libcxx/include/__cxx03/__filesystem/recursive_directory_iterator.h
    A libcxx/include/__cxx03/__filesystem/space_info.h
    A libcxx/include/__cxx03/__filesystem/u8path.h
    A libcxx/include/__cxx03/__format/buffer.h
    A libcxx/include/__cxx03/__format/concepts.h
    A libcxx/include/__cxx03/__format/container_adaptor.h
    A libcxx/include/__cxx03/__format/enable_insertable.h
    A libcxx/include/__cxx03/__format/escaped_output_table.h
    A libcxx/include/__cxx03/__format/extended_grapheme_cluster_table.h
    A libcxx/include/__cxx03/__format/format_arg.h
    A libcxx/include/__cxx03/__format/format_arg_store.h
    A libcxx/include/__cxx03/__format/format_args.h
    A libcxx/include/__cxx03/__format/format_context.h
    A libcxx/include/__cxx03/__format/format_error.h
    A libcxx/include/__cxx03/__format/format_functions.h
    A libcxx/include/__cxx03/__format/format_parse_context.h
    A libcxx/include/__cxx03/__format/format_string.h
    A libcxx/include/__cxx03/__format/format_to_n_result.h
    A libcxx/include/__cxx03/__format/formatter.h
    A libcxx/include/__cxx03/__format/formatter_bool.h
    A libcxx/include/__cxx03/__format/formatter_char.h
    A libcxx/include/__cxx03/__format/formatter_floating_point.h
    A libcxx/include/__cxx03/__format/formatter_integer.h
    A libcxx/include/__cxx03/__format/formatter_integral.h
    A libcxx/include/__cxx03/__format/formatter_output.h
    A libcxx/include/__cxx03/__format/formatter_pointer.h
    A libcxx/include/__cxx03/__format/formatter_string.h
    A libcxx/include/__cxx03/__format/formatter_tuple.h
    A libcxx/include/__cxx03/__format/indic_conjunct_break_table.h
    A libcxx/include/__cxx03/__format/parser_std_format_spec.h
    A libcxx/include/__cxx03/__format/range_default_formatter.h
    A libcxx/include/__cxx03/__format/range_formatter.h
    A libcxx/include/__cxx03/__format/unicode.h
    A libcxx/include/__cxx03/__format/width_estimation_table.h
    A libcxx/include/__cxx03/__format/write_escaped.h
    A libcxx/include/__cxx03/__functional/binary_function.h
    A libcxx/include/__cxx03/__functional/binary_negate.h
    A libcxx/include/__cxx03/__functional/bind.h
    A libcxx/include/__cxx03/__functional/bind_back.h
    A libcxx/include/__cxx03/__functional/bind_front.h
    A libcxx/include/__cxx03/__functional/binder1st.h
    A libcxx/include/__cxx03/__functional/binder2nd.h
    A libcxx/include/__cxx03/__functional/boyer_moore_searcher.h
    A libcxx/include/__cxx03/__functional/compose.h
    A libcxx/include/__cxx03/__functional/default_searcher.h
    A libcxx/include/__cxx03/__functional/function.h
    A libcxx/include/__cxx03/__functional/hash.h
    A libcxx/include/__cxx03/__functional/identity.h
    A libcxx/include/__cxx03/__functional/invoke.h
    A libcxx/include/__cxx03/__functional/is_transparent.h
    A libcxx/include/__cxx03/__functional/mem_fn.h
    A libcxx/include/__cxx03/__functional/mem_fun_ref.h
    A libcxx/include/__cxx03/__functional/not_fn.h
    A libcxx/include/__cxx03/__functional/operations.h
    A libcxx/include/__cxx03/__functional/perfect_forward.h
    A libcxx/include/__cxx03/__functional/pointer_to_binary_function.h
    A libcxx/include/__cxx03/__functional/pointer_to_unary_function.h
    A libcxx/include/__cxx03/__functional/ranges_operations.h
    A libcxx/include/__cxx03/__functional/reference_wrapper.h
    A libcxx/include/__cxx03/__functional/unary_function.h
    A libcxx/include/__cxx03/__functional/unary_negate.h
    A libcxx/include/__cxx03/__functional/weak_result_type.h
    A libcxx/include/__cxx03/__fwd/array.h
    A libcxx/include/__cxx03/__fwd/bit_reference.h
    A libcxx/include/__cxx03/__fwd/complex.h
    A libcxx/include/__cxx03/__fwd/deque.h
    A libcxx/include/__cxx03/__fwd/format.h
    A libcxx/include/__cxx03/__fwd/fstream.h
    A libcxx/include/__cxx03/__fwd/functional.h
    A libcxx/include/__cxx03/__fwd/ios.h
    A libcxx/include/__cxx03/__fwd/istream.h
    A libcxx/include/__cxx03/__fwd/mdspan.h
    A libcxx/include/__cxx03/__fwd/memory.h
    A libcxx/include/__cxx03/__fwd/memory_resource.h
    A libcxx/include/__cxx03/__fwd/ostream.h
    A libcxx/include/__cxx03/__fwd/pair.h
    A libcxx/include/__cxx03/__fwd/queue.h
    A libcxx/include/__cxx03/__fwd/span.h
    A libcxx/include/__cxx03/__fwd/sstream.h
    A libcxx/include/__cxx03/__fwd/stack.h
    A libcxx/include/__cxx03/__fwd/streambuf.h
    A libcxx/include/__cxx03/__fwd/string.h
    A libcxx/include/__cxx03/__fwd/string_view.h
    A libcxx/include/__cxx03/__fwd/subrange.h
    A libcxx/include/__cxx03/__fwd/tuple.h
    A libcxx/include/__cxx03/__fwd/vector.h
    A libcxx/include/__cxx03/__hash_table
    A libcxx/include/__cxx03/__ios/fpos.h
    A libcxx/include/__cxx03/__iterator/access.h
    A libcxx/include/__cxx03/__iterator/advance.h
    A libcxx/include/__cxx03/__iterator/aliasing_iterator.h
    A libcxx/include/__cxx03/__iterator/back_insert_iterator.h
    A libcxx/include/__cxx03/__iterator/bounded_iter.h
    A libcxx/include/__cxx03/__iterator/common_iterator.h
    A libcxx/include/__cxx03/__iterator/concepts.h
    A libcxx/include/__cxx03/__iterator/counted_iterator.h
    A libcxx/include/__cxx03/__iterator/cpp17_iterator_concepts.h
    A libcxx/include/__cxx03/__iterator/data.h
    A libcxx/include/__cxx03/__iterator/default_sentinel.h
    A libcxx/include/__cxx03/__iterator/distance.h
    A libcxx/include/__cxx03/__iterator/empty.h
    A libcxx/include/__cxx03/__iterator/erase_if_container.h
    A libcxx/include/__cxx03/__iterator/front_insert_iterator.h
    A libcxx/include/__cxx03/__iterator/incrementable_traits.h
    A libcxx/include/__cxx03/__iterator/indirectly_comparable.h
    A libcxx/include/__cxx03/__iterator/insert_iterator.h
    A libcxx/include/__cxx03/__iterator/istream_iterator.h
    A libcxx/include/__cxx03/__iterator/istreambuf_iterator.h
    A libcxx/include/__cxx03/__iterator/iter_move.h
    A libcxx/include/__cxx03/__iterator/iter_swap.h
    A libcxx/include/__cxx03/__iterator/iterator.h
    A libcxx/include/__cxx03/__iterator/iterator_traits.h
    A libcxx/include/__cxx03/__iterator/iterator_with_data.h
    A libcxx/include/__cxx03/__iterator/mergeable.h
    A libcxx/include/__cxx03/__iterator/move_iterator.h
    A libcxx/include/__cxx03/__iterator/move_sentinel.h
    A libcxx/include/__cxx03/__iterator/next.h
    A libcxx/include/__cxx03/__iterator/ostream_iterator.h
    A libcxx/include/__cxx03/__iterator/ostreambuf_iterator.h
    A libcxx/include/__cxx03/__iterator/permutable.h
    A libcxx/include/__cxx03/__iterator/prev.h
    A libcxx/include/__cxx03/__iterator/projected.h
    A libcxx/include/__cxx03/__iterator/ranges_iterator_traits.h
    A libcxx/include/__cxx03/__iterator/readable_traits.h
    A libcxx/include/__cxx03/__iterator/reverse_access.h
    A libcxx/include/__cxx03/__iterator/reverse_iterator.h
    A libcxx/include/__cxx03/__iterator/segmented_iterator.h
    A libcxx/include/__cxx03/__iterator/size.h
    A libcxx/include/__cxx03/__iterator/sortable.h
    A libcxx/include/__cxx03/__iterator/unreachable_sentinel.h
    A libcxx/include/__cxx03/__iterator/wrap_iter.h
    A libcxx/include/__cxx03/__locale
    A libcxx/include/__cxx03/__locale_dir/locale_base_api.h
    A libcxx/include/__cxx03/__locale_dir/locale_base_api/android.h
    A libcxx/include/__cxx03/__locale_dir/locale_base_api/bsd_locale_defaults.h
    A libcxx/include/__cxx03/__locale_dir/locale_base_api/bsd_locale_fallbacks.h
    A libcxx/include/__cxx03/__locale_dir/locale_base_api/fuchsia.h
    A libcxx/include/__cxx03/__locale_dir/locale_base_api/ibm.h
    A libcxx/include/__cxx03/__locale_dir/locale_base_api/locale_guard.h
    A libcxx/include/__cxx03/__locale_dir/locale_base_api/musl.h
    A libcxx/include/__cxx03/__locale_dir/locale_base_api/newlib.h
    A libcxx/include/__cxx03/__locale_dir/locale_base_api/openbsd.h
    A libcxx/include/__cxx03/__locale_dir/locale_base_api/win32.h
    A libcxx/include/__cxx03/__math/abs.h
    A libcxx/include/__cxx03/__math/copysign.h
    A libcxx/include/__cxx03/__math/error_functions.h
    A libcxx/include/__cxx03/__math/exponential_functions.h
    A libcxx/include/__cxx03/__math/fdim.h
    A libcxx/include/__cxx03/__math/fma.h
    A libcxx/include/__cxx03/__math/gamma.h
    A libcxx/include/__cxx03/__math/hyperbolic_functions.h
    A libcxx/include/__cxx03/__math/hypot.h
    A libcxx/include/__cxx03/__math/inverse_hyperbolic_functions.h
    A libcxx/include/__cxx03/__math/inverse_trigonometric_functions.h
    A libcxx/include/__cxx03/__math/logarithms.h
    A libcxx/include/__cxx03/__math/min_max.h
    A libcxx/include/__cxx03/__math/modulo.h
    A libcxx/include/__cxx03/__math/remainder.h
    A libcxx/include/__cxx03/__math/roots.h
    A libcxx/include/__cxx03/__math/rounding_functions.h
    A libcxx/include/__cxx03/__math/special_functions.h
    A libcxx/include/__cxx03/__math/traits.h
    A libcxx/include/__cxx03/__math/trigonometric_functions.h
    A libcxx/include/__cxx03/__mbstate_t.h
    A libcxx/include/__cxx03/__mdspan/default_accessor.h
    A libcxx/include/__cxx03/__mdspan/extents.h
    A libcxx/include/__cxx03/__mdspan/layout_left.h
    A libcxx/include/__cxx03/__mdspan/layout_right.h
    A libcxx/include/__cxx03/__mdspan/layout_stride.h
    A libcxx/include/__cxx03/__mdspan/mdspan.h
    A libcxx/include/__cxx03/__memory/addressof.h
    A libcxx/include/__cxx03/__memory/align.h
    A libcxx/include/__cxx03/__memory/aligned_alloc.h
    A libcxx/include/__cxx03/__memory/allocate_at_least.h
    A libcxx/include/__cxx03/__memory/allocation_guard.h
    A libcxx/include/__cxx03/__memory/allocator.h
    A libcxx/include/__cxx03/__memory/allocator_arg_t.h
    A libcxx/include/__cxx03/__memory/allocator_destructor.h
    A libcxx/include/__cxx03/__memory/allocator_traits.h
    A libcxx/include/__cxx03/__memory/assume_aligned.h
    A libcxx/include/__cxx03/__memory/auto_ptr.h
    A libcxx/include/__cxx03/__memory/builtin_new_allocator.h
    A libcxx/include/__cxx03/__memory/compressed_pair.h
    A libcxx/include/__cxx03/__memory/concepts.h
    A libcxx/include/__cxx03/__memory/construct_at.h
    A libcxx/include/__cxx03/__memory/destruct_n.h
    A libcxx/include/__cxx03/__memory/inout_ptr.h
    A libcxx/include/__cxx03/__memory/out_ptr.h
    A libcxx/include/__cxx03/__memory/pointer_traits.h
    A libcxx/include/__cxx03/__memory/ranges_construct_at.h
    A libcxx/include/__cxx03/__memory/ranges_uninitialized_algorithms.h
    A libcxx/include/__cxx03/__memory/raw_storage_iterator.h
    A libcxx/include/__cxx03/__memory/shared_ptr.h
    A libcxx/include/__cxx03/__memory/swap_allocator.h
    A libcxx/include/__cxx03/__memory/temp_value.h
    A libcxx/include/__cxx03/__memory/temporary_buffer.h
    A libcxx/include/__cxx03/__memory/uninitialized_algorithms.h
    A libcxx/include/__cxx03/__memory/unique_ptr.h
    A libcxx/include/__cxx03/__memory/uses_allocator.h
    A libcxx/include/__cxx03/__memory/uses_allocator_construction.h
    A libcxx/include/__cxx03/__memory/voidify.h
    A libcxx/include/__cxx03/__memory_resource/memory_resource.h
    A libcxx/include/__cxx03/__memory_resource/monotonic_buffer_resource.h
    A libcxx/include/__cxx03/__memory_resource/polymorphic_allocator.h
    A libcxx/include/__cxx03/__memory_resource/pool_options.h
    A libcxx/include/__cxx03/__memory_resource/synchronized_pool_resource.h
    A libcxx/include/__cxx03/__memory_resource/unsynchronized_pool_resource.h
    A libcxx/include/__cxx03/__mutex/lock_guard.h
    A libcxx/include/__cxx03/__mutex/mutex.h
    A libcxx/include/__cxx03/__mutex/once_flag.h
    A libcxx/include/__cxx03/__mutex/tag_types.h
    A libcxx/include/__cxx03/__mutex/unique_lock.h
    A libcxx/include/__cxx03/__node_handle
    A libcxx/include/__cxx03/__numeric/accumulate.h
    A libcxx/include/__cxx03/__numeric/adjacent_difference.h
    A libcxx/include/__cxx03/__numeric/exclusive_scan.h
    A libcxx/include/__cxx03/__numeric/gcd_lcm.h
    A libcxx/include/__cxx03/__numeric/inclusive_scan.h
    A libcxx/include/__cxx03/__numeric/inner_product.h
    A libcxx/include/__cxx03/__numeric/iota.h
    A libcxx/include/__cxx03/__numeric/midpoint.h
    A libcxx/include/__cxx03/__numeric/partial_sum.h
    A libcxx/include/__cxx03/__numeric/pstl.h
    A libcxx/include/__cxx03/__numeric/reduce.h
    A libcxx/include/__cxx03/__numeric/saturation_arithmetic.h
    A libcxx/include/__cxx03/__numeric/transform_exclusive_scan.h
    A libcxx/include/__cxx03/__numeric/transform_inclusive_scan.h
    A libcxx/include/__cxx03/__numeric/transform_reduce.h
    A libcxx/include/__cxx03/__ostream/basic_ostream.h
    A libcxx/include/__cxx03/__ostream/print.h
    A libcxx/include/__cxx03/__pstl/backend.h
    A libcxx/include/__cxx03/__pstl/backend_fwd.h
    A libcxx/include/__cxx03/__pstl/backends/default.h
    A libcxx/include/__cxx03/__pstl/backends/libdispatch.h
    A libcxx/include/__cxx03/__pstl/backends/serial.h
    A libcxx/include/__cxx03/__pstl/backends/std_thread.h
    A libcxx/include/__cxx03/__pstl/cpu_algos/any_of.h
    A libcxx/include/__cxx03/__pstl/cpu_algos/cpu_traits.h
    A libcxx/include/__cxx03/__pstl/cpu_algos/fill.h
    A libcxx/include/__cxx03/__pstl/cpu_algos/find_if.h
    A libcxx/include/__cxx03/__pstl/cpu_algos/for_each.h
    A libcxx/include/__cxx03/__pstl/cpu_algos/merge.h
    A libcxx/include/__cxx03/__pstl/cpu_algos/stable_sort.h
    A libcxx/include/__cxx03/__pstl/cpu_algos/transform.h
    A libcxx/include/__cxx03/__pstl/cpu_algos/transform_reduce.h
    A libcxx/include/__cxx03/__pstl/dispatch.h
    A libcxx/include/__cxx03/__pstl/handle_exception.h
    A libcxx/include/__cxx03/__random/bernoulli_distribution.h
    A libcxx/include/__cxx03/__random/binomial_distribution.h
    A libcxx/include/__cxx03/__random/cauchy_distribution.h
    A libcxx/include/__cxx03/__random/chi_squared_distribution.h
    A libcxx/include/__cxx03/__random/clamp_to_integral.h
    A libcxx/include/__cxx03/__random/default_random_engine.h
    A libcxx/include/__cxx03/__random/discard_block_engine.h
    A libcxx/include/__cxx03/__random/discrete_distribution.h
    A libcxx/include/__cxx03/__random/exponential_distribution.h
    A libcxx/include/__cxx03/__random/extreme_value_distribution.h
    A libcxx/include/__cxx03/__random/fisher_f_distribution.h
    A libcxx/include/__cxx03/__random/gamma_distribution.h
    A libcxx/include/__cxx03/__random/generate_canonical.h
    A libcxx/include/__cxx03/__random/geometric_distribution.h
    A libcxx/include/__cxx03/__random/independent_bits_engine.h
    A libcxx/include/__cxx03/__random/is_seed_sequence.h
    A libcxx/include/__cxx03/__random/is_valid.h
    A libcxx/include/__cxx03/__random/knuth_b.h
    A libcxx/include/__cxx03/__random/linear_congruential_engine.h
    A libcxx/include/__cxx03/__random/log2.h
    A libcxx/include/__cxx03/__random/lognormal_distribution.h
    A libcxx/include/__cxx03/__random/mersenne_twister_engine.h
    A libcxx/include/__cxx03/__random/negative_binomial_distribution.h
    A libcxx/include/__cxx03/__random/normal_distribution.h
    A libcxx/include/__cxx03/__random/piecewise_constant_distribution.h
    A libcxx/include/__cxx03/__random/piecewise_linear_distribution.h
    A libcxx/include/__cxx03/__random/poisson_distribution.h
    A libcxx/include/__cxx03/__random/random_device.h
    A libcxx/include/__cxx03/__random/ranlux.h
    A libcxx/include/__cxx03/__random/seed_seq.h
    A libcxx/include/__cxx03/__random/shuffle_order_engine.h
    A libcxx/include/__cxx03/__random/student_t_distribution.h
    A libcxx/include/__cxx03/__random/subtract_with_carry_engine.h
    A libcxx/include/__cxx03/__random/uniform_int_distribution.h
    A libcxx/include/__cxx03/__random/uniform_random_bit_generator.h
    A libcxx/include/__cxx03/__random/uniform_real_distribution.h
    A libcxx/include/__cxx03/__random/weibull_distribution.h
    A libcxx/include/__cxx03/__ranges/access.h
    A libcxx/include/__cxx03/__ranges/all.h
    A libcxx/include/__cxx03/__ranges/as_rvalue_view.h
    A libcxx/include/__cxx03/__ranges/chunk_by_view.h
    A libcxx/include/__cxx03/__ranges/common_view.h
    A libcxx/include/__cxx03/__ranges/concepts.h
    A libcxx/include/__cxx03/__ranges/container_compatible_range.h
    A libcxx/include/__cxx03/__ranges/counted.h
    A libcxx/include/__cxx03/__ranges/dangling.h
    A libcxx/include/__cxx03/__ranges/data.h
    A libcxx/include/__cxx03/__ranges/drop_view.h
    A libcxx/include/__cxx03/__ranges/drop_while_view.h
    A libcxx/include/__cxx03/__ranges/elements_view.h
    A libcxx/include/__cxx03/__ranges/empty.h
    A libcxx/include/__cxx03/__ranges/empty_view.h
    A libcxx/include/__cxx03/__ranges/enable_borrowed_range.h
    A libcxx/include/__cxx03/__ranges/enable_view.h
    A libcxx/include/__cxx03/__ranges/filter_view.h
    A libcxx/include/__cxx03/__ranges/from_range.h
    A libcxx/include/__cxx03/__ranges/iota_view.h
    A libcxx/include/__cxx03/__ranges/istream_view.h
    A libcxx/include/__cxx03/__ranges/join_view.h
    A libcxx/include/__cxx03/__ranges/lazy_split_view.h
    A libcxx/include/__cxx03/__ranges/movable_box.h
    A libcxx/include/__cxx03/__ranges/non_propagating_cache.h
    A libcxx/include/__cxx03/__ranges/owning_view.h
    A libcxx/include/__cxx03/__ranges/range_adaptor.h
    A libcxx/include/__cxx03/__ranges/rbegin.h
    A libcxx/include/__cxx03/__ranges/ref_view.h
    A libcxx/include/__cxx03/__ranges/rend.h
    A libcxx/include/__cxx03/__ranges/repeat_view.h
    A libcxx/include/__cxx03/__ranges/reverse_view.h
    A libcxx/include/__cxx03/__ranges/single_view.h
    A libcxx/include/__cxx03/__ranges/size.h
    A libcxx/include/__cxx03/__ranges/split_view.h
    A libcxx/include/__cxx03/__ranges/subrange.h
    A libcxx/include/__cxx03/__ranges/take_view.h
    A libcxx/include/__cxx03/__ranges/take_while_view.h
    A libcxx/include/__cxx03/__ranges/to.h
    A libcxx/include/__cxx03/__ranges/transform_view.h
    A libcxx/include/__cxx03/__ranges/view_interface.h
    A libcxx/include/__cxx03/__ranges/views.h
    A libcxx/include/__cxx03/__ranges/zip_view.h
    A libcxx/include/__cxx03/__split_buffer
    A libcxx/include/__cxx03/__std_clang_module
    A libcxx/include/__cxx03/__std_mbstate_t.h
    A libcxx/include/__cxx03/__stop_token/atomic_unique_lock.h
    A libcxx/include/__cxx03/__stop_token/intrusive_list_view.h
    A libcxx/include/__cxx03/__stop_token/intrusive_shared_ptr.h
    A libcxx/include/__cxx03/__stop_token/stop_callback.h
    A libcxx/include/__cxx03/__stop_token/stop_source.h
    A libcxx/include/__cxx03/__stop_token/stop_state.h
    A libcxx/include/__cxx03/__stop_token/stop_token.h
    A libcxx/include/__cxx03/__string/char_traits.h
    A libcxx/include/__cxx03/__string/constexpr_c_functions.h
    A libcxx/include/__cxx03/__string/extern_template_lists.h
    A libcxx/include/__cxx03/__support/ibm/gettod_zos.h
    A libcxx/include/__cxx03/__support/ibm/locale_mgmt_zos.h
    A libcxx/include/__cxx03/__support/ibm/nanosleep.h
    A libcxx/include/__cxx03/__support/xlocale/__nop_locale_mgmt.h
    A libcxx/include/__cxx03/__support/xlocale/__posix_l_fallback.h
    A libcxx/include/__cxx03/__support/xlocale/__strtonum_fallback.h
    A libcxx/include/__cxx03/__system_error/errc.h
    A libcxx/include/__cxx03/__system_error/error_category.h
    A libcxx/include/__cxx03/__system_error/error_code.h
    A libcxx/include/__cxx03/__system_error/error_condition.h
    A libcxx/include/__cxx03/__system_error/system_error.h
    A libcxx/include/__cxx03/__thread/formatter.h
    A libcxx/include/__cxx03/__thread/id.h
    A libcxx/include/__cxx03/__thread/jthread.h
    A libcxx/include/__cxx03/__thread/poll_with_backoff.h
    A libcxx/include/__cxx03/__thread/support.h
    A libcxx/include/__cxx03/__thread/support/c11.h
    A libcxx/include/__cxx03/__thread/support/external.h
    A libcxx/include/__cxx03/__thread/support/pthread.h
    A libcxx/include/__cxx03/__thread/support/windows.h
    A libcxx/include/__cxx03/__thread/this_thread.h
    A libcxx/include/__cxx03/__thread/thread.h
    A libcxx/include/__cxx03/__thread/timed_backoff_policy.h
    A libcxx/include/__cxx03/__tree
    A libcxx/include/__cxx03/__tuple/find_index.h
    A libcxx/include/__cxx03/__tuple/ignore.h
    A libcxx/include/__cxx03/__tuple/make_tuple_types.h
    A libcxx/include/__cxx03/__tuple/sfinae_helpers.h
    A libcxx/include/__cxx03/__tuple/tuple_element.h
    A libcxx/include/__cxx03/__tuple/tuple_indices.h
    A libcxx/include/__cxx03/__tuple/tuple_like.h
    A libcxx/include/__cxx03/__tuple/tuple_like_ext.h
    A libcxx/include/__cxx03/__tuple/tuple_like_no_subrange.h
    A libcxx/include/__cxx03/__tuple/tuple_size.h
    A libcxx/include/__cxx03/__tuple/tuple_types.h
    A libcxx/include/__cxx03/__type_traits/add_const.h
    A libcxx/include/__cxx03/__type_traits/add_cv.h
    A libcxx/include/__cxx03/__type_traits/add_lvalue_reference.h
    A libcxx/include/__cxx03/__type_traits/add_pointer.h
    A libcxx/include/__cxx03/__type_traits/add_rvalue_reference.h
    A libcxx/include/__cxx03/__type_traits/add_volatile.h
    A libcxx/include/__cxx03/__type_traits/aligned_storage.h
    A libcxx/include/__cxx03/__type_traits/aligned_union.h
    A libcxx/include/__cxx03/__type_traits/alignment_of.h
    A libcxx/include/__cxx03/__type_traits/can_extract_key.h
    A libcxx/include/__cxx03/__type_traits/common_reference.h
    A libcxx/include/__cxx03/__type_traits/common_type.h
    A libcxx/include/__cxx03/__type_traits/conditional.h
    A libcxx/include/__cxx03/__type_traits/conjunction.h
    A libcxx/include/__cxx03/__type_traits/copy_cv.h
    A libcxx/include/__cxx03/__type_traits/copy_cvref.h
    A libcxx/include/__cxx03/__type_traits/datasizeof.h
    A libcxx/include/__cxx03/__type_traits/decay.h
    A libcxx/include/__cxx03/__type_traits/dependent_type.h
    A libcxx/include/__cxx03/__type_traits/desugars_to.h
    A libcxx/include/__cxx03/__type_traits/disjunction.h
    A libcxx/include/__cxx03/__type_traits/enable_if.h
    A libcxx/include/__cxx03/__type_traits/extent.h
    A libcxx/include/__cxx03/__type_traits/has_unique_object_representation.h
    A libcxx/include/__cxx03/__type_traits/has_virtual_destructor.h
    A libcxx/include/__cxx03/__type_traits/integral_constant.h
    A libcxx/include/__cxx03/__type_traits/invoke.h
    A libcxx/include/__cxx03/__type_traits/is_abstract.h
    A libcxx/include/__cxx03/__type_traits/is_aggregate.h
    A libcxx/include/__cxx03/__type_traits/is_allocator.h
    A libcxx/include/__cxx03/__type_traits/is_always_bitcastable.h
    A libcxx/include/__cxx03/__type_traits/is_arithmetic.h
    A libcxx/include/__cxx03/__type_traits/is_array.h
    A libcxx/include/__cxx03/__type_traits/is_assignable.h
    A libcxx/include/__cxx03/__type_traits/is_base_of.h
    A libcxx/include/__cxx03/__type_traits/is_bounded_array.h
    A libcxx/include/__cxx03/__type_traits/is_callable.h
    A libcxx/include/__cxx03/__type_traits/is_char_like_type.h
    A libcxx/include/__cxx03/__type_traits/is_class.h
    A libcxx/include/__cxx03/__type_traits/is_compound.h
    A libcxx/include/__cxx03/__type_traits/is_const.h
    A libcxx/include/__cxx03/__type_traits/is_constant_evaluated.h
    A libcxx/include/__cxx03/__type_traits/is_constructible.h
    A libcxx/include/__cxx03/__type_traits/is_convertible.h
    A libcxx/include/__cxx03/__type_traits/is_core_convertible.h
    A libcxx/include/__cxx03/__type_traits/is_destructible.h
    A libcxx/include/__cxx03/__type_traits/is_empty.h
    A libcxx/include/__cxx03/__type_traits/is_enum.h
    A libcxx/include/__cxx03/__type_traits/is_equality_comparable.h
    A libcxx/include/__cxx03/__type_traits/is_execution_policy.h
    A libcxx/include/__cxx03/__type_traits/is_final.h
    A libcxx/include/__cxx03/__type_traits/is_floating_point.h
    A libcxx/include/__cxx03/__type_traits/is_function.h
    A libcxx/include/__cxx03/__type_traits/is_fundamental.h
    A libcxx/include/__cxx03/__type_traits/is_implicitly_default_constructible.h
    A libcxx/include/__cxx03/__type_traits/is_integral.h
    A libcxx/include/__cxx03/__type_traits/is_literal_type.h
    A libcxx/include/__cxx03/__type_traits/is_member_pointer.h
    A libcxx/include/__cxx03/__type_traits/is_nothrow_assignable.h
    A libcxx/include/__cxx03/__type_traits/is_nothrow_constructible.h
    A libcxx/include/__cxx03/__type_traits/is_nothrow_convertible.h
    A libcxx/include/__cxx03/__type_traits/is_nothrow_destructible.h
    A libcxx/include/__cxx03/__type_traits/is_null_pointer.h
    A libcxx/include/__cxx03/__type_traits/is_object.h
    A libcxx/include/__cxx03/__type_traits/is_pod.h
    A libcxx/include/__cxx03/__type_traits/is_pointer.h
    A libcxx/include/__cxx03/__type_traits/is_polymorphic.h
    A libcxx/include/__cxx03/__type_traits/is_primary_template.h
    A libcxx/include/__cxx03/__type_traits/is_reference.h
    A libcxx/include/__cxx03/__type_traits/is_reference_wrapper.h
    A libcxx/include/__cxx03/__type_traits/is_referenceable.h
    A libcxx/include/__cxx03/__type_traits/is_same.h
    A libcxx/include/__cxx03/__type_traits/is_scalar.h
    A libcxx/include/__cxx03/__type_traits/is_signed.h
    A libcxx/include/__cxx03/__type_traits/is_signed_integer.h
    A libcxx/include/__cxx03/__type_traits/is_specialization.h
    A libcxx/include/__cxx03/__type_traits/is_standard_layout.h
    A libcxx/include/__cxx03/__type_traits/is_swappable.h
    A libcxx/include/__cxx03/__type_traits/is_trivial.h
    A libcxx/include/__cxx03/__type_traits/is_trivially_assignable.h
    A libcxx/include/__cxx03/__type_traits/is_trivially_constructible.h
    A libcxx/include/__cxx03/__type_traits/is_trivially_copyable.h
    A libcxx/include/__cxx03/__type_traits/is_trivially_destructible.h
    A libcxx/include/__cxx03/__type_traits/is_trivially_lexicographically_comparable.h
    A libcxx/include/__cxx03/__type_traits/is_trivially_relocatable.h
    A libcxx/include/__cxx03/__type_traits/is_unbounded_array.h
    A libcxx/include/__cxx03/__type_traits/is_union.h
    A libcxx/include/__cxx03/__type_traits/is_unsigned.h
    A libcxx/include/__cxx03/__type_traits/is_unsigned_integer.h
    A libcxx/include/__cxx03/__type_traits/is_valid_expansion.h
    A libcxx/include/__cxx03/__type_traits/is_void.h
    A libcxx/include/__cxx03/__type_traits/is_volatile.h
    A libcxx/include/__cxx03/__type_traits/lazy.h
    A libcxx/include/__cxx03/__type_traits/make_32_64_or_128_bit.h
    A libcxx/include/__cxx03/__type_traits/make_const_lvalue_ref.h
    A libcxx/include/__cxx03/__type_traits/make_signed.h
    A libcxx/include/__cxx03/__type_traits/make_unsigned.h
    A libcxx/include/__cxx03/__type_traits/maybe_const.h
    A libcxx/include/__cxx03/__type_traits/nat.h
    A libcxx/include/__cxx03/__type_traits/negation.h
    A libcxx/include/__cxx03/__type_traits/noexcept_move_assign_container.h
    A libcxx/include/__cxx03/__type_traits/promote.h
    A libcxx/include/__cxx03/__type_traits/rank.h
    A libcxx/include/__cxx03/__type_traits/remove_all_extents.h
    A libcxx/include/__cxx03/__type_traits/remove_const.h
    A libcxx/include/__cxx03/__type_traits/remove_const_ref.h
    A libcxx/include/__cxx03/__type_traits/remove_cv.h
    A libcxx/include/__cxx03/__type_traits/remove_cvref.h
    A libcxx/include/__cxx03/__type_traits/remove_extent.h
    A libcxx/include/__cxx03/__type_traits/remove_pointer.h
    A libcxx/include/__cxx03/__type_traits/remove_reference.h
    A libcxx/include/__cxx03/__type_traits/remove_volatile.h
    A libcxx/include/__cxx03/__type_traits/result_of.h
    A libcxx/include/__cxx03/__type_traits/strip_signature.h
    A libcxx/include/__cxx03/__type_traits/type_identity.h
    A libcxx/include/__cxx03/__type_traits/type_list.h
    A libcxx/include/__cxx03/__type_traits/underlying_type.h
    A libcxx/include/__cxx03/__type_traits/unwrap_ref.h
    A libcxx/include/__cxx03/__type_traits/void_t.h
    A libcxx/include/__cxx03/__undef_macros
    A libcxx/include/__cxx03/__utility/as_const.h
    A libcxx/include/__cxx03/__utility/as_lvalue.h
    A libcxx/include/__cxx03/__utility/auto_cast.h
    A libcxx/include/__cxx03/__utility/cmp.h
    A libcxx/include/__cxx03/__utility/convert_to_integral.h
    A libcxx/include/__cxx03/__utility/declval.h
    A libcxx/include/__cxx03/__utility/empty.h
    A libcxx/include/__cxx03/__utility/exception_guard.h
    A libcxx/include/__cxx03/__utility/exchange.h
    A libcxx/include/__cxx03/__utility/forward.h
    A libcxx/include/__cxx03/__utility/forward_like.h
    A libcxx/include/__cxx03/__utility/in_place.h
    A libcxx/include/__cxx03/__utility/integer_sequence.h
    A libcxx/include/__cxx03/__utility/is_pointer_in_range.h
    A libcxx/include/__cxx03/__utility/is_valid_range.h
    A libcxx/include/__cxx03/__utility/move.h
    A libcxx/include/__cxx03/__utility/no_destroy.h
    A libcxx/include/__cxx03/__utility/pair.h
    A libcxx/include/__cxx03/__utility/piecewise_construct.h
    A libcxx/include/__cxx03/__utility/priority_tag.h
    A libcxx/include/__cxx03/__utility/private_constructor_tag.h
    A libcxx/include/__cxx03/__utility/rel_ops.h
    A libcxx/include/__cxx03/__utility/small_buffer.h
    A libcxx/include/__cxx03/__utility/swap.h
    A libcxx/include/__cxx03/__utility/to_underlying.h
    A libcxx/include/__cxx03/__utility/unreachable.h
    A libcxx/include/__cxx03/__variant/monostate.h
    A libcxx/include/__cxx03/__verbose_abort
    A libcxx/include/__cxx03/algorithm
    A libcxx/include/__cxx03/any
    A libcxx/include/__cxx03/array
    A libcxx/include/__cxx03/atomic
    A libcxx/include/__cxx03/barrier
    A libcxx/include/__cxx03/bit
    A libcxx/include/__cxx03/bitset
    A libcxx/include/__cxx03/cassert
    A libcxx/include/__cxx03/ccomplex
    A libcxx/include/__cxx03/cctype
    A libcxx/include/__cxx03/cerrno
    A libcxx/include/__cxx03/cfenv
    A libcxx/include/__cxx03/cfloat
    A libcxx/include/__cxx03/charconv
    A libcxx/include/__cxx03/chrono
    A libcxx/include/__cxx03/cinttypes
    A libcxx/include/__cxx03/ciso646
    A libcxx/include/__cxx03/climits
    A libcxx/include/__cxx03/clocale
    A libcxx/include/__cxx03/cmath
    A libcxx/include/__cxx03/codecvt
    A libcxx/include/__cxx03/compare
    A libcxx/include/__cxx03/complex
    A libcxx/include/__cxx03/complex.h
    A libcxx/include/__cxx03/concepts
    A libcxx/include/__cxx03/condition_variable
    A libcxx/include/__cxx03/coroutine
    A libcxx/include/__cxx03/csetjmp
    A libcxx/include/__cxx03/csignal
    A libcxx/include/__cxx03/cstdarg
    A libcxx/include/__cxx03/cstdbool
    A libcxx/include/__cxx03/cstddef
    A libcxx/include/__cxx03/cstdint
    A libcxx/include/__cxx03/cstdio
    A libcxx/include/__cxx03/cstdlib
    A libcxx/include/__cxx03/cstring
    A libcxx/include/__cxx03/ctgmath
    A libcxx/include/__cxx03/ctime
    A libcxx/include/__cxx03/ctype.h
    A libcxx/include/__cxx03/cuchar
    A libcxx/include/__cxx03/cwchar
    A libcxx/include/__cxx03/cwctype
    A libcxx/include/__cxx03/deque
    A libcxx/include/__cxx03/errno.h
    A libcxx/include/__cxx03/exception
    A libcxx/include/__cxx03/execution
    A libcxx/include/__cxx03/expected
    A libcxx/include/__cxx03/experimental/__config
    A libcxx/include/__cxx03/experimental/__simd/aligned_tag.h
    A libcxx/include/__cxx03/experimental/__simd/declaration.h
    A libcxx/include/__cxx03/experimental/__simd/reference.h
    A libcxx/include/__cxx03/experimental/__simd/scalar.h
    A libcxx/include/__cxx03/experimental/__simd/simd.h
    A libcxx/include/__cxx03/experimental/__simd/simd_mask.h
    A libcxx/include/__cxx03/experimental/__simd/traits.h
    A libcxx/include/__cxx03/experimental/__simd/utility.h
    A libcxx/include/__cxx03/experimental/__simd/vec_ext.h
    A libcxx/include/__cxx03/experimental/iterator
    A libcxx/include/__cxx03/experimental/memory
    A libcxx/include/__cxx03/experimental/propagate_const
    A libcxx/include/__cxx03/experimental/simd
    A libcxx/include/__cxx03/experimental/type_traits
    A libcxx/include/__cxx03/experimental/utility
    A libcxx/include/__cxx03/ext/__hash
    A libcxx/include/__cxx03/ext/hash_map
    A libcxx/include/__cxx03/ext/hash_set
    A libcxx/include/__cxx03/fenv.h
    A libcxx/include/__cxx03/filesystem
    A libcxx/include/__cxx03/float.h
    A libcxx/include/__cxx03/format
    A libcxx/include/__cxx03/forward_list
    A libcxx/include/__cxx03/fstream
    A libcxx/include/__cxx03/functional
    A libcxx/include/__cxx03/future
    A libcxx/include/__cxx03/initializer_list
    A libcxx/include/__cxx03/inttypes.h
    A libcxx/include/__cxx03/iomanip
    A libcxx/include/__cxx03/ios
    A libcxx/include/__cxx03/iosfwd
    A libcxx/include/__cxx03/iostream
    A libcxx/include/__cxx03/istream
    A libcxx/include/__cxx03/iterator
    A libcxx/include/__cxx03/latch
    A libcxx/include/__cxx03/limits
    A libcxx/include/__cxx03/list
    A libcxx/include/__cxx03/locale
    A libcxx/include/__cxx03/locale.h
    A libcxx/include/__cxx03/map
    A libcxx/include/__cxx03/math.h
    A libcxx/include/__cxx03/mdspan
    A libcxx/include/__cxx03/memory
    A libcxx/include/__cxx03/memory_resource
    A libcxx/include/__cxx03/module.modulemap
    A libcxx/include/__cxx03/mutex
    A libcxx/include/__cxx03/new
    A libcxx/include/__cxx03/numbers
    A libcxx/include/__cxx03/numeric
    A libcxx/include/__cxx03/optional
    A libcxx/include/__cxx03/ostream
    A libcxx/include/__cxx03/print
    A libcxx/include/__cxx03/queue
    A libcxx/include/__cxx03/random
    A libcxx/include/__cxx03/ranges
    A libcxx/include/__cxx03/ratio
    A libcxx/include/__cxx03/regex
    A libcxx/include/__cxx03/scoped_allocator
    A libcxx/include/__cxx03/semaphore
    A libcxx/include/__cxx03/set
    A libcxx/include/__cxx03/shared_mutex
    A libcxx/include/__cxx03/source_location
    A libcxx/include/__cxx03/span
    A libcxx/include/__cxx03/sstream
    A libcxx/include/__cxx03/stack
    A libcxx/include/__cxx03/stdatomic.h
    A libcxx/include/__cxx03/stdbool.h
    A libcxx/include/__cxx03/stddef.h
    A libcxx/include/__cxx03/stdexcept
    A libcxx/include/__cxx03/stdint.h
    A libcxx/include/__cxx03/stdio.h
    A libcxx/include/__cxx03/stdlib.h
    A libcxx/include/__cxx03/stop_token
    A libcxx/include/__cxx03/streambuf
    A libcxx/include/__cxx03/string
    A libcxx/include/__cxx03/string.h
    A libcxx/include/__cxx03/string_view
    A libcxx/include/__cxx03/strstream
    A libcxx/include/__cxx03/syncstream
    A libcxx/include/__cxx03/system_error
    A libcxx/include/__cxx03/tgmath.h
    A libcxx/include/__cxx03/thread
    A libcxx/include/__cxx03/tuple
    A libcxx/include/__cxx03/type_traits
    A libcxx/include/__cxx03/typeindex
    A libcxx/include/__cxx03/typeinfo
    A libcxx/include/__cxx03/uchar.h
    A libcxx/include/__cxx03/unordered_map
    A libcxx/include/__cxx03/unordered_set
    A libcxx/include/__cxx03/utility
    A libcxx/include/__cxx03/valarray
    A libcxx/include/__cxx03/variant
    A libcxx/include/__cxx03/vector
    A libcxx/include/__cxx03/version
    A libcxx/include/__cxx03/wchar.h
    A libcxx/include/__cxx03/wctype.h

  Log Message:
  -----------
  [libc++][C++03] Copy the LLVM 19 headers (#108999)

This is the first part of the "Freezing C++03 headers" proposal
explained in
https://discourse.llvm.org/t/rfc-freezing-c-03-headers-in-libc/77319/58.

This patch mechanically copies the headers as of the LLVM 19.1 release
into a subdirectory of libc++ so that we can start using these headers
when building in C++03 mode. We are going to be backporting important
changes to that copy of the headers until the LLVM 21 release. After the
LLVM 21 release, only critical bugfixes will be fixed in the C++03 copy
of the headers.

This patch only performs a copy of the headers -- these headers are
still unused by the rest of the codebase.


  Commit: 998033b3501e96035e4da7027e0a9dfc81c721ad
      https://github.com/llvm/llvm-project/commit/998033b3501e96035e4da7027e0a9dfc81c721ad
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/debug-counter.ll
    R llvm/test/Transforms/SLPVectorizer/debug-counter.ll

  Log Message:
  -----------
  [SLP][NFC]Make a test target specific to avoid failures


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

  Changed paths:
    M compiler-rt/test/asan/TestCases/initialization-bug-no-global.cpp

  Log Message:
  -----------
  [asan] Disable test on iOS

Fails on Darwin (probably iOS) bots after #104730.


  Commit: aa02b76b1a4c2df1a701fbd8a8378d1cd946e70a
      https://github.com/llvm/llvm-project/commit/aa02b76b1a4c2df1a701fbd8a8378d1cd946e70a
  Author: David Majnemer <david.majnemer at gmail.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/lib/Target/X86/MCTargetDesc/X86InstComments.cpp
    M llvm/test/CodeGen/X86/avx512-gfni-intrinsics.ll
    M llvm/test/CodeGen/X86/avx512-intrinsics-upgrade.ll
    M llvm/test/CodeGen/X86/avx512vl-intrinsics-upgrade.ll
    M llvm/test/CodeGen/X86/avx512vl-intrinsics.ll
    M llvm/test/CodeGen/X86/sse-intrinsics-fast-isel.ll
    M llvm/test/CodeGen/X86/sse2-intrinsics-fast-isel.ll
    M llvm/test/CodeGen/X86/stack-folding-int-avx512.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-8.ll

  Log Message:
  -----------
  [X86] Let's improve the expression we dump for vpternlog

Right now, we are printing stuff like:
 zmm0 = (~zmm0 & zmm1 & mem) | (zmm0 & ~zmm1 & ~mem) |
        (zmm0 & ~zmm1 & mem) | (zmm0 & zmm1 & ~mem) |
	(zmm0 & zmm1 & mem)

This is not wrong but it sure is verbose and it makes it a bit hard to
understand what is going on at a glance.

The above expression is equivalent to:
 zmm0 = zmm0 | (zmm1 & mem)

I considered simplifying the expressions on the fly but that gets out of
hand very quickly. Quine-McCluskey is not so simple and so fast that it
makes a ton of sense for our pretty printer. I quickly played around
with some different normal forms and ended up just using this [1] table
of functions with some minor post-processing. I made sure that each
function is identical to the appropriate BooleanFunction in Mathematica.

If the size of these tables ends up mattering for whatever reason there
are a few obvious things we could do to save space without undue effort.

[1]: https://gist.github.com/dougallj/81a80cd381988466c4e1c4889ecac95b#file-2-x86-base-txt


  Commit: 38a8000f30aa87a51ac0598dae3cb9166084f6a0
      https://github.com/llvm/llvm-project/commit/38a8000f30aa87a51ac0598dae3cb9166084f6a0
  Author: yonghong-song <yhs at fb.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/lib/Target/BPF/BPFISelLowering.h
    M llvm/test/CodeGen/BPF/32-bit-subreg-alu.ll
    M llvm/test/CodeGen/BPF/sdiv_error.ll
    A llvm/test/CodeGen/BPF/sdiv_to_mul.ll
    M llvm/test/CodeGen/BPF/srem_error.ll

  Log Message:
  -----------
  [BPF] Use mul for certain div/mod operations (#110712)

The motivation example likes below
```
  $ cat t1.c
  struct S {
    int var[3];
  };
  int foo1 (struct S *a, struct S *b)
  {
      return a - b;
  }
```
For cpu v1/v2/v3, the compilation will fail with the following error:
```
  $ clang --target=bpf -O2 -c t1.c -mcpu=v3
  t1.c:4:5: error: unsupported signed division, please convert to unsigned div/mod.
  4 | int foo1 (struct S *a, struct S *b)
        |     ^
  1 error generated.
```
The reason is that sdiv/smod is only supported at -mcpu=v4. At cpu
v1/v2/v3, only udiv/umod is supported.

But the above example (for func foo1()) is reasonable common and user
has to workaround the compilation failure by using udiv with
conditionals.

For x86, for the above t1.c, compile and dump the asm code like below:
```
  $ clang -O2 -c t1.c && llvm-objdump -d t1.o
  0000000000000000 <foo1>:
       0: 48 29 f7                      subq    %rsi, %rdi
       3: 48 c1 ef 02                   shrq    $0x2, %rdi
       7: 69 c7 ab aa aa aa             imull   $0xaaaaaaab, %edi, %eax # imm = 0xAAAAAAAB
       d: c3                            retq
```
Basically sdiv can be replaced with sub, shr and imul. Latest gcc-bpf is
also able to generate code similar to x86 with -mcpu=v1. See
https://godbolt.org/z/feP9ETbjj

Generally multiplication is cheaper than divide. LLVM SelectionDAG
already supports to generate alternative codes (mul etc.) for div/mod
operations if the divisor is constant and if the cost of division is not
cheap. For BPF backend, let us use multiplication instead of divide
whenever possible. The following is the list of div/mod operations which
can be converted to mul.
  - 32bit signed/unsigned div/mod with constant divisor
- 64bit signed/unsigned div with constant divisor and with 'exact' flag
in IR where 'exact' means if replacing div with mod, it is guaranteed
that modulo result will be 0. The above foo1() case belongs here.


  Commit: 760ffa4736357dc31c970abcad833027f5ef36b4
      https://github.com/llvm/llvm-project/commit/760ffa4736357dc31c970abcad833027f5ef36b4
  Author: Rajveer Singh Bharadwaj <rajveer.developer at icloud.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M mlir/lib/Dialect/Tensor/Transforms/FoldTensorSubsetOps.cpp
    M mlir/test/Dialect/Tensor/fold-tensor-subset-ops.mlir

  Log Message:
  -----------
  [mlir][tensor] Apply `InsertSliceOfTransferWriteOpFolder` only when `transfer_write` overwrites all elements of `insert_slice` (#108803)

Resolves #101708

The updated logic now correctly checks if `transfer_write` completely
overwrites `insert_slice` and only then applies the rewrite for this
pattern.

This check currently covers static sizes, for dynamic sizes
value bounds analysis is needed (see `TODO:`).


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

  Changed paths:
    M clang/utils/TableGen/ASTTableGen.h
    M clang/utils/TableGen/ClangAttrEmitter.cpp
    M clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
    M clang/utils/TableGen/ClangOpcodesEmitter.cpp
    M clang/utils/TableGen/ClangOpenCLBuiltinEmitter.cpp
    M clang/utils/TableGen/SveEmitter.cpp
    M libc/utils/HdrGen/PublicAPICommand.cpp
    M libc/utils/LibcTableGenUtil/APIIndexer.cpp
    M llvm/include/llvm/TableGen/DirectiveEmitter.h
    M llvm/include/llvm/TableGen/Record.h
    M llvm/lib/TableGen/Record.cpp
    M llvm/utils/TableGen/AsmWriterEmitter.cpp
    M llvm/utils/TableGen/Common/CodeGenHwModes.cpp
    M llvm/utils/TableGen/Common/CodeGenInstruction.cpp
    M llvm/utils/TableGen/Common/CodeGenRegisters.cpp
    M llvm/utils/TableGen/Common/CodeGenSchedule.cpp
    M llvm/utils/TableGen/Common/CodeGenTarget.cpp
    M llvm/utils/TableGen/Common/PredicateExpander.cpp
    M llvm/utils/TableGen/CompressInstEmitter.cpp
    M llvm/utils/TableGen/DFAPacketizerEmitter.cpp
    M llvm/utils/TableGen/DXILEmitter.cpp
    M llvm/utils/TableGen/GlobalISelCombinerEmitter.cpp
    M llvm/utils/TableGen/InstrDocsEmitter.cpp
    M llvm/utils/TableGen/MacroFusionPredicatorEmitter.cpp
    M llvm/utils/TableGen/RISCVTargetDefEmitter.cpp
    M llvm/utils/TableGen/SubtargetEmitter.cpp
    M llvm/utils/TableGen/X86RecognizableInstr.cpp
    M mlir/lib/TableGen/Predicate.cpp
    M mlir/tools/mlir-tblgen/BytecodeDialectGen.cpp
    M mlir/tools/mlir-tblgen/SPIRVUtilsGen.cpp

  Log Message:
  -----------
  [TableGen] Change `getValueAsListOfDefs` to return const pointer vector (#110713)

Change `getValueAsListOfDefs` to return a vector of const Record
pointer, and remove `getValueAsListOfConstDefs` that was added as a
transition aid.

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: 513404806646ad07f76b0fda3c11a9847fc5ce84
      https://github.com/llvm/llvm-project/commit/513404806646ad07f76b0fda3c11a9847fc5ce84
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    A llvm/test/tools/llvm-readtapi/compare-ignore-archs.test
    M llvm/tools/llvm-readtapi/TapiOpts.td
    M llvm/tools/llvm-readtapi/llvm-readtapi.cpp

  Log Message:
  -----------
  [readtapi] Add option to ignore architecture slices to ignore (#110615)

For qualification purposes, it's helpful to ignore certain slices that
can be expected to differ.


  Commit: b70d32789c9463d49b46b4e57c44607d1c956e4c
      https://github.com/llvm/llvm-project/commit/b70d32789c9463d49b46b4e57c44607d1c956e4c
  Author: Tex Riddell <texr at microsoft.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/docs/LanguageExtensions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/Builtins.td
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/test/CodeGen/builtins-elementwise-math.c
    M clang/test/CodeGen/strictfp-elementwise-bulitins.cpp
    A clang/test/CodeGenHLSL/builtins/atan2.hlsl
    M clang/test/Sema/aarch64-sve-vector-trig-ops.c
    M clang/test/Sema/builtins-elementwise-math.c
    M clang/test/Sema/riscv-rvv-vector-trig-ops.c
    M clang/test/SemaCXX/builtins-elementwise-math.cpp
    R clang/test/SemaHLSL/BuiltIns/fmod-errors.hlsl
    M clang/test/SemaHLSL/BuiltIns/half-float-only-errors.hlsl
    A clang/test/SemaHLSL/BuiltIns/half-float-only-errors2.hlsl
    R clang/test/SemaHLSL/BuiltIns/pow-errors.hlsl

  Log Message:
  -----------
  [HLSL][clang] Add elementwise builtin for atan2 (p3) (#110187)

This change is part of this proposal:
https://discourse.llvm.org/t/rfc-all-the-math-intrinsics/78294

- Add HLSL frontend for atan2
- Add clang Builtin, map to new llvm.atan2
- SemaChecking restrict to floating point and 2 args
- SemaHLSL restrict to float or half.
- Add to clang ReleaseNotes.rst and LanguageExtensions.rst
- Add half-float-only-errors2.hlsl for 2 arg intrinsics, and update half-float-only-errors.hlsl with scalar case for consistency
- Remove fmod-errors.hlsl and pow-errors.hlsl now covered in half-float-only-errors2.hlsl

Part 3 for Implement the atan2 HLSL Function #70096.


  Commit: ce72c76e9bd0bf74af614cae6a9f85cfd4720e95
      https://github.com/llvm/llvm-project/commit/ce72c76e9bd0bf74af614cae6a9f85cfd4720e95
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M compiler-rt/test/sanitizer_common/TestCases/Darwin/freadlink.c

  Log Message:
  -----------
  [compiler-rt] XFAIL freadlink on darwin x86_64. (#110745)

GH-110372


  Commit: 9440420f63b791126a13426b94339aeac575b50f
      https://github.com/llvm/llvm-project/commit/9440420f63b791126a13426b94339aeac575b50f
  Author: Francis Visoiu Mistrih <890283+francisvm at users.noreply.github.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/docs/LanguageExtensions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Sema/Sema.h
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/CodeGen/builtins-elementwise-math.c
    M clang/test/CodeGen/builtins-reduction-math.c
    M clang/test/CodeGen/strictfp-elementwise-bulitins.cpp
    M clang/test/Sema/aarch64-sve-vector-pow-ops.c
    M clang/test/Sema/builtins-elementwise-math.c
    M clang/test/Sema/builtins-reduction-math.c
    M clang/test/Sema/riscv-rvv-vector-trig-ops.c
    M clang/test/Sema/riscv-sve-vector-pow-ops.c
    M clang/test/SemaCXX/builtins-elementwise-math.cpp

  Log Message:
  -----------
  [Clang] Add __builtin_(elementwise|reduce)_(max|min)imum (#110198)

We have the LLVM intrinsics, and we're missing the clang builtins to be
used directly in code that needs to make the distinction in NaN
semantics.


  Commit: fd5e220fa63bf9142e65be1b553af1100501c4bc
      https://github.com/llvm/llvm-project/commit/fd5e220fa63bf9142e65be1b553af1100501c4bc
  Author: vporpo <vporpodas at google.com>
  Date:   2024-10-01 (Tue, 01 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] MemDGNode for memory-dependency candidate nodes (#109684)

This patch implements the MemDGNode class for DAG nodes that are
candidates
for memory dependencies. These nodes form a chain that is accessible by
`getPrevNode()` and `getNextNode()`.

It also implements a builder class that creates MemDGNode intervals from
Instructions.


  Commit: 2f4327294dccc27fc9d5febe71196f6f854d66ff
      https://github.com/llvm/llvm-project/commit/2f4327294dccc27fc9d5febe71196f6f854d66ff
  Author: Sterling-Augustine <56981066+Sterling-Augustine at users.noreply.github.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

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

  Log Message:
  -----------
  [SandboxIR] Implement getNumBits for Instructions (#110748)

This also moves the other getNumbits test into UtilsTest.cc where it
belongs.


  Commit: bb8b9ac0ba5382bcf02f614b5b3a84c3699cf52c
      https://github.com/llvm/llvm-project/commit/bb8b9ac0ba5382bcf02f614b5b3a84c3699cf52c
  Author: Henrik G. Olsson <hnrklssn at gmail.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/test/lit.cfg.py
    M llvm/docs/CommandGuide/lit.rst
    M llvm/test/lit.cfg.py
    M llvm/utils/lit/lit/LitConfig.py
    M llvm/utils/lit/lit/TestRunner.py
    M llvm/utils/lit/lit/cl_arguments.py
    M llvm/utils/lit/lit/llvm/config.py
    M llvm/utils/lit/lit/main.py
    M llvm/utils/update_any_test_checks.py

  Log Message:
  -----------
  [Utils] Add new --update-tests flag to llvm-lit (#108425)

This adds a flag to lit for detecting and updating failing tests when
possible to do so automatically. The flag uses a plugin architecture
where config files can add additional auto-updaters for the types of
tests in the test suite. When a test fails with `--update-tests` enabled
lit passes the test RUN invocation and output to each registered test
updater until one of them signals that it updated the test (or all test
updaters have been run). As such it is the responsibility of the test
updater to only update tests where it is reasonably certain that it will
actually fix the test, or come close to doing so.

Initially adds support for UpdateVerifyTests and UpdateTestChecks. The
flag is currently only implemented for lit's internal shell, so
`--update-tests` implies `LIT_USE_INTERNAL_SHELL=1`.

Builds on work in #97369
Fixes #81320


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

  Changed paths:
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    M llvm/lib/Target/RISCV/RISCVGISel.td
    M llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/rotate-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-rotate-rv64.mir

  Log Message:
  -----------
  [RISCV][GISel] Stop promoting s32 G_ROTL/ROTR rotate amount to s64 on RV64.

There are no SelectionDAG patterns to share. GISel has its own patterns
since it considers s32 a legal type and SDAG does not.


  Commit: ccbda38b7025f3bcd404583c5c20a12ec6fb48f4
      https://github.com/llvm/llvm-project/commit/ccbda38b7025f3bcd404583c5c20a12ec6fb48f4
  Author: Haowei Wu <haowei at google.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    R llvm/test/Transforms/SLPVectorizer/X86/debug-counter.ll
    A llvm/test/Transforms/SLPVectorizer/debug-counter.ll

  Log Message:
  -----------
  Revert "[SLP][NFC]Make a test target specific to avoid failures"

This reverts commit 998033b3501e96035e4da7027e0a9dfc81c721ad.
This breaks llvm test on debug-counter.ll


  Commit: 948326163c96fcd6957d6c318acf3e49be2b11d2
      https://github.com/llvm/llvm-project/commit/948326163c96fcd6957d6c318acf3e49be2b11d2
  Author: Haowei Wu <haowei at google.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    R llvm/test/Transforms/SLPVectorizer/debug-counter.ll

  Log Message:
  -----------
  Revert "[SLP]Add debug counter support"

This reverts commit f3c408d1726f6a921212faf68085f68bf8533f0c.
This breaks LLVM test on debug-counter.ll


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

  Changed paths:
    A llvm/test/Transforms/SimplifyCFG/hoist-cb-diff-attrs.ll
    A llvm/test/Transforms/SimplifyCFG/sink-cb-diff-attrs.ll

  Log Message:
  -----------
  [SimplifyCFG] Add tests for hoisting/sinking callbases with differing attrs; NFC


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

  Changed paths:
    M llvm/include/llvm/IR/InstrTypes.h
    M llvm/include/llvm/IR/Instruction.h
    M llvm/lib/IR/Instruction.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/test/Transforms/SimplifyCFG/hoist-cb-diff-attrs.ll
    M llvm/test/Transforms/SimplifyCFG/sink-cb-diff-attrs.ll

  Log Message:
  -----------
  [SimplifyCFG] Supporting hoisting/sinking callbases with differing attrs

Some (many) attributes can safely be dropped to enable sinking. For
example removing `nonnull` on a return/param can't affect correctness.

Closes #109472


  Commit: 9c868195daf153920272269d2af1c4b62670c4b9
      https://github.com/llvm/llvm-project/commit/9c868195daf153920272269d2af1c4b62670c4b9
  Author: Michael Jones <michaelrj at google.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M libc/test/src/stdio/sprintf_test.cpp

  Log Message:
  -----------
  [libc] clean up sprintf macros and float tests (#110759)

The sprintf tests have a macro named "ASSERT_STREQ_LEN" which was used
in about half of the tests. This patch moves all of the tests which can
to using that macro. This patch also enables long double tests for %e
and %g, since those never got finished. There's still some work to do
enabling long double testing for long doubles other than the intel 80
bit format, but that can land in a followup.

The `#ifdef LIBC_COPT_FLOAT_TO_STR_REDUCED_PRECISION` lines are for a
followup patch.


  Commit: d1ee9dce2ebad30b3dbc0df4f2a1307f63065b55
      https://github.com/llvm/llvm-project/commit/d1ee9dce2ebad30b3dbc0df4f2a1307f63065b55
  Author: caipeng <iiicp at outlook.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M .gitignore
    M llvm/.gitignore

  Log Message:
  -----------
  [llvm-project][llvm] .gitignore supports filtering folders starting with cmake-build (#110649)

Using clion to build llvm, in debug mode, the cmake-build-debug folder
will be created by default, and in release mode, the cmake-build-release
folder will be created by default, and these folders need to be filtered
out of the .gitignore again, or else they will contaminate the current
working environment.


  Commit: 6afe56732a172d3f2cbd0330b1fcb34bbfd002a9
      https://github.com/llvm/llvm-project/commit/6afe56732a172d3f2cbd0330b1fcb34bbfd002a9
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2024-10-01 (Tue, 01 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:
  -----------
  [clang] Finish implementation of P0522 (#96023)

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 things.

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: b38b34c51a115982912256dd940f2e1b794b7d3a
      https://github.com/llvm/llvm-project/commit/b38b34c51a115982912256dd940f2e1b794b7d3a
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSerializationKinds.td

  Log Message:
  -----------
  [clang] Remove 'PCH' from more diagnostics that were wrong or misleading NFC (#110724)


  Commit: 4bd81c5738d00c9111fc11cb9990a9377d33eaf3
      https://github.com/llvm/llvm-project/commit/4bd81c5738d00c9111fc11cb9990a9377d33eaf3
  Author: Alejandro Álvarez Ayllón <alejandro.alvarez at sonarsource.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M clang/lib/Parse/ParseExpr.cpp
    A clang/test/AST/new-unknown-type.cpp
    M clang/test/Parser/colon-colon-parentheses.cpp
    M clang/test/Parser/cxx-ambig-paren-expr-asan.cpp

  Log Message:
  -----------
  [Clang] Fix eager skipping in `ParseExpressionList()` (#110133)

i.e., in a call like `function(new Unknown);` the parser should skip only until the
semicolon.

Before this change, everything was skipped until a balanced closing
parenthesis or brace was found. This strategy can cause completely bogus
ASTs. For instance, in the case of the test `new-unknown-type.cpp`,
`struct Bar` would end nested under the namespace `a::b`.


  Commit: d214bec5161e9e6fd9e4c024f6068597822b1d4e
      https://github.com/llvm/llvm-project/commit/d214bec5161e9e6fd9e4c024f6068597822b1d4e
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/test/SemaTemplate/temp_arg_nontype_cxx1z.cpp

  Log Message:
  -----------
  [clang] Improve deduction of reference typed NTTP (#110393)

This improves the existing workaround for a core issue introduced in
CWG1770.

When performing template argument deduction for an NTTP which the
parameter side is a reference, instead of dropping the references for
both sides, just make the argument be same reference typed as the
parameter, in case the argument is not already a reference type.

Fixes #73460


  Commit: e495231238b86ae2a3c7bb5f94634c19ca2af19a
      https://github.com/llvm/llvm-project/commit/e495231238b86ae2a3c7bb5f94634c19ca2af19a
  Author: Henrik G. Olsson <hnrklssn at gmail.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/test/lit.cfg.py
    M llvm/docs/CommandGuide/lit.rst
    M llvm/test/lit.cfg.py
    M llvm/utils/lit/lit/LitConfig.py
    M llvm/utils/lit/lit/TestRunner.py
    M llvm/utils/lit/lit/cl_arguments.py
    M llvm/utils/lit/lit/llvm/config.py
    M llvm/utils/lit/lit/main.py
    M llvm/utils/update_any_test_checks.py

  Log Message:
  -----------
  Revert "[Utils] Add new --update-tests flag to llvm-lit" (#110772)

Reverts llvm/llvm-project#108425


  Commit: 4c0d805a54aa7b55ad12684c4fb4413a10992f00
      https://github.com/llvm/llvm-project/commit/4c0d805a54aa7b55ad12684c4fb4413a10992f00
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M libc/include/llvm-libc-types/wchar_t.h

  Log Message:
  -----------
  [libc] Do not redefine `wchar_t` when compiling in C++ (#110769)

Summary:
This is a fundamental type in C++, so we can't redefine it.


  Commit: 793ded7d0b7f1407636a98007f83074b8dd5f765
      https://github.com/llvm/llvm-project/commit/793ded7d0b7f1407636a98007f83074b8dd5f765
  Author: Tex Riddell <texr at microsoft.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/test/Sema/aarch64-sve-vector-trig-ops.c

  Log Message:
  -----------
  Fix failing test caused by b70d327

`clang/test/Sema/aarch64-sve-vector-trig-ops.c` wasn't updated when merging PR #110187, which changed the expected diagnostics for the atan2 test.


  Commit: 5d308af894ccc3f7a288d6abd6f9097b4cbc8cf4
      https://github.com/llvm/llvm-project/commit/5d308af894ccc3f7a288d6abd6f9097b4cbc8cf4
  Author: Tex Riddell <texr at microsoft.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/test/Sema/aarch64-sve-vector-trig-ops.c

  Log Message:
  -----------
  Revert "Fix failing test caused by b70d327"

This reverts commit 793ded7d0b7f1407636a98007f83074b8dd5f765.


  Commit: d7e0c08ab9bfa73b27c734d37ca57780a3d397cb
      https://github.com/llvm/llvm-project/commit/d7e0c08ab9bfa73b27c734d37ca57780a3d397cb
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    A llvm/test/CodeGen/RISCV/GlobalISel/regbankselect/rvv/vmclr.mir

  Log Message:
  -----------
  [RISCV][GISEL] regbankselect for G_VMCLR_VL (#110746)

These are genereated when legalizing G_SPLAT_VECTOR


  Commit: fea18afeed39fe4435d67eee1834f0f34b23013d
      https://github.com/llvm/llvm-project/commit/fea18afeed39fe4435d67eee1834f0f34b23013d
  Author: Tex Riddell <texr at microsoft.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/test/Sema/aarch64-sve-vector-trig-ops.c

  Log Message:
  -----------
  Fix failing test caused by b70d327

`clang/test/Sema/aarch64-sve-vector-trig-ops.c` wasn't updated when merging PR #110187, which changed the expected diagnostics for the atan2 test.


  Commit: ca5b81bdefa19fc778bee4d2c347b6c3077038b5
      https://github.com/llvm/llvm-project/commit/ca5b81bdefa19fc778bee4d2c347b6c3077038b5
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/GISel/RISCVRegisterBankInfo.cpp
    A llvm/test/CodeGen/RISCV/GlobalISel/regbankselect/rvv/splatvector-rv32.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/regbankselect/rvv/splatvector-rv64.mir

  Log Message:
  -----------
  [RISCV][GISEL] regbankselect for G_SPLAT_VECTOR (#110744)


  Commit: ab83d31bbdb10a783e71c33b91cb2a76bd745c50
      https://github.com/llvm/llvm-project/commit/ab83d31bbdb10a783e71c33b91cb2a76bd745c50
  Author: Prabhuk <prabhukr at google.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/tools/llvm-debuginfod-find/llvm-debuginfod-find.cpp

  Log Message:
  -----------
  [llvm-debuginfod-find] Fix help text regression (#110752)

While porting the tool from using cl:opt to OptTable, I had mistakenly
deleted the help text header that was originally part of the tool.
Bringing it back in this patch.


  Commit: 5b21fd298cb4fc2042a95ffb9284b778f8504e04
      https://github.com/llvm/llvm-project/commit/5b21fd298cb4fc2042a95ffb9284b778f8504e04
  Author: Billy Zhu <billyzhu at modular.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M mlir/lib/Pass/Pass.cpp
    M mlir/test/Pass/crash-recovery-dynamic-failure.mlir
    A mlir/test/Pass/full_diagnostics.mlir
    M mlir/test/lib/Pass/TestPassManager.cpp

  Log Message:
  -----------
  [MLIR][Pass] Full & deterministic diagnostics (#110311)

Today, when the pass infra schedules a pass/nested-pipeline on a set of
ops, it exits early as soon as it fails on one of the ops. This leads to
non-exhaustive, and more importantly, non-deterministic error reporting
(under async).

This PR removes the early termination behavior so that all ops have a
chance to run through the current pass/nested-pipeline, and all errors
are reported (async diagnostics are already ordered). This guarantees
deterministic & full error reporting. As a result, it's also no longer
necessary to -split-input-file with one error per split when testing
with -verify-diagnostics.


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

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

  Log Message:
  -----------
  [IR][Attribute] Don't create dangling references (#110781)

Fix #109719.


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

  Changed paths:
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp

  Log Message:
  -----------
  [clang][bytecode] Protect ia32_{lzcnt,tzcnt} against non-integers (#110699)

These are also called for vectors.


  Commit: 679be527095ea60d5933b883ca276d8e593920ee
      https://github.com/llvm/llvm-project/commit/679be527095ea60d5933b883ca276d8e593920ee
  Author: c8ef <c8ef at outlook.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Sema/SemaExprCXX.cpp

  Log Message:
  -----------
  [Clang][NFC] Consolidate the parameter check for the `requires` expression parameter. (#110773)

This patch is a follow-up to #109831. In the discussion, we agreed that
having parameter checks scattered across different areas isn't ideal.
Therefore, I suggest merging the check from #88974 into the void
parameter check. This change won't impact functionality and will enhance
maintainability.


  Commit: 9c15ff21aa6c1cad031651d6f491192cef3838fe
      https://github.com/llvm/llvm-project/commit/9c15ff21aa6c1cad031651d6f491192cef3838fe
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
    M llvm/test/CodeGen/RISCV/GlobalISel/irtranslator/calling-conv-half.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/irtranslator/calling-conv-ilp32-ilp32f-ilp32d-common.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/irtranslator/calling-conv-lp64-lp64f-lp64d-common.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-abs-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-abs-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-addo-subo-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-addo-subo-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ashr-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ashr-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-bitreverse-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-bitreverse-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-bswap-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-bswap-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-const-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctlz-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctlz-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctpop-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctpop-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-cttz-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-cttz-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-div-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-div-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-fshl-fshr-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-fshl-fshr-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-icmp-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-icmp-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-implicit-def-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-implicit-def-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-itofp-f16-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-itofp-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-load-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-load-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-lshr-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-lshr-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-mul-ext-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-mul-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-mul-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-mulo-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-mulo-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-rem-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-rem-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-rotate-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-rotate-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-sat-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-sat-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-select-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-select-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-shl-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-shl-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-smax-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-smax-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-smin-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-smin-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-store-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-store-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-umax-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-umax-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-umin-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-umin-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-anyext.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-extract-subvector.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-icmp.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-sext.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-splatvector-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-splatvector-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-splatvector-s64-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-vscale-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-vscale-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-zext.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/vararg.ll

  Log Message:
  -----------
  [RISCV][GISel] Add RISCVPassConfig::getCSEConfig() to match other targets. (#110755)


  Commit: 9cd5e5c270604a3fa7bf2d1878d9c318c8bd0e5d
      https://github.com/llvm/llvm-project/commit/9cd5e5c270604a3fa7bf2d1878d9c318c8bd0e5d
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/tools/llvm-debuginfod-find/llvm-debuginfod-find.cpp

  Log Message:
  -----------
  [llvm-debuginfod-find] Fix a warning

This patch fixes:

  llvm/tools/llvm-debuginfod-find/llvm-debuginfod-find.cpp:70:19:
  error: unused variable 'ToolName' [-Werror,-Wunused-variable]


  Commit: 4e2efea5e8e55b26dd7ac90c6cd1ab7bf6775650
      https://github.com/llvm/llvm-project/commit/4e2efea5e8e55b26dd7ac90c6cd1ab7bf6775650
  Author: Quinn Dawkins <quinn.dawkins at gmail.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/MemRef/Utils/MemRefUtils.h
    M mlir/lib/Dialect/MemRef/Utils/MemRefUtils.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorTransferOpTransforms.cpp
    M mlir/test/Dialect/Vector/vector-transferop-opt.mlir

  Log Message:
  -----------
  [mlir][vector] Add all view-like ops to transfer flow opt (#110521)

`vector.transfer_*` folding and forwarding currently does not take into
account reshaping view-like memref ops (expand and collapse shape),
leading to potentially invalid store folding or value forwarding. This
patch adds tracking for those (and other) view-like ops. It is still
possible to design operations that alias memrefs without being a view
(e.g. memref in the iter_args of an `scf.for`), so these patterns may
still need revisiting in the future.


  Commit: 1053b3ea24f2401b6c8f143b9c1bd45032bc93ba
      https://github.com/llvm/llvm-project/commit/1053b3ea24f2401b6c8f143b9c1bd45032bc93ba
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    M llvm/lib/Target/RISCV/RISCVGISel.td
    M llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/alu-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/zba-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-abs-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ashr-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-bitreverse-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-bswap-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctlz-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctpop-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-cttz-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-div-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-fshl-fshr-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-itofp-f16-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-itofp-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-load-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-lshr-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-rem-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-sat-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-store-rv64.mir

  Log Message:
  -----------
  [RISCV][GISel] Stop promoting s32 G_SHL/ASHR/LSHR shift amount to s64 on RV64.

There are no SelectionDAG patterns to share. GISel has its own patterns
since it considers s32 a legal type and SDAG does not.


  Commit: 1202c24b0d128c4838252daeeb1268707da69507
      https://github.com/llvm/llvm-project/commit/1202c24b0d128c4838252daeeb1268707da69507
  Author: Volodymyr Sapsai <vsapsai at apple.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M clang/include/module.modulemap

  Log Message:
  -----------
  [Modules] Mark CFProtectionOptions.def as a textual header because it is used for x-macro purposes. (#110780)


  Commit: 62cd07fb67c946d251a18d3a564b535553939c9a
      https://github.com/llvm/llvm-project/commit/62cd07fb67c946d251a18d3a564b535553939c9a
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/sub.ll
    M llvm/test/Transforms/PhaseOrdering/X86/vec-shift.ll

  Log Message:
  -----------
  [InstCombine] Canonicalize `sub mask, X -> ~X` when high bits are ignored (#110635)

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

The motivating case of this patch is to emit `andn` on RISC-V with zbb
for expressions like `(sub 63, X) & 63`.


  Commit: 0004fba07972eb521b43d4336e6a9eff7e512ff8
      https://github.com/llvm/llvm-project/commit/0004fba07972eb521b43d4336e6a9eff7e512ff8
  Author: duk <74797529+duk-37 at users.noreply.github.com>
  Date:   2024-10-01 (Tue, 01 Oct 2024)

  Changed paths:
    M llvm/lib/Passes/StandardInstrumentations.cpp
    A llvm/test/Other/dump-with-filter.ll

  Log Message:
  -----------
  [StandardInstrumentations] Ensure non-null module pointer when getting display name for IR file (#110779)

Fixes a crash when using `-filter-print-funcs` with
`-ir-dump-directory`. A quick reproducer on trunk (also included as a
test):

```ll
; opt -passes=no-op-function -print-after=no-op-function -filter-print-funcs=nope -ir-dump-directory=somewhere test.ll

define void @test() {
    ret void
}
```

[Compiler Explorer](https://godbolt.org/z/sPErz44h4)


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

  Changed paths:
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
    M llvm/lib/Target/RISCV/RISCVCallingConv.cpp
    M llvm/lib/Target/RISCV/RISCVDeadRegisterDefinitions.cpp
    M llvm/lib/Target/RISCV/RISCVExpandPseudoInsts.cpp
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoC.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoF.td
    M llvm/lib/Target/RISCV/RISCVMakeCompressible.cpp
    M llvm/lib/Target/RISCV/RISCVMergeBaseOffset.cpp
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.td
    M llvm/test/CodeGen/RISCV/fastcc-without-f-reg.ll
    M llvm/test/CodeGen/RISCV/float-arith.ll
    M llvm/test/CodeGen/RISCV/float-bitmanip-dagcombines.ll
    M llvm/test/CodeGen/RISCV/float-frem.ll
    M llvm/test/CodeGen/RISCV/float-imm.ll
    M llvm/test/CodeGen/RISCV/float-intrinsics.ll
    M llvm/test/CodeGen/RISCV/half-intrinsics.ll
    M llvm/test/CodeGen/RISCV/kcfi-mir.ll
    M llvm/test/CodeGen/RISCV/llvm.frexp.ll
    A llvm/test/CodeGen/RISCV/make-compressible-zfinx.mir

  Log Message:
  -----------
  [RISCV] Add 32 bit GPR sub-register for Zfinx. (#108336)

This patches adds a 32 bit register class for use with Zfinx instructions. This makes them more similar to F instructions and allows us to only spill 32 bits.
    
I've added CodeGenOnly instructions for load/store using GPRF32 as that gave better results than insert_subreg/extract_subreg.
    
Function arguments use this new GPRF32 register class for f32 arguments with Zfinx. Eliminating the need to use RISCVISD::FMV* nodes.
    
This is similar to #107446 which adds a 16 bit register class.


  Commit: 4db10561ccf6ceec18dbb0fd89e41442aab64bfa
      https://github.com/llvm/llvm-project/commit/4db10561ccf6ceec18dbb0fd89e41442aab64bfa
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/include/llvm/IR/ConstantFPRange.h
    M llvm/lib/IR/ConstantFPRange.cpp
    M llvm/unittests/IR/ConstantFPRangeTest.cpp

  Log Message:
  -----------
  [ConstantFPRange] Address review comments. NFC. (#110793)

1. Address post-commit review comments
https://github.com/llvm/llvm-project/pull/86483#discussion_r1782305961.
2. Move some NFC changes from
https://github.com/llvm/llvm-project/pull/110082 to this patch.


  Commit: 30f58ab17fd0abed0d1aaba9b861349ee5f342ab
      https://github.com/llvm/llvm-project/commit/30f58ab17fd0abed0d1aaba9b861349ee5f342ab
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
    M llvm/test/CodeGen/RISCV/rvv/named-vector-shuffle-reverse.ll

  Log Message:
  -----------
  [RISCV] Lower vector_reverse for zvfhmin/zvfbfmin (#110218)

Previously we crashed because we had no lowering for f16/bf16 scalable
vectors.
Because the lowering uses vrgather_vv_vl, we need to add bf16 patterns
for it.


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

  Changed paths:
    M mlir/test/Dialect/Linalg/vectorization-with-patterns.mlir

  Log Message:
  -----------
  [mlir][linalg] Refine test for tensor.pad vectorization (#110742)

This particular test was missing the `vectorize_padding` attribute and
hence didn't really trigger anything meaningful. I've added the
attribute and additional check-lines to verify that:
  * The vectorizer was indeed run (and generated vector Ops).
  * The final `tensor.insert_slice` Op is preserved.

Note that another `tensor.insert_slice` Op, inserted by the vectoriser,
was rewritten as a `vector.transfer_read`/`vector.transfer_write` pair
and hence is not present in the test output.


  Commit: aadfba9b2aa107f9cada2fd9bcbe612cbf560650
      https://github.com/llvm/llvm-project/commit/aadfba9b2aa107f9cada2fd9bcbe612cbf560650
  Author: Mike Crowe <mac at mcrowe.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M clang-tools-extra/docs/ReleaseNotes.rst

  Log Message:
  -----------
  [clang-tidy] Fix check alphabetical ordering in release notes (#110428)


  Commit: f0858bfb62468e5887e7b7d158bd07543ed82467
      https://github.com/llvm/llvm-project/commit/f0858bfb62468e5887e7b7d158bd07543ed82467
  Author: Thomas Fransham <tfransham at gmail.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M clang/unittests/Interpreter/CMakeLists.txt

  Log Message:
  -----------
  [Clang] Update Interpreter tests to use clang_target_link_libraries (#110154)

This will fix duplicate and missing linker symbol errors when using
CLANG_LINK_CLANG_DYLIB on windows and explicit visibility macros are
used.
This is part of the work to enable LLVM_BUILD_LLVM_DYLIB and plugins on
window.


  Commit: 1fa4a74d53184df0ea3dcb7eb6faf66d6974e7bb
      https://github.com/llvm/llvm-project/commit/1fa4a74d53184df0ea3dcb7eb6faf66d6974e7bb
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/insertelt-fp.ll

  Log Message:
  -----------
  [RISCV] Lower insert_vector_elt on zvfhmin/zvfbfmin (#110221)

This is the dual of #110144, but doesn't handle the case when the scalar
type is illegal i.e. no zfhmin/zfbfmin. It looks like softening isn't
yet implemented for insert_vector_elt operands and it will crash during
type legalization, so I've left that configuration out of the tests.


  Commit: b8028f6b87dac837d65f18c1cd49dd4db543601a
      https://github.com/llvm/llvm-project/commit/b8028f6b87dac837d65f18c1cd49dd4db543601a
  Author: Jubilee <workingjubilee at gmail.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

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

  Log Message:
  -----------
  [TargetParser][AArch64] Believe runtime feature detection (#95694)

In https://github.com/llvm/llvm-project/issues/90365 it was reported
that TargetParser arrives at the wrong conclusion regarding what
features are enabled when attempting to detect "native" features on the
Raspberry Pi 4, because it (correctly) detects it as a Cortex-A72, but
LLVM (incorrectly) believes all Cortex-A72s have crypto enabled. Attempt
to help ourselves by allowing runtime information derived from the host
to contradict whatever we believe is "true" about the architecture.


  Commit: 496187b3b81ea76a8b67d796609d7f09992cf96d
      https://github.com/llvm/llvm-project/commit/496187b3b81ea76a8b67d796609d7f09992cf96d
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/insertelt-fp.ll

  Log Message:
  -----------
  [RISCV] Move bfloat tests back above half. NFC

In the other tests bfloats tend to come before the halfs, in
insertelt-fp.ll they were temporarily swapped to help with the diff in


  Commit: 203d5158c39c17bef231793f8254421fb1ca17b2
      https://github.com/llvm/llvm-project/commit/203d5158c39c17bef231793f8254421fb1ca17b2
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-select.mir

  Log Message:
  -----------
  AMDGPU/GlobalISel: Preserve flags when splitting select

RegBankSelect was losing flags on selects.


  Commit: 30ea7e859b32abcc4a5585365337a08dab7dcea3
      https://github.com/llvm/llvm-project/commit/30ea7e859b32abcc4a5585365337a08dab7dcea3
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-or.mir

  Log Message:
  -----------
  AMDGPU: Preserve flags in regbankselect when splitting or


  Commit: 3b7989cd9b057ea5addb62d5f924b4553f5ae111
      https://github.com/llvm/llvm-project/commit/3b7989cd9b057ea5addb62d5f924b4553f5ae111
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M flang/include/flang/Optimizer/Builder/Runtime/RTBuilder.h
    M flang/unittests/Optimizer/RTBuilder.cpp

  Log Message:
  -----------
  [flang] remove support for std::complex value lowering. (#110643)

To avoid ABIs issues, std::complex should be passed/returned by reference to the runtime.

Part of the [RFC to use mlir complex
type](https://discourse.llvm.org/t/rfc-flang-replace-usages-of-fir-complex-by-mlir-complex-type/82292).


  Commit: 7537142e880db9ac1ac756d8a89a08a633b7d7d5
      https://github.com/llvm/llvm-project/commit/7537142e880db9ac1ac756d8a89a08a633b7d7d5
  Author: Danial Klimkin <dklimkin at google.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

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

  Log Message:
  -----------
  [bazel] Fix build past 4e2efea5e8e55b26dd7ac90c6cd1ab7bf6775650 (#110799)


  Commit: 1a65d95d0056ce98f94944ff1fd5309242fd5f28
      https://github.com/llvm/llvm-project/commit/1a65d95d0056ce98f94944ff1fd5309242fd5f28
  Author: Bevin Hansson <59652494+bevin-hansson at users.noreply.github.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/Spiller.h
    M llvm/lib/CodeGen/InlineSpiller.cpp
    M llvm/lib/CodeGen/RegAllocGreedy.cpp
    A llvm/test/CodeGen/X86/debug-spilled-snippet.ll
    A llvm/test/CodeGen/X86/debug-spilled-snippet.mir

  Log Message:
  -----------
  [CodeGen][RAGreedy] Inform LiveDebugVariables about snippets spilled by InlineSpiller. (#109962)

RAGreedy invokes InlineSpiller to spill a particular virtreg inline.
When the spiller does this, it also identifies small, adjacent liveranges called
snippets. These are also spilled or rematerialized in the process.

However, the spiller does not inform RA that it has spilled these regs.
This means that debug variable locations referencing these regs/ranges
are lost.

Mark any spilled regs which do not have a stack slot assigned to them as
allocated to the slot being spilled to to tell LDV that those regs are
located in that slot, even though the regs might no longer exist in the
program after regalloc is finished. Also, inform RA about all of the
regs which were replaced (spilled or rematted), not just the one that was
requested so that it can properly manage the ranges of the debug vars.


  Commit: 37e717ec1387d8c5ec2a58a941797f5d74a1b03b
      https://github.com/llvm/llvm-project/commit/37e717ec1387d8c5ec2a58a941797f5d74a1b03b
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.h

  Log Message:
  -----------
  TableGen/GlobalISel: Fix using wrong type for instruction flags

09515f2c20111628ce81ad5f40e12e5f6af5ed2f increased the size of the
MachineInstr flags from uint16_t to uint32_t, so change TableGen
to match.


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

  Changed paths:
    M mlir/include/mlir/Dialect/Tensor/Utils/Utils.h
    M mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
    M mlir/lib/Dialect/Tensor/Utils/Utils.cpp
    M mlir/test/Dialect/Linalg/generalize-tensor-pack.mlir

  Log Message:
  -----------
  [mlir][tensor] Extend the logic to generalise tensor.pack (#109815)

Extends the logic to generalise tensor.pack (into e.g. tensor.pad +
tensor.transpose) so that it also works when one of the inner tile sizes
is scalable (i.e. a multiple of `vector.vscale`). For example:
```mlir
  %c8 = arith.constant 8 : index
  %vscale = vector.vscale
  %c8_vscale = arith.muli %vscale, %c8 : index
  %0 = tensor.pack %input
      padding_value(%pad : f32)
      inner_dims_pos = [0, 1]
      inner_tiles = [%c8_vscale, 2]
      into %output : tensor<5x1xf32> -> tensor<1x1x?x2xf32>
}
```
is generalised as:
```mlir
  %c8 = arith.constant 8 : index
  %vscale = vector.vscale
  %c8_vscale = arith.muli %vscale, %c8 : index
  %0 = affine.apply #map()[%c8_vscale, %c5]
  %padded = tensor.pad %arg0 low[0, 0] high[%0, 1] {
  ^bb0(%arg3: index, %arg4: index):
    tensor.yield %arg2 : f32
  } : tensor<5x1xf32> to tensor<?x2xf32>
```

At the Tensor level, we model scalability using dynamic shapes and this
change basically extends the relevant logic so that it also works for
dynamic shapes.


  Commit: 95f00a63ce68f5df4c8447fa418be9255898f9c6
      https://github.com/llvm/llvm-project/commit/95f00a63ce68f5df4c8447fa418be9255898f9c6
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M clang/test/CodeGen/X86/cx-complex-range.c
    M clang/test/CodeGen/cx-complex-range.c
    M clang/test/CodeGen/nofpclass.c
    M llvm/docs/LangRef.rst
    M llvm/include/llvm/IR/DerivedTypes.h
    M llvm/include/llvm/IR/Operator.h
    M llvm/lib/IR/Attributes.cpp
    M llvm/lib/IR/Type.cpp
    M llvm/test/Bitcode/compatibility.ll
    M llvm/unittests/IR/InstructionsTest.cpp

  Log Message:
  -----------
  [IR] Allow fast math flags on calls with homogeneous FP struct types (#110506)

This extends FPMathOperator to allow calls that return literal structs
of homogeneous floating-point or vector-of-floating-point types.

The intended use case for this is to support FP intrinsics that return
multiple values (such as `llvm.sincos`).


  Commit: e64ef74e64577ecff16b7f5f7491b580c7e2f10a
      https://github.com/llvm/llvm-project/commit/e64ef74e64577ecff16b7f5f7491b580c7e2f10a
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

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

  Log Message:
  -----------
  [AMDGPU] Remember to clear a DenseMap between runs of SIInsertWaitcnts (#110650)

This caused nondeterministic codegen in some cases.


  Commit: 87121403e251828ed0fee8a9c2a2993ce8f57861
      https://github.com/llvm/llvm-project/commit/87121403e251828ed0fee8a9c2a2993ce8f57861
  Author: dlav-sc <daniil.avdeev at syntacore.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M lldb/source/Expression/IRExecutionUnit.cpp
    M lldb/source/Plugins/ABI/RISCV/ABISysV_riscv.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
    M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp
    M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.h

  Log Message:
  -----------
  [lldb][RISCV] function calls support in lldb expressions (#99336)

[lldb][RISCV] add jitted function calls to ABI
Function calls support in LLDB expressions for RISCV: 1 of 4

Augments corresponding functionality to RISCV ABI, which allows to jit
lldb expressions and thus make function calls inside them. Only function
calls with integer and void function arguments and return value are
supported.

[lldb][RISCV] add JIT relocations resolver
Function calls support in LLDB expressions for RISCV: 2 of 4

Adds required RISCV relocations resolving functionality in lldb
ExecutionEngine.

[lldb][RISCV] RISC-V large code model in lldb expressions
Function calls support in LLDB expressions for RISCV: 3 of 4

This patch sets large code model in MCJIT settings for RISC-V 64-bit targets
that allows to make assembly jumps at any 64bit address. This is needed,
because resulted jitted code may contain more that +-2GB jumps, that are
not available in RISC-V with medium code model.

[lldb][RISCV] doubles support in lldb expressions
Function calls support in LLDB expressions for RISCV: 4 of 4

This patch adds desired feature flags in MCJIT compiler to enable
hard-float instructions if target supports them and allows to use floats
and doubles in lldb expressions.


  Commit: 15f90203bcbc685e8d63a7e52e60adff02bf5499
      https://github.com/llvm/llvm-project/commit/15f90203bcbc685e8d63a7e52e60adff02bf5499
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
    A lldb/test/Shell/SymbolFile/DWARF/x86/DW_AT_declaration-unusual-layout.s
    M lldb/test/Shell/SymbolFile/DWARF/x86/DW_AT_declaration-with-children.s

  Log Message:
  -----------
  [lldb/DWARF] Respect member layout for types parsed through declarations (#110648)

LLDB code for using the type layout data from DWARF was not kicking in
for types which were initially parsed from a declaration. The problem
was in these lines of code:

```
  if (type)
    layout_info.bit_size = type->GetByteSize(nullptr).value_or(0) * 8;
```

which determine the types layout size by getting the size from the
lldb_private::Type object. The problem is that if the type object does
not have this information cached, this request can trigger another
(recursive) request to lay out/complete the type. This one, somewhat
surprisingly, succeeds, but does that without the type layout
information (because it hasn't been computed yet). The reasons why this
hasn't been noticed so far are:
- this is a relatively new bug. I haven't checked but I suspect it was
introduced in the "delay type definition search" patchset from this
summer -- if we search for the definition eagerly, we will always have a
cached size value.
- it requires the presence of another bug/issue, as otherwise the
automatically computed layout will match the real thing.
- it reproduces (much) more easily with -flimit-debug-info (though it is
possible to trigger it without that flag).

My fix consists of always fetching type size information from DWARF
(which so far existed as a fallback path). I'm not quite sure why this
code was there in the first place (the code goes back to before the
Great LLDB Reformat), but I don't believe it is necessary, as the type
size (for types parsed from definition DIEs) is set exactly from this
attribute (in ParseStructureLikeDIE).


  Commit: 3717048496074929250e8d75c033e0b3409eb063
      https://github.com/llvm/llvm-project/commit/3717048496074929250e8d75c033e0b3409eb063
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M flang/lib/Semantics/check-namelist.cpp
    M flang/lib/Semantics/check-namelist.h
    M flang/lib/Semantics/resolve-directives.cpp
    A flang/test/Semantics/OpenMP/reduction-namelist.f90
    M flang/test/Semantics/resolve123.f90

  Log Message:
  -----------
  [flang][Semantics][OpenMP] don't reduce variables in namelist (#110671)

This is allowed by the OpenMP and F23 standards. But variables in a
namelist are not allowed in OpenMP privatisation. I suspect this was an
oversight.

If we allow this we run into problems masking the original symbol with
the symbol for the reduction variable when the variable is accessed via
a namelist initialised as a global variable. See #101907. One solution
for this would be to force the namelist to always be initilized inside
of the block in which it is used (therefore using the correct mapping
for the reduction variable), but this could make some production
applications slow.

I tentatively think it is probably better to disallow a (perhaps
mistaken) edge case of the standards with (I think) little practical
use, than to make real applications slow in order to make this work. If
reviewers would rather keep to the letter of the standard, see #109303
which implements the alternative solution. I'm open to either path
forward.

Fixes #101907


  Commit: 0b2403197ff026627cf27df63ce83cd53d1cd680
      https://github.com/llvm/llvm-project/commit/0b2403197ff026627cf27df63ce83cd53d1cd680
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    A llvm/test/Transforms/LoopVectorize/outer_loop_early_exit.ll

  Log Message:
  -----------
  [LoopVectorize] In LoopVectorize.cpp start using getSymbolicMaxBackedgeTakenCount (#108833)

LoopVectorizationLegality currently only treats a loop as legal to vectorise
if PredicatedScalarEvolution::getBackedgeTakenCount returns a valid
SCEV, or more precisely that the loop must have an exact backedge taken
count. Therefore, in LoopVectorize.cpp we can safely replace all calls to
getBackedgeTakenCount with calls to getSymbolicMaxBackedgeTakenCount,
since the result is the same.

This also helps prepare the loop vectoriser for PR #88385.


  Commit: 383a67042a30c12ca492d306f2f6a2459764022f
      https://github.com/llvm/llvm-project/commit/383a67042a30c12ca492d306f2f6a2459764022f
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

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

  Log Message:
  -----------
  [SCEV] Add early exit tests with alignment assumptions.

Precommit tests from https://github.com/llvm/llvm-project/pull/108632.


  Commit: 9f3d1695eb97a4612b0cf2bbc5eb85ebdb5eaff8
      https://github.com/llvm/llvm-project/commit/9f3d1695eb97a4612b0cf2bbc5eb85ebdb5eaff8
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/ScalarEvolutionExpander.h
    M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
    M llvm/test/Analysis/ScalarEvolution/scev-expander-reuse-gep.ll
    M llvm/test/Transforms/IndVarSimplify/D108043.ll
    M llvm/test/Transforms/IndVarSimplify/lftr-dead-ivs.ll
    M llvm/test/Transforms/IndVarSimplify/lftr.ll
    M llvm/test/Transforms/LoopIdiom/basic-address-space.ll
    M llvm/test/Transforms/LoopIdiom/basic.ll
    M llvm/test/Transforms/LoopIdiom/memset-pr52104.ll
    M llvm/test/Transforms/LoopStrengthReduce/2011-12-19-PostincQuadratic.ll
    M llvm/test/Transforms/LoopStrengthReduce/X86/2012-01-13-phielim.ll
    M llvm/test/Transforms/LoopStrengthReduce/post-inc-icmpzero.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-accesses.ll
    M llvm/test/Transforms/LoopVectorize/induction.ll
    M llvm/test/Transforms/LoopVectorize/interleaved-accesses.ll
    M llvm/test/Transforms/LoopVectorize/multiple-strides-vectorization.ll
    M llvm/test/Transforms/LoopVectorize/pr47343-expander-lcssa-after-cfg-update.ll
    M llvm/test/Transforms/LoopVectorize/runtime-checks-difference.ll
    M llvm/test/Transforms/LoopVersioning/add-phi-update-users.ll
    M llvm/test/Transforms/LoopVersioning/bound-check-partially-known.ll

  Log Message:
  -----------
  [SCEVExpander] Preserve gep nuw during expansion (#102133)

When expanding SCEV adds to geps, transfer the nuw flag to the resulting
gep. (Note that this doesn't apply to IV increment GEPs, which go
through a different code path.)


  Commit: 68c04b0ae62d8431d72d8b47fc13008002ee4387
      https://github.com/llvm/llvm-project/commit/68c04b0ae62d8431d72d8b47fc13008002ee4387
  Author: Sylvestre Ledru <sylvestre at debian.org>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    R libcxx/include/__cxx03/CMakeLists.txt
    R libcxx/include/__cxx03/__algorithm/adjacent_find.h
    R libcxx/include/__cxx03/__algorithm/all_of.h
    R libcxx/include/__cxx03/__algorithm/any_of.h
    R libcxx/include/__cxx03/__algorithm/binary_search.h
    R libcxx/include/__cxx03/__algorithm/clamp.h
    R libcxx/include/__cxx03/__algorithm/comp.h
    R libcxx/include/__cxx03/__algorithm/comp_ref_type.h
    R libcxx/include/__cxx03/__algorithm/copy.h
    R libcxx/include/__cxx03/__algorithm/copy_backward.h
    R libcxx/include/__cxx03/__algorithm/copy_if.h
    R libcxx/include/__cxx03/__algorithm/copy_move_common.h
    R libcxx/include/__cxx03/__algorithm/copy_n.h
    R libcxx/include/__cxx03/__algorithm/count.h
    R libcxx/include/__cxx03/__algorithm/count_if.h
    R libcxx/include/__cxx03/__algorithm/equal.h
    R libcxx/include/__cxx03/__algorithm/equal_range.h
    R libcxx/include/__cxx03/__algorithm/fill.h
    R libcxx/include/__cxx03/__algorithm/fill_n.h
    R libcxx/include/__cxx03/__algorithm/find.h
    R libcxx/include/__cxx03/__algorithm/find_end.h
    R libcxx/include/__cxx03/__algorithm/find_first_of.h
    R libcxx/include/__cxx03/__algorithm/find_if.h
    R libcxx/include/__cxx03/__algorithm/find_if_not.h
    R libcxx/include/__cxx03/__algorithm/find_segment_if.h
    R libcxx/include/__cxx03/__algorithm/fold.h
    R libcxx/include/__cxx03/__algorithm/for_each.h
    R libcxx/include/__cxx03/__algorithm/for_each_n.h
    R libcxx/include/__cxx03/__algorithm/for_each_segment.h
    R libcxx/include/__cxx03/__algorithm/generate.h
    R libcxx/include/__cxx03/__algorithm/generate_n.h
    R libcxx/include/__cxx03/__algorithm/half_positive.h
    R libcxx/include/__cxx03/__algorithm/in_found_result.h
    R libcxx/include/__cxx03/__algorithm/in_fun_result.h
    R libcxx/include/__cxx03/__algorithm/in_in_out_result.h
    R libcxx/include/__cxx03/__algorithm/in_in_result.h
    R libcxx/include/__cxx03/__algorithm/in_out_out_result.h
    R libcxx/include/__cxx03/__algorithm/in_out_result.h
    R libcxx/include/__cxx03/__algorithm/includes.h
    R libcxx/include/__cxx03/__algorithm/inplace_merge.h
    R libcxx/include/__cxx03/__algorithm/is_heap.h
    R libcxx/include/__cxx03/__algorithm/is_heap_until.h
    R libcxx/include/__cxx03/__algorithm/is_partitioned.h
    R libcxx/include/__cxx03/__algorithm/is_permutation.h
    R libcxx/include/__cxx03/__algorithm/is_sorted.h
    R libcxx/include/__cxx03/__algorithm/is_sorted_until.h
    R libcxx/include/__cxx03/__algorithm/iter_swap.h
    R libcxx/include/__cxx03/__algorithm/iterator_operations.h
    R libcxx/include/__cxx03/__algorithm/lexicographical_compare.h
    R libcxx/include/__cxx03/__algorithm/lexicographical_compare_three_way.h
    R libcxx/include/__cxx03/__algorithm/lower_bound.h
    R libcxx/include/__cxx03/__algorithm/make_heap.h
    R libcxx/include/__cxx03/__algorithm/make_projected.h
    R libcxx/include/__cxx03/__algorithm/max.h
    R libcxx/include/__cxx03/__algorithm/max_element.h
    R libcxx/include/__cxx03/__algorithm/merge.h
    R libcxx/include/__cxx03/__algorithm/min.h
    R libcxx/include/__cxx03/__algorithm/min_element.h
    R libcxx/include/__cxx03/__algorithm/min_max_result.h
    R libcxx/include/__cxx03/__algorithm/minmax.h
    R libcxx/include/__cxx03/__algorithm/minmax_element.h
    R libcxx/include/__cxx03/__algorithm/mismatch.h
    R libcxx/include/__cxx03/__algorithm/move.h
    R libcxx/include/__cxx03/__algorithm/move_backward.h
    R libcxx/include/__cxx03/__algorithm/next_permutation.h
    R libcxx/include/__cxx03/__algorithm/none_of.h
    R libcxx/include/__cxx03/__algorithm/nth_element.h
    R libcxx/include/__cxx03/__algorithm/partial_sort.h
    R libcxx/include/__cxx03/__algorithm/partial_sort_copy.h
    R libcxx/include/__cxx03/__algorithm/partition.h
    R libcxx/include/__cxx03/__algorithm/partition_copy.h
    R libcxx/include/__cxx03/__algorithm/partition_point.h
    R libcxx/include/__cxx03/__algorithm/pop_heap.h
    R libcxx/include/__cxx03/__algorithm/prev_permutation.h
    R libcxx/include/__cxx03/__algorithm/pstl.h
    R libcxx/include/__cxx03/__algorithm/push_heap.h
    R libcxx/include/__cxx03/__algorithm/ranges_adjacent_find.h
    R libcxx/include/__cxx03/__algorithm/ranges_all_of.h
    R libcxx/include/__cxx03/__algorithm/ranges_any_of.h
    R libcxx/include/__cxx03/__algorithm/ranges_binary_search.h
    R libcxx/include/__cxx03/__algorithm/ranges_clamp.h
    R libcxx/include/__cxx03/__algorithm/ranges_contains.h
    R libcxx/include/__cxx03/__algorithm/ranges_contains_subrange.h
    R libcxx/include/__cxx03/__algorithm/ranges_copy.h
    R libcxx/include/__cxx03/__algorithm/ranges_copy_backward.h
    R libcxx/include/__cxx03/__algorithm/ranges_copy_if.h
    R libcxx/include/__cxx03/__algorithm/ranges_copy_n.h
    R libcxx/include/__cxx03/__algorithm/ranges_count.h
    R libcxx/include/__cxx03/__algorithm/ranges_count_if.h
    R libcxx/include/__cxx03/__algorithm/ranges_ends_with.h
    R libcxx/include/__cxx03/__algorithm/ranges_equal.h
    R libcxx/include/__cxx03/__algorithm/ranges_equal_range.h
    R libcxx/include/__cxx03/__algorithm/ranges_fill.h
    R libcxx/include/__cxx03/__algorithm/ranges_fill_n.h
    R libcxx/include/__cxx03/__algorithm/ranges_find.h
    R libcxx/include/__cxx03/__algorithm/ranges_find_end.h
    R libcxx/include/__cxx03/__algorithm/ranges_find_first_of.h
    R libcxx/include/__cxx03/__algorithm/ranges_find_if.h
    R libcxx/include/__cxx03/__algorithm/ranges_find_if_not.h
    R libcxx/include/__cxx03/__algorithm/ranges_find_last.h
    R libcxx/include/__cxx03/__algorithm/ranges_for_each.h
    R libcxx/include/__cxx03/__algorithm/ranges_for_each_n.h
    R libcxx/include/__cxx03/__algorithm/ranges_generate.h
    R libcxx/include/__cxx03/__algorithm/ranges_generate_n.h
    R libcxx/include/__cxx03/__algorithm/ranges_includes.h
    R libcxx/include/__cxx03/__algorithm/ranges_inplace_merge.h
    R libcxx/include/__cxx03/__algorithm/ranges_is_heap.h
    R libcxx/include/__cxx03/__algorithm/ranges_is_heap_until.h
    R libcxx/include/__cxx03/__algorithm/ranges_is_partitioned.h
    R libcxx/include/__cxx03/__algorithm/ranges_is_permutation.h
    R libcxx/include/__cxx03/__algorithm/ranges_is_sorted.h
    R libcxx/include/__cxx03/__algorithm/ranges_is_sorted_until.h
    R libcxx/include/__cxx03/__algorithm/ranges_iterator_concept.h
    R libcxx/include/__cxx03/__algorithm/ranges_lexicographical_compare.h
    R libcxx/include/__cxx03/__algorithm/ranges_lower_bound.h
    R libcxx/include/__cxx03/__algorithm/ranges_make_heap.h
    R libcxx/include/__cxx03/__algorithm/ranges_max.h
    R libcxx/include/__cxx03/__algorithm/ranges_max_element.h
    R libcxx/include/__cxx03/__algorithm/ranges_merge.h
    R libcxx/include/__cxx03/__algorithm/ranges_min.h
    R libcxx/include/__cxx03/__algorithm/ranges_min_element.h
    R libcxx/include/__cxx03/__algorithm/ranges_minmax.h
    R libcxx/include/__cxx03/__algorithm/ranges_minmax_element.h
    R libcxx/include/__cxx03/__algorithm/ranges_mismatch.h
    R libcxx/include/__cxx03/__algorithm/ranges_move.h
    R libcxx/include/__cxx03/__algorithm/ranges_move_backward.h
    R libcxx/include/__cxx03/__algorithm/ranges_next_permutation.h
    R libcxx/include/__cxx03/__algorithm/ranges_none_of.h
    R libcxx/include/__cxx03/__algorithm/ranges_nth_element.h
    R libcxx/include/__cxx03/__algorithm/ranges_partial_sort.h
    R libcxx/include/__cxx03/__algorithm/ranges_partial_sort_copy.h
    R libcxx/include/__cxx03/__algorithm/ranges_partition.h
    R libcxx/include/__cxx03/__algorithm/ranges_partition_copy.h
    R libcxx/include/__cxx03/__algorithm/ranges_partition_point.h
    R libcxx/include/__cxx03/__algorithm/ranges_pop_heap.h
    R libcxx/include/__cxx03/__algorithm/ranges_prev_permutation.h
    R libcxx/include/__cxx03/__algorithm/ranges_push_heap.h
    R libcxx/include/__cxx03/__algorithm/ranges_remove.h
    R libcxx/include/__cxx03/__algorithm/ranges_remove_copy.h
    R libcxx/include/__cxx03/__algorithm/ranges_remove_copy_if.h
    R libcxx/include/__cxx03/__algorithm/ranges_remove_if.h
    R libcxx/include/__cxx03/__algorithm/ranges_replace.h
    R libcxx/include/__cxx03/__algorithm/ranges_replace_copy.h
    R libcxx/include/__cxx03/__algorithm/ranges_replace_copy_if.h
    R libcxx/include/__cxx03/__algorithm/ranges_replace_if.h
    R libcxx/include/__cxx03/__algorithm/ranges_reverse.h
    R libcxx/include/__cxx03/__algorithm/ranges_reverse_copy.h
    R libcxx/include/__cxx03/__algorithm/ranges_rotate.h
    R libcxx/include/__cxx03/__algorithm/ranges_rotate_copy.h
    R libcxx/include/__cxx03/__algorithm/ranges_sample.h
    R libcxx/include/__cxx03/__algorithm/ranges_search.h
    R libcxx/include/__cxx03/__algorithm/ranges_search_n.h
    R libcxx/include/__cxx03/__algorithm/ranges_set_difference.h
    R libcxx/include/__cxx03/__algorithm/ranges_set_intersection.h
    R libcxx/include/__cxx03/__algorithm/ranges_set_symmetric_difference.h
    R libcxx/include/__cxx03/__algorithm/ranges_set_union.h
    R libcxx/include/__cxx03/__algorithm/ranges_shuffle.h
    R libcxx/include/__cxx03/__algorithm/ranges_sort.h
    R libcxx/include/__cxx03/__algorithm/ranges_sort_heap.h
    R libcxx/include/__cxx03/__algorithm/ranges_stable_partition.h
    R libcxx/include/__cxx03/__algorithm/ranges_stable_sort.h
    R libcxx/include/__cxx03/__algorithm/ranges_starts_with.h
    R libcxx/include/__cxx03/__algorithm/ranges_swap_ranges.h
    R libcxx/include/__cxx03/__algorithm/ranges_transform.h
    R libcxx/include/__cxx03/__algorithm/ranges_unique.h
    R libcxx/include/__cxx03/__algorithm/ranges_unique_copy.h
    R libcxx/include/__cxx03/__algorithm/ranges_upper_bound.h
    R libcxx/include/__cxx03/__algorithm/remove.h
    R libcxx/include/__cxx03/__algorithm/remove_copy.h
    R libcxx/include/__cxx03/__algorithm/remove_copy_if.h
    R libcxx/include/__cxx03/__algorithm/remove_if.h
    R libcxx/include/__cxx03/__algorithm/replace.h
    R libcxx/include/__cxx03/__algorithm/replace_copy.h
    R libcxx/include/__cxx03/__algorithm/replace_copy_if.h
    R libcxx/include/__cxx03/__algorithm/replace_if.h
    R libcxx/include/__cxx03/__algorithm/reverse.h
    R libcxx/include/__cxx03/__algorithm/reverse_copy.h
    R libcxx/include/__cxx03/__algorithm/rotate.h
    R libcxx/include/__cxx03/__algorithm/rotate_copy.h
    R libcxx/include/__cxx03/__algorithm/sample.h
    R libcxx/include/__cxx03/__algorithm/search.h
    R libcxx/include/__cxx03/__algorithm/search_n.h
    R libcxx/include/__cxx03/__algorithm/set_difference.h
    R libcxx/include/__cxx03/__algorithm/set_intersection.h
    R libcxx/include/__cxx03/__algorithm/set_symmetric_difference.h
    R libcxx/include/__cxx03/__algorithm/set_union.h
    R libcxx/include/__cxx03/__algorithm/shift_left.h
    R libcxx/include/__cxx03/__algorithm/shift_right.h
    R libcxx/include/__cxx03/__algorithm/shuffle.h
    R libcxx/include/__cxx03/__algorithm/sift_down.h
    R libcxx/include/__cxx03/__algorithm/simd_utils.h
    R libcxx/include/__cxx03/__algorithm/sort.h
    R libcxx/include/__cxx03/__algorithm/sort_heap.h
    R libcxx/include/__cxx03/__algorithm/stable_partition.h
    R libcxx/include/__cxx03/__algorithm/stable_sort.h
    R libcxx/include/__cxx03/__algorithm/swap_ranges.h
    R libcxx/include/__cxx03/__algorithm/three_way_comp_ref_type.h
    R libcxx/include/__cxx03/__algorithm/transform.h
    R libcxx/include/__cxx03/__algorithm/uniform_random_bit_generator_adaptor.h
    R libcxx/include/__cxx03/__algorithm/unique.h
    R libcxx/include/__cxx03/__algorithm/unique_copy.h
    R libcxx/include/__cxx03/__algorithm/unwrap_iter.h
    R libcxx/include/__cxx03/__algorithm/unwrap_range.h
    R libcxx/include/__cxx03/__algorithm/upper_bound.h
    R libcxx/include/__cxx03/__assert
    R libcxx/include/__cxx03/__atomic/aliases.h
    R libcxx/include/__cxx03/__atomic/atomic.h
    R libcxx/include/__cxx03/__atomic/atomic_base.h
    R libcxx/include/__cxx03/__atomic/atomic_flag.h
    R libcxx/include/__cxx03/__atomic/atomic_init.h
    R libcxx/include/__cxx03/__atomic/atomic_lock_free.h
    R libcxx/include/__cxx03/__atomic/atomic_ref.h
    R libcxx/include/__cxx03/__atomic/atomic_sync.h
    R libcxx/include/__cxx03/__atomic/check_memory_order.h
    R libcxx/include/__cxx03/__atomic/contention_t.h
    R libcxx/include/__cxx03/__atomic/cxx_atomic_impl.h
    R libcxx/include/__cxx03/__atomic/fence.h
    R libcxx/include/__cxx03/__atomic/is_always_lock_free.h
    R libcxx/include/__cxx03/__atomic/kill_dependency.h
    R libcxx/include/__cxx03/__atomic/memory_order.h
    R libcxx/include/__cxx03/__atomic/to_gcc_order.h
    R libcxx/include/__cxx03/__bit/bit_cast.h
    R libcxx/include/__cxx03/__bit/bit_ceil.h
    R libcxx/include/__cxx03/__bit/bit_floor.h
    R libcxx/include/__cxx03/__bit/bit_log2.h
    R libcxx/include/__cxx03/__bit/bit_width.h
    R libcxx/include/__cxx03/__bit/blsr.h
    R libcxx/include/__cxx03/__bit/byteswap.h
    R libcxx/include/__cxx03/__bit/countl.h
    R libcxx/include/__cxx03/__bit/countr.h
    R libcxx/include/__cxx03/__bit/endian.h
    R libcxx/include/__cxx03/__bit/has_single_bit.h
    R libcxx/include/__cxx03/__bit/invert_if.h
    R libcxx/include/__cxx03/__bit/popcount.h
    R libcxx/include/__cxx03/__bit/rotate.h
    R libcxx/include/__cxx03/__bit_reference
    R libcxx/include/__cxx03/__charconv/chars_format.h
    R libcxx/include/__cxx03/__charconv/from_chars_integral.h
    R libcxx/include/__cxx03/__charconv/from_chars_result.h
    R libcxx/include/__cxx03/__charconv/tables.h
    R libcxx/include/__cxx03/__charconv/to_chars.h
    R libcxx/include/__cxx03/__charconv/to_chars_base_10.h
    R libcxx/include/__cxx03/__charconv/to_chars_floating_point.h
    R libcxx/include/__cxx03/__charconv/to_chars_integral.h
    R libcxx/include/__cxx03/__charconv/to_chars_result.h
    R libcxx/include/__cxx03/__charconv/traits.h
    R libcxx/include/__cxx03/__chrono/calendar.h
    R libcxx/include/__cxx03/__chrono/concepts.h
    R libcxx/include/__cxx03/__chrono/convert_to_timespec.h
    R libcxx/include/__cxx03/__chrono/convert_to_tm.h
    R libcxx/include/__cxx03/__chrono/day.h
    R libcxx/include/__cxx03/__chrono/duration.h
    R libcxx/include/__cxx03/__chrono/exception.h
    R libcxx/include/__cxx03/__chrono/file_clock.h
    R libcxx/include/__cxx03/__chrono/formatter.h
    R libcxx/include/__cxx03/__chrono/hh_mm_ss.h
    R libcxx/include/__cxx03/__chrono/high_resolution_clock.h
    R libcxx/include/__cxx03/__chrono/leap_second.h
    R libcxx/include/__cxx03/__chrono/literals.h
    R libcxx/include/__cxx03/__chrono/local_info.h
    R libcxx/include/__cxx03/__chrono/month.h
    R libcxx/include/__cxx03/__chrono/month_weekday.h
    R libcxx/include/__cxx03/__chrono/monthday.h
    R libcxx/include/__cxx03/__chrono/ostream.h
    R libcxx/include/__cxx03/__chrono/parser_std_format_spec.h
    R libcxx/include/__cxx03/__chrono/statically_widen.h
    R libcxx/include/__cxx03/__chrono/steady_clock.h
    R libcxx/include/__cxx03/__chrono/sys_info.h
    R libcxx/include/__cxx03/__chrono/system_clock.h
    R libcxx/include/__cxx03/__chrono/time_point.h
    R libcxx/include/__cxx03/__chrono/time_zone.h
    R libcxx/include/__cxx03/__chrono/time_zone_link.h
    R libcxx/include/__cxx03/__chrono/tzdb.h
    R libcxx/include/__cxx03/__chrono/tzdb_list.h
    R libcxx/include/__cxx03/__chrono/weekday.h
    R libcxx/include/__cxx03/__chrono/year.h
    R libcxx/include/__cxx03/__chrono/year_month.h
    R libcxx/include/__cxx03/__chrono/year_month_day.h
    R libcxx/include/__cxx03/__chrono/year_month_weekday.h
    R libcxx/include/__cxx03/__chrono/zoned_time.h
    R libcxx/include/__cxx03/__compare/common_comparison_category.h
    R libcxx/include/__cxx03/__compare/compare_partial_order_fallback.h
    R libcxx/include/__cxx03/__compare/compare_strong_order_fallback.h
    R libcxx/include/__cxx03/__compare/compare_three_way.h
    R libcxx/include/__cxx03/__compare/compare_three_way_result.h
    R libcxx/include/__cxx03/__compare/compare_weak_order_fallback.h
    R libcxx/include/__cxx03/__compare/is_eq.h
    R libcxx/include/__cxx03/__compare/ordering.h
    R libcxx/include/__cxx03/__compare/partial_order.h
    R libcxx/include/__cxx03/__compare/strong_order.h
    R libcxx/include/__cxx03/__compare/synth_three_way.h
    R libcxx/include/__cxx03/__compare/three_way_comparable.h
    R libcxx/include/__cxx03/__compare/weak_order.h
    R libcxx/include/__cxx03/__concepts/arithmetic.h
    R libcxx/include/__cxx03/__concepts/assignable.h
    R libcxx/include/__cxx03/__concepts/boolean_testable.h
    R libcxx/include/__cxx03/__concepts/class_or_enum.h
    R libcxx/include/__cxx03/__concepts/common_reference_with.h
    R libcxx/include/__cxx03/__concepts/common_with.h
    R libcxx/include/__cxx03/__concepts/constructible.h
    R libcxx/include/__cxx03/__concepts/convertible_to.h
    R libcxx/include/__cxx03/__concepts/copyable.h
    R libcxx/include/__cxx03/__concepts/derived_from.h
    R libcxx/include/__cxx03/__concepts/destructible.h
    R libcxx/include/__cxx03/__concepts/different_from.h
    R libcxx/include/__cxx03/__concepts/equality_comparable.h
    R libcxx/include/__cxx03/__concepts/invocable.h
    R libcxx/include/__cxx03/__concepts/movable.h
    R libcxx/include/__cxx03/__concepts/predicate.h
    R libcxx/include/__cxx03/__concepts/regular.h
    R libcxx/include/__cxx03/__concepts/relation.h
    R libcxx/include/__cxx03/__concepts/same_as.h
    R libcxx/include/__cxx03/__concepts/semiregular.h
    R libcxx/include/__cxx03/__concepts/swappable.h
    R libcxx/include/__cxx03/__concepts/totally_ordered.h
    R libcxx/include/__cxx03/__condition_variable/condition_variable.h
    R libcxx/include/__cxx03/__config
    R libcxx/include/__cxx03/__config_site.in
    R libcxx/include/__cxx03/__configuration/abi.h
    R libcxx/include/__cxx03/__configuration/availability.h
    R libcxx/include/__cxx03/__configuration/compiler.h
    R libcxx/include/__cxx03/__configuration/language.h
    R libcxx/include/__cxx03/__configuration/platform.h
    R libcxx/include/__cxx03/__coroutine/coroutine_handle.h
    R libcxx/include/__cxx03/__coroutine/coroutine_traits.h
    R libcxx/include/__cxx03/__coroutine/noop_coroutine_handle.h
    R libcxx/include/__cxx03/__coroutine/trivial_awaitables.h
    R libcxx/include/__cxx03/__debug_utils/randomize_range.h
    R libcxx/include/__cxx03/__debug_utils/sanitizers.h
    R libcxx/include/__cxx03/__debug_utils/strict_weak_ordering_check.h
    R libcxx/include/__cxx03/__exception/exception.h
    R libcxx/include/__cxx03/__exception/exception_ptr.h
    R libcxx/include/__cxx03/__exception/nested_exception.h
    R libcxx/include/__cxx03/__exception/operations.h
    R libcxx/include/__cxx03/__exception/terminate.h
    R libcxx/include/__cxx03/__expected/bad_expected_access.h
    R libcxx/include/__cxx03/__expected/expected.h
    R libcxx/include/__cxx03/__expected/unexpect.h
    R libcxx/include/__cxx03/__expected/unexpected.h
    R libcxx/include/__cxx03/__filesystem/copy_options.h
    R libcxx/include/__cxx03/__filesystem/directory_entry.h
    R libcxx/include/__cxx03/__filesystem/directory_iterator.h
    R libcxx/include/__cxx03/__filesystem/directory_options.h
    R libcxx/include/__cxx03/__filesystem/file_status.h
    R libcxx/include/__cxx03/__filesystem/file_time_type.h
    R libcxx/include/__cxx03/__filesystem/file_type.h
    R libcxx/include/__cxx03/__filesystem/filesystem_error.h
    R libcxx/include/__cxx03/__filesystem/operations.h
    R libcxx/include/__cxx03/__filesystem/path.h
    R libcxx/include/__cxx03/__filesystem/path_iterator.h
    R libcxx/include/__cxx03/__filesystem/perm_options.h
    R libcxx/include/__cxx03/__filesystem/perms.h
    R libcxx/include/__cxx03/__filesystem/recursive_directory_iterator.h
    R libcxx/include/__cxx03/__filesystem/space_info.h
    R libcxx/include/__cxx03/__filesystem/u8path.h
    R libcxx/include/__cxx03/__format/buffer.h
    R libcxx/include/__cxx03/__format/concepts.h
    R libcxx/include/__cxx03/__format/container_adaptor.h
    R libcxx/include/__cxx03/__format/enable_insertable.h
    R libcxx/include/__cxx03/__format/escaped_output_table.h
    R libcxx/include/__cxx03/__format/extended_grapheme_cluster_table.h
    R libcxx/include/__cxx03/__format/format_arg.h
    R libcxx/include/__cxx03/__format/format_arg_store.h
    R libcxx/include/__cxx03/__format/format_args.h
    R libcxx/include/__cxx03/__format/format_context.h
    R libcxx/include/__cxx03/__format/format_error.h
    R libcxx/include/__cxx03/__format/format_functions.h
    R libcxx/include/__cxx03/__format/format_parse_context.h
    R libcxx/include/__cxx03/__format/format_string.h
    R libcxx/include/__cxx03/__format/format_to_n_result.h
    R libcxx/include/__cxx03/__format/formatter.h
    R libcxx/include/__cxx03/__format/formatter_bool.h
    R libcxx/include/__cxx03/__format/formatter_char.h
    R libcxx/include/__cxx03/__format/formatter_floating_point.h
    R libcxx/include/__cxx03/__format/formatter_integer.h
    R libcxx/include/__cxx03/__format/formatter_integral.h
    R libcxx/include/__cxx03/__format/formatter_output.h
    R libcxx/include/__cxx03/__format/formatter_pointer.h
    R libcxx/include/__cxx03/__format/formatter_string.h
    R libcxx/include/__cxx03/__format/formatter_tuple.h
    R libcxx/include/__cxx03/__format/indic_conjunct_break_table.h
    R libcxx/include/__cxx03/__format/parser_std_format_spec.h
    R libcxx/include/__cxx03/__format/range_default_formatter.h
    R libcxx/include/__cxx03/__format/range_formatter.h
    R libcxx/include/__cxx03/__format/unicode.h
    R libcxx/include/__cxx03/__format/width_estimation_table.h
    R libcxx/include/__cxx03/__format/write_escaped.h
    R libcxx/include/__cxx03/__functional/binary_function.h
    R libcxx/include/__cxx03/__functional/binary_negate.h
    R libcxx/include/__cxx03/__functional/bind.h
    R libcxx/include/__cxx03/__functional/bind_back.h
    R libcxx/include/__cxx03/__functional/bind_front.h
    R libcxx/include/__cxx03/__functional/binder1st.h
    R libcxx/include/__cxx03/__functional/binder2nd.h
    R libcxx/include/__cxx03/__functional/boyer_moore_searcher.h
    R libcxx/include/__cxx03/__functional/compose.h
    R libcxx/include/__cxx03/__functional/default_searcher.h
    R libcxx/include/__cxx03/__functional/function.h
    R libcxx/include/__cxx03/__functional/hash.h
    R libcxx/include/__cxx03/__functional/identity.h
    R libcxx/include/__cxx03/__functional/invoke.h
    R libcxx/include/__cxx03/__functional/is_transparent.h
    R libcxx/include/__cxx03/__functional/mem_fn.h
    R libcxx/include/__cxx03/__functional/mem_fun_ref.h
    R libcxx/include/__cxx03/__functional/not_fn.h
    R libcxx/include/__cxx03/__functional/operations.h
    R libcxx/include/__cxx03/__functional/perfect_forward.h
    R libcxx/include/__cxx03/__functional/pointer_to_binary_function.h
    R libcxx/include/__cxx03/__functional/pointer_to_unary_function.h
    R libcxx/include/__cxx03/__functional/ranges_operations.h
    R libcxx/include/__cxx03/__functional/reference_wrapper.h
    R libcxx/include/__cxx03/__functional/unary_function.h
    R libcxx/include/__cxx03/__functional/unary_negate.h
    R libcxx/include/__cxx03/__functional/weak_result_type.h
    R libcxx/include/__cxx03/__fwd/array.h
    R libcxx/include/__cxx03/__fwd/bit_reference.h
    R libcxx/include/__cxx03/__fwd/complex.h
    R libcxx/include/__cxx03/__fwd/deque.h
    R libcxx/include/__cxx03/__fwd/format.h
    R libcxx/include/__cxx03/__fwd/fstream.h
    R libcxx/include/__cxx03/__fwd/functional.h
    R libcxx/include/__cxx03/__fwd/ios.h
    R libcxx/include/__cxx03/__fwd/istream.h
    R libcxx/include/__cxx03/__fwd/mdspan.h
    R libcxx/include/__cxx03/__fwd/memory.h
    R libcxx/include/__cxx03/__fwd/memory_resource.h
    R libcxx/include/__cxx03/__fwd/ostream.h
    R libcxx/include/__cxx03/__fwd/pair.h
    R libcxx/include/__cxx03/__fwd/queue.h
    R libcxx/include/__cxx03/__fwd/span.h
    R libcxx/include/__cxx03/__fwd/sstream.h
    R libcxx/include/__cxx03/__fwd/stack.h
    R libcxx/include/__cxx03/__fwd/streambuf.h
    R libcxx/include/__cxx03/__fwd/string.h
    R libcxx/include/__cxx03/__fwd/string_view.h
    R libcxx/include/__cxx03/__fwd/subrange.h
    R libcxx/include/__cxx03/__fwd/tuple.h
    R libcxx/include/__cxx03/__fwd/vector.h
    R libcxx/include/__cxx03/__hash_table
    R libcxx/include/__cxx03/__ios/fpos.h
    R libcxx/include/__cxx03/__iterator/access.h
    R libcxx/include/__cxx03/__iterator/advance.h
    R libcxx/include/__cxx03/__iterator/aliasing_iterator.h
    R libcxx/include/__cxx03/__iterator/back_insert_iterator.h
    R libcxx/include/__cxx03/__iterator/bounded_iter.h
    R libcxx/include/__cxx03/__iterator/common_iterator.h
    R libcxx/include/__cxx03/__iterator/concepts.h
    R libcxx/include/__cxx03/__iterator/counted_iterator.h
    R libcxx/include/__cxx03/__iterator/cpp17_iterator_concepts.h
    R libcxx/include/__cxx03/__iterator/data.h
    R libcxx/include/__cxx03/__iterator/default_sentinel.h
    R libcxx/include/__cxx03/__iterator/distance.h
    R libcxx/include/__cxx03/__iterator/empty.h
    R libcxx/include/__cxx03/__iterator/erase_if_container.h
    R libcxx/include/__cxx03/__iterator/front_insert_iterator.h
    R libcxx/include/__cxx03/__iterator/incrementable_traits.h
    R libcxx/include/__cxx03/__iterator/indirectly_comparable.h
    R libcxx/include/__cxx03/__iterator/insert_iterator.h
    R libcxx/include/__cxx03/__iterator/istream_iterator.h
    R libcxx/include/__cxx03/__iterator/istreambuf_iterator.h
    R libcxx/include/__cxx03/__iterator/iter_move.h
    R libcxx/include/__cxx03/__iterator/iter_swap.h
    R libcxx/include/__cxx03/__iterator/iterator.h
    R libcxx/include/__cxx03/__iterator/iterator_traits.h
    R libcxx/include/__cxx03/__iterator/iterator_with_data.h
    R libcxx/include/__cxx03/__iterator/mergeable.h
    R libcxx/include/__cxx03/__iterator/move_iterator.h
    R libcxx/include/__cxx03/__iterator/move_sentinel.h
    R libcxx/include/__cxx03/__iterator/next.h
    R libcxx/include/__cxx03/__iterator/ostream_iterator.h
    R libcxx/include/__cxx03/__iterator/ostreambuf_iterator.h
    R libcxx/include/__cxx03/__iterator/permutable.h
    R libcxx/include/__cxx03/__iterator/prev.h
    R libcxx/include/__cxx03/__iterator/projected.h
    R libcxx/include/__cxx03/__iterator/ranges_iterator_traits.h
    R libcxx/include/__cxx03/__iterator/readable_traits.h
    R libcxx/include/__cxx03/__iterator/reverse_access.h
    R libcxx/include/__cxx03/__iterator/reverse_iterator.h
    R libcxx/include/__cxx03/__iterator/segmented_iterator.h
    R libcxx/include/__cxx03/__iterator/size.h
    R libcxx/include/__cxx03/__iterator/sortable.h
    R libcxx/include/__cxx03/__iterator/unreachable_sentinel.h
    R libcxx/include/__cxx03/__iterator/wrap_iter.h
    R libcxx/include/__cxx03/__locale
    R libcxx/include/__cxx03/__locale_dir/locale_base_api.h
    R libcxx/include/__cxx03/__locale_dir/locale_base_api/android.h
    R libcxx/include/__cxx03/__locale_dir/locale_base_api/bsd_locale_defaults.h
    R libcxx/include/__cxx03/__locale_dir/locale_base_api/bsd_locale_fallbacks.h
    R libcxx/include/__cxx03/__locale_dir/locale_base_api/fuchsia.h
    R libcxx/include/__cxx03/__locale_dir/locale_base_api/ibm.h
    R libcxx/include/__cxx03/__locale_dir/locale_base_api/locale_guard.h
    R libcxx/include/__cxx03/__locale_dir/locale_base_api/musl.h
    R libcxx/include/__cxx03/__locale_dir/locale_base_api/newlib.h
    R libcxx/include/__cxx03/__locale_dir/locale_base_api/openbsd.h
    R libcxx/include/__cxx03/__locale_dir/locale_base_api/win32.h
    R libcxx/include/__cxx03/__math/abs.h
    R libcxx/include/__cxx03/__math/copysign.h
    R libcxx/include/__cxx03/__math/error_functions.h
    R libcxx/include/__cxx03/__math/exponential_functions.h
    R libcxx/include/__cxx03/__math/fdim.h
    R libcxx/include/__cxx03/__math/fma.h
    R libcxx/include/__cxx03/__math/gamma.h
    R libcxx/include/__cxx03/__math/hyperbolic_functions.h
    R libcxx/include/__cxx03/__math/hypot.h
    R libcxx/include/__cxx03/__math/inverse_hyperbolic_functions.h
    R libcxx/include/__cxx03/__math/inverse_trigonometric_functions.h
    R libcxx/include/__cxx03/__math/logarithms.h
    R libcxx/include/__cxx03/__math/min_max.h
    R libcxx/include/__cxx03/__math/modulo.h
    R libcxx/include/__cxx03/__math/remainder.h
    R libcxx/include/__cxx03/__math/roots.h
    R libcxx/include/__cxx03/__math/rounding_functions.h
    R libcxx/include/__cxx03/__math/special_functions.h
    R libcxx/include/__cxx03/__math/traits.h
    R libcxx/include/__cxx03/__math/trigonometric_functions.h
    R libcxx/include/__cxx03/__mbstate_t.h
    R libcxx/include/__cxx03/__mdspan/default_accessor.h
    R libcxx/include/__cxx03/__mdspan/extents.h
    R libcxx/include/__cxx03/__mdspan/layout_left.h
    R libcxx/include/__cxx03/__mdspan/layout_right.h
    R libcxx/include/__cxx03/__mdspan/layout_stride.h
    R libcxx/include/__cxx03/__mdspan/mdspan.h
    R libcxx/include/__cxx03/__memory/addressof.h
    R libcxx/include/__cxx03/__memory/align.h
    R libcxx/include/__cxx03/__memory/aligned_alloc.h
    R libcxx/include/__cxx03/__memory/allocate_at_least.h
    R libcxx/include/__cxx03/__memory/allocation_guard.h
    R libcxx/include/__cxx03/__memory/allocator.h
    R libcxx/include/__cxx03/__memory/allocator_arg_t.h
    R libcxx/include/__cxx03/__memory/allocator_destructor.h
    R libcxx/include/__cxx03/__memory/allocator_traits.h
    R libcxx/include/__cxx03/__memory/assume_aligned.h
    R libcxx/include/__cxx03/__memory/auto_ptr.h
    R libcxx/include/__cxx03/__memory/builtin_new_allocator.h
    R libcxx/include/__cxx03/__memory/compressed_pair.h
    R libcxx/include/__cxx03/__memory/concepts.h
    R libcxx/include/__cxx03/__memory/construct_at.h
    R libcxx/include/__cxx03/__memory/destruct_n.h
    R libcxx/include/__cxx03/__memory/inout_ptr.h
    R libcxx/include/__cxx03/__memory/out_ptr.h
    R libcxx/include/__cxx03/__memory/pointer_traits.h
    R libcxx/include/__cxx03/__memory/ranges_construct_at.h
    R libcxx/include/__cxx03/__memory/ranges_uninitialized_algorithms.h
    R libcxx/include/__cxx03/__memory/raw_storage_iterator.h
    R libcxx/include/__cxx03/__memory/shared_ptr.h
    R libcxx/include/__cxx03/__memory/swap_allocator.h
    R libcxx/include/__cxx03/__memory/temp_value.h
    R libcxx/include/__cxx03/__memory/temporary_buffer.h
    R libcxx/include/__cxx03/__memory/uninitialized_algorithms.h
    R libcxx/include/__cxx03/__memory/unique_ptr.h
    R libcxx/include/__cxx03/__memory/uses_allocator.h
    R libcxx/include/__cxx03/__memory/uses_allocator_construction.h
    R libcxx/include/__cxx03/__memory/voidify.h
    R libcxx/include/__cxx03/__memory_resource/memory_resource.h
    R libcxx/include/__cxx03/__memory_resource/monotonic_buffer_resource.h
    R libcxx/include/__cxx03/__memory_resource/polymorphic_allocator.h
    R libcxx/include/__cxx03/__memory_resource/pool_options.h
    R libcxx/include/__cxx03/__memory_resource/synchronized_pool_resource.h
    R libcxx/include/__cxx03/__memory_resource/unsynchronized_pool_resource.h
    R libcxx/include/__cxx03/__mutex/lock_guard.h
    R libcxx/include/__cxx03/__mutex/mutex.h
    R libcxx/include/__cxx03/__mutex/once_flag.h
    R libcxx/include/__cxx03/__mutex/tag_types.h
    R libcxx/include/__cxx03/__mutex/unique_lock.h
    R libcxx/include/__cxx03/__node_handle
    R libcxx/include/__cxx03/__numeric/accumulate.h
    R libcxx/include/__cxx03/__numeric/adjacent_difference.h
    R libcxx/include/__cxx03/__numeric/exclusive_scan.h
    R libcxx/include/__cxx03/__numeric/gcd_lcm.h
    R libcxx/include/__cxx03/__numeric/inclusive_scan.h
    R libcxx/include/__cxx03/__numeric/inner_product.h
    R libcxx/include/__cxx03/__numeric/iota.h
    R libcxx/include/__cxx03/__numeric/midpoint.h
    R libcxx/include/__cxx03/__numeric/partial_sum.h
    R libcxx/include/__cxx03/__numeric/pstl.h
    R libcxx/include/__cxx03/__numeric/reduce.h
    R libcxx/include/__cxx03/__numeric/saturation_arithmetic.h
    R libcxx/include/__cxx03/__numeric/transform_exclusive_scan.h
    R libcxx/include/__cxx03/__numeric/transform_inclusive_scan.h
    R libcxx/include/__cxx03/__numeric/transform_reduce.h
    R libcxx/include/__cxx03/__ostream/basic_ostream.h
    R libcxx/include/__cxx03/__ostream/print.h
    R libcxx/include/__cxx03/__pstl/backend.h
    R libcxx/include/__cxx03/__pstl/backend_fwd.h
    R libcxx/include/__cxx03/__pstl/backends/default.h
    R libcxx/include/__cxx03/__pstl/backends/libdispatch.h
    R libcxx/include/__cxx03/__pstl/backends/serial.h
    R libcxx/include/__cxx03/__pstl/backends/std_thread.h
    R libcxx/include/__cxx03/__pstl/cpu_algos/any_of.h
    R libcxx/include/__cxx03/__pstl/cpu_algos/cpu_traits.h
    R libcxx/include/__cxx03/__pstl/cpu_algos/fill.h
    R libcxx/include/__cxx03/__pstl/cpu_algos/find_if.h
    R libcxx/include/__cxx03/__pstl/cpu_algos/for_each.h
    R libcxx/include/__cxx03/__pstl/cpu_algos/merge.h
    R libcxx/include/__cxx03/__pstl/cpu_algos/stable_sort.h
    R libcxx/include/__cxx03/__pstl/cpu_algos/transform.h
    R libcxx/include/__cxx03/__pstl/cpu_algos/transform_reduce.h
    R libcxx/include/__cxx03/__pstl/dispatch.h
    R libcxx/include/__cxx03/__pstl/handle_exception.h
    R libcxx/include/__cxx03/__random/bernoulli_distribution.h
    R libcxx/include/__cxx03/__random/binomial_distribution.h
    R libcxx/include/__cxx03/__random/cauchy_distribution.h
    R libcxx/include/__cxx03/__random/chi_squared_distribution.h
    R libcxx/include/__cxx03/__random/clamp_to_integral.h
    R libcxx/include/__cxx03/__random/default_random_engine.h
    R libcxx/include/__cxx03/__random/discard_block_engine.h
    R libcxx/include/__cxx03/__random/discrete_distribution.h
    R libcxx/include/__cxx03/__random/exponential_distribution.h
    R libcxx/include/__cxx03/__random/extreme_value_distribution.h
    R libcxx/include/__cxx03/__random/fisher_f_distribution.h
    R libcxx/include/__cxx03/__random/gamma_distribution.h
    R libcxx/include/__cxx03/__random/generate_canonical.h
    R libcxx/include/__cxx03/__random/geometric_distribution.h
    R libcxx/include/__cxx03/__random/independent_bits_engine.h
    R libcxx/include/__cxx03/__random/is_seed_sequence.h
    R libcxx/include/__cxx03/__random/is_valid.h
    R libcxx/include/__cxx03/__random/knuth_b.h
    R libcxx/include/__cxx03/__random/linear_congruential_engine.h
    R libcxx/include/__cxx03/__random/log2.h
    R libcxx/include/__cxx03/__random/lognormal_distribution.h
    R libcxx/include/__cxx03/__random/mersenne_twister_engine.h
    R libcxx/include/__cxx03/__random/negative_binomial_distribution.h
    R libcxx/include/__cxx03/__random/normal_distribution.h
    R libcxx/include/__cxx03/__random/piecewise_constant_distribution.h
    R libcxx/include/__cxx03/__random/piecewise_linear_distribution.h
    R libcxx/include/__cxx03/__random/poisson_distribution.h
    R libcxx/include/__cxx03/__random/random_device.h
    R libcxx/include/__cxx03/__random/ranlux.h
    R libcxx/include/__cxx03/__random/seed_seq.h
    R libcxx/include/__cxx03/__random/shuffle_order_engine.h
    R libcxx/include/__cxx03/__random/student_t_distribution.h
    R libcxx/include/__cxx03/__random/subtract_with_carry_engine.h
    R libcxx/include/__cxx03/__random/uniform_int_distribution.h
    R libcxx/include/__cxx03/__random/uniform_random_bit_generator.h
    R libcxx/include/__cxx03/__random/uniform_real_distribution.h
    R libcxx/include/__cxx03/__random/weibull_distribution.h
    R libcxx/include/__cxx03/__ranges/access.h
    R libcxx/include/__cxx03/__ranges/all.h
    R libcxx/include/__cxx03/__ranges/as_rvalue_view.h
    R libcxx/include/__cxx03/__ranges/chunk_by_view.h
    R libcxx/include/__cxx03/__ranges/common_view.h
    R libcxx/include/__cxx03/__ranges/concepts.h
    R libcxx/include/__cxx03/__ranges/container_compatible_range.h
    R libcxx/include/__cxx03/__ranges/counted.h
    R libcxx/include/__cxx03/__ranges/dangling.h
    R libcxx/include/__cxx03/__ranges/data.h
    R libcxx/include/__cxx03/__ranges/drop_view.h
    R libcxx/include/__cxx03/__ranges/drop_while_view.h
    R libcxx/include/__cxx03/__ranges/elements_view.h
    R libcxx/include/__cxx03/__ranges/empty.h
    R libcxx/include/__cxx03/__ranges/empty_view.h
    R libcxx/include/__cxx03/__ranges/enable_borrowed_range.h
    R libcxx/include/__cxx03/__ranges/enable_view.h
    R libcxx/include/__cxx03/__ranges/filter_view.h
    R libcxx/include/__cxx03/__ranges/from_range.h
    R libcxx/include/__cxx03/__ranges/iota_view.h
    R libcxx/include/__cxx03/__ranges/istream_view.h
    R libcxx/include/__cxx03/__ranges/join_view.h
    R libcxx/include/__cxx03/__ranges/lazy_split_view.h
    R libcxx/include/__cxx03/__ranges/movable_box.h
    R libcxx/include/__cxx03/__ranges/non_propagating_cache.h
    R libcxx/include/__cxx03/__ranges/owning_view.h
    R libcxx/include/__cxx03/__ranges/range_adaptor.h
    R libcxx/include/__cxx03/__ranges/rbegin.h
    R libcxx/include/__cxx03/__ranges/ref_view.h
    R libcxx/include/__cxx03/__ranges/rend.h
    R libcxx/include/__cxx03/__ranges/repeat_view.h
    R libcxx/include/__cxx03/__ranges/reverse_view.h
    R libcxx/include/__cxx03/__ranges/single_view.h
    R libcxx/include/__cxx03/__ranges/size.h
    R libcxx/include/__cxx03/__ranges/split_view.h
    R libcxx/include/__cxx03/__ranges/subrange.h
    R libcxx/include/__cxx03/__ranges/take_view.h
    R libcxx/include/__cxx03/__ranges/take_while_view.h
    R libcxx/include/__cxx03/__ranges/to.h
    R libcxx/include/__cxx03/__ranges/transform_view.h
    R libcxx/include/__cxx03/__ranges/view_interface.h
    R libcxx/include/__cxx03/__ranges/views.h
    R libcxx/include/__cxx03/__ranges/zip_view.h
    R libcxx/include/__cxx03/__split_buffer
    R libcxx/include/__cxx03/__std_clang_module
    R libcxx/include/__cxx03/__std_mbstate_t.h
    R libcxx/include/__cxx03/__stop_token/atomic_unique_lock.h
    R libcxx/include/__cxx03/__stop_token/intrusive_list_view.h
    R libcxx/include/__cxx03/__stop_token/intrusive_shared_ptr.h
    R libcxx/include/__cxx03/__stop_token/stop_callback.h
    R libcxx/include/__cxx03/__stop_token/stop_source.h
    R libcxx/include/__cxx03/__stop_token/stop_state.h
    R libcxx/include/__cxx03/__stop_token/stop_token.h
    R libcxx/include/__cxx03/__string/char_traits.h
    R libcxx/include/__cxx03/__string/constexpr_c_functions.h
    R libcxx/include/__cxx03/__string/extern_template_lists.h
    R libcxx/include/__cxx03/__support/ibm/gettod_zos.h
    R libcxx/include/__cxx03/__support/ibm/locale_mgmt_zos.h
    R libcxx/include/__cxx03/__support/ibm/nanosleep.h
    R libcxx/include/__cxx03/__support/xlocale/__nop_locale_mgmt.h
    R libcxx/include/__cxx03/__support/xlocale/__posix_l_fallback.h
    R libcxx/include/__cxx03/__support/xlocale/__strtonum_fallback.h
    R libcxx/include/__cxx03/__system_error/errc.h
    R libcxx/include/__cxx03/__system_error/error_category.h
    R libcxx/include/__cxx03/__system_error/error_code.h
    R libcxx/include/__cxx03/__system_error/error_condition.h
    R libcxx/include/__cxx03/__system_error/system_error.h
    R libcxx/include/__cxx03/__thread/formatter.h
    R libcxx/include/__cxx03/__thread/id.h
    R libcxx/include/__cxx03/__thread/jthread.h
    R libcxx/include/__cxx03/__thread/poll_with_backoff.h
    R libcxx/include/__cxx03/__thread/support.h
    R libcxx/include/__cxx03/__thread/support/c11.h
    R libcxx/include/__cxx03/__thread/support/external.h
    R libcxx/include/__cxx03/__thread/support/pthread.h
    R libcxx/include/__cxx03/__thread/support/windows.h
    R libcxx/include/__cxx03/__thread/this_thread.h
    R libcxx/include/__cxx03/__thread/thread.h
    R libcxx/include/__cxx03/__thread/timed_backoff_policy.h
    R libcxx/include/__cxx03/__tree
    R libcxx/include/__cxx03/__tuple/find_index.h
    R libcxx/include/__cxx03/__tuple/ignore.h
    R libcxx/include/__cxx03/__tuple/make_tuple_types.h
    R libcxx/include/__cxx03/__tuple/sfinae_helpers.h
    R libcxx/include/__cxx03/__tuple/tuple_element.h
    R libcxx/include/__cxx03/__tuple/tuple_indices.h
    R libcxx/include/__cxx03/__tuple/tuple_like.h
    R libcxx/include/__cxx03/__tuple/tuple_like_ext.h
    R libcxx/include/__cxx03/__tuple/tuple_like_no_subrange.h
    R libcxx/include/__cxx03/__tuple/tuple_size.h
    R libcxx/include/__cxx03/__tuple/tuple_types.h
    R libcxx/include/__cxx03/__type_traits/add_const.h
    R libcxx/include/__cxx03/__type_traits/add_cv.h
    R libcxx/include/__cxx03/__type_traits/add_lvalue_reference.h
    R libcxx/include/__cxx03/__type_traits/add_pointer.h
    R libcxx/include/__cxx03/__type_traits/add_rvalue_reference.h
    R libcxx/include/__cxx03/__type_traits/add_volatile.h
    R libcxx/include/__cxx03/__type_traits/aligned_storage.h
    R libcxx/include/__cxx03/__type_traits/aligned_union.h
    R libcxx/include/__cxx03/__type_traits/alignment_of.h
    R libcxx/include/__cxx03/__type_traits/can_extract_key.h
    R libcxx/include/__cxx03/__type_traits/common_reference.h
    R libcxx/include/__cxx03/__type_traits/common_type.h
    R libcxx/include/__cxx03/__type_traits/conditional.h
    R libcxx/include/__cxx03/__type_traits/conjunction.h
    R libcxx/include/__cxx03/__type_traits/copy_cv.h
    R libcxx/include/__cxx03/__type_traits/copy_cvref.h
    R libcxx/include/__cxx03/__type_traits/datasizeof.h
    R libcxx/include/__cxx03/__type_traits/decay.h
    R libcxx/include/__cxx03/__type_traits/dependent_type.h
    R libcxx/include/__cxx03/__type_traits/desugars_to.h
    R libcxx/include/__cxx03/__type_traits/disjunction.h
    R libcxx/include/__cxx03/__type_traits/enable_if.h
    R libcxx/include/__cxx03/__type_traits/extent.h
    R libcxx/include/__cxx03/__type_traits/has_unique_object_representation.h
    R libcxx/include/__cxx03/__type_traits/has_virtual_destructor.h
    R libcxx/include/__cxx03/__type_traits/integral_constant.h
    R libcxx/include/__cxx03/__type_traits/invoke.h
    R libcxx/include/__cxx03/__type_traits/is_abstract.h
    R libcxx/include/__cxx03/__type_traits/is_aggregate.h
    R libcxx/include/__cxx03/__type_traits/is_allocator.h
    R libcxx/include/__cxx03/__type_traits/is_always_bitcastable.h
    R libcxx/include/__cxx03/__type_traits/is_arithmetic.h
    R libcxx/include/__cxx03/__type_traits/is_array.h
    R libcxx/include/__cxx03/__type_traits/is_assignable.h
    R libcxx/include/__cxx03/__type_traits/is_base_of.h
    R libcxx/include/__cxx03/__type_traits/is_bounded_array.h
    R libcxx/include/__cxx03/__type_traits/is_callable.h
    R libcxx/include/__cxx03/__type_traits/is_char_like_type.h
    R libcxx/include/__cxx03/__type_traits/is_class.h
    R libcxx/include/__cxx03/__type_traits/is_compound.h
    R libcxx/include/__cxx03/__type_traits/is_const.h
    R libcxx/include/__cxx03/__type_traits/is_constant_evaluated.h
    R libcxx/include/__cxx03/__type_traits/is_constructible.h
    R libcxx/include/__cxx03/__type_traits/is_convertible.h
    R libcxx/include/__cxx03/__type_traits/is_core_convertible.h
    R libcxx/include/__cxx03/__type_traits/is_destructible.h
    R libcxx/include/__cxx03/__type_traits/is_empty.h
    R libcxx/include/__cxx03/__type_traits/is_enum.h
    R libcxx/include/__cxx03/__type_traits/is_equality_comparable.h
    R libcxx/include/__cxx03/__type_traits/is_execution_policy.h
    R libcxx/include/__cxx03/__type_traits/is_final.h
    R libcxx/include/__cxx03/__type_traits/is_floating_point.h
    R libcxx/include/__cxx03/__type_traits/is_function.h
    R libcxx/include/__cxx03/__type_traits/is_fundamental.h
    R libcxx/include/__cxx03/__type_traits/is_implicitly_default_constructible.h
    R libcxx/include/__cxx03/__type_traits/is_integral.h
    R libcxx/include/__cxx03/__type_traits/is_literal_type.h
    R libcxx/include/__cxx03/__type_traits/is_member_pointer.h
    R libcxx/include/__cxx03/__type_traits/is_nothrow_assignable.h
    R libcxx/include/__cxx03/__type_traits/is_nothrow_constructible.h
    R libcxx/include/__cxx03/__type_traits/is_nothrow_convertible.h
    R libcxx/include/__cxx03/__type_traits/is_nothrow_destructible.h
    R libcxx/include/__cxx03/__type_traits/is_null_pointer.h
    R libcxx/include/__cxx03/__type_traits/is_object.h
    R libcxx/include/__cxx03/__type_traits/is_pod.h
    R libcxx/include/__cxx03/__type_traits/is_pointer.h
    R libcxx/include/__cxx03/__type_traits/is_polymorphic.h
    R libcxx/include/__cxx03/__type_traits/is_primary_template.h
    R libcxx/include/__cxx03/__type_traits/is_reference.h
    R libcxx/include/__cxx03/__type_traits/is_reference_wrapper.h
    R libcxx/include/__cxx03/__type_traits/is_referenceable.h
    R libcxx/include/__cxx03/__type_traits/is_same.h
    R libcxx/include/__cxx03/__type_traits/is_scalar.h
    R libcxx/include/__cxx03/__type_traits/is_signed.h
    R libcxx/include/__cxx03/__type_traits/is_signed_integer.h
    R libcxx/include/__cxx03/__type_traits/is_specialization.h
    R libcxx/include/__cxx03/__type_traits/is_standard_layout.h
    R libcxx/include/__cxx03/__type_traits/is_swappable.h
    R libcxx/include/__cxx03/__type_traits/is_trivial.h
    R libcxx/include/__cxx03/__type_traits/is_trivially_assignable.h
    R libcxx/include/__cxx03/__type_traits/is_trivially_constructible.h
    R libcxx/include/__cxx03/__type_traits/is_trivially_copyable.h
    R libcxx/include/__cxx03/__type_traits/is_trivially_destructible.h
    R libcxx/include/__cxx03/__type_traits/is_trivially_lexicographically_comparable.h
    R libcxx/include/__cxx03/__type_traits/is_trivially_relocatable.h
    R libcxx/include/__cxx03/__type_traits/is_unbounded_array.h
    R libcxx/include/__cxx03/__type_traits/is_union.h
    R libcxx/include/__cxx03/__type_traits/is_unsigned.h
    R libcxx/include/__cxx03/__type_traits/is_unsigned_integer.h
    R libcxx/include/__cxx03/__type_traits/is_valid_expansion.h
    R libcxx/include/__cxx03/__type_traits/is_void.h
    R libcxx/include/__cxx03/__type_traits/is_volatile.h
    R libcxx/include/__cxx03/__type_traits/lazy.h
    R libcxx/include/__cxx03/__type_traits/make_32_64_or_128_bit.h
    R libcxx/include/__cxx03/__type_traits/make_const_lvalue_ref.h
    R libcxx/include/__cxx03/__type_traits/make_signed.h
    R libcxx/include/__cxx03/__type_traits/make_unsigned.h
    R libcxx/include/__cxx03/__type_traits/maybe_const.h
    R libcxx/include/__cxx03/__type_traits/nat.h
    R libcxx/include/__cxx03/__type_traits/negation.h
    R libcxx/include/__cxx03/__type_traits/noexcept_move_assign_container.h
    R libcxx/include/__cxx03/__type_traits/promote.h
    R libcxx/include/__cxx03/__type_traits/rank.h
    R libcxx/include/__cxx03/__type_traits/remove_all_extents.h
    R libcxx/include/__cxx03/__type_traits/remove_const.h
    R libcxx/include/__cxx03/__type_traits/remove_const_ref.h
    R libcxx/include/__cxx03/__type_traits/remove_cv.h
    R libcxx/include/__cxx03/__type_traits/remove_cvref.h
    R libcxx/include/__cxx03/__type_traits/remove_extent.h
    R libcxx/include/__cxx03/__type_traits/remove_pointer.h
    R libcxx/include/__cxx03/__type_traits/remove_reference.h
    R libcxx/include/__cxx03/__type_traits/remove_volatile.h
    R libcxx/include/__cxx03/__type_traits/result_of.h
    R libcxx/include/__cxx03/__type_traits/strip_signature.h
    R libcxx/include/__cxx03/__type_traits/type_identity.h
    R libcxx/include/__cxx03/__type_traits/type_list.h
    R libcxx/include/__cxx03/__type_traits/underlying_type.h
    R libcxx/include/__cxx03/__type_traits/unwrap_ref.h
    R libcxx/include/__cxx03/__type_traits/void_t.h
    R libcxx/include/__cxx03/__undef_macros
    R libcxx/include/__cxx03/__utility/as_const.h
    R libcxx/include/__cxx03/__utility/as_lvalue.h
    R libcxx/include/__cxx03/__utility/auto_cast.h
    R libcxx/include/__cxx03/__utility/cmp.h
    R libcxx/include/__cxx03/__utility/convert_to_integral.h
    R libcxx/include/__cxx03/__utility/declval.h
    R libcxx/include/__cxx03/__utility/empty.h
    R libcxx/include/__cxx03/__utility/exception_guard.h
    R libcxx/include/__cxx03/__utility/exchange.h
    R libcxx/include/__cxx03/__utility/forward.h
    R libcxx/include/__cxx03/__utility/forward_like.h
    R libcxx/include/__cxx03/__utility/in_place.h
    R libcxx/include/__cxx03/__utility/integer_sequence.h
    R libcxx/include/__cxx03/__utility/is_pointer_in_range.h
    R libcxx/include/__cxx03/__utility/is_valid_range.h
    R libcxx/include/__cxx03/__utility/move.h
    R libcxx/include/__cxx03/__utility/no_destroy.h
    R libcxx/include/__cxx03/__utility/pair.h
    R libcxx/include/__cxx03/__utility/piecewise_construct.h
    R libcxx/include/__cxx03/__utility/priority_tag.h
    R libcxx/include/__cxx03/__utility/private_constructor_tag.h
    R libcxx/include/__cxx03/__utility/rel_ops.h
    R libcxx/include/__cxx03/__utility/small_buffer.h
    R libcxx/include/__cxx03/__utility/swap.h
    R libcxx/include/__cxx03/__utility/to_underlying.h
    R libcxx/include/__cxx03/__utility/unreachable.h
    R libcxx/include/__cxx03/__variant/monostate.h
    R libcxx/include/__cxx03/__verbose_abort
    R libcxx/include/__cxx03/algorithm
    R libcxx/include/__cxx03/any
    R libcxx/include/__cxx03/array
    R libcxx/include/__cxx03/atomic
    R libcxx/include/__cxx03/barrier
    R libcxx/include/__cxx03/bit
    R libcxx/include/__cxx03/bitset
    R libcxx/include/__cxx03/cassert
    R libcxx/include/__cxx03/ccomplex
    R libcxx/include/__cxx03/cctype
    R libcxx/include/__cxx03/cerrno
    R libcxx/include/__cxx03/cfenv
    R libcxx/include/__cxx03/cfloat
    R libcxx/include/__cxx03/charconv
    R libcxx/include/__cxx03/chrono
    R libcxx/include/__cxx03/cinttypes
    R libcxx/include/__cxx03/ciso646
    R libcxx/include/__cxx03/climits
    R libcxx/include/__cxx03/clocale
    R libcxx/include/__cxx03/cmath
    R libcxx/include/__cxx03/codecvt
    R libcxx/include/__cxx03/compare
    R libcxx/include/__cxx03/complex
    R libcxx/include/__cxx03/complex.h
    R libcxx/include/__cxx03/concepts
    R libcxx/include/__cxx03/condition_variable
    R libcxx/include/__cxx03/coroutine
    R libcxx/include/__cxx03/csetjmp
    R libcxx/include/__cxx03/csignal
    R libcxx/include/__cxx03/cstdarg
    R libcxx/include/__cxx03/cstdbool
    R libcxx/include/__cxx03/cstddef
    R libcxx/include/__cxx03/cstdint
    R libcxx/include/__cxx03/cstdio
    R libcxx/include/__cxx03/cstdlib
    R libcxx/include/__cxx03/cstring
    R libcxx/include/__cxx03/ctgmath
    R libcxx/include/__cxx03/ctime
    R libcxx/include/__cxx03/ctype.h
    R libcxx/include/__cxx03/cuchar
    R libcxx/include/__cxx03/cwchar
    R libcxx/include/__cxx03/cwctype
    R libcxx/include/__cxx03/deque
    R libcxx/include/__cxx03/errno.h
    R libcxx/include/__cxx03/exception
    R libcxx/include/__cxx03/execution
    R libcxx/include/__cxx03/expected
    R libcxx/include/__cxx03/experimental/__config
    R libcxx/include/__cxx03/experimental/__simd/aligned_tag.h
    R libcxx/include/__cxx03/experimental/__simd/declaration.h
    R libcxx/include/__cxx03/experimental/__simd/reference.h
    R libcxx/include/__cxx03/experimental/__simd/scalar.h
    R libcxx/include/__cxx03/experimental/__simd/simd.h
    R libcxx/include/__cxx03/experimental/__simd/simd_mask.h
    R libcxx/include/__cxx03/experimental/__simd/traits.h
    R libcxx/include/__cxx03/experimental/__simd/utility.h
    R libcxx/include/__cxx03/experimental/__simd/vec_ext.h
    R libcxx/include/__cxx03/experimental/iterator
    R libcxx/include/__cxx03/experimental/memory
    R libcxx/include/__cxx03/experimental/propagate_const
    R libcxx/include/__cxx03/experimental/simd
    R libcxx/include/__cxx03/experimental/type_traits
    R libcxx/include/__cxx03/experimental/utility
    R libcxx/include/__cxx03/ext/__hash
    R libcxx/include/__cxx03/ext/hash_map
    R libcxx/include/__cxx03/ext/hash_set
    R libcxx/include/__cxx03/fenv.h
    R libcxx/include/__cxx03/filesystem
    R libcxx/include/__cxx03/float.h
    R libcxx/include/__cxx03/format
    R libcxx/include/__cxx03/forward_list
    R libcxx/include/__cxx03/fstream
    R libcxx/include/__cxx03/functional
    R libcxx/include/__cxx03/future
    R libcxx/include/__cxx03/initializer_list
    R libcxx/include/__cxx03/inttypes.h
    R libcxx/include/__cxx03/iomanip
    R libcxx/include/__cxx03/ios
    R libcxx/include/__cxx03/iosfwd
    R libcxx/include/__cxx03/iostream
    R libcxx/include/__cxx03/istream
    R libcxx/include/__cxx03/iterator
    R libcxx/include/__cxx03/latch
    R libcxx/include/__cxx03/limits
    R libcxx/include/__cxx03/list
    R libcxx/include/__cxx03/locale
    R libcxx/include/__cxx03/locale.h
    R libcxx/include/__cxx03/map
    R libcxx/include/__cxx03/math.h
    R libcxx/include/__cxx03/mdspan
    R libcxx/include/__cxx03/memory
    R libcxx/include/__cxx03/memory_resource
    R libcxx/include/__cxx03/module.modulemap
    R libcxx/include/__cxx03/mutex
    R libcxx/include/__cxx03/new
    R libcxx/include/__cxx03/numbers
    R libcxx/include/__cxx03/numeric
    R libcxx/include/__cxx03/optional
    R libcxx/include/__cxx03/ostream
    R libcxx/include/__cxx03/print
    R libcxx/include/__cxx03/queue
    R libcxx/include/__cxx03/random
    R libcxx/include/__cxx03/ranges
    R libcxx/include/__cxx03/ratio
    R libcxx/include/__cxx03/regex
    R libcxx/include/__cxx03/scoped_allocator
    R libcxx/include/__cxx03/semaphore
    R libcxx/include/__cxx03/set
    R libcxx/include/__cxx03/shared_mutex
    R libcxx/include/__cxx03/source_location
    R libcxx/include/__cxx03/span
    R libcxx/include/__cxx03/sstream
    R libcxx/include/__cxx03/stack
    R libcxx/include/__cxx03/stdatomic.h
    R libcxx/include/__cxx03/stdbool.h
    R libcxx/include/__cxx03/stddef.h
    R libcxx/include/__cxx03/stdexcept
    R libcxx/include/__cxx03/stdint.h
    R libcxx/include/__cxx03/stdio.h
    R libcxx/include/__cxx03/stdlib.h
    R libcxx/include/__cxx03/stop_token
    R libcxx/include/__cxx03/streambuf
    R libcxx/include/__cxx03/string
    R libcxx/include/__cxx03/string.h
    R libcxx/include/__cxx03/string_view
    R libcxx/include/__cxx03/strstream
    R libcxx/include/__cxx03/syncstream
    R libcxx/include/__cxx03/system_error
    R libcxx/include/__cxx03/tgmath.h
    R libcxx/include/__cxx03/thread
    R libcxx/include/__cxx03/tuple
    R libcxx/include/__cxx03/type_traits
    R libcxx/include/__cxx03/typeindex
    R libcxx/include/__cxx03/typeinfo
    R libcxx/include/__cxx03/uchar.h
    R libcxx/include/__cxx03/unordered_map
    R libcxx/include/__cxx03/unordered_set
    R libcxx/include/__cxx03/utility
    R libcxx/include/__cxx03/valarray
    R libcxx/include/__cxx03/variant
    R libcxx/include/__cxx03/vector
    R libcxx/include/__cxx03/version
    R libcxx/include/__cxx03/wchar.h
    R libcxx/include/__cxx03/wctype.h

  Log Message:
  -----------
  Revert "[libc++][C++03] Copy the LLVM 19 headers (#108999)"
it causes: https://github.com/llvm/llvm-project/issues/110808

This reverts commit 67432f20491a0fa6b05f8a3a91f88e26175453d6.


  Commit: 5a2a51bae4fb39d130ec671fecbe50e0adf3e330
      https://github.com/llvm/llvm-project/commit/5a2a51bae4fb39d130ec671fecbe50e0adf3e330
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/Analysis/CmpInstAnalysis.cpp

  Log Message:
  -----------
  [CmpInstAnalysis] Canonicalize to lt predicate (NFC)

Reduce the number of cases we have to handle by a factor of two
by inverting the predicate such that we get an lt/le rather than
gt/ge predicate.


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

  Changed paths:
    A llvm/test/Analysis/ScalarEvolution/umin-seq-operand-may-trigger-ub.ll

  Log Message:
  -----------
  [SCEV] Add tests for umin_seq change in #92177

SCEV-only tests for https://github.com/llvm/llvm-project/pull/92177


  Commit: e6bf48d11047e970cb24554a01b65b566d6b5d22
      https://github.com/llvm/llvm-project/commit/e6bf48d11047e970cb24554a01b65b566d6b5d22
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M clang/test/CodeGen/align-loops.c
    M llvm/lib/Target/X86/MCTargetDesc/X86MCAsmInfo.cpp
    M llvm/test/CodeGen/X86/2006-08-21-ExtraMovInst.ll
    M llvm/test/CodeGen/X86/2007-01-13-StackPtrIndex.ll
    M llvm/test/CodeGen/X86/2007-03-15-GEP-Idx-Sink.ll
    M llvm/test/CodeGen/X86/2007-10-12-CoalesceExtSubReg.ll
    M llvm/test/CodeGen/X86/2007-10-12-SpillerUnfold2.ll
    M llvm/test/CodeGen/X86/2007-11-06-InstrSched.ll
    M llvm/test/CodeGen/X86/2007-11-30-LoadFolding-Bug.ll
    M llvm/test/CodeGen/X86/2008-04-28-CoalescerBug.ll
    M llvm/test/CodeGen/X86/2008-08-06-CmpStride.ll
    M llvm/test/CodeGen/X86/2008-12-01-loop-iv-used-outside-loop.ll
    M llvm/test/CodeGen/X86/2009-02-26-MachineLICMBug.ll
    M llvm/test/CodeGen/X86/2009-04-25-CoalescerBug.ll
    M llvm/test/CodeGen/X86/2009-08-12-badswitch.ll
    M llvm/test/CodeGen/X86/2020_12_02_decrementing_loop.ll
    M llvm/test/CodeGen/X86/AMX/amx-across-func.ll
    M llvm/test/CodeGen/X86/AMX/amx-ldtilecfg-insert.ll
    M llvm/test/CodeGen/X86/AMX/amx-lower-tile-copy.ll
    M llvm/test/CodeGen/X86/AMX/amx-spill-merge.ll
    M llvm/test/CodeGen/X86/AMX/amx-tile-basic.ll
    M llvm/test/CodeGen/X86/MachineSink-Issue98477.ll
    M llvm/test/CodeGen/X86/MergeConsecutiveStores.ll
    M llvm/test/CodeGen/X86/PR71178-register-coalescer-crash.ll
    M llvm/test/CodeGen/X86/SwitchLowering.ll
    M llvm/test/CodeGen/X86/addr-mode-matcher-2.ll
    M llvm/test/CodeGen/X86/align-basic-block-sections.mir
    M llvm/test/CodeGen/X86/and-sink.ll
    M llvm/test/CodeGen/X86/apx/push2-pop2.ll
    M llvm/test/CodeGen/X86/apx/setzucc.ll
    M llvm/test/CodeGen/X86/assertzext-demanded.ll
    M llvm/test/CodeGen/X86/atom-pad-short-functions.ll
    M llvm/test/CodeGen/X86/atomic-bit-test.ll
    M llvm/test/CodeGen/X86/atomic-flags.ll
    M llvm/test/CodeGen/X86/atomic-idempotent.ll
    M llvm/test/CodeGen/X86/atomic-minmax-i6432.ll
    M llvm/test/CodeGen/X86/atomic-non-integer-fp128.ll
    M llvm/test/CodeGen/X86/atomic-non-integer.ll
    M llvm/test/CodeGen/X86/atomic-rm-bit-test-64.ll
    M llvm/test/CodeGen/X86/atomic-rm-bit-test.ll
    M llvm/test/CodeGen/X86/atomic-xor.ll
    M llvm/test/CodeGen/X86/atomic128.ll
    M llvm/test/CodeGen/X86/atomicrmw-cond-sub-clamp.ll
    M llvm/test/CodeGen/X86/atomicrmw-fadd-fp-vector.ll
    M llvm/test/CodeGen/X86/atomicrmw-uinc-udec-wrap.ll
    M llvm/test/CodeGen/X86/avx-cmp.ll
    M llvm/test/CodeGen/X86/avx-vbroadcast.ll
    M llvm/test/CodeGen/X86/avx-vzeroupper.ll
    M llvm/test/CodeGen/X86/avx2-vbroadcast.ll
    M llvm/test/CodeGen/X86/avx512-broadcast-unfold.ll
    M llvm/test/CodeGen/X86/avx512-i1test.ll
    M llvm/test/CodeGen/X86/avx512vnni-combine.ll
    M llvm/test/CodeGen/X86/avxvnni-combine.ll
    M llvm/test/CodeGen/X86/block-placement.ll
    M llvm/test/CodeGen/X86/break-false-dep.ll
    M llvm/test/CodeGen/X86/callbr-asm-blockplacement.ll
    M llvm/test/CodeGen/X86/cast-vsel.ll
    M llvm/test/CodeGen/X86/cmpxchg-clobber-flags.ll
    M llvm/test/CodeGen/X86/cmpxchg-i128-i1.ll
    M llvm/test/CodeGen/X86/coalesce-esp.ll
    M llvm/test/CodeGen/X86/coalescer-breaks-subreg-to-reg-liveness-reduced.ll
    M llvm/test/CodeGen/X86/coalescer-commute1.ll
    M llvm/test/CodeGen/X86/coalescer-commute4.ll
    M llvm/test/CodeGen/X86/coalescer-dead-flag-verifier-error.ll
    M llvm/test/CodeGen/X86/code-align-loops.ll
    M llvm/test/CodeGen/X86/code_placement_align_all.ll
    M llvm/test/CodeGen/X86/combine-pmuldq.ll
    M llvm/test/CodeGen/X86/constant-pool-sharing.ll
    M llvm/test/CodeGen/X86/copy-eflags.ll
    M llvm/test/CodeGen/X86/dag-update-nodetomatch.ll
    M llvm/test/CodeGen/X86/div-rem-pair-recomposition-signed.ll
    M llvm/test/CodeGen/X86/div-rem-pair-recomposition-unsigned.ll
    M llvm/test/CodeGen/X86/fdiv-combine.ll
    M llvm/test/CodeGen/X86/fixup-lea.ll
    M llvm/test/CodeGen/X86/fma-commute-loop.ll
    M llvm/test/CodeGen/X86/fma-intrinsics-phi-213-to-231.ll
    M llvm/test/CodeGen/X86/fold-call-3.ll
    M llvm/test/CodeGen/X86/fold-loop-of-urem.ll
    M llvm/test/CodeGen/X86/fp-une-cmp.ll
    M llvm/test/CodeGen/X86/hoist-invariant-load.ll
    M llvm/test/CodeGen/X86/i128-mul.ll
    M llvm/test/CodeGen/X86/i386-shrink-wrapping.ll
    M llvm/test/CodeGen/X86/icmp-shift-opt.ll
    M llvm/test/CodeGen/X86/ifunc-asm.ll
    M llvm/test/CodeGen/X86/innermost-loop-alignment.ll
    M llvm/test/CodeGen/X86/ins_subreg_coalesce-3.ll
    M llvm/test/CodeGen/X86/issue76416.ll
    M llvm/test/CodeGen/X86/kcfi-patchable-function-prefix.ll
    M llvm/test/CodeGen/X86/kcfi.ll
    M llvm/test/CodeGen/X86/known-bits.ll
    M llvm/test/CodeGen/X86/lea-opt-cse2.ll
    M llvm/test/CodeGen/X86/lea-opt-cse4.ll
    M llvm/test/CodeGen/X86/licm-symbol.ll
    M llvm/test/CodeGen/X86/loop-search.ll
    M llvm/test/CodeGen/X86/loop-strength-reduce5.ll
    M llvm/test/CodeGen/X86/loop-strength-reduce7.ll
    M llvm/test/CodeGen/X86/lsr-addrecloops.ll
    M llvm/test/CodeGen/X86/lsr-interesting-step.ll
    M llvm/test/CodeGen/X86/lsr-loop-exit-cond.ll
    M llvm/test/CodeGen/X86/lsr-negative-stride.ll
    M llvm/test/CodeGen/X86/lsr-sort.ll
    M llvm/test/CodeGen/X86/lsr-static-addr.ll
    M llvm/test/CodeGen/X86/machine-cp.ll
    M llvm/test/CodeGen/X86/machine-cse.ll
    M llvm/test/CodeGen/X86/madd.ll
    M llvm/test/CodeGen/X86/masked-iv-safe.ll
    M llvm/test/CodeGen/X86/masked-iv-unsafe.ll
    M llvm/test/CodeGen/X86/merge_store.ll
    M llvm/test/CodeGen/X86/min-legal-vector-width.ll
    M llvm/test/CodeGen/X86/mmx-arith.ll
    M llvm/test/CodeGen/X86/negative-stride-fptosi-user.ll
    M llvm/test/CodeGen/X86/optimize-max-0.ll
    M llvm/test/CodeGen/X86/optimize-max-1.ll
    M llvm/test/CodeGen/X86/optimize-max-2.ll
    M llvm/test/CodeGen/X86/or-address.ll
    M llvm/test/CodeGen/X86/overflowing-iv-codegen.ll
    M llvm/test/CodeGen/X86/patchable-prologue.ll
    M llvm/test/CodeGen/X86/pcsections-atomics.ll
    M llvm/test/CodeGen/X86/peep-test-0.ll
    M llvm/test/CodeGen/X86/peep-test-1.ll
    M llvm/test/CodeGen/X86/peephole-copy.ll
    M llvm/test/CodeGen/X86/pic-load-remat.ll
    M llvm/test/CodeGen/X86/postalloc-coalescing.ll
    M llvm/test/CodeGen/X86/pr14314.ll
    M llvm/test/CodeGen/X86/pr22338.ll
    M llvm/test/CodeGen/X86/pr30562.ll
    M llvm/test/CodeGen/X86/pr32108.ll
    M llvm/test/CodeGen/X86/pr33290.ll
    M llvm/test/CodeGen/X86/pr33747.ll
    M llvm/test/CodeGen/X86/pr37916.ll
    M llvm/test/CodeGen/X86/pr38185.ll
    M llvm/test/CodeGen/X86/pr38217.ll
    M llvm/test/CodeGen/X86/pr38539.ll
    M llvm/test/CodeGen/X86/pr38795.ll
    M llvm/test/CodeGen/X86/pr42565.ll
    M llvm/test/CodeGen/X86/pr42909.ll
    M llvm/test/CodeGen/X86/pr43529.ll
    M llvm/test/CodeGen/X86/pr44140.ll
    M llvm/test/CodeGen/X86/pr44412.ll
    M llvm/test/CodeGen/X86/pr47874.ll
    M llvm/test/CodeGen/X86/pr49393.ll
    M llvm/test/CodeGen/X86/pr49451.ll
    M llvm/test/CodeGen/X86/pr50374.ll
    M llvm/test/CodeGen/X86/pr50782.ll
    M llvm/test/CodeGen/X86/pr51371.ll
    M llvm/test/CodeGen/X86/pr5145.ll
    M llvm/test/CodeGen/X86/pr51615.ll
    M llvm/test/CodeGen/X86/pr53842.ll
    M llvm/test/CodeGen/X86/pr53990-incorrect-machine-sink.ll
    M llvm/test/CodeGen/X86/pr55648.ll
    M llvm/test/CodeGen/X86/pr61923.ll
    M llvm/test/CodeGen/X86/pr63108.ll
    M llvm/test/CodeGen/X86/pr63692.ll
    M llvm/test/CodeGen/X86/pr65895.ll
    M llvm/test/CodeGen/X86/pr68539.ll
    M llvm/test/CodeGen/X86/pr93000.ll
    M llvm/test/CodeGen/X86/promote-sra-by-itself.ll
    M llvm/test/CodeGen/X86/ragreedy-hoist-spill.ll
    M llvm/test/CodeGen/X86/rdrand.ll
    M llvm/test/CodeGen/X86/retpoline.ll
    M llvm/test/CodeGen/X86/reverse_branches.ll
    M llvm/test/CodeGen/X86/sad.ll
    M llvm/test/CodeGen/X86/saddo-redundant-add.ll
    A llvm/test/CodeGen/X86/same-align-bytes-with-llasm-llobj.ll
    M llvm/test/CodeGen/X86/scalar_widen_div.ll
    M llvm/test/CodeGen/X86/setcc-lowering.ll
    M llvm/test/CodeGen/X86/setcc-non-simple-type.ll
    M llvm/test/CodeGen/X86/shift-parts.ll
    M llvm/test/CodeGen/X86/sink-out-of-loop.ll
    M llvm/test/CodeGen/X86/speculative-load-hardening.ll
    M llvm/test/CodeGen/X86/split-extend-vector-inreg.ll
    M llvm/test/CodeGen/X86/sse-domains.ll
    M llvm/test/CodeGen/X86/stack-coloring-wineh.ll
    M llvm/test/CodeGen/X86/switch.ll
    M llvm/test/CodeGen/X86/tail-dup-merge-loop-headers.ll
    M llvm/test/CodeGen/X86/tail-dup-multiple-latch-loop.ll
    M llvm/test/CodeGen/X86/tail-dup-partial.ll
    M llvm/test/CodeGen/X86/tail-dup-repeat.ll
    M llvm/test/CodeGen/X86/tailcall-cgp-dup.ll
    M llvm/test/CodeGen/X86/tls-loads-control3.ll
    M llvm/test/CodeGen/X86/trunc-store.ll
    M llvm/test/CodeGen/X86/twoaddr-coalesce.ll
    M llvm/test/CodeGen/X86/twoaddr-lea.ll
    M llvm/test/CodeGen/X86/unaligned-load.ll
    M llvm/test/CodeGen/X86/undef-label.ll
    M llvm/test/CodeGen/X86/vec_setcc-2.ll
    M llvm/test/CodeGen/X86/vector-fshl-128.ll
    M llvm/test/CodeGen/X86/vector-fshl-256.ll
    M llvm/test/CodeGen/X86/vector-pack-128.ll
    M llvm/test/CodeGen/X86/vector-shift-by-select-loop.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining.ll
    M llvm/test/CodeGen/X86/vselect-avx.ll
    M llvm/test/CodeGen/X86/widen_arith-1.ll
    M llvm/test/CodeGen/X86/widen_arith-2.ll
    M llvm/test/CodeGen/X86/widen_arith-3.ll
    M llvm/test/CodeGen/X86/widen_arith-4.ll
    M llvm/test/CodeGen/X86/widen_arith-5.ll
    M llvm/test/CodeGen/X86/widen_arith-6.ll
    M llvm/test/CodeGen/X86/widen_cast-1.ll
    M llvm/test/CodeGen/X86/widen_cast-2.ll
    M llvm/test/CodeGen/X86/widen_cast-4.ll
    M llvm/test/CodeGen/X86/x86-shrink-wrapping.ll
    M llvm/test/CodeGen/X86/x86-win64-shrink-wrapping.ll
    M llvm/test/CodeGen/X86/xor.ll
    M llvm/test/CodeGen/X86/xray-attribute-instrumentation.ll
    M llvm/test/CodeGen/X86/xray-custom-log.ll
    M llvm/test/CodeGen/X86/xray-partial-instrumentation-skip-entry.ll
    M llvm/test/CodeGen/X86/xray-partial-instrumentation-skip-exit.ll
    M llvm/test/CodeGen/X86/xray-selective-instrumentation.ll
    M llvm/test/CodeGen/X86/xray-tail-call-sled.ll
    M llvm/test/DebugInfo/COFF/pieces.ll
    M llvm/test/DebugInfo/X86/header.ll
    M llvm/test/DebugInfo/X86/loop-align-debug.ll
    M llvm/test/Transforms/LoopStrengthReduce/X86/2011-11-29-postincphi.ll
    M llvm/test/Transforms/LoopStrengthReduce/X86/ivchain-X86.ll
    M llvm/test/Transforms/LoopStrengthReduce/X86/lsr-insns-1.ll
    M llvm/test/Transforms/LoopStrengthReduce/X86/macro-fuse-cmp.ll

  Log Message:
  -----------
  [X86] Don't request 0x90 nop filling in p2align directives (#110134)

As of rev ea222be0d, LLVMs assembler will actually try to honour the
"fill value" part of p2align directives. X86 printed these as 0x90, which
isn't actually what it wanted: we want multi-byte nops for .text
padding. Compiling via a textual assembly file produces single-byte
nop padding since ea222be0d but the built-in assembler will produce
multi-byte nops. This divergent behaviour is undesirable.

To fix: don't set the byte padding field for x86, which allows the
assembler to pick multi-byte nops. Test that we get the same multi-byte
padding when compiled via textual assembly or directly to object file.
Added same-align-bytes-with-llasm-llobj.ll to that effect, updated
numerous other tests to not contain check-lines for the explicit padding.


  Commit: 33fa40cc9659b7b56a9b440edc0587ff58793cac
      https://github.com/llvm/llvm-project/commit/33fa40cc9659b7b56a9b440edc0587ff58793cac
  Author: Daniel Grumberg <dgrumberg at apple.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M clang/lib/ExtractAPI/DeclarationFragments.cpp
    M clang/test/ExtractAPI/typedef_anonymous_record.c

  Log Message:
  -----------
  [clang][ExtractAPI] Generate subheading for typedef'd anonymous types (#110689)

When an anonymous type has a typedef we normally use the typedef's name
in places where we expect a named identifier in the symbol graph. This
extends this logic to apply to subheadings.

rdar://136690614


  Commit: d432e22b2fce1dfd9456b85a095fd5f08e93c6dd
      https://github.com/llvm/llvm-project/commit/d432e22b2fce1dfd9456b85a095fd5f08e93c6dd
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/InstCombine/cast_phi.ll
    M llvm/test/Transforms/InstCombine/known-non-zero.ll
    M llvm/test/Transforms/InstCombine/remove-loop-phi-multiply-by-zero.ll

  Log Message:
  -----------
  ValueTracking: strip stray break in recur-match (#109794)

There is a stray break statement in the recurrence-handling code in
computeKnownBitsFromOperator, that seems to be unintended. Strip this
statement so that we have the opportunity to go through the rest of
phi-handling code, and refine KnownBits further.


  Commit: e26d2d98f71579ef2a131bbfd0ecdabe12193e48
      https://github.com/llvm/llvm-project/commit/e26d2d98f71579ef2a131bbfd0ecdabe12193e48
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/Analysis/CmpInstAnalysis.cpp

  Log Message:
  -----------
  [CmpInstAnalysis] Further canonicalize the predicate (NFC)

Canonicalize le to lt predicate by adjusting the constant by one.
As such, we only have to handle slt and ult.

This will make it easier to handle additional cases.


  Commit: 4f6ad17adce1b87cadf0c896d3b38334045196ea
      https://github.com/llvm/llvm-project/commit/4f6ad17adce1b87cadf0c896d3b38334045196ea
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/docs/LangRef.rst

  Log Message:
  -----------
  Fix typo (NFC) (#110817)


  Commit: 1bc9b67bd87d7ec51045951c93fd5db953faa745
      https://github.com/llvm/llvm-project/commit/1bc9b67bd87d7ec51045951c93fd5db953faa745
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Scalar/Scalarizer.h
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/Target/DirectX/DirectXPassRegistry.def
    M llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
    M llvm/lib/Transforms/Scalar/Scalarizer.cpp
    M llvm/test/CodeGen/DirectX/rsqrt.ll
    M llvm/test/CodeGen/DirectX/scalar-data.ll
    M llvm/test/CodeGen/DirectX/scalar-load.ll
    M llvm/test/CodeGen/DirectX/scalar-store.ll
    M llvm/test/Transforms/Scalarizer/basic-inseltpoison.ll
    M llvm/test/Transforms/Scalarizer/basic.ll
    M llvm/test/Transforms/Scalarizer/constant-extractelement.ll
    M llvm/test/Transforms/Scalarizer/constant-insertelement.ll
    M llvm/test/Transforms/Scalarizer/dbginfo.ll
    M llvm/test/Transforms/Scalarizer/min-bits.ll
    M llvm/test/Transforms/Scalarizer/opaque-ptr-bug.ll
    A llvm/test/Transforms/Scalarizer/pass-param-parse-errors.ll
    M llvm/test/Transforms/Scalarizer/scatter-order.ll
    M llvm/test/Transforms/Scalarizer/store-bug.ll
    M llvm/test/Transforms/Scalarizer/variable-extractelement.ll
    M llvm/test/Transforms/Scalarizer/variable-insertelement.ll
    M llvm/test/Transforms/Scalarizer/vector-of-pointer-to-vector.ll

  Log Message:
  -----------
  Scalarizer: Replace cl::opts with pass parameters (#110645)

Preserve the existing defaults (although load-store defaulting
to false is a really bad one). Also migrate DirectX tests to new PM.


  Commit: e656b1a690029b0e4ba8d45f1db9fadfca9cd1b8
      https://github.com/llvm/llvm-project/commit/e656b1a690029b0e4ba8d45f1db9fadfca9cd1b8
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

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

  Log Message:
  -----------
  Revert "[scudo] Fix isOwned on MTE devices. (#110717)"

This caused failures in aarch64 builders.

This reverts commit 98c9523113b550eaca3728bf30cbc346af5eff07.
(llvmorg-20-init-7659-g98c9523113b5)


  Commit: a10d3d2a3a82a577625ee8877853b4c4c9e2bbdc
      https://github.com/llvm/llvm-project/commit/a10d3d2a3a82a577625ee8877853b4c4c9e2bbdc
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/ErrnoChecker.cpp

  Log Message:
  -----------
  [analyzer][NFC] Remove dangling method declaration from ErrnoChecker (#110820)

Remove the declaration of `ErrnoChecker::checkBranchCondition()` because
this method is not defined or used anywhere. (It's probably a leftover
from some old refactoring.)


  Commit: 711a0a715df411cb5e7646a1a79c35778d071201
      https://github.com/llvm/llvm-project/commit/711a0a715df411cb5e7646a1a79c35778d071201
  Author: Renato Golin <rengolin at systemcall.eu>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/docs/GettingInvolved.rst

  Log Message:
  -----------
  [Docs] Change office hours


  Commit: eb6222b9ea9f54514b2adaaaf8c46ef9af84dfe1
      https://github.com/llvm/llvm-project/commit/eb6222b9ea9f54514b2adaaaf8c46ef9af84dfe1
  Author: Danial Klimkin <dklimkin at google.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M mlir/lib/Dialect/Tensor/Utils/Utils.cpp
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [bazel] Fix build past 66f84c8b8a762832af39e91370018f8f8307a0fc (#110830)


  Commit: 7cc4aa4a3b435b9165f270b5d9a04346db23c611
      https://github.com/llvm/llvm-project/commit/7cc4aa4a3b435b9165f270b5d9a04346db23c611
  Author: Renato Golin <rengolin at systemcall.eu>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/docs/GettingInvolved.rst

  Log Message:
  -----------
  [Docs] Update office hours to not conflict with MLGO


  Commit: b95d50e5d877e2a59d24f8242eb85c92a4c29ab0
      https://github.com/llvm/llvm-project/commit/b95d50e5d877e2a59d24f8242eb85c92a4c29ab0
  Author: Thomas Symalla <5754458+tsymalla at users.noreply.github.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUMCResourceInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUMCResourceInfo.h

  Log Message:
  -----------
  Add and call `AMDGPUMCResourceInfo::reset` method (#110818)

When compiling multiple pipelines, the `MCRegisterInfo` instance in
`AMDGPUAsmPrinter` gets re-used even after finalization, so it calls
`finalize()` multiple times.

Add a reset method and call it in
`AMDGPUAsmPrinter::doFinalization`.

Different approach would be to make it a `unique_ptr`.

---------

Co-authored-by: Thomas Symalla <tsymalla at amd.com>


  Commit: 391e64c518a68493596ae963063d8063d77b1d7f
      https://github.com/llvm/llvm-project/commit/391e64c518a68493596ae963063d8063d77b1d7f
  Author: Danial Klimkin <dklimkin at google.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

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

  Log Message:
  -----------
  [bazel] Fix lldb build past 87121403e251828ed0fee8a9c2a2993ce8f57861 (#110833)


  Commit: 856c38d542aee5e29884c307501bf1033a9b2e42
      https://github.com/llvm/llvm-project/commit/856c38d542aee5e29884c307501bf1033a9b2e42
  Author: David Truby <david.truby at arm.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M flang/docs/Intrinsics.md
    M flang/include/flang/Evaluate/target.h
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/include/flang/Optimizer/Builder/Runtime/Intrinsics.h
    M flang/include/flang/Runtime/extensions.h
    M flang/include/flang/Tools/TargetSetup.h
    M flang/lib/Evaluate/intrinsics.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/lib/Optimizer/Builder/Runtime/Intrinsics.cpp
    M flang/lib/Semantics/check-call.cpp
    M flang/lib/Semantics/check-call.h
    M flang/lib/Semantics/expression.cpp
    M flang/runtime/extensions.cpp
    A flang/test/Semantics/windows.f90
    M flang/unittests/Optimizer/Builder/Runtime/CommandTest.cpp
    A flang/unittests/Optimizer/Builder/Runtime/IntrinsicsTest.cpp
    M flang/unittests/Optimizer/CMakeLists.txt

  Log Message:
  -----------
  [flang] Implement GETUID and GETGID intrinsics (#110679)

GETUID and GETGID are non-standard intrinsics supported by a number of
other Fortran compilers. On supported platforms these intrinsics simply
call the POSIX getuid() and getgid() functions and return the result.
The only platform we support that does not have these is Windows.

Windows does not have the same concept of UIDs and GIDs, so on Windows
we issue a warning indicating this and return 1 from both functions.

Co-authored-by: Yi Wu <yi.wu2 at arm.com>


  Commit: b4681192478787caf06cddf596e80ec5c1913682
      https://github.com/llvm/llvm-project/commit/b4681192478787caf06cddf596e80ec5c1913682
  Author: Renato Golin <rengolin at systemcall.eu>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/docs/GettingInvolved.rst

  Log Message:
  -----------
  [Docs] Clean leftover


  Commit: eb3361dfaa04f1c97566d0ae35d18b7b90429f88
      https://github.com/llvm/llvm-project/commit/eb3361dfaa04f1c97566d0ae35d18b7b90429f88
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/test/Transforms/InstCombine/and-or-icmps.ll

  Log Message:
  -----------
  [InstCombine] Add additional mask merging tests (NFC)


  Commit: 586736226e3a25b1fd647d3257270c1388f907bf
      https://github.com/llvm/llvm-project/commit/586736226e3a25b1fd647d3257270c1388f907bf
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

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

  Log Message:
  -----------
  [ConstantFPRange] Implement `ConstantFPRange::makeAllowedFCmpRegion` (#110082)

This patch adds `makeAllowedFCmpRegion` support for `ConstantFPRange`.


  Commit: 6d6eea92e36c301e34a7ec11b2a40e3080f79f53
      https://github.com/llvm/llvm-project/commit/6d6eea92e36c301e34a7ec11b2a40e3080f79f53
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/X86/cost-constant-known-via-scev.ll

  Log Message:
  -----------
  [LV] Use SCEV to simplify wide binop operand to constant.

The legacy cost model uses SCEV to determine if the second operand of a
binary op is a constant. Update the VPlan construction logic to mirror
the current legacy behavior, to fix a difference in the cost models.

Fixes https://github.com/llvm/llvm-project/issues/109528.
Fixes https://github.com/llvm/llvm-project/issues/110440.


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

  Changed paths:
    R libcxx/test/std/atomics/atomics.lockfree/is_always_lock_free.cpp
    A libcxx/test/std/atomics/atomics.lockfree/is_always_lock_free.pass.cpp

  Log Message:
  -----------
  [libc++] Fix name of is_always_lock_free test which was never being run (#106077)


  Commit: 8805ff72a04308562ea9e962415d238dd356be69
      https://github.com/llvm/llvm-project/commit/8805ff72a04308562ea9e962415d238dd356be69
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx20Issues.csv

  Log Message:
  -----------
  [libc++] Mark LWG3317 as complete in LLVM 16 (#110757)

This was fixed in 719c3dc6f2f7 and landed in LLVM 16.

Closes #100429


  Commit: 4dede756f25b153a81ea883ef84064f5a1eaaec2
      https://github.com/llvm/llvm-project/commit/4dede756f25b153a81ea883ef84064f5a1eaaec2
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/reduced-val-vectorized-in-transform.ll

  Log Message:
  -----------
  [SLP]Transform nodes before building externally used values

transformNodes function may create new vector nodes, so the reduced
values might be vectorized later. Need to build the list of the
externally used values after the transformNodes() function call to avoid
compiler crash.

Fixe #110787


  Commit: 5a40bc23835d2468b4b6cbc4631035bd4dab31fa
      https://github.com/llvm/llvm-project/commit/5a40bc23835d2468b4b6cbc4631035bd4dab31fa
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Utils/IntegerDivision.cpp

  Log Message:
  -----------
  [NFC] Fix typo in function name `generatedUnsignedRemainderCode` (#110743)

Rename `generatedUnsignedRemainderCode` to
`generateUnsignedRemainderCode`.


  Commit: 9bf02a8bfe16f1ed3d98f114a1d59e111fdccb3e
      https://github.com/llvm/llvm-project/commit/9bf02a8bfe16f1ed3d98f114a1d59e111fdccb3e
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/include/llvm/IR/Intrinsics.td

  Log Message:
  -----------
  [LLVM][TableGen] Tighten intrinsic properties index type (#110733)

For intrinsic properties that are applicable only to arguments, require
use of class `ArgIndex` for specifying the index. For properties that
are applicable to either arguments or return value, use `AttrIndex`.


  Commit: 5f909c0ab2a2cb253f29d767640d3c0fbc9d5bac
      https://github.com/llvm/llvm-project/commit/5f909c0ab2a2cb253f29d767640d3c0fbc9d5bac
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M libcxx/include/string

  Log Message:
  -----------
  [libc++][NFC] Remove some boilerplate from <string> after #76756 (#108952)

A few functions are now unnecessary, since we can access the members
directly instread now.


  Commit: eb85285727ffbfb4039fc6d39851f7a49519a1c1
      https://github.com/llvm/llvm-project/commit/eb85285727ffbfb4039fc6d39851f7a49519a1c1
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/InstCombine/ashr-lshr.ll
    M llvm/test/Transforms/InstCombine/known-bits.ll
    M llvm/test/Transforms/InstCombine/rem-mul-shl.ll

  Log Message:
  -----------
  [ValueTracking] mul nuw nsw with factor sgt 1 is non-negative (#110803)

Proof: https://alive2.llvm.org/ce/z/bC0eJf


  Commit: c6b12bc829c863a47f813503fa35f8567ce3ad12
      https://github.com/llvm/llvm-project/commit/c6b12bc829c863a47f813503fa35f8567ce3ad12
  Author: Hans Wennborg <hans at chromium.org>
  Date:   2024-10-02 (Wed, 02 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/Darwin/freadlink.c

  Log Message:
  -----------
  Revert "[compiler-rt] intercept macOs's freadlink call. (#83679)"

The lit test has been failing on green dragon since it landed,
e.g. https://green.lab.llvm.org/job/llvm.org/job/clang-stage1-RA/2276/testReport/

This reverts commit a6ea0b0d2973d3d94f9ed7aac6db9ca722664774 and
follow-up commits ce72c76e9bd0bf74af614cae6a9f85cfd4720e95,
a280275cff497f96492d7c1094ba30309dbd3ad6, and
d705bd25eb9f11e100d3e79b65a80d446fd06f30.


  Commit: 91e3fb3e5b538360b6ede9ba17d376c2175a8dfd
      https://github.com/llvm/llvm-project/commit/91e3fb3e5b538360b6ede9ba17d376c2175a8dfd
  Author: Viktoriia Bakalova <115406782+VitaNuo at users.noreply.github.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/LangOptions.h
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/test/CodeGenCXX/mangle-concept.cpp

  Log Message:
  -----------
  [clang][Itanium Mangle] Enable mangling of enclosing class for member… (#110503)

…-like friend function templates only if ` -fclang-abi-compat>19`.


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

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

  Log Message:
  -----------
  [AMDGPU] Avoid repeated hash lookups (NFC) (#110788)


  Commit: e35319524a3f5834ea1f5a7f7d7624a295be8ab7
      https://github.com/llvm/llvm-project/commit/e35319524a3f5834ea1f5a7f7d7624a295be8ab7
  Author: Janek van Oirschot <janek.vanoirschot at amd.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUMCResourceInfo.cpp
    M llvm/test/CodeGen/AMDGPU/function-resource-usage.ll

  Log Message:
  -----------
  [AMDGPU] Fix stack size metadata for functions with direct and indirect calls (#110828)

When a function has an external call, it should still use the stack
sizes of direct, known, calls to calculate its own stack size


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

  Changed paths:
    M llvm/lib/ProfileData/MemProfReader.cpp

  Log Message:
  -----------
  [memprof] Avoid repeated hash lookups (NFC) (#110789)


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

  Changed paths:
    M llvm/lib/Passes/StandardInstrumentations.cpp

  Log Message:
  -----------
  [Passes] Avoid repeated hash lookups (NFC) (#110790)


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

  Changed paths:
    M llvm/lib/MC/XCOFFObjectWriter.cpp

  Log Message:
  -----------
  [MC] Avoid repeated hash lookups (NFC) (#110791)


  Commit: 7de492f90dd733859f5f0dd582860ccc5899dc22
      https://github.com/llvm/llvm-project/commit/7de492f90dd733859f5f0dd582860ccc5899dc22
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/test/Transforms/InstCombine/indexed-gep-compares.ll

  Log Message:
  -----------
  [InstCombine] Preserve nuw flag in indexed compare fold

If all the involved GEPs have the nuw flag, also preserve it on
the resulting adds and GEPs.


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

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

  Log Message:
  -----------
  [OpenACC] Enforce all 'collapse' intervening rules (#110684)

'collapse' makes the 'loop' construct apply to the next N nested loops,
and 'loop' requires all associated loops be 'for' loops (or range-for).

This patch adds this restriction, plus adds a number of infrastructure
changes to permit some of the other restrictions in the future to be
implemented.

'collapse' also requires that there is not any calls to other directives
 inside of the collapse region, so this also implements that limitation.


  Commit: 2d784b194681e9a12b33bffec148d6edf1aadc13
      https://github.com/llvm/llvm-project/commit/2d784b194681e9a12b33bffec148d6edf1aadc13
  Author: Shourya Goel <shouryagoel10000 at gmail.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/math/index.rst
    M libc/spec/stdc.td
    M libc/src/math/CMakeLists.txt
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/iscanonical.cpp
    A libc/src/math/generic/iscanonicalf.cpp
    A libc/src/math/generic/iscanonicalf128.cpp
    A libc/src/math/generic/iscanonicalf16.cpp
    A libc/src/math/generic/iscanonicall.cpp
    A libc/src/math/iscanonical.h
    A libc/src/math/iscanonicalf.h
    A libc/src/math/iscanonicalf128.h
    A libc/src/math/iscanonicalf16.h
    A libc/src/math/iscanonicall.h
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/IsCanonicalTest.h
    A libc/test/src/math/smoke/iscanonical_test.cpp
    A libc/test/src/math/smoke/iscanonicalf128_test.cpp
    A libc/test/src/math/smoke/iscanonicalf16_test.cpp
    A libc/test/src/math/smoke/iscanonicalf_test.cpp
    A libc/test/src/math/smoke/iscanonicall_test.cpp

  Log Message:
  -----------
  [libc][math] Implement `iscanonical[f|l]` as a libc math function (#110565)

This PR implements the iscanonical function as part of the libc math
library.

The addition of this function is crucial for completing the
implementation of remaining math macros, as referenced in #109201


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

  Changed paths:
    M flang/include/flang/Optimizer/Dialect/FIROps.td
    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/fir-ops.fir

  Log Message:
  -----------
  [flang][NFC] remove unused fir.constc operation (#110821)

As part of [RFC to replace fir.complex usages by mlir.complex
type](https://discourse.llvm.org/t/rfc-flang-replace-usages-of-fir-complex-by-mlir-complex-type/82292).

fir.constc is unused so instead of porting it, just remove it.
Complex constants are currently created with inserts in lowering
already. When using mlir complex, we may just want to start using
[complex.constant](https://github.com/llvm/llvm-project/blob/4f6ad17adce1b87cadf0c896d3b38334045196ea/mlir/include/mlir/Dialect/Complex/IR/ComplexOps.td#L131C5-L131C16).


  Commit: 9c697b3a02d95b49e11633c45f76f77954fca704
      https://github.com/llvm/llvm-project/commit/9c697b3a02d95b49e11633c45f76f77954fca704
  Author: Chao Chen <chao.chen at intel.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPU.h
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUOps.td
    M mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp
    M mlir/test/Dialect/XeGPU/XeGPUOps.mlir
    M mlir/test/Dialect/XeGPU/invalid.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] Update the type of offsets for CreateDescOp and UpdateOffsetOp (#110741)

This PR changes the type of `offsets` operand of CreateDescOp and
UpdateOffsetOp to 1D Vector of index, for convenience of users.


  Commit: 8282c58d9b1cd5b6df89ee3f68438fe0ee672f7f
      https://github.com/llvm/llvm-project/commit/8282c58d9b1cd5b6df89ee3f68438fe0ee672f7f
  Author: c8ef <c8ef at outlook.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p1.cpp
    M clang/test/CXX/dcl.decl/dcl.meaning/dcl.fct/p8.cpp
    M clang/test/CXX/dcl/dcl.fct/p17.cpp
    M clang/test/CXX/drs/cwg22xx.cpp
    M clang/test/CXX/drs/cwg3xx.cpp
    M clang/test/CXX/special/class.inhctor/p8.cpp
    M clang/test/CXX/temp/temp.constr/temp.constr.decl/func-template-decl.cpp
    M clang/test/CXX/temp/temp.res/temp.local/p8.cpp
    M clang/test/CXX/temp/temp.spec/temp.expl.spec/p12.cpp
    M clang/test/CXX/temp/temp.spec/temp.expl.spec/p14-23.cpp
    M clang/test/CXX/temp/temp.spec/temp.expl.spec/p18.cpp
    M clang/test/FixIt/member-mismatch.cpp
    M clang/test/Parser/cxx-class.cpp
    M clang/test/SemaCXX/attr-target-mv.cpp
    M clang/test/SemaCXX/attr-target-version.cpp
    M clang/test/SemaCXX/enable_if.cpp
    M clang/test/SemaCXX/function-redecl.cpp
    M clang/test/SemaCXX/lambda-unevaluated.cpp
    M clang/test/SemaCXX/nested-name-spec.cpp
    M clang/test/SemaCXX/out-of-line-def-mismatch.cpp
    M clang/test/SemaCXX/typo-correction.cpp
    M clang/test/SemaTemplate/concepts-out-of-line-def.cpp
    M clang/test/SemaTemplate/recovery-crash.cpp

  Log Message:
  -----------
  [Clang] Emit a diagnostic note at the class declaration when the method definition does not match any declaration. (#110638)

Fixes #110558.

In this patch, we will emit a diagnostic note pointing to the class
declaration when a method definition does not match any declaration.
This approach, similar to what GCC does, makes the diagnostic more
user-friendly.

---------

Co-authored-by: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>


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

  Changed paths:
    M clang/docs/LanguageExtensions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/BuiltinsX86.def
    M clang/include/clang/Basic/BuiltinsX86_64.def
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/Headers/adcintrin.h
    M clang/lib/Headers/adxintrin.h
    M clang/test/CodeGen/X86/adc-builtins.c
    M clang/test/CodeGen/X86/adx-builtins.c

  Log Message:
  -----------
  [clang][x86] Add constexpr support for ADC/SBB + ADX intrinsics (#110668)

ADC and ADX use the same internal intrinsics - for testing I've taken the same approach as the generic builtin overflow tests, putting the intrinsics in a constexpr test wrapper and comparing the carry/result value pair.

I've added the addcarry/subborrow intrinsics to the clang language extension list - I'm not sure if we want to add all ISA intrinsics to the list (although we can if people think it useful?), but I felt we should at least include the baseline x86 intrinsics.


  Commit: 09ba83be0ac178851e3c9c9c8fefddbdd4d8353f
      https://github.com/llvm/llvm-project/commit/09ba83be0ac178851e3c9c9c8fefddbdd4d8353f
  Author: Chao Chen <chao.chen at intel.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M mlir/lib/Dialect/XeGPU/IR/CMakeLists.txt

  Log Message:
  -----------
  [MLIR][XeGPU] fix link issue for #110741 (#110853)


  Commit: d278fa5e1a65cb0583fd4ca7814da6b238c66e9f
      https://github.com/llvm/llvm-project/commit/d278fa5e1a65cb0583fd4ca7814da6b238c66e9f
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M libcxx/include/__memory/compressed_pair.h
    M libcxx/test/std/utilities/any/any.class/any.cons/default.pass.cpp
    M libcxx/test/support/test_macros.h

  Log Message:
  -----------
  [libc++] Fix constant initialization of unique_ptr in C++17 and prior (#108956)

This is already tested in
`std/utilities/smartptr/unique.ptr/unique.ptr.class/unique.ptr.ctor/default.pass.cpp`
except that `TEST_CONSTINIT` doesn't do anything before C++20 without
this patch.


  Commit: 9b53a6e7e5310e56c404766bf1cf3f21bff59229
      https://github.com/llvm/llvm-project/commit/9b53a6e7e5310e56c404766bf1cf3f21bff59229
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M clang/test/CXX/drs/cwg27xx.cpp

  Log Message:
  -----------
  [Clang][NFC] Rearrange tests for CWG 2707 after #110473 (#110842)

This addresses comments from @Endilll in the post commit review of
#110473.


  Commit: 3ca5d8082a0c6bd9520544ce3bca11bf3e02a5fa
      https://github.com/llvm/llvm-project/commit/3ca5d8082a0c6bd9520544ce3bca11bf3e02a5fa
  Author: Petr Kurapov <petr.a.kurapov at intel.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUAttrs.td
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUTypes.td
    M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
    M mlir/test/Dialect/XeGPU/XeGPUOps.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] Add sg_map attribute to support Work Item level semantics (#108864)

The PR adds an attribute (sg_map) describing the distribution of
computation among work items for xegpu operations to be used in lowering
passes. The map is attached to the tensor descriptor, so the constructor
and the type are updated. Tests check the custom parser & printer. The
attribute is optional now, so no other changes required.
The complete description of the attribute can be found
[here](https://github.com/intel/mlir-extensions/blob/main/docs/rfcs/XeGPU.md#xegpu-attributes-to-support-work-item-level-semantics).


  Commit: 187dcd8e2219ec102072b120ae5404293838c510
      https://github.com/llvm/llvm-project/commit/187dcd8e2219ec102072b120ae5404293838c510
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp
    A llvm/test/CodeGen/AMDGPU/dag-preserve-disjoint-flag.ll
    M llvm/test/CodeGen/PowerPC/aix64-cc-abi-vaarg.ll
    M llvm/test/CodeGen/SPARC/fp128-split.ll

  Log Message:
  -----------
  DAG: Preserve disjoint flag when emitting final instructions (#110795)


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

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
    M mlir/test/Dialect/Linalg/generalize-tensor-pack.mlir

  Log Message:
  -----------
  [mlir][tensor] Relax the logic to generalise tensor.pack (#110807)

Make sure that the logic to generalize tensor.pack (into e.g. tensor.pad
tensor.transpose) does indeed allow multiple dynamic tile sizes. This
was effectively already implemented in #109815 - in this PR I merely
removing one `if` condition and adding a test.

I also took the liberty of renaming a few test functions - just to
better highlight the differences between the old and the new tests.

Follow-on for #109815.


  Commit: a7b6fdaf5d1eee863f19239e65aaf352e8e0868b
      https://github.com/llvm/llvm-project/commit/a7b6fdaf5d1eee863f19239e65aaf352e8e0868b
  Author: Chao Chen <chao.chen at intel.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUAttrs.td
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUTypes.td
    M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
    M mlir/test/Dialect/XeGPU/XeGPUOps.mlir

  Log Message:
  -----------
  Revert "[MLIR][XeGPU] Add sg_map attribute to support Work Item level semantics" (#110871)

Reverts #108864 since it breaks compilation


  Commit: 4cd1f9ac9fce8042bd9c339a92d1f4936ca0ef14
      https://github.com/llvm/llvm-project/commit/4cd1f9ac9fce8042bd9c339a92d1f4936ca0ef14
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    A llvm/test/CodeGen/AMDGPU/fold-operands-frame-index.gfx10.mir
    A llvm/test/CodeGen/AMDGPU/fold-operands-frame-index.mir

  Log Message:
  -----------
  AMDGPU: Add baseline test for frame index folding (#110737)

We currently can increase the instruction count
when a frame index requires materialization.


  Commit: 0f973ac783aa100cfbce1cd2c6e8a3a8f648fae7
      https://github.com/llvm/llvm-project/commit/0f973ac783aa100cfbce1cd2c6e8a3a8f648fae7
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M flang/include/flang/Common/Fortran-features.h
    M flang/include/flang/Parser/message.h
    M flang/include/flang/Semantics/expression.h
    M flang/include/flang/Semantics/semantics.h
    M flang/lib/Common/Fortran-features.cpp
    M flang/lib/Evaluate/check-expression.cpp
    M flang/lib/Evaluate/common.cpp
    M flang/lib/Evaluate/fold-character.cpp
    M flang/lib/Evaluate/fold-complex.cpp
    M flang/lib/Evaluate/fold-implementation.h
    M flang/lib/Evaluate/fold-integer.cpp
    M flang/lib/Evaluate/fold-logical.cpp
    M flang/lib/Evaluate/fold-matmul.h
    M flang/lib/Evaluate/fold-real.cpp
    M flang/lib/Evaluate/fold-reduction.h
    M flang/lib/Evaluate/host.cpp
    M flang/lib/Evaluate/intrinsics.cpp
    M flang/lib/Evaluate/variable.cpp
    M flang/lib/Parser/message.cpp
    M flang/lib/Parser/preprocessor.cpp
    M flang/lib/Parser/prescan.cpp
    M flang/lib/Semantics/check-acc-structure.cpp
    M flang/lib/Semantics/check-allocate.cpp
    M flang/lib/Semantics/check-call.cpp
    M flang/lib/Semantics/check-case.cpp
    M flang/lib/Semantics/check-cuda.cpp
    M flang/lib/Semantics/check-data.cpp
    M flang/lib/Semantics/check-declarations.cpp
    M flang/lib/Semantics/check-directive-structure.h
    M flang/lib/Semantics/check-do-forall.cpp
    M flang/lib/Semantics/check-io.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/check-return.cpp
    M flang/lib/Semantics/compute-offsets.cpp
    M flang/lib/Semantics/data-to-inits.cpp
    M flang/lib/Semantics/definable.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/mod-file.cpp
    M flang/lib/Semantics/pointer-assignment.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/lib/Semantics/resolve-labels.cpp
    M flang/lib/Semantics/resolve-names-utils.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/semantics.cpp

  Log Message:
  -----------
  [flang] Tag warnings with LanguageFeature or UsageWarning (#110304)

(This is a big patch, but it's nearly an NFC. No test results have
changed and all Fortran tests in the LLVM test suites work as expected.)

Allow a parser::Message for a warning to be marked with the
common::LanguageFeature or common::UsageWarning that controls it. This
will allow a later patch to add hooks whereby a driver will be able to
decorate warning messages with the names of its options that enable each
particular warning, and to add hooks whereby a driver can map those
enumerators by name to command-line options that enable/disable the
language feature and enable/disable the messages.

The default settings in the constructor for LanguageFeatureControl were
moved from its header file into its C++ source file.

Hooks for a driver to use to map the name of a feature or warning to its
enumerator were also added.

To simplify the tagging of warnings with their corresponding language
feature or usage warning, to ensure that they are properly controlled by
ShouldWarn(), and to ensure that warnings never issue at code sites in
module files, two new Warn() member function templates were added to
SemanticsContext and other contextual frameworks. Warn() can't be used
before source locations can be mapped to scopes, but the bulk of
existing code blocks testing ShouldWarn() and FindModuleFile() before
calling Say() were convertible into calls to Warn(). The ones that were
not convertible were extended with explicit calls to
Message::set_languageFeature() and set_usageWarning().


  Commit: 504585d7d8b703426ff326f4f24f71b69149574e
      https://github.com/llvm/llvm-project/commit/504585d7d8b703426ff326f4f24f71b69149574e
  Author: Vasileios Porpodas <vporpodas at google.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

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

  Log Message:
  -----------
  [SandboxIR][NFC] Move isMemDepCandidate() and isStackSaveOrRestoreIntrinsic() to Utils


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

  Changed paths:
    M mlir/include/mlir-c/Dialect/SparseTensor.h
    M mlir/lib/Bindings/Python/DialectSparseTensor.cpp
    M mlir/lib/CAPI/Dialect/SparseTensor.cpp
    M mlir/test/Integration/Dialect/SparseTensor/python/test_output.py

  Log Message:
  -----------
  [MLIR][sparse] Add `soa` property to `sparse_tensor` Python bindings (#109135)


  Commit: 8789c96698e027b0dd40b6e0475181505d6b8984
      https://github.com/llvm/llvm-project/commit/8789c96698e027b0dd40b6e0475181505d6b8984
  Author: Adrian Prantl <aprantl at apple.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M lldb/include/lldb/Interpreter/CommandReturnObject.h
    M lldb/source/API/SBCommandReturnObject.cpp
    M lldb/source/Commands/CommandObjectBreakpointCommand.cpp
    M lldb/source/Commands/CommandObjectDWIMPrint.cpp
    M lldb/source/Commands/CommandObjectExpression.cpp
    M lldb/source/Commands/CommandObjectMemoryTag.cpp
    M lldb/source/Commands/CommandObjectTarget.cpp
    M lldb/source/Commands/CommandObjectThread.cpp
    M lldb/source/Interpreter/CommandReturnObject.cpp

  Log Message:
  -----------
  [lldb] Unify implementation of CommandReturnObject::SetError(NFC) (#110707)

This is a cleanup that moves the API towards value semantics.


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

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUInsertDelayAlu.cpp
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.h

  Log Message:
  -----------
  [AMDGPU] Use the SchedModel available in SIInstrInfo (#110859)

Instead of allocating an initializing a new instance in
`GCNHazardRecognizer` and `AMDGPUInsertDelayAlu`.


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

  Changed paths:
    M libc/config/config.json
    M libc/docs/configure.rst
    M libc/src/__support/FPUtil/dyadic_float.h
    M libc/src/__support/float_to_string.h
    M libc/src/stdio/printf_core/CMakeLists.txt
    M libc/test/src/stdio/CMakeLists.txt
    M libc/test/src/stdlib/CMakeLists.txt
    M libc/test/src/stdlib/StrfromTest.h

  Log Message:
  -----------
  [libc] Enable dyadic float for float printf (#110765)

Dyadic floats were an existing option for float to string conversion,
but it had become stale. This patch fixes it up as well as adding proper
config options and test support. Due to the test changes this is a
followup to #110759


  Commit: 1905cdbf4ef15565504036c52725cb0622ee64ef
      https://github.com/llvm/llvm-project/commit/1905cdbf4ef15565504036c52725cb0622ee64ef
  Author: Mehdi Amini <joker.eph at gmail.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:
  -----------
  Fix LLVM_ENABLE_ABI_BREAKING_CHECKS macro check: use #if instead of #ifdef (#110883)

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

Reapply https://github.com/llvm/llvm-project/pull/110185 with fixes.


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

  Changed paths:
    M clang/utils/TableGen/ClangOptionDocEmitter.cpp
    M llvm/include/llvm/TableGen/DirectiveEmitter.h
    M llvm/include/llvm/TableGen/Record.h
    M llvm/lib/TableGen/Record.cpp
    M llvm/lib/TableGen/TGParser.cpp
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
    M llvm/utils/TableGen/Common/CodeGenSchedule.cpp
    M llvm/utils/TableGen/Common/GlobalISel/CombinerUtils.h
    M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.h
    M mlir/include/mlir/TableGen/Attribute.h
    M mlir/lib/TableGen/Attribute.cpp
    M mlir/lib/TableGen/Operator.cpp
    M mlir/lib/TableGen/Pattern.cpp
    M mlir/tools/mlir-tblgen/BytecodeDialectGen.cpp
    M mlir/tools/mlir-tblgen/EnumsGen.cpp
    M mlir/tools/mlir-tblgen/OmpOpGen.cpp

  Log Message:
  -----------
  [TableGen] Change `DefInit::Def` to a const Record pointer (#110747)

This change undoes a const_cast<> introduced in an earlier change to
help transition to const pointers. It 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: 4123050b965f685e8e56c74d413e99f64f35d38b
      https://github.com/llvm/llvm-project/commit/4123050b965f685e8e56c74d413e99f64f35d38b
  Author: Baodi Shan <lwshanbd at gmail.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M openmp/docs/SupportAndFAQ.rst

  Log Message:
  -----------
  [Offload][Doc] Add 'offload' in OpenMP target doc (#110141)

Fix #106399


  Commit: 67dd9d23474bd570d5befaddad0be8a5559b815b
      https://github.com/llvm/llvm-project/commit/67dd9d23474bd570d5befaddad0be8a5559b815b
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/debug-counter.ll

  Log Message:
  -----------
  [SLP]Add debug counter support

Fixes #110725

Reviewers: aeubanks

Reviewed By: aeubanks

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


  Commit: 2b8e81ce919e8db857dc2ba20012e9020af07294
      https://github.com/llvm/llvm-project/commit/2b8e81ce919e8db857dc2ba20012e9020af07294
  Author: Shourya Goel <shouryagoel10000 at gmail.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M libc/src/math/generic/iscanonical.cpp
    M libc/src/math/generic/iscanonicalf.cpp
    M libc/src/math/generic/iscanonicalf128.cpp
    M libc/src/math/generic/iscanonicalf16.cpp
    M libc/src/math/generic/iscanonicall.cpp

  Log Message:
  -----------
  [libc][math] undef `iscanonical` before defining it using `LLVM_LIBC_FUNCTION` macro (#110865)

It appears that #110565 fails because the macro definition of
iscanonical is included somewhere. This PR ensures that the macro
expands correctly and also removes the static_cast because implicit
conversion from bool to int is defined in C++.


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

  Changed paths:
    M libcxx/docs/Status/Cxx23Papers.csv
    M libcxx/include/__compare/compare_partial_order_fallback.h
    M libcxx/include/__compare/compare_strong_order_fallback.h
    M libcxx/include/__compare/compare_weak_order_fallback.h
    M libcxx/test/std/language.support/cmp/cmp.alg/compare_partial_order_fallback.pass.cpp
    M libcxx/test/std/language.support/cmp/cmp.alg/compare_strong_order_fallback.pass.cpp
    M libcxx/test/std/language.support/cmp/cmp.alg/compare_weak_order_fallback.pass.cpp

  Log Message:
  -----------
  [libc++] P2167R3: Improved Proposed Wording for LWG 2114 (#109102)

Only the [cmp.alg] part (for `comparison_meow_fallback` CPOs) in the
paper required changes. Other parts merely fixed preconditions of some
standard library functions.

I strongly feel that P2167R3 should be a DR despite that it is not a DR
officially: CPOs -> C++20; remain parts -> C++98/11 (except that
_`boolean-testable`_ should be transformed into the original
_BooleanTestable_ requirements in the old resolution of LWG2114).

Note that P2167R3 damaged the resolution of LWG3465: the type of `F < E`
was left underconstrained. I've tried to submit an LWG issue for this,
which is now LWG4157.

Drive-by change:
- enable some test coverages in `compare_strong_order_fallback.pass.cpp`
when `TEST_LONG_DOUBLE_IS_DOUBLE`, following up #106742

Closes #105241.


  Commit: 429819f223f6e2d57ea2712d5a81f3ede53934a4
      https://github.com/llvm/llvm-project/commit/429819f223f6e2d57ea2712d5a81f3ede53934a4
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M mlir/lib/Tools/tblgen-lsp-server/TableGenServer.cpp

  Log Message:
  -----------
  [NFC][MLIR][TableGen] Eliminate `llvm::` for common types in LSP Server (#110867)


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

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-cc.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-preserve-cc.ll
    M llvm/test/CodeGen/AMDGPU/array-ptr-calc-i32.ll
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32-wave32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-u32.mir
    M llvm/test/CodeGen/AMDGPU/flat-scratch.ll
    M llvm/test/CodeGen/AMDGPU/frame-index.mir
    M llvm/test/CodeGen/AMDGPU/materialize-frame-index-sgpr.gfx10.ll
    M llvm/test/CodeGen/AMDGPU/mubuf-offset-private.ll
    M llvm/test/CodeGen/AMDGPU/scratch-simple.ll
    M llvm/test/CodeGen/AMDGPU/stack-pointer-offset-relative-frameindex.ll
    M llvm/test/CodeGen/AMDGPU/stack-realign.ll

  Log Message:
  -----------
  AMDGPU: Handle v_add* in eliminateFrameIndex (#102346)


  Commit: 694fd1f297feaf59cd29a3d17e63ee2f6514dd16
      https://github.com/llvm/llvm-project/commit/694fd1f297feaf59cd29a3d17e63ee2f6514dd16
  Author: Doug Gregor <dgregor at apple.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M clang/lib/Sema/SemaAPINotes.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/APINotes/Inputs/Frameworks/SimpleKit.framework/Headers/SimpleKit.apinotes
    M clang/test/APINotes/Inputs/Frameworks/SimpleKit.framework/Headers/SimpleKit.h
    M clang/test/APINotes/types.m
    M clang/test/APINotes/yaml-roundtrip-2.test

  Log Message:
  -----------
  Allow tag-based API notes on anonymous tag decls with typedef names

It is common practice in C to declare anonymous tags that are
immediately given a typedef name, e.g.,

    typedef enum { ... } MyType;

At present, one can only express API notes on the typedef. However, that
excludes the possibility of tag-specific notes like EnumExtensibility.
For these anonymous declarations, process API notes using the typedef
name as the tag name, so that one can add API notes to `MyType` via the
`Tags` section.


  Commit: 34f0edd50992e6d18c80dd901caf1e8220be673b
      https://github.com/llvm/llvm-project/commit/34f0edd50992e6d18c80dd901caf1e8220be673b
  Author: Mingming Liu <mingmingl at google.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/IndirectCallPromotion.cpp
    M llvm/test/Transforms/PGOProfile/icp_vtable_cmp.ll

  Log Message:
  -----------
  [TypeProf][PGO]Support skipping vtable comparisons for a class and its derived ones (#110575)

Performance critical core libraries could be highly-optimized for arch
or micro-arch features. For instance, the absl crc library specializes
different templated classes among different hardwares [1]. In a
practical setting, it's likely that instrumented profiles are collected
on one type of machine and used to optimize binaries that run on
multiple types of hardwares.

While this kind of specialization is rare in terms of lines of code,
compiler can do a better job to skip vtable-based ICP.
* The per-class `Extend` implementation is arch-specific as well. If an
instrumented profile is collected on one arch and applied to another
arch where `Extend` implementation is different, `Extend` might be
regarded as unlikely function in the latter case. `ABSL_ATTRIBUTE_HOT`
annotation alleviates the problem by putting all `Extend` implementation
into the hot text section [2]

This change introduces a comma-separated list to specify the mangled
vtable names, and ICP pass will skip vtable-based comparison if a vtable
variable definition is shown to be in its class hierarchy (per LLVM type
metadata).

[1]
https://github.com/abseil/abseil-cpp/blob/c6b27359c3d27438b1313dddd7598914c1274a50/absl/crc/internal/crc_x86_arm_combined.cc#L621-L650
[2]
https://github.com/abseil/abseil-cpp/blame/c6b27359c3d27438b1313dddd7598914c1274a50/absl/crc/internal/crc_x86_arm_combined.cc#L370C3-L370C21


  Commit: ec7266617f674a84fd66cd3e87f52d631d23ede6
      https://github.com/llvm/llvm-project/commit/ec7266617f674a84fd66cd3e87f52d631d23ede6
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    R llvm/test/Transforms/SLPVectorizer/X86/debug-counter.ll

  Log Message:
  -----------
  Revert "[SLP]Add debug counter support"

This reverts commit 67dd9d23474bd570d5befaddad0be8a5559b815b to fix https://lab.llvm.org/buildbot/#/builders/11/builds/6012


  Commit: 5e92bfe97fe0f72f3052df53f813d8dcbb7038d3
      https://github.com/llvm/llvm-project/commit/5e92bfe97fe0f72f3052df53f813d8dcbb7038d3
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2024-10-02 (Wed, 02 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/SemaOpenACC/loop-construct-collapse-clause.cpp

  Log Message:
  -----------
  [OpenACC] Check Loop counts for 'collapse' clause. (#110851)

OpenACC Spec requires that each loop associated with a 'collapse' have
exactly 1 loop/nest. This is implemented in 2 parts: 1- diagnosing when
we see a 2nd loop at any level with an applicable 'collapse'
2- Diagnosing if we didn't see enough 'depth' of loops.

Other loops (non-for) are diagnosed by a previous patch, and other
intervening code will be diagnosed in a followup.


  Commit: 99f527d2807b5a14dc7ee64d15405f09e95ee9f2
      https://github.com/llvm/llvm-project/commit/99f527d2807b5a14dc7ee64d15405f09e95ee9f2
  Author: Durgadoss R <durgadossr at nvidia.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/include/llvm/ADT/APFloat.h
    M llvm/lib/Support/APFloat.cpp
    M llvm/unittests/ADT/APFloatTest.cpp

  Log Message:
  -----------
  [APFloat] Add APFloat support for E8M0 type (#107127)

This patch adds an APFloat type for unsigned E8M0 format. This format is
used for representing the "scale-format" in the MX specification:
(section 5.4)

https://www.opencompute.org/documents/ocp-microscaling-formats-mx-v1-0-spec-final-pdf

This format does not support {Inf, denorms, zeroes}. Like FP32, this
format's exponents are 8-bits (all bits here) and the bias value is 127.
However, it differs from IEEE-FP32 in that the minExponent is -127
(instead of -126). There are updates done in the APFloat utility
functions to handle these constraints for this format.

* The bias calculation is different and convertIEEE* APIs are updated to
handle this.
* Since there are no significand bits, the isSignificandAll{Zeroes/Ones}
methods are updated accordingly.
* Although the format does not have any precision, the precision bit in
the fltSemantics is set to 1 for consistency with APFloat's internal
representation.
* Many utility functions are updated to handle the fact that this format
does not support Zero.
* Provide a separate initFromAPInt() implementation to handle the quirks
of the format.
* Add specific tests to verify the range of values for this format.

Signed-off-by: Durgadoss R <durgadossr at nvidia.com>


  Commit: 9016f27c4253ac5c6282c30f0fe08ddd58522cdd
      https://github.com/llvm/llvm-project/commit/9016f27c4253ac5c6282c30f0fe08ddd58522cdd
  Author: spupyrev <spupyrev at users.noreply.github.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/CodeGen/MachineBlockPlacement.cpp
    A llvm/test/CodeGen/X86/code_placement_ext_tsp_size.ll

  Log Message:
  -----------
  [CodeLayout] Size-aware machine block placement (#109711)

This is an implementation of a new "size-aware" machine block placement.
The
idea is to reorder blocks so that the number of fall-through jumps is
maximized.
Observe that profile data is ignored for the optimization, and it is
applied only
for instances with hasOptSize()=true.
This strategy has two benefits:
(i) it eliminates jump instructions, which results in smaller text size;
(ii) we avoid using profile data while reordering blocks, which yields
more
"uniform" functions, thus helping ICF and machine outliner/merger.

For large (mobile) apps, the size benefits of (i) and (ii) are roughly
the same,
combined providing up to 0.5% uncompressed and up to 1% compressed
savings size
on top of the current solution.

The optimization is turned off by default.


  Commit: 9fa55ec3d93435a790f9990b1c6565e3ee689b2c
      https://github.com/llvm/llvm-project/commit/9fa55ec3d93435a790f9990b1c6565e3ee689b2c
  Author: Petr Kurapov <petr.a.kurapov at intel.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUAttrs.td
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUTypes.td
    M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
    M mlir/test/Dialect/XeGPU/XeGPUOps.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] Add sg_map attribute to support Work Item level semanti… (#110876)

Bring back #108864


  Commit: 4197e732a557aa69af36c86c67257edfae8300b4
      https://github.com/llvm/llvm-project/commit/4197e732a557aa69af36c86c67257edfae8300b4
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/debug-counter.ll

  Log Message:
  -----------
  [SLP]Add debug counter support

Fixes #110725

Reviewers: aeubanks

Reviewed By: aeubanks

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


  Commit: 7a0a5246532a5536346d34518e5936a6ff4f4077
      https://github.com/llvm/llvm-project/commit/7a0a5246532a5536346d34518e5936a6ff4f4077
  Author: lntue <lntue at google.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M libc/test/src/math/smoke/iscanonical_test.cpp

  Log Message:
  -----------
  [libc] Fix iscanonical test on aarch64 and riscv64. (#110907)


  Commit: 52a9ba7ca4fb9427706c28bb3ca15f7a56eecf3f
      https://github.com/llvm/llvm-project/commit/52a9ba7ca4fb9427706c28bb3ca15f7a56eecf3f
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/test/CodeGenCXX/debug-info-alias.cpp

  Log Message:
  -----------
  [clang][DebugInfo] Revert to printing canonical typenames for template aliases (#110767)

This was originally added in https://reviews.llvm.org/D142268 to have
LLDB display variable typenames that benefit from suppressing defaulted
template arguments.

We currently represent template aliases as `DW_AT_typedef`s instead of
`DW_TAG_template_alias`. This means for types like:
```
template <class _Tp>
using __remove_cv_t = __remove_cv(_Tp);

template <class _Tp>
using remove_cv_t = __remove_cv_t<_Tp>;

template<typename T>
class optional {
  using value_type = T;
  remove_cv_t<value_type> __val_;
}
```
we would generate DWARF like:
```
0x0000274f:       DW_TAG_typedef
                    DW_AT_type  (0x0000000000002758 "__remove_cv_t<value_type>")
                    DW_AT_name  ("remove_cv_t<value_type>")

```

This is an actual libc++ type layout introduced in
https://github.com/llvm/llvm-project/pull/110355, and uncovered a
shortcoming of LLDB's data-formatter infrastructure, where we cache
formatters on the contents of `DW_AT_name` (which currently wouldn't be
a fully resolved typename for template specializations).

To unblock the libc++ change, I think we can revert this without much
fallout.

Then we have two options for follow-up (or do both):
1. reland this but adjust the LLDB formatter cache so it doesn't cache
formatters for template specializations
2. implement support for `DW_TAG_template_alias` in LLDB (and make Clang
generate them by default).


  Commit: ae5bd2a9f292037c605b2ec0ee31200581bd8701
      https://github.com/llvm/llvm-project/commit/ae5bd2a9f292037c605b2ec0ee31200581bd8701
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2024-10-02 (Wed, 02 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:
  -----------
  [AMDGPU][GlobalISel] Fix load/store of pointer vectors, buffer.*.pN (#110714)

Certain pointer address spaces were not being correctly handled by the
GlobalISel lowering for buffer_load and buffer_store.

1. ptr addrspace(1) and addrspace(4) did not have rewrite patterns
defined for them, while p0 did, since those pointer types weren't in the
list of types that was iterated to form the patterns.
2. Vectors of pointers need to be bitcast to vectors of the
corresponding scalars, since there doesn't seem to be a good way to
define the rewrite patterns for buffer_load/store of those types

The need to bitcast vectors of pointers was also revealed to affect
ordinary `G_LOAD` and `G_STORE` in some cases, so
`shouldBitcastLoadStore()` has been fixed to handle it properly.


  Commit: 3a6b89540efeb53d3c7e26986a523dc7184aa0f4
      https://github.com/llvm/llvm-project/commit/3a6b89540efeb53d3c7e26986a523dc7184aa0f4
  Author: Haowei <haowei at google.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M libunwind/test/configs/cmake-bridge.cfg.in

  Log Message:
  -----------
  [libunwind] Fix libunwind library path for runtime test (#110777)

This patch fixes an issue when test runner cannot find libwind library
when LLVM_ENABLE_PER_TARGET_RUNTIME_DIR is used.


  Commit: 39851e3a4641864ce29c7066bf304ae0be325f33
      https://github.com/llvm/llvm-project/commit/39851e3a4641864ce29c7066bf304ae0be325f33
  Author: Jan Voung <jvoung at google.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M clang/unittests/Analysis/FlowSensitive/UncheckedOptionalAccessModelTest.cpp

  Log Message:
  -----------
  [clang][dataflow] Add a test demonstrating an issue in unchecked-optional-access-check (#110870)

createStorageLocation used in transferCallReturningOptional:

https://github.com/llvm/llvm-project/blob/09ba83be0ac178851e3c9c9c8fefddbdd4d8353f/clang/lib/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.cpp#L515
can stop recursively creating storage locations when it hits a field of
reference type for a non-optional record:

https://github.com/llvm/llvm-project/blob/3ca5d8082a0c6bd9520544ce3bca11bf3e02a5fa/clang/lib/Analysis/FlowSensitive/DataflowAnalysisContext.cpp#L67

If an optional is reached through that field then it may not have a
storage location by the type we handle has_value in a transfer function.


  Commit: 848cb21ddca5dc4d8c52e487264936be8f1bfe8d
      https://github.com/llvm/llvm-project/commit/848cb21ddca5dc4d8c52e487264936be8f1bfe8d
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/subvector-minbitwidth-unsigned-value.ll

  Log Message:
  -----------
  [SLP][NFC]Add a test with the incorrect signedness info for subvector


  Commit: 9de327c94d0c995803b6485fb28ac4cad1e53bbe
      https://github.com/llvm/llvm-project/commit/9de327c94d0c995803b6485fb28ac4cad1e53bbe
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/X86/predicated-instruction-cost.ll

  Log Message:
  -----------
  [LV] Generalize predication checks from 2c8836c899 for operands.

This fixes another case where the VPlan-based and legacy cost models
disagree. If any of the operands is predicated, it can't be trivially
hoisted and we should consider the cost for evaluating it each loop
iteration.

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


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

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

  Log Message:
  -----------
  [AST] Fix a warning

This patch fixes:

  clang/lib/AST/MicrosoftMangle.cpp:1008:11: error: enumeration value
  'S_Float8E8M0FNU' not handled in switch [-Werror,-Wswitch]


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

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

  Log Message:
  -----------
  adds missing bazel dependencies (#110904)


  Commit: add6b2f35f2bcf1f59a2ab2d5b3dab124fe0895a
      https://github.com/llvm/llvm-project/commit/add6b2f35f2bcf1f59a2ab2d5b3dab124fe0895a
  Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

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

  Log Message:
  -----------
  [NFC][SPIRV] Fix for selectExtInst to be able to process intrinsics (#110864)

`selectExtInst` tries to add the intrinsic to the SPIRV GL extension
instruction.
`MO_IntrinsicID` is always the first operand when we come from
`selectIntrinsic`.
For all those cases `selectExtInst` needs to know to start at index 2.


  Commit: 7d0ca6019d1fce3dc321d7ec051759ba26e862b6
      https://github.com/llvm/llvm-project/commit/7d0ca6019d1fce3dc321d7ec051759ba26e862b6
  Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
    M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.h
    M llvm/lib/Target/DirectX/DXILOpLowering.cpp
    M llvm/test/CodeGen/DirectX/abs.ll
    M llvm/test/CodeGen/DirectX/atan2_error.ll
    M llvm/test/CodeGen/DirectX/clamp.ll
    M llvm/test/CodeGen/DirectX/exp.ll
    M llvm/test/CodeGen/DirectX/fdot.ll
    M llvm/test/CodeGen/DirectX/idot.ll
    M llvm/test/CodeGen/DirectX/length.ll
    M llvm/test/CodeGen/DirectX/length_error.ll
    M llvm/test/CodeGen/DirectX/length_invalid_intrinsic_error.ll
    M llvm/test/CodeGen/DirectX/lerp.ll
    M llvm/test/CodeGen/DirectX/llc-pipeline.ll
    M llvm/test/CodeGen/DirectX/log.ll
    M llvm/test/CodeGen/DirectX/log10.ll
    M llvm/test/CodeGen/DirectX/normalize.ll
    M llvm/test/CodeGen/DirectX/normalize_error.ll
    M llvm/test/CodeGen/DirectX/pow.ll
    M llvm/test/CodeGen/DirectX/sign.ll
    M llvm/test/CodeGen/DirectX/step.ll

  Log Message:
  -----------
  [NFC][DirectX] Remove DXILIntrinsicExpansion as a required pass of DXILOpLowering (#110750)

Updates tests and moves the code accordingly.


  Commit: c1b911c5798654b9b77746901919b86b3f1fe94c
      https://github.com/llvm/llvm-project/commit/c1b911c5798654b9b77746901919b86b3f1fe94c
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/subvector-minbitwidth-unsigned-value.ll

  Log Message:
  -----------
  [SLP]Do correct signedness analysis for clustered nodes

Should get the signedness info from the original scalar instructions, if
possible, to correctly generate sext/zext instructions. Also, the
clustered node must be assigned a gather node user info to correctly
estimate its bitwidth/sign.


  Commit: 40b8a0fd174397e87925da3f1837d74d5d663a50
      https://github.com/llvm/llvm-project/commit/40b8a0fd174397e87925da3f1837d74d5d663a50
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-constbarrier-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-constbarrier-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-extract-subvector.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-splatvector-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-splatvector-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-splatvector-s64-rv32.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/regbankselect/rvv/vmclr-rv32.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/regbankselect/rvv/vmclr-rv64.mir
    R llvm/test/CodeGen/RISCV/GlobalISel/regbankselect/rvv/vmclr.mir

  Log Message:
  -----------
  [RISCV][GISEL] Generate VLMax using -1 constant (#110778)

SelectionDAG uses ISD::REGISTER and uses RISCV::X0 to represent VLMAX.
Then in ComplexPattern VLOpt uses selectVLOp to convert RISCV::X0 to
RISCV::VLMaxSentinel.

The original legalization patch for G_SPLAT_VECTOR used Register
RISCV::X0 directly. $x0 has no LLT type, so GIComplexOperandMatcher has
no way of matching.

The approach we are changing to here will allow us to successfully use
GIComplexOperandMatcher to implement the ComplexMatcherFn selectVLOp in
GISEL since the operand now has a type.


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

  Changed paths:
    M llvm/test/Transforms/SimplifyCFG/sink-cb-diff-attrs.ll

  Log Message:
  -----------
  [SimplifyCFG] Add tests for sinking calls with differing number of attrs; NFC


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

  Changed paths:
    M llvm/lib/IR/Attributes.cpp
    M llvm/lib/IR/Instruction.cpp
    M llvm/test/Transforms/SimplifyCFG/sink-cb-diff-attrs.ll
    M llvm/unittests/IR/AttributesTest.cpp

  Log Message:
  -----------
  [SimplifyCFG][Attributes] Enabling sinking calls with differing number of attrsets

Prior impl would fail if the number of attribute sets on the two calls
wasn't the same which is unnecessary as long as we aren't throwing
away and must-preserve attrs.

Closes #110896


  Commit: 0f512d15331fe3d336ad2917bb8b3cce91c965b9
      https://github.com/llvm/llvm-project/commit/0f512d15331fe3d336ad2917bb8b3cce91c965b9
  Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td

  Log Message:
  -----------
  [NFC][DirectX][SPIRV] Intrinsics should be defined the same (#110895)

Over time our Intrinsics across the two backends have deviated. This
change brings them back into parity.


  Commit: 906ffc4b4a4444c69a759c2c19b3cf5da1cf6e1f
      https://github.com/llvm/llvm-project/commit/906ffc4b4a4444c69a759c2c19b3cf5da1cf6e1f
  Author: Sterling-Augustine <56981066+Sterling-Augustine at users.noreply.github.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp
    M llvm/unittests/SandboxIR/UtilsTest.cpp

  Log Message:
  -----------
  [SandboxIR][NFC] Move Utils test to proper file (#110763)


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

  Changed paths:
    M mlir/tools/mlir-tblgen/AttrOrTypeDefGen.cpp
    M mlir/tools/mlir-tblgen/BytecodeDialectGen.cpp
    M mlir/tools/mlir-tblgen/DialectGen.cpp
    M mlir/tools/mlir-tblgen/EnumPythonBindingGen.cpp
    M mlir/tools/mlir-tblgen/EnumsGen.cpp
    M mlir/tools/mlir-tblgen/FormatGen.cpp
    M mlir/tools/mlir-tblgen/LLVMIRConversionGen.cpp
    M mlir/tools/mlir-tblgen/LLVMIRIntrinsicGen.cpp
    M mlir/tools/mlir-tblgen/OpDocGen.cpp
    M mlir/tools/mlir-tblgen/OpFormatGen.cpp
    M mlir/tools/mlir-tblgen/OpGenHelpers.cpp
    M mlir/tools/mlir-tblgen/OpInterfacesGen.cpp
    M mlir/tools/mlir-tblgen/OpPythonBindingGen.cpp
    M mlir/tools/mlir-tblgen/PassCAPIGen.cpp
    M mlir/tools/mlir-tblgen/PassDocGen.cpp
    M mlir/tools/mlir-tblgen/PassGen.cpp
    M mlir/tools/mlir-tblgen/SPIRVUtilsGen.cpp

  Log Message:
  -----------
  [NFC][MLIR][TableGen] Eliminate `llvm::` for commonly used types (#110841)

Eliminate `llvm::` namespace qualifier for commonly used types in MLIR
TableGen backends to reduce code clutter.


  Commit: 65e69f7436c08bb6a32a9d9784b2158b63af1955
      https://github.com/llvm/llvm-project/commit/65e69f7436c08bb6a32a9d9784b2158b63af1955
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M clang/utils/TableGen/ClangAttrEmitter.cpp
    M llvm/docs/TableGen/BackGuide.rst
    M llvm/include/llvm/TableGen/Record.h
    M llvm/lib/TableGen/DetailedRecordsBackend.cpp
    M llvm/lib/TableGen/Record.cpp
    M llvm/lib/TableGen/TGParser.cpp
    M llvm/utils/TableGen/CallingConvEmitter.cpp
    M llvm/utils/TableGen/Common/CodeGenRegisters.cpp
    M mlir/lib/Tools/tblgen-lsp-server/TableGenServer.cpp

  Log Message:
  -----------
  [NFC][TableGen] Change `Record::getSuperClasses` to use const Record* (#110845)

Change `Record::getSuperClasses` to return a const pointer to the
superclass records.

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: 36dff0d011cc1cf5a41e7e0b30057206ea9fd6f9
      https://github.com/llvm/llvm-project/commit/36dff0d011cc1cf5a41e7e0b30057206ea9fd6f9
  Author: ChiaHungDuan <chiahungduan at google.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

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

  Log Message:
  -----------
  [scudo] Reduce unsuccessful attempts of page releasing (#110583)

We introduce a new strategy to track how many bytes are not released
because of the contraint of release interval. This will change the
`TryReleaseThreshold` adaptively so that we avoid releasing the same
pages multiple times (and wasting time on the case of no pages to
release).

On Android, the number of release attempts decreases 33% (572 to 382)
and the worst case drops from 251 to 33. At the same time, it maintains
almost the same RSS usage (with some improvements as well).

Note that in this CL, this is only applied to non small blocks. We will
bring the strategy to all the size classes later.


  Commit: f98244392b4e3d4075c03528dcec0b268ba13ab7
      https://github.com/llvm/llvm-project/commit/f98244392b4e3d4075c03528dcec0b268ba13ab7
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-10-02 (Wed, 02 Oct 2024)

  Changed paths:
    M flang/include/flang/Parser/dump-parse-tree.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/OpenMP/Utils.cpp
    M flang/lib/Lower/OpenMP/Utils.h
    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/resolve-directives.cpp
    A flang/test/Lower/OpenMP/Todo/lastprivate-conditional.f90
    A flang/test/Parser/OpenMP/lastprivate-clause.f90
    M llvm/include/llvm/Frontend/OpenMP/OMP.td

  Log Message:
  -----------
  [flang][OpenMP] Parse lastprivate modifier, add TODO to lowering (#110568)

Parse the lastprivate clause with a modifier. Codegen for it is not yet
implemented.


  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: ca8d388602b08f67754baf1e4624b5f3f6d551d9
      https://github.com/llvm/llvm-project/commit/ca8d388602b08f67754baf1e4624b5f3f6d551d9
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-10-10 (Thu, 10 Oct 2024)

  Changed paths:
    M .ci/generate-buildkite-pipeline-premerge
    M .github/new-prs-labeler.yml
    M .github/workflows/libcxx-build-and-test.yaml
    M .github/workflows/release-binaries-all.yml
    M .github/workflows/release-binaries.yml
    M .github/workflows/release-documentation.yml
    M .gitignore
    A bolt/include/bolt/Passes/ContinuityStats.h
    M bolt/lib/Passes/ADRRelaxationPass.cpp
    M bolt/lib/Passes/CMakeLists.txt
    A bolt/lib/Passes/ContinuityStats.cpp
    M bolt/lib/Rewrite/BinaryPassManager.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-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/ClangTidy.cpp
    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/boost/UseRangesCheck.cpp
    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
    A clang-tools-extra/clang-tidy/bugprone/TaggedUnionMemberCountCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/TaggedUnionMemberCountCheck.h
    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/misc/UnusedUsingDeclsCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/CMakeLists.txt
    M clang-tools-extra/clang-tidy/modernize/LoopConvertUtils.cpp
    M clang-tools-extra/clang-tidy/modernize/LoopConvertUtils.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/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/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/FindSymbols.cpp
    M clang-tools-extra/clangd/index/MemIndex.cpp
    M clang-tools-extra/clangd/index/SymbolCollector.cpp
    M clang-tools-extra/clangd/index/dex/Dex.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/refactor/tweaks/CMakeLists.txt
    A clang-tools-extra/clangd/refactor/tweaks/SwapBinaryOperands.cpp
    M clang-tools-extra/clangd/support/CMakeLists.txt
    M clang-tools-extra/clangd/tool/CMakeLists.txt
    M clang-tools-extra/clangd/tool/ClangdMain.cpp
    M clang-tools-extra/clangd/unittests/CMakeLists.txt
    M clang-tools-extra/clangd/unittests/ClangdLSPServerTests.cpp
    M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
    M clang-tools-extra/clangd/unittests/PrerequisiteModulesTest.cpp
    M clang-tools-extra/clangd/unittests/SymbolCollectorTests.cpp
    A clang-tools-extra/clangd/unittests/tweaks/SwapBinaryOperandsTests.cpp
    M clang-tools-extra/clangd/xpc/CMakeLists.txt
    M clang-tools-extra/docs/ReleaseNotes.rst
    A clang-tools-extra/docs/clang-tidy/checks/bugprone/bitwise-pointer-cast.rst
    A clang-tools-extra/docs/clang-tidy/checks/bugprone/tagged-union-member-count.rst
    M clang-tools-extra/docs/clang-tidy/checks/list.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/docs/clang-tidy/index.rst
    M clang-tools-extra/include-cleaner/include/clang-include-cleaner/Analysis.h
    M clang-tools-extra/include-cleaner/lib/Analysis.cpp
    M clang-tools-extra/include-cleaner/lib/CMakeLists.txt
    M clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp
    M clang-tools-extra/include-cleaner/unittests/AnalysisTest.cpp
    M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/inttypes.h
    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
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count-counting-enum-heuristic-bad-config.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count-counting-enum-heuristic-is-disabled.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count-counting-enum-heuristic-is-enabled.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count-counting-enum-prefixes-and-suffixes.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count-counting-enum-prefixes.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count-counting-enum-suffixes.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count-strictmode-is-disabled.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count-strictmode-is-enabled.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count.c
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count.m
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count.mm
    M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-basic.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
    M clang-tools-extra/test/clang-tidy/infrastructure/verify-config.cpp
    R clang/CodeOwners.rst
    A clang/Maintainers.rst
    M clang/cmake/caches/Android.cmake
    M clang/cmake/caches/Release.cmake
    A clang/cmake/caches/hexagon-unknown-linux-musl-clang-cross.cmake
    A clang/cmake/caches/hexagon-unknown-linux-musl-clang.cmake
    M clang/docs/AddressSanitizer.rst
    M clang/docs/CMakeLists.txt
    M clang/docs/ClangFormatStyleOptions.rst
    R clang/docs/CodeOwners.rst
    M clang/docs/HardwareAssistedAddressSanitizerDesign.rst
    M clang/docs/LanguageExtensions.rst
    M clang/docs/LeakSanitizer.rst
    M clang/docs/LibASTMatchersReference.html
    A clang/docs/Maintainers.rst
    M clang/docs/MemorySanitizer.rst
    M clang/docs/Multilib.rst
    M clang/docs/RealtimeSanitizer.rst
    M clang/docs/ReleaseNotes.rst
    M clang/docs/ThreadSanitizer.rst
    M clang/docs/UndefinedBehaviorSanitizer.rst
    M clang/docs/analyzer/checkers.rst
    M clang/docs/doxygen.cfg.in
    M clang/docs/index.rst
    M clang/docs/tools/dump_ast_matchers.py
    M clang/include/clang/AST/APValue.h
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/CanonicalType.h
    M clang/include/clang/AST/ComputeDependence.h
    M clang/include/clang/AST/DeclCXX.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/OpenMPClause.h
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/AST/Stmt.h
    M clang/include/clang/AST/TextNodeDumper.h
    M clang/include/clang/AST/Type.h
    M clang/include/clang/AST/TypeProperties.td
    M clang/include/clang/ASTMatchers/ASTMatchers.h
    M clang/include/clang/Basic/AMDGPUTypes.def
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/BuiltinsRISCV.td
    A clang/include/clang/Basic/BuiltinsRISCVXCV.td
    M clang/include/clang/Basic/BuiltinsX86.def
    M clang/include/clang/Basic/BuiltinsX86_64.def
    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/DiagnosticSerializationKinds.td
    M clang/include/clang/Basic/LangOptions.h
    M clang/include/clang/Basic/OpenACCClauses.def
    M clang/include/clang/Basic/PlistSupport.h
    M clang/include/clang/Basic/StmtNodes.td
    M clang/include/clang/Basic/TokenKinds.def
    M clang/include/clang/Basic/arm_sme.td
    M clang/include/clang/Basic/arm_sve.td
    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/Multilib.h
    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/Sema.h
    M clang/include/clang/Sema/SemaOpenACC.h
    M clang/include/clang/Sema/SemaOpenMP.h
    M clang/include/clang/Serialization/ASTBitCodes.h
    M clang/include/clang/Serialization/ASTReader.h
    M clang/include/clang/Serialization/ASTWriter.h
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/include/clang/StaticAnalyzer/Core/CheckerManager.h
    M clang/include/module.modulemap
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/ByteCode/Boolean.h
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Compiler.h
    M clang/lib/AST/ByteCode/Descriptor.cpp
    M clang/lib/AST/ByteCode/Descriptor.h
    M clang/lib/AST/ByteCode/EvaluationResult.cpp
    M clang/lib/AST/ByteCode/FixedPoint.h
    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/InterpBlock.cpp
    M clang/lib/AST/ByteCode/InterpBlock.h
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ByteCode/Opcodes.td
    M clang/lib/AST/ByteCode/Pointer.cpp
    M clang/lib/AST/ByteCode/Pointer.h
    M clang/lib/AST/ByteCode/Program.cpp
    M clang/lib/AST/ByteCode/Program.h
    M clang/lib/AST/CXXInheritance.cpp
    M clang/lib/AST/ComputeDependence.cpp
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclCXX.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/MicrosoftMangle.cpp
    M clang/lib/AST/NSAPI.cpp
    M clang/lib/AST/OpenACCClause.cpp
    M clang/lib/AST/OpenMPClause.cpp
    M clang/lib/AST/PrintfFormatString.cpp
    M clang/lib/AST/StmtPrinter.cpp
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/AST/Type.cpp
    M clang/lib/AST/TypeLoc.cpp
    M clang/lib/Analysis/ExprMutationAnalyzer.cpp
    M clang/lib/Basic/OpenMPKinds.cpp
    M clang/lib/Basic/TargetID.cpp
    M clang/lib/Basic/Targets/AArch64.cpp
    M clang/lib/Basic/Targets/AArch64.h
    M clang/lib/Basic/Targets/ARM.cpp
    M clang/lib/Basic/Targets/RISCV.cpp
    M clang/lib/Basic/Targets/Sparc.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/CGDebugInfo.h
    M clang/lib/CodeGen/CGDeclCXX.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenPGO.cpp
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M clang/lib/CodeGen/MicrosoftCXXABI.cpp
    M clang/lib/CodeGen/Targets/AMDGPU.cpp
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/Multilib.cpp
    M clang/lib/Driver/MultilibBuilder.cpp
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/BareMetal.cpp
    M clang/lib/Driver/ToolChains/BareMetal.h
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/Cuda.cpp
    M clang/lib/Driver/ToolChains/ZOS.cpp
    M clang/lib/ExtractAPI/DeclarationFragments.cpp
    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/lib/Format/UnwrappedLineParser.cpp
    M clang/lib/Format/WhitespaceManager.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Frontend/TextDiagnostic.cpp
    M clang/lib/FrontendTool/CMakeLists.txt
    M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
    M clang/lib/Headers/CMakeLists.txt
    M clang/lib/Headers/adcintrin.h
    M clang/lib/Headers/adxintrin.h
    M clang/lib/Headers/avx512fintrin.h
    M clang/lib/Headers/avxintrin.h
    M clang/lib/Headers/bmi2intrin.h
    M clang/lib/Headers/bmiintrin.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/lzcntintrin.h
    M clang/lib/Headers/pmmintrin.h
    M clang/lib/Headers/popcntintrin.h
    A clang/lib/Headers/riscv_corev_alu.h
    M clang/lib/Headers/tbmintrin.h
    M clang/lib/Headers/xmmintrin.h
    M clang/lib/Index/USRGeneration.cpp
    M clang/lib/Lex/PPMacroExpansion.cpp
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Parse/ParseExpr.cpp
    M clang/lib/Parse/ParseOpenACC.cpp
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Parse/ParsePragma.cpp
    M clang/lib/Parse/ParseStmt.cpp
    M clang/lib/Sema/CMakeLists.txt
    M clang/lib/Sema/HLSLExternalSemaSource.cpp
    M clang/lib/Sema/JumpDiagnostics.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaAPINotes.cpp
    M clang/lib/Sema/SemaARM.cpp
    M clang/lib/Sema/SemaAvailability.cpp
    M clang/lib/Sema/SemaChecking.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/SemaExceptionSpec.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    A 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/SemaOverload.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTCommon.cpp
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    M clang/lib/Serialization/GlobalModuleIndex.cpp
    M clang/lib/StaticAnalyzer/Checkers/BuiltinFunctionChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/DivZeroChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ErrnoChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/FixedAddressChecker.cpp
    M clang/lib/StaticAnalyzer/Core/CheckerManager.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    M clang/lib/StaticAnalyzer/Core/SValBuilder.cpp
    M clang/lib/Tooling/DependencyScanning/ModuleDepCollector.cpp
    M clang/lib/Tooling/Inclusions/HeaderIncludes.cpp
    M clang/test/APINotes/Inputs/Frameworks/SimpleKit.framework/Headers/SimpleKit.apinotes
    M clang/test/APINotes/Inputs/Frameworks/SimpleKit.framework/Headers/SimpleKit.h
    M clang/test/APINotes/types.m
    M clang/test/APINotes/yaml-roundtrip-2.test
    M clang/test/AST/ByteCode/builtin-functions.cpp
    M clang/test/AST/ByteCode/codegen.cpp
    M clang/test/AST/ByteCode/fixed-point.cpp
    M clang/test/AST/ByteCode/records.cpp
    A clang/test/AST/HLSL/ArrayAssignable.hlsl
    M clang/test/AST/HLSL/RWBuffer-AST.hlsl
    M clang/test/AST/HLSL/StructuredBuffer-AST.hlsl
    M clang/test/AST/ast-print-openacc-loop-construct.cpp
    A clang/test/AST/new-unknown-type.cpp
    A clang/test/AST/solaris-tm.cpp
    M clang/test/Analysis/asm.cpp
    A clang/test/Analysis/builtin_overflow.c
    A clang/test/Analysis/builtin_overflow_notes.c
    M clang/test/Analysis/casts.c
    A clang/test/Analysis/divzero-tainted-div-difference.c
    M clang/test/Analysis/out-of-bounds-diagnostics.c
    M clang/test/Analysis/pointer-sub-notes.c
    M clang/test/Analysis/pointer-sub.c
    M clang/test/Analysis/ptr-arith.c
    M clang/test/Analysis/range_casts.c
    M clang/test/Analysis/taint-diagnostic-visitor.c
    M clang/test/Analysis/taint-generic.c
    M clang/test/Analysis/taint-tester.c
    A clang/test/CIR/hello.c
    A clang/test/CIR/lit.local.cfg
    M clang/test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p1.cpp
    M clang/test/CXX/dcl.decl/dcl.meaning/dcl.fct/p8.cpp
    M clang/test/CXX/dcl/dcl.decl/p3.cpp
    M clang/test/CXX/dcl/dcl.fct/p17.cpp
    M clang/test/CXX/drs/cwg1xx.cpp
    M clang/test/CXX/drs/cwg22xx.cpp
    M clang/test/CXX/drs/cwg27xx.cpp
    M clang/test/CXX/drs/cwg29xx.cpp
    M clang/test/CXX/drs/cwg3xx.cpp
    M clang/test/CXX/expr/expr.prim/expr.prim.req/requires-expr.cpp
    M clang/test/CXX/special/class.inhctor/p8.cpp
    M clang/test/CXX/temp/temp.constr/temp.constr.decl/func-template-decl.cpp
    M clang/test/CXX/temp/temp.res/temp.local/p8.cpp
    M clang/test/CXX/temp/temp.spec/temp.expl.spec/p12.cpp
    M clang/test/CXX/temp/temp.spec/temp.expl.spec/p14-23.cpp
    M clang/test/CXX/temp/temp.spec/temp.expl.spec/p18.cpp
    M clang/test/CodeGen/2008-08-07-AlignPadding1.c
    M clang/test/CodeGen/PowerPC/ppc-xmmintrin.c
    M clang/test/CodeGen/RISCV/riscv-atomics.c
    A clang/test/CodeGen/RISCV/riscv-xcvalu-c-api.c
    A clang/test/CodeGen/RISCV/riscv-xcvalu.c
    A clang/test/CodeGen/RISCV/rvv-intrinsics-handcrafted/rvv-tuple-utils.c
    M clang/test/CodeGen/X86/adc-builtins.c
    M clang/test/CodeGen/X86/adx-builtins.c
    M clang/test/CodeGen/X86/avx-builtins-constrained-cmp.c
    M clang/test/CodeGen/X86/avx-builtins.c
    M clang/test/CodeGen/X86/avx2-builtins.c
    M clang/test/CodeGen/X86/avx512f-builtins.c
    M clang/test/CodeGen/X86/bmi-builtins.c
    M clang/test/CodeGen/X86/bmi2-builtins.c
    M clang/test/CodeGen/X86/cx-complex-range.c
    M clang/test/CodeGen/X86/f16c-builtins-constrained.c
    M clang/test/CodeGen/X86/f16c-builtins.c
    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
    M clang/test/CodeGen/X86/lzcnt-builtins.c
    M clang/test/CodeGen/X86/mmx-builtins.c
    A clang/test/CodeGen/X86/pr51324.c
    A clang/test/CodeGen/X86/pr60006.c
    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/sse41-builtins.c
    M clang/test/CodeGen/X86/sse42-builtins.c
    M clang/test/CodeGen/X86/sse4a-builtins.c
    M clang/test/CodeGen/X86/ssse3-builtins.c
    M clang/test/CodeGen/X86/tbm-builtins.c
    M clang/test/CodeGen/X86/x86-intrinsics-imm.c
    M clang/test/CodeGen/aarch64-fmv-dependencies.c
    M clang/test/CodeGen/aarch64-mixed-target-attributes.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_ldr_str_zt.c
    A clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_zt.c
    A clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_write_lane_zt.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_zero_zt.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_cvt-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_cvtnt.c
    M clang/test/CodeGen/align-loops.c
    M clang/test/CodeGen/arm-acle-coproc.c
    M clang/test/CodeGen/atomics-sema-alignment.c
    A clang/test/CodeGen/attr-counted-by-pr110385.c
    M clang/test/CodeGen/attr-counted-by.c
    M clang/test/CodeGen/attr-target-clones-aarch64.c
    A clang/test/CodeGen/attr-target-version-riscv-invalid.c
    A clang/test/CodeGen/attr-target-version-riscv.c
    M clang/test/CodeGen/attr-target-version.c
    M clang/test/CodeGen/builtins-elementwise-math.c
    M clang/test/CodeGen/builtins-reduction-math.c
    M clang/test/CodeGen/cx-complex-range.c
    M clang/test/CodeGen/nofpclass.c
    M clang/test/CodeGen/nvptx_attributes.c
    M clang/test/CodeGen/rtsan_attribute_inserted.c
    M clang/test/CodeGen/rtsan_no_attribute_sanitizer_disabled.c
    M clang/test/CodeGen/stack-protector-guard.c
    M clang/test/CodeGen/strictfp-elementwise-bulitins.cpp
    M clang/test/CodeGen/target-data.c
    M clang/test/CodeGen/tbaa-pointers.c
    M clang/test/CodeGen/tbaa-reference.cpp
    M clang/test/CodeGenCUDA/address-spaces.cu
    R clang/test/CodeGenCUDA/amdgpu-func-attrs.cu
    M clang/test/CodeGenCUDA/amdgpu-visibility.cu
    M clang/test/CodeGenCUDA/anon-ns.cu
    M clang/test/CodeGenCUDA/device-var-init.cu
    M clang/test/CodeGenCUDA/device-var-linkage.cu
    M clang/test/CodeGenCUDA/filter-decl.cu
    M clang/test/CodeGenCUDA/static-device-var-no-rdc.cu
    M clang/test/CodeGenCUDA/static-device-var-rdc.cu
    M clang/test/CodeGenCUDA/template-class-static-member.cu
    M clang/test/CodeGenCXX/attr-target-clones-aarch64.cpp
    A clang/test/CodeGenCXX/attr-target-version-riscv.cpp
    M clang/test/CodeGenCXX/attr-target-version.cpp
    M clang/test/CodeGenCXX/debug-info-alias.cpp
    M clang/test/CodeGenCXX/dynamic-cast-address-space.cpp
    M clang/test/CodeGenCXX/fmv-namespace.cpp
    M clang/test/CodeGenCXX/mangle-concept.cpp
    M clang/test/CodeGenCXX/mangle-subst.cpp
    M clang/test/CodeGenHIP/hipspv-addr-spaces.cpp
    A clang/test/CodeGenHLSL/ArrayAssignable.hlsl
    M clang/test/CodeGenHLSL/buffer-array-operator.hlsl
    A clang/test/CodeGenHLSL/builtins/asint.hlsl
    A clang/test/CodeGenHLSL/builtins/atan2.hlsl
    A clang/test/CodeGenHLSL/builtins/cross.hlsl
    A clang/test/CodeGenHLSL/builtins/fmod.hlsl
    A clang/test/CodeGenHLSL/builtins/radians.hlsl
    M clang/test/CodeGenHLSL/builtins/wave_get_lane_index_do_while.hlsl
    M clang/test/CodeGenHLSL/entry.hlsl
    M clang/test/CodeGenHLSL/implicit-norecurse-attrib.hlsl
    M clang/test/CodeGenHLSL/semantics/DispatchThreadID.hlsl
    A clang/test/Driver/Inputs/multilib/empty.yaml
    M clang/test/Driver/aarch64-multilib-rcpc3.c
    A clang/test/Driver/aarch64-v96a.c
    M clang/test/Driver/amdgpu-openmp-toolchain.c
    M clang/test/Driver/arm-cortex-cpus-1.c
    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/cl-options.c
    M clang/test/Driver/clang_f_opts.c
    A clang/test/Driver/cuda-short-ptr.cu
    M clang/test/Driver/dxc_E.hlsl
    M clang/test/Driver/lto.c
    M clang/test/Driver/print-multi-selection-flags.c
    M clang/test/Driver/stack-protector-guard.c
    M clang/test/Driver/thinlto.c
    M clang/test/Driver/thinlto.cu
    A clang/test/Driver/zos-pragma-pack.c
    M clang/test/ExtractAPI/typedef_anonymous_record.c
    M clang/test/FixIt/member-mismatch.cpp
    M clang/test/Frontend/amdgcn-machine-analysis-remarks.cl
    M clang/test/Frontend/fixed_point_comparisons.c
    M clang/test/Frontend/fixed_point_conversions_const.c
    M clang/test/Frontend/fixed_point_crash.c
    M clang/test/Frontend/fixed_point_div_const.c
    M clang/test/Frontend/fixed_point_errors.c
    A clang/test/Frontend/highlight-text.c
    M clang/test/Headers/Inputs/include/setjmp.h
    M clang/test/Misc/constexpr-subobj-init-source-ranges.cpp
    M clang/test/Misc/warning-wall.c
    M clang/test/Modules/embed-files-compressed.cpp
    A clang/test/Modules/gh110401.cppm
    A clang/test/Modules/lambda-definitions.cppm
    M clang/test/OpenMP/amdgcn-attributes.cpp
    M clang/test/OpenMP/declare_variant_device_isa_codegen_1.c
    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/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
    M clang/test/Options/enable_16bit_types_validation_spirv.hlsl
    M clang/test/Parser/colon-colon-parentheses.cpp
    M clang/test/Parser/cxx-ambig-paren-expr-asan.cpp
    M clang/test/Parser/cxx-class.cpp
    M clang/test/Parser/cxx2c-pack-indexing.cpp
    M clang/test/ParserHLSL/hlsl_resource_handle_attrs.hlsl
    M clang/test/ParserOpenACC/parse-clauses.c
    M clang/test/ParserOpenACC/parse-clauses.cpp
    M clang/test/Preprocessor/aarch64-target-features.c
    M clang/test/Preprocessor/arm-target-features.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_imm.cpp
    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-sve-vector-pow-ops.c
    M clang/test/Sema/aarch64-sve-vector-trig-ops.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/asm.c
    M clang/test/Sema/attr-availability.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
    M clang/test/Sema/attr-target-clones-aarch64.c
    M clang/test/Sema/builtins-elementwise-math.c
    M clang/test/Sema/builtins-reduction-math.c
    A clang/test/Sema/caret-diags-register-variable.cpp
    M clang/test/Sema/riscv-rvv-vector-trig-ops.c
    M clang/test/Sema/riscv-sve-vector-pow-ops.c
    M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
    R clang/test/SemaCXX/PR84020.cpp
    M clang/test/SemaCXX/attr-target-mv.cpp
    A clang/test/SemaCXX/attr-target-version-riscv.cpp
    M clang/test/SemaCXX/attr-target-version.cpp
    M clang/test/SemaCXX/builtins-elementwise-math.cpp
    M clang/test/SemaCXX/enable_if.cpp
    M clang/test/SemaCXX/fold_lambda_with_variadics.cpp
    M clang/test/SemaCXX/function-redecl.cpp
    M clang/test/SemaCXX/lambda-unevaluated.cpp
    M clang/test/SemaCXX/nested-name-spec.cpp
    M clang/test/SemaCXX/out-of-line-def-mismatch.cpp
    A clang/test/SemaCXX/pragma-pack-packed-2.cpp
    M clang/test/SemaCXX/typo-correction.cpp
    M clang/test/SemaCXX/warn-assignment-condition.cpp
    A clang/test/SemaHLSL/ArrayAssignable_errors.hlsl
    A clang/test/SemaHLSL/BuiltIns/asint-errors.hlsl
    A clang/test/SemaHLSL/BuiltIns/cross-errors.hlsl
    M clang/test/SemaHLSL/BuiltIns/half-float-only-errors.hlsl
    A clang/test/SemaHLSL/BuiltIns/half-float-only-errors2.hlsl
    R clang/test/SemaHLSL/BuiltIns/pow-errors.hlsl
    A clang/test/SemaHLSL/BuiltIns/radians-errors.hlsl
    M clang/test/SemaHLSL/Types/Traits/IsIntangibleType.hlsl
    A clang/test/SemaObjCXX/attr-nonblocking-constraints.mm
    M clang/test/SemaOpenACC/compute-construct-device_type-clause.c
    M clang/test/SemaOpenACC/loop-construct-auto_seq_independent-clauses.c
    A clang/test/SemaOpenACC/loop-construct-collapse-ast.cpp
    A clang/test/SemaOpenACC/loop-construct-collapse-clause.cpp
    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/test/SemaTemplate/concepts-lambda.cpp
    M clang/test/SemaTemplate/concepts-out-of-line-def.cpp
    M clang/test/SemaTemplate/instantiate-requires-expr.cpp
    M clang/test/SemaTemplate/ms-function-specialization-class-scope.cpp
    M clang/test/SemaTemplate/recovery-crash.cpp
    M clang/test/SemaTemplate/temp_arg_nontype_cxx1z.cpp
    M clang/tools/clang-scan-deps/ClangScanDeps.cpp
    M clang/tools/libclang/CIndex.cpp
    M clang/tools/libclang/CXCursor.cpp
    M clang/tools/libclang/CXIndexDataConsumer.cpp
    M clang/tools/scan-build-py/tests/unit/test_report.py
    M clang/unittests/AST/ByteCode/Descriptor.cpp
    M clang/unittests/ASTMatchers/ASTMatchersTest.h
    M clang/unittests/ASTMatchers/CMakeLists.txt
    M clang/unittests/Analysis/FlowSensitive/UncheckedOptionalAccessModelTest.cpp
    M clang/unittests/Driver/MultilibTest.cpp
    M clang/unittests/Format/ConfigParseTest.cpp
    M clang/unittests/Format/FormatTest.cpp
    M clang/unittests/Format/FormatTestProto.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp
    M clang/unittests/Interpreter/CMakeLists.txt
    M clang/unittests/Support/TimeProfilerTest.cpp
    M clang/utils/TableGen/ASTTableGen.h
    M clang/utils/TableGen/ClangAttrEmitter.cpp
    M clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
    M clang/utils/TableGen/ClangOpenCLBuiltinEmitter.cpp
    M clang/utils/TableGen/ClangOptionDocEmitter.cpp
    M clang/utils/TableGen/ClangSACheckersEmitter.cpp
    M clang/utils/TableGen/MveEmitter.cpp
    M clang/utils/TableGen/NeonEmitter.cpp
    M clang/utils/TableGen/SveEmitter.cpp
    M clang/utils/TableGen/TableGen.cpp
    R clang/utils/generate_ast_matcher_doc_tests.py
    M clang/www/cxx_dr_status.html
    M compiler-rt/cmake/Modules/CompilerRTCompile.cmake
    A compiler-rt/cmake/caches/hexagon-linux-builtins.cmake
    A compiler-rt/cmake/caches/hexagon-linux-clangrt.cmake
    M compiler-rt/include/sanitizer/ubsan_interface.h
    M compiler-rt/lib/asan/asan_win_common_runtime_thunk.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 compiler-rt/lib/builtins/cpu_model/x86.c
    M compiler-rt/lib/lsan/lsan_common.cpp
    M compiler-rt/lib/lsan/lsan_flags.inc
    M compiler-rt/lib/orc/elfnix_platform.cpp
    M compiler-rt/lib/orc/elfnix_platform.h
    M compiler-rt/lib/orc/macho_platform.cpp
    A compiler-rt/lib/orc/record_section_tracker.h
    M compiler-rt/lib/profile/InstrProfiling.h
    M compiler-rt/lib/profile/InstrProfilingFile.c
    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/sanitizer_common_interceptors.inc
    M compiler-rt/lib/sanitizer_common/sanitizer_common_syscalls.inc
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.h
    M compiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cpp
    M compiler-rt/lib/scudo/standalone/combined.h
    M compiler-rt/lib/scudo/standalone/memtag.h
    M compiler-rt/lib/scudo/standalone/primary64.h
    M compiler-rt/lib/scudo/standalone/tests/memtag_test.cpp
    M compiler-rt/test/asan/TestCases/Linux/ptrace.cpp
    M compiler-rt/test/asan/TestCases/initialization-bug-no-global.cpp
    M compiler-rt/test/profile/ContinuousSyncMode/runtime-counter-relocation.c
    M compiler-rt/test/profile/ContinuousSyncMode/set-file-object.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
    M 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 flang/docs/Extensions.md
    M flang/docs/Intrinsics.md
    M flang/include/flang/Common/Fortran-features.h
    M flang/include/flang/Common/format.h
    M flang/include/flang/Evaluate/target.h
    M flang/include/flang/Frontend/PreprocessorOptions.h
    M flang/include/flang/Lower/LoweringOptions.def
    M flang/include/flang/Optimizer/Builder/Complex.h
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/include/flang/Optimizer/Builder/Runtime/Intrinsics.h
    M flang/include/flang/Optimizer/Builder/Runtime/RTBuilder.h
    M flang/include/flang/Optimizer/CodeGen/CodeGen.h
    M flang/include/flang/Optimizer/CodeGen/CodeGenOpenMP.h
    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/include/flang/Optimizer/Support/Utils.h
    M flang/include/flang/Optimizer/Transforms/CufOpConversion.h
    M flang/include/flang/Parser/dump-parse-tree.h
    M flang/include/flang/Parser/message.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/include/flang/Parser/parsing.h
    M flang/include/flang/Runtime/extensions.h
    M flang/include/flang/Semantics/expression.h
    M flang/include/flang/Semantics/semantics.h
    M flang/include/flang/Semantics/symbol.h
    M flang/include/flang/Tools/TargetSetup.h
    M flang/lib/Common/Fortran-features.cpp
    M flang/lib/Evaluate/check-expression.cpp
    M flang/lib/Evaluate/common.cpp
    M flang/lib/Evaluate/fold-character.cpp
    M flang/lib/Evaluate/fold-complex.cpp
    M flang/lib/Evaluate/fold-implementation.h
    M flang/lib/Evaluate/fold-integer.cpp
    M flang/lib/Evaluate/fold-logical.cpp
    M flang/lib/Evaluate/fold-matmul.h
    M flang/lib/Evaluate/fold-real.cpp
    M flang/lib/Evaluate/fold-reduction.h
    M flang/lib/Evaluate/host.cpp
    M flang/lib/Evaluate/intrinsics.cpp
    M flang/lib/Evaluate/variable.cpp
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Frontend/FrontendAction.cpp
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/ConvertCall.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/DirectivesCommon.h
    M flang/lib/Lower/IO.cpp
    M flang/lib/Lower/OpenACC.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M flang/lib/Lower/OpenMP/Clauses.h
    M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
    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
    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/Builder/Runtime/Intrinsics.cpp
    M flang/lib/Optimizer/Builder/Runtime/Reduction.cpp
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/CodeGen/CodeGenOpenMP.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/Passes/CMakeLists.txt
    M flang/lib/Optimizer/Transforms/AbstractResult.cpp
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    M flang/lib/Optimizer/Transforms/CufOpConversion.cpp
    M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
    M flang/lib/Optimizer/Transforms/DebugTypeGenerator.h
    M flang/lib/Optimizer/Transforms/LoopVersioning.cpp
    M flang/lib/Optimizer/Transforms/PolymorphicOpConversion.cpp
    M flang/lib/Parser/message.cpp
    M flang/lib/Parser/openmp-parsers.cpp
    M flang/lib/Parser/parsing.cpp
    M flang/lib/Parser/preprocessor.cpp
    M flang/lib/Parser/prescan.cpp
    M flang/lib/Parser/prescan.h
    M flang/lib/Parser/program-parsers.cpp
    M flang/lib/Parser/stmt-parser.h
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/check-acc-structure.cpp
    M flang/lib/Semantics/check-allocate.cpp
    M flang/lib/Semantics/check-call.cpp
    M flang/lib/Semantics/check-call.h
    M flang/lib/Semantics/check-case.cpp
    M flang/lib/Semantics/check-cuda.cpp
    M flang/lib/Semantics/check-data.cpp
    M flang/lib/Semantics/check-declarations.cpp
    M flang/lib/Semantics/check-directive-structure.h
    M flang/lib/Semantics/check-do-forall.cpp
    M flang/lib/Semantics/check-io.cpp
    M flang/lib/Semantics/check-namelist.cpp
    M flang/lib/Semantics/check-namelist.h
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/check-omp-structure.h
    M flang/lib/Semantics/check-return.cpp
    M flang/lib/Semantics/compute-offsets.cpp
    M flang/lib/Semantics/data-to-inits.cpp
    M flang/lib/Semantics/definable.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/mod-file.cpp
    M flang/lib/Semantics/pointer-assignment.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/lib/Semantics/resolve-labels.cpp
    M flang/lib/Semantics/resolve-names-utils.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/semantics.cpp
    M flang/lib/Semantics/tools.cpp
    M flang/runtime/Float128Math/CMakeLists.txt
    M flang/runtime/Float128Math/math-entries.h
    A flang/runtime/Float128Math/nearbyint.cpp
    M flang/runtime/extensions.cpp
    A flang/test/Driver/B-opt.f90
    A flang/test/Driver/Inputs/B_opt_tree/dir1/i386-unknown-linux-ld
    A flang/test/Driver/Inputs/B_opt_tree/dir1/ld
    A flang/test/Driver/Inputs/B_opt_tree/dir2/ld
    A flang/test/Driver/Inputs/B_opt_tree/dir3/prefix-ld
    M flang/test/Driver/default-backend-pipelines.f90
    M flang/test/Evaluate/errors01.f90
    A flang/test/Fir/CUDA/cuda-alloc-free.fir
    M flang/test/Fir/CUDA/cuda-allocate.fir
    M flang/test/Fir/CUDA/cuda-data-transfer.fir
    M flang/test/Fir/array-copies-pointers.fir
    M flang/test/Fir/compare.fir
    M flang/test/Fir/constant.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/dispatch.f90
    M flang/test/Fir/fir-ops.fir
    M flang/test/Fir/fir-types.fir
    M flang/test/Fir/invalid-types.fir
    M flang/test/Fir/invalid.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/Integration/debug-allocatable-1.f90
    M flang/test/Integration/debug-assumed-shape-array.f90
    M flang/test/Integration/debug-assumed-size-array.f90
    A flang/test/Integration/debug-cyclic-derived-type-2.f90
    M flang/test/Integration/debug-cyclic-derived-type.f90
    M flang/test/Integration/debug-fixed-array-type-2.f90
    M flang/test/Integration/debug-local-var-2.f90
    M flang/test/Integration/debug-ptr-type.f90
    A flang/test/Integration/debug-variable-array-dim.f90
    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/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/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/convert-variable-assumed-rank.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/select-rank.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
    A flang/test/Lower/Intrinsics/free.f90
    A flang/test/Lower/Intrinsics/ieee_rint_int.f90
    M flang/test/Lower/Intrinsics/log.f90
    M flang/test/Lower/Intrinsics/log_complex16.f90
    A flang/test/Lower/Intrinsics/malloc.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/distribute-standalone-private.f90
    M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-multiple-variables.f90
    M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-simple.f90
    R flang/test/Lower/OpenMP/Todo/atomic-complex.f90
    A flang/test/Lower/OpenMP/Todo/lastprivate-conditional.f90
    M flang/test/Lower/OpenMP/Todo/omp-default-clause-inner-loop.f90
    M flang/test/Lower/OpenMP/common-block-map.f90
    M flang/test/Lower/OpenMP/copyprivate.f90
    M flang/test/Lower/OpenMP/default-clause-byref.f90
    M flang/test/Lower/OpenMP/default-clause.f90
    M flang/test/Lower/OpenMP/delayed-privatization-private-firstprivate.f90
    M flang/test/Lower/OpenMP/delayed-privatization-reduction-byref.f90
    M flang/test/Lower/OpenMP/delayed-privatization-reduction.f90
    M flang/test/Lower/OpenMP/derived-type-map.f90
    M flang/test/Lower/OpenMP/distribute-parallel-do-simd.f90
    M flang/test/Lower/OpenMP/distribute-parallel-do.f90
    M flang/test/Lower/OpenMP/firstprivate-commonblock.f90
    M flang/test/Lower/OpenMP/hlfir-seqloop-parallel.f90
    M flang/test/Lower/OpenMP/implicit-dsa.f90
    M flang/test/Lower/OpenMP/lastprivate-allocatable.f90
    M flang/test/Lower/OpenMP/loop-compound.f90
    M flang/test/Lower/OpenMP/map-component-ref.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-add-byref.f90
    M flang/test/Lower/OpenMP/parallel-reduction-add.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/parallel-wsloop.f90
    M flang/test/Lower/OpenMP/private-commonblock.f90
    M flang/test/Lower/OpenMP/sections-array-reduction.f90
    M flang/test/Lower/OpenMP/sections-reduction.f90
    M flang/test/Lower/OpenMP/simd.f90
    M flang/test/Lower/OpenMP/statement-function.f90
    M flang/test/Lower/OpenMP/target.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/OpenMP/unstructured.f90
    M flang/test/Lower/OpenMP/use-device-ptr-to-use-device-addr.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-add-byref.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-add.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-logical-and-byref.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-logical-and.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-logical-eqv-byref.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-logical-eqv.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-logical-neqv-byref.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-logical-neqv.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-logical-or-byref.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-logical-or.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-mul-byref.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-mul.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-multi.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-multiple-clauses.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
    A flang/test/Lower/nsw.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
    A flang/test/Parser/OpenMP/lastprivate-clause.f90
    M flang/test/Parser/include.f
    A flang/test/Parser/recovery06.f90
    M flang/test/Semantics/OpenMP/do05-positivecase.f90
    A flang/test/Semantics/OpenMP/name-conflict.f90
    A flang/test/Semantics/OpenMP/omp-atomic-assignment-stmt-read.f90
    A flang/test/Semantics/OpenMP/private03.f90
    A flang/test/Semantics/OpenMP/reduction-namelist.f90
    A flang/test/Semantics/OpenMP/shared-pointer.f90
    A flang/test/Semantics/call42.f90
    A flang/test/Semantics/free.f90
    M flang/test/Semantics/io07.f90
    M flang/test/Semantics/io14.f90
    A flang/test/Semantics/named-construct-declaration-conflict.f90
    M flang/test/Semantics/resolve123.f90
    M flang/test/Semantics/separate-mp02.f90
    A flang/test/Semantics/windows.f90
    M flang/test/Transforms/debug-107988.fir
    R flang/test/Transforms/debug-90683.fir
    A flang/test/Transforms/debug-assumed-shape-array-2.fir
    M flang/test/Transforms/debug-assumed-shape-array.fir
    M flang/test/Transforms/debug-assumed-size-array.fir
    M flang/test/Transforms/debug-complex-1.fir
    M flang/test/Transforms/debug-derived-type-1.fir
    M flang/test/Transforms/debug-fixed-array-type.fir
    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
    A flang/test/Transforms/debug-variable-array-dim.fir
    M flang/test/Transforms/debug-variable-char-len.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/tools/bbc/bbc.cpp
    M flang/unittests/Optimizer/Builder/ComplexTest.cpp
    M flang/unittests/Optimizer/Builder/FIRBuilderTest.cpp
    M flang/unittests/Optimizer/Builder/Runtime/CommandTest.cpp
    A flang/unittests/Optimizer/Builder/Runtime/IntrinsicsTest.cpp
    M flang/unittests/Optimizer/Builder/Runtime/RuntimeCallTestBase.h
    M flang/unittests/Optimizer/CMakeLists.txt
    M flang/unittests/Optimizer/FIRTypesTest.cpp
    M flang/unittests/Optimizer/RTBuilder.cpp
    M libc/cmake/modules/LLVMLibCTestRules.cmake
    M libc/config/config.json
    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/docs/configure.rst
    M libc/docs/gpu/using.rst
    M libc/docs/math/index.rst
    M libc/hdr/CMakeLists.txt
    M libc/hdr/stdio_macros.h
    A libc/hdr/stdio_overlay.h
    M libc/hdr/types/CMakeLists.txt
    M libc/hdr/types/FILE.h
    M libc/hdr/types/cookie_io_functions_t.h
    M libc/hdr/types/off_t.h
    M libc/include/CMakeLists.txt
    M libc/include/llvm-libc-macros/CMakeLists.txt
    M libc/include/llvm-libc-macros/linux/error-number-macros.h
    A libc/include/llvm-libc-macros/malloc-macros.h
    M libc/include/llvm-libc-macros/math-function-macros.h
    M libc/include/llvm-libc-macros/stdio-macros.h
    M libc/include/llvm-libc-types/wchar_t.h
    A libc/include/malloc.h.def
    M libc/newhdrgen/yaml/gpu/rpc.yaml
    A libc/newhdrgen/yaml/malloc.yaml
    M libc/newhdrgen/yaml/sys/socket.yaml
    M libc/spec/gnu_ext.td
    M libc/spec/gpu_ext.td
    M libc/spec/stdc.td
    M libc/src/__support/FPUtil/BasicOperations.h
    M libc/src/__support/FPUtil/dyadic_float.h
    M libc/src/__support/File/linux/CMakeLists.txt
    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/__support/float_to_string.h
    M libc/src/__support/sign.h
    M libc/src/gpu/rpc_host_call.cpp
    M libc/src/gpu/rpc_host_call.h
    M libc/src/math/CMakeLists.txt
    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
    A libc/src/math/generic/iscanonical.cpp
    A libc/src/math/generic/iscanonicalf.cpp
    A libc/src/math/generic/iscanonicalf128.cpp
    A libc/src/math/generic/iscanonicalf16.cpp
    A libc/src/math/generic/iscanonicall.cpp
    A libc/src/math/generic/issignaling.cpp
    A libc/src/math/generic/issignalingf.cpp
    A libc/src/math/generic/issignalingf128.cpp
    A libc/src/math/generic/issignalingf16.cpp
    A libc/src/math/generic/issignalingl.cpp
    M libc/src/math/generic/pow.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
    A libc/src/math/iscanonical.h
    A libc/src/math/iscanonicalf.h
    A libc/src/math/iscanonicalf128.h
    A libc/src/math/iscanonicalf16.h
    A libc/src/math/iscanonicall.h
    A libc/src/math/issignaling.h
    A libc/src/math/issignalingf.h
    A libc/src/math/issignalingf128.h
    A libc/src/math/issignalingf16.h
    A libc/src/math/issignalingl.h
    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/stdio/asprintf.h
    M libc/src/stdio/gpu/CMakeLists.txt
    M libc/src/stdio/gpu/file.h
    M libc/src/stdio/gpu/fprintf.cpp
    M libc/src/stdio/gpu/getchar.cpp
    M libc/src/stdio/gpu/printf.cpp
    M libc/src/stdio/gpu/putchar.cpp
    M libc/src/stdio/gpu/puts.cpp
    M libc/src/stdio/gpu/vfprintf.cpp
    M libc/src/stdio/gpu/vfprintf_utils.h
    M libc/src/stdio/gpu/vprintf.cpp
    M libc/src/stdio/linux/CMakeLists.txt
    M libc/src/stdio/printf_core/CMakeLists.txt
    M libc/src/stdio/vsscanf.cpp
    M libc/src/stdlib/CMakeLists.txt
    M libc/src/stdlib/qsort_data.h
    M libc/src/stdlib/quick_sort.h
    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
    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/recv.h
    M libc/src/sys/socket/recvfrom.h
    M libc/src/sys/socket/recvmsg.h
    M libc/src/threads/CMakeLists.txt
    M libc/src/threads/thrd_create.cpp
    M libc/test/UnitTest/FPMatcher.h
    M libc/test/UnitTest/PrintfMatcher.h
    M libc/test/UnitTest/ScanfMatcher.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/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/FPUtil/dyadic_float_test.cpp
    M libc/test/src/__support/FPUtil/fpbits_test.cpp
    M libc/test/src/__support/File/CMakeLists.txt
    M libc/test/src/__support/File/file_test.cpp
    M libc/test/src/__support/File/platform_file_test.cpp
    M libc/test/src/fcntl/fcntl_test.cpp
    M libc/test/src/math/FDimTest.h
    M libc/test/src/math/HypotTest.h
    M libc/test/src/math/ILogbTest.h
    M libc/test/src/math/LdExpTest.h
    M libc/test/src/math/NextAfterTest.h
    M libc/test/src/math/RIntTest.h
    M libc/test/src/math/RemQuoTest.h
    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/AddTest.h
    M libc/test/src/math/smoke/CMakeLists.txt
    M libc/test/src/math/smoke/DivTest.h
    M libc/test/src/math/smoke/FDimTest.h
    M libc/test/src/math/smoke/GetPayloadTest.h
    M libc/test/src/math/smoke/ILogbTest.h
    A libc/test/src/math/smoke/IsCanonicalTest.h
    A libc/test/src/math/smoke/IsSignalingTest.h
    M libc/test/src/math/smoke/LdExpTest.h
    M libc/test/src/math/smoke/MulTest.h
    M libc/test/src/math/smoke/NearbyIntTest.h
    M libc/test/src/math/smoke/NextAfterTest.h
    M libc/test/src/math/smoke/NextTowardTest.h
    M libc/test/src/math/smoke/RIntTest.h
    M libc/test/src/math/smoke/RemQuoTest.h
    M libc/test/src/math/smoke/RoundToIntegerTest.h
    M libc/test/src/math/smoke/SetPayloadSigTest.h
    M libc/test/src/math/smoke/SetPayloadTest.h
    M libc/test/src/math/smoke/SubTest.h
    M libc/test/src/math/smoke/TotalOrderMagTest.h
    M libc/test/src/math/smoke/TotalOrderTest.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
    A libc/test/src/math/smoke/iscanonical_test.cpp
    A libc/test/src/math/smoke/iscanonicalf128_test.cpp
    A libc/test/src/math/smoke/iscanonicalf16_test.cpp
    A libc/test/src/math/smoke/iscanonicalf_test.cpp
    A libc/test/src/math/smoke/iscanonicall_test.cpp
    A libc/test/src/math/smoke/issignaling_test.cpp
    A libc/test/src/math/smoke/issignalingf128_test.cpp
    A libc/test/src/math/smoke/issignalingf16_test.cpp
    A libc/test/src/math/smoke/issignalingf_test.cpp
    A libc/test/src/math/smoke/issignalingl_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/pow_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/stdio/CMakeLists.txt
    M libc/test/src/stdio/fgetc_test.cpp
    M libc/test/src/stdio/fgetc_unlocked_test.cpp
    M libc/test/src/stdio/fgets_test.cpp
    M libc/test/src/stdio/fileop_test.cpp
    M libc/test/src/stdio/fopencookie_test.cpp
    M libc/test/src/stdio/fprintf_test.cpp
    M libc/test/src/stdio/fscanf_test.cpp
    M libc/test/src/stdio/ftell_test.cpp
    M libc/test/src/stdio/putc_test.cpp
    M libc/test/src/stdio/setbuf_test.cpp
    M libc/test/src/stdio/setvbuf_test.cpp
    M libc/test/src/stdio/sprintf_test.cpp
    M libc/test/src/stdio/sscanf_test.cpp
    M libc/test/src/stdio/ungetc_test.cpp
    M libc/test/src/stdio/unlocked_fileop_test.cpp
    M libc/test/src/stdio/vfprintf_test.cpp
    M libc/test/src/stdio/vfscanf_test.cpp
    M libc/test/src/stdlib/CMakeLists.txt
    M libc/test/src/stdlib/StrfromTest.h
    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
    M libc/test/src/unistd/getopt_test.cpp
    M libc/test/src/wchar/wctob_test.cpp
    M libc/utils/HdrGen/Main.cpp
    M libc/utils/HdrGen/PublicAPICommand.cpp
    M libc/utils/LibcTableGenUtil/APIIndexer.cpp
    M libc/utils/gpu/loader/amdgpu/amdhsa-loader.cpp
    M libc/utils/gpu/loader/nvptx/nvptx-loader.cpp
    M libc/utils/gpu/server/rpc_server.cpp
    M libclc/CMakeLists.txt
    R libclc/README.TXT
    A libclc/README.md
    M libclc/cmake/modules/AddLibclc.cmake
    M libcxx/cmake/Modules/HandleLibCXXABI.cmake
    A libcxx/cmake/caches/hexagon-linux-runtimes.cmake
    M libcxx/docs/FeatureTestMacroTable.rst
    M libcxx/docs/ReleaseNotes/20.rst
    M libcxx/docs/Status/Cxx20Issues.csv
    M libcxx/docs/Status/Cxx23Issues.csv
    M libcxx/docs/Status/Cxx23Papers.csv
    M libcxx/docs/UserDocumentation.rst
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__compare/compare_partial_order_fallback.h
    M libcxx/include/__compare/compare_strong_order_fallback.h
    M libcxx/include/__compare/compare_weak_order_fallback.h
    M libcxx/include/__format/format_arg_store.h
    M libcxx/include/__format/formatter_string.h
    M libcxx/include/__iterator/next.h
    M libcxx/include/__iterator/prev.h
    M libcxx/include/__memory/array_cookie.h
    M libcxx/include/__memory/compressed_pair.h
    M libcxx/include/__memory/construct_at.h
    M libcxx/include/__memory/shared_ptr.h
    M libcxx/include/__memory/uninitialized_algorithms.h
    M libcxx/include/__memory/unique_ptr.h
    R libcxx/include/__memory/voidify.h
    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
    M libcxx/include/__system_error/errc.h
    A libcxx/include/__type_traits/is_implicit_lifetime.h
    M libcxx/include/algorithm
    M libcxx/include/ios
    M libcxx/include/module.modulemap
    M libcxx/include/optional
    M libcxx/include/string
    M libcxx/include/type_traits
    M libcxx/include/version
    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/modules/std/type_traits.inc
    M libcxx/src/CMakeLists.txt
    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
    R libcxx/test/configs/apple-libc++-backdeployment.cfg.in
    A libcxx/test/configs/apple-libc++-system.cfg.in
    M libcxx/test/configs/armv7m-picolibc-libc++.cfg.in
    M libcxx/test/configs/llvm-libc++-shared-mingw.cfg.in
    M libcxx/test/configs/llvm-libc++-static-mingw.cfg.in
    M libcxx/test/libcxx/diagnostics/iterator.nodiscard.verify.cpp
    M libcxx/test/libcxx/gdb/gdb_pretty_printer_test.sh.cpp
    M libcxx/test/libcxx/iterators/assert.next.pass.cpp
    M libcxx/test/libcxx/iterators/assert.prev.pass.cpp
    M libcxx/test/libcxx/utilities/memory/util.smartptr/util.smartptr.shared/libcxx.control_block_layout.pass.cpp
    R libcxx/test/std/atomics/atomics.lockfree/is_always_lock_free.cpp
    A libcxx/test/std/atomics/atomics.lockfree/is_always_lock_free.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/move.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.cons/move.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/move.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/move.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.cons/move.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/filebuf.members/open_pointer.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/filebuf.virtuals/setbuf.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/pointer.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/fstream.members/open_pointer.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/pointer.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/ofstream.members/open_pointer.pass.cpp
    M libcxx/test/std/input.output/string.streams/stringstream/stringstream.members/gcount.pass.cpp
    M libcxx/test/std/language.support/cmp/cmp.alg/compare_partial_order_fallback.pass.cpp
    M libcxx/test/std/language.support/cmp/cmp.alg/compare_strong_order_fallback.pass.cpp
    M libcxx/test/std/language.support/cmp/cmp.alg/compare_weak_order_fallback.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/strings/basic.string/string.capacity/deallocate_size.pass.cpp
    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/test/std/utilities/any/any.class/any.cons/default.pass.cpp
    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
    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/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
    M libcxx/test/support/test_macros.h
    M libcxx/utils/ci/buildkite-pipeline.yml
    M libcxx/utils/ci/run-buildbot
    M libcxx/utils/gdb/libcxx/printers.py
    M libcxx/utils/generate_feature_test_macro_components.py
    M libcxx/utils/libcxx/test/features.py
    M libcxx/utils/libcxx/test/params.py
    M libcxxabi/include/__cxxabi_config.h
    M libcxxabi/include/cxxabi.h
    M libcxxabi/lib/cxxabiv1.exp
    M libcxxabi/lib/itanium-base.exp
    A libcxxabi/lib/symbols-not-reexported.exp
    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 libcxxabi/test/CMakeLists.txt
    R libcxxabi/test/configs/apple-libc++abi-backdeployment.cfg.in
    A libcxxabi/test/configs/apple-libc++abi-system.cfg.in
    M libcxxabi/test/configs/cmake-bridge.cfg.in
    M libcxxabi/test/configs/llvm-libc++abi-mingw.cfg.in
    M libcxxabi/test/test_demangle.pass.cpp
    M libunwind/CMakeLists.txt
    M libunwind/test/CMakeLists.txt
    R libunwind/test/configs/apple-libunwind-backdeployment.cfg.in
    A libunwind/test/configs/apple-libunwind-system.cfg.in
    M libunwind/test/configs/cmake-bridge.cfg.in
    R libunwind/test/configs/llvm-libunwind-mingw.cfg.in
    A libunwind/test/configs/llvm-libunwind-shared-mingw.cfg.in
    A libunwind/test/configs/llvm-libunwind-static-mingw.cfg.in
    M lld/COFF/DLL.cpp
    M lld/COFF/DLL.h
    M lld/COFF/Driver.cpp
    M lld/COFF/LTO.cpp
    M lld/COFF/SymbolTable.cpp
    M lld/COFF/SymbolTable.h
    M lld/COFF/Writer.cpp
    M lld/ELF/AArch64ErrataFix.cpp
    M lld/ELF/AArch64ErrataFix.h
    M lld/ELF/ARMErrataFix.cpp
    M lld/ELF/ARMErrataFix.h
    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/MipsArchTree.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/Driver.h
    M lld/ELF/DriverUtils.cpp
    M lld/ELF/EhFrame.cpp
    M lld/ELF/ICF.cpp
    M lld/ELF/ICF.h
    M lld/ELF/InputFiles.cpp
    M lld/ELF/InputFiles.h
    M lld/ELF/InputSection.cpp
    M lld/ELF/InputSection.h
    M lld/ELF/LTO.cpp
    M lld/ELF/LinkerScript.cpp
    M lld/ELF/LinkerScript.h
    M lld/ELF/MapFile.cpp
    M lld/ELF/MapFile.h
    M lld/ELF/MarkLive.cpp
    M lld/ELF/MarkLive.h
    M lld/ELF/OutputSections.cpp
    M lld/ELF/OutputSections.h
    M lld/ELF/Relocations.cpp
    M lld/ELF/Relocations.h
    M lld/ELF/ScriptParser.cpp
    M lld/ELF/SymbolTable.cpp
    M lld/ELF/SymbolTable.h
    M lld/ELF/Symbols.cpp
    M lld/ELF/Symbols.h
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h
    M lld/ELF/Target.cpp
    M lld/ELF/Target.h
    M lld/ELF/Thunks.cpp
    M lld/ELF/Thunks.h
    M lld/ELF/Writer.cpp
    M lld/ELF/Writer.h
    M lld/MachO/LTO.cpp
    M lld/MachO/SyntheticSections.cpp
    M lld/test/COFF/Inputs/loadconfig-arm64ec.s
    A lld/test/COFF/arm64ec-delayimport.test
    A lld/test/COFF/arm64ec-loadcfg.s
    M lld/test/COFF/thinlto-emit-imports.ll
    A lld/test/COFF/undefined_lazy.test
    A lld/test/ELF/aarch64-thunk-bti.s
    M lld/test/ELF/lto/basic-block-sections.ll
    M lld/test/ELF/lto/thinlto-cant-write-index.ll
    M lld/test/ELF/lto/thinlto-emit-imports.ll
    A lld/test/ELF/riscv-pcrel-hilo-error-sections.s
    M lld/test/ELF/riscv-pcrel-hilo-error.s
    M lld/test/ELF/x86-64-gotpc-no-relax-err.s
    M lld/test/ELF/x86-64-gotpc-relax-nopic.s
    M lld/test/ELF/x86-64-gotpc-relax.s
    A lld/test/MachO/icf-safe-thunks-dwarf.ll
    M lld/test/MachO/thinlto-emit-imports.ll
    M lld/test/wasm/data-segments.ll
    M lld/test/wasm/shared-weak-symbols.s
    M lld/test/wasm/tls-export.s
    M lld/test/wasm/tls-non-shared-memory.s
    M lld/test/wasm/tls-relocations.s
    M lld/wasm/Driver.cpp
    M lld/wasm/InputChunks.cpp
    M lld/wasm/InputChunks.h
    M lld/wasm/Symbols.cpp
    M lld/wasm/Symbols.h
    M lld/wasm/Writer.cpp
    M lldb/docs/man/lldb-server.rst
    M lldb/docs/resources/lldbdap.md
    M lldb/docs/resources/qemu-testing.rst
    M lldb/docs/resources/test.rst
    M lldb/docs/use/tutorial.rst
    M lldb/include/lldb/API/SBDebugger.h
    M lldb/include/lldb/API/SBDefines.h
    M lldb/include/lldb/Core/Debugger.h
    M lldb/include/lldb/Expression/DiagnosticManager.h
    M lldb/include/lldb/Interpreter/CommandObject.h
    M lldb/include/lldb/Interpreter/CommandReturnObject.h
    M lldb/include/lldb/Symbol/SymbolContext.h
    M lldb/include/lldb/Symbol/UnwindPlan.h
    M lldb/include/lldb/Utility/Status.h
    M lldb/packages/Python/lldbsuite/test/builders/builder.py
    M lldb/packages/Python/lldbsuite/test/make/libcxx-simulators-common/compressed_pair.h
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
    M lldb/scripts/generate-sbapi-dwarf-enum.py
    M lldb/source/API/SBCommandReturnObject.cpp
    M lldb/source/API/SBDebugger.cpp
    M lldb/source/API/SBThread.cpp
    M lldb/source/Breakpoint/BreakpointLocation.cpp
    M lldb/source/Commands/CommandObjectBreakpointCommand.cpp
    M lldb/source/Commands/CommandObjectDWIMPrint.cpp
    M lldb/source/Commands/CommandObjectExpression.cpp
    M lldb/source/Commands/CommandObjectMemoryTag.cpp
    M lldb/source/Commands/CommandObjectSession.cpp
    M lldb/source/Commands/CommandObjectTarget.cpp
    M lldb/source/Commands/CommandObjectThread.cpp
    A lldb/source/Commands/DiagnosticRendering.h
    M lldb/source/Core/CoreProperties.td
    M lldb/source/Core/Debugger.cpp
    M lldb/source/Expression/DiagnosticManager.cpp
    M lldb/source/Expression/ExpressionParser.cpp
    M lldb/source/Expression/IRExecutionUnit.cpp
    M lldb/source/Expression/UserExpression.cpp
    M lldb/source/Expression/UtilityFunction.cpp
    M lldb/source/Interpreter/CommandInterpreter.cpp
    M lldb/source/Interpreter/CommandReturnObject.cpp
    M lldb/source/Interpreter/InterpreterProperties.td
    M lldb/source/Plugins/ABI/RISCV/ABISysV_riscv.cpp
    M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangDiagnostic.h
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.h
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.cpp
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.h
    M lldb/source/Plugins/Platform/POSIX/PlatformPOSIX.cpp
    M lldb/source/Plugins/Platform/Windows/PlatformWindows.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerPlatform.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerPlatform.h
    M lldb/source/Plugins/SymbolFile/DWARF/CMakeLists.txt
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
    R lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugArangeSet.cpp
    R lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugArangeSet.h
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugAranges.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.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/Plugins/TraceExporter/ctf/CommandObjectThreadTraceExportCTF.h
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/source/Plugins/UnwindAssembly/x86/x86AssemblyInspectionEngine.cpp
    M lldb/source/Symbol/SymbolContext.cpp
    M lldb/source/Symbol/UnwindPlan.cpp
    M lldb/source/Target/RegisterContextUnwind.cpp
    M lldb/source/Target/Target.cpp
    M lldb/source/Utility/Status.cpp
    M lldb/test/API/commands/expression/diagnostics/TestExprDiagnostics.py
    M lldb/test/API/commands/expression/persistent_variables/TestPersistentVariables.py
    M lldb/test/API/commands/expression/static-initializers/TestStaticInitializers.py
    M lldb/test/API/commands/platform/launchgdbserver/TestPlatformLaunchGDBServer.py
    M lldb/test/API/commands/session/save/TestSessionSave.py
    M lldb/test/API/functionalities/archives/TestBSDArchives.py
    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
    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
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/unique_ptr/TestDataFormatterLibcxxUniquePtrSimulator.py
    M lldb/test/API/lang/c/shared_lib_stripped_symbols/TestSharedLibStrippedSymbols.py
    M lldb/test/API/lang/cpp/template-function/TestTemplateFunctions.py
    M lldb/test/API/lang/mixed/TestMixedLanguages.py
    M lldb/test/API/lang/objc/modules-compile-error/TestModulesCompileError.py
    M lldb/test/API/lit.cfg.py
    M lldb/test/API/lit.site.cfg.py.in
    M lldb/test/API/macosx/duplicate-archive-members/TestDuplicateMembers.py
    M lldb/test/API/tools/lldb-dap/completions/TestDAP_completions.py
    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/optimized/TestDAP_optimized.py
    M lldb/test/API/tools/lldb-dap/runInTerminal/TestDAP_runInTerminal.py
    M lldb/test/CMakeLists.txt
    M lldb/test/Shell/Expr/TestIRMemoryMap.test
    M lldb/test/Shell/Expr/TestObjCIDCast.test
    M lldb/test/Shell/Expr/TestObjCInCXXContext.test
    M lldb/test/Shell/Settings/TestEchoCommands.test
    A lldb/test/Shell/Settings/TestEchoCommandsQuiet.test
    A lldb/test/Shell/SymbolFile/DWARF/x86/DW_AT_declaration-unusual-layout.s
    M lldb/test/Shell/SymbolFile/DWARF/x86/DW_AT_declaration-with-children.s
    M lldb/test/Shell/SymbolFile/NativePDB/incomplete-tag-type.cpp
    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
    R lldb/test/Shell/lldb-server/TestGdbserverPort.test
    M lldb/tools/debugserver/source/DNB.cpp
    M lldb/tools/driver/Driver.cpp
    M lldb/tools/lldb-dap/DAP.cpp
    M lldb/tools/lldb-dap/DAP.h
    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
    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/Expression/DiagnosticManagerTest.cpp
    M lldb/unittests/Interpreter/CMakeLists.txt
    A lldb/unittests/Interpreter/TestCommandObjectExpression.cpp
    M lldb/unittests/Process/gdb-remote/CMakeLists.txt
    R lldb/unittests/Process/gdb-remote/PortMapTest.cpp
    M lldb/unittests/Symbol/TestTypeSystemClang.cpp
    M lldb/unittests/SymbolFile/DWARF/SymbolFileDWARFTests.cpp
    M lldb/unittests/UnwindAssembly/x86/Testx86AssemblyInspectionEngine.cpp
    M llvm/.gitignore
    M llvm/CMakeLists.txt
    R llvm/CODE_OWNERS.TXT
    A llvm/Maintainers.md
    M llvm/benchmarks/SandboxIRBench.cpp
    M llvm/cmake/modules/HandleLLVMOptions.cmake
    M llvm/docs/AMDGPUUsage.rst
    M llvm/docs/CMake.rst
    M llvm/docs/CommandGuide/lit.rst
    M llvm/docs/CommandGuide/llvm-dwarfdump.rst
    M llvm/docs/CommandGuide/llvm-objcopy.rst
    M llvm/docs/GettingInvolved.rst
    M llvm/docs/GettingStarted.rst
    M llvm/docs/GwpAsan.rst
    M llvm/docs/LangRef.rst
    M llvm/docs/NVPTXUsage.rst
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/docs/SPIRVUsage.rst
    M llvm/docs/TableGen/BackGuide.rst
    M llvm/docs/tutorial/MyFirstLanguageFrontend/LangImpl03.rst
    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/ADT/Hashing.h
    M llvm/include/llvm/ADT/SmallSet.h
    M llvm/include/llvm/Analysis/CmpInstAnalysis.h
    M llvm/include/llvm/Analysis/EHUtils.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/CGData/CodeGenData.h
    M llvm/include/llvm/CGData/CodeGenDataReader.h
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/include/llvm/CodeGen/FastISel.h
    M llvm/include/llvm/CodeGen/GlobalISel/GenericMachineInstrs.h
    M llvm/include/llvm/CodeGen/GlobalISel/IRTranslator.h
    M llvm/include/llvm/CodeGen/GlobalISel/LegacyLegalizerInfo.h
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
    M llvm/include/llvm/CodeGen/MIRYamlMapping.h
    M llvm/include/llvm/CodeGen/MachineFunction.h
    M llvm/include/llvm/CodeGen/MachineRegisterInfo.h
    M llvm/include/llvm/CodeGen/ReachingDefAnalysis.h
    M llvm/include/llvm/CodeGen/SelectionDAG.h
    M llvm/include/llvm/CodeGen/Spiller.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/CodeGen/ValueTypes.td
    M llvm/include/llvm/Config/abi-breaking.h.cmake
    M llvm/include/llvm/Config/config.h.cmake
    M llvm/include/llvm/DWARFLinker/Classic/DWARFLinkerDeclContext.h
    M llvm/include/llvm/DebugInfo/DWARF/DWARFDebugArangeSet.h
    M llvm/include/llvm/DebugInfo/DWARF/DWARFDie.h
    M llvm/include/llvm/DebugInfo/DWARF/DWARFTypePrinter.h
    M llvm/include/llvm/ExecutionEngine/Orc/ELFNixPlatform.h
    M llvm/include/llvm/ExecutionEngine/Orc/MachOPlatform.h
    A llvm/include/llvm/Frontend/Atomic/Atomic.h
    M llvm/include/llvm/Frontend/OpenMP/ClauseT.h
    M llvm/include/llvm/Frontend/OpenMP/OMP.td
    M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
    M llvm/include/llvm/IR/Argument.h
    M llvm/include/llvm/IR/Attributes.h
    M llvm/include/llvm/IR/Attributes.td
    M llvm/include/llvm/IR/ConstantFPRange.h
    M llvm/include/llvm/IR/Constants.h
    M llvm/include/llvm/IR/DerivedTypes.h
    M llvm/include/llvm/IR/FixedMetadataKinds.def
    M llvm/include/llvm/IR/Function.h
    M llvm/include/llvm/IR/GEPNoWrapFlags.h
    M llvm/include/llvm/IR/GlobalValue.h
    M llvm/include/llvm/IR/InstrTypes.h
    M llvm/include/llvm/IR/Instruction.h
    M llvm/include/llvm/IR/Instructions.h
    M llvm/include/llvm/IR/Intrinsics.h
    M llvm/include/llvm/IR/Intrinsics.td
    M llvm/include/llvm/IR/IntrinsicsAArch64.td
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/include/llvm/IR/IntrinsicsRISCVXCV.td
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/include/llvm/IR/Operator.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/Object/Archive.h
    M llvm/include/llvm/Passes/StandardInstrumentations.h
    M llvm/include/llvm/SandboxIR/Constant.h
    M llvm/include/llvm/SandboxIR/Context.h
    A llvm/include/llvm/SandboxIR/Function.h
    M llvm/include/llvm/SandboxIR/Instruction.h
    A llvm/include/llvm/SandboxIR/IntrinsicInst.h
    M llvm/include/llvm/SandboxIR/Pass.h
    M llvm/include/llvm/SandboxIR/PassManager.h
    R llvm/include/llvm/SandboxIR/SandboxIRValues.def
    M llvm/include/llvm/SandboxIR/Type.h
    M llvm/include/llvm/SandboxIR/User.h
    M llvm/include/llvm/SandboxIR/Utils.h
    M llvm/include/llvm/SandboxIR/Value.h
    A llvm/include/llvm/SandboxIR/Values.def
    M llvm/include/llvm/Support/Caching.h
    M llvm/include/llvm/Support/GenericDomTreeConstruction.h
    M llvm/include/llvm/Support/KnownBits.h
    M llvm/include/llvm/Support/Threading.h
    M llvm/include/llvm/Support/TimeProfiler.h
    M llvm/include/llvm/TableGen/DirectiveEmitter.h
    M llvm/include/llvm/TableGen/Error.h
    M llvm/include/llvm/TableGen/Main.h
    M llvm/include/llvm/TableGen/Record.h
    A llvm/include/llvm/TableGen/TGTimer.h
    M llvm/include/llvm/TableGen/TableGenBackend.h
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/include/llvm/TargetParser/AArch64CPUFeatures.inc
    M llvm/include/llvm/TargetParser/AArch64TargetParser.h
    M llvm/include/llvm/TargetParser/ARMTargetParser.def
    M llvm/include/llvm/TargetParser/Triple.h
    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/Attributor.h
    M llvm/include/llvm/Transforms/IPO/FunctionImport.h
    M llvm/include/llvm/Transforms/Scalar/JumpThreading.h
    M llvm/include/llvm/Transforms/Scalar/LoopPassManager.h
    M llvm/include/llvm/Transforms/Scalar/MemCpyOptimizer.h
    M llvm/include/llvm/Transforms/Scalar/Scalarizer.h
    M llvm/include/llvm/Transforms/Utils/BuildLibCalls.h
    M llvm/include/llvm/Transforms/Utils/LoopUtils.h
    M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
    M llvm/include/llvm/Transforms/Utils/SampleProfileInference.h
    M llvm/include/llvm/Transforms/Utils/ScalarEvolutionExpander.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Interval.h
    A llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SeedCollector.h
    M llvm/lib/Analysis/AliasAnalysis.cpp
    M llvm/lib/Analysis/BasicAliasAnalysis.cpp
    M llvm/lib/Analysis/CmpInstAnalysis.cpp
    M llvm/lib/Analysis/ConstantFolding.cpp
    M llvm/lib/Analysis/InlineCost.cpp
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    M llvm/lib/Analysis/MemoryProfileInfo.cpp
    M llvm/lib/Analysis/ReplayInlineAdvisor.cpp
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/AsmParser/LLLexer.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/CGData/CMakeLists.txt
    M llvm/lib/CGData/CodeGenData.cpp
    M llvm/lib/CGData/CodeGenDataReader.cpp
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/lib/CodeGen/EarlyIfConversion.cpp
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/CodeGen/InlineSpiller.cpp
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.h
    M llvm/lib/CodeGen/LiveDebugValues/LiveDebugValues.cpp
    M llvm/lib/CodeGen/LiveDebugValues/VarLocBasedImpl.cpp
    M llvm/lib/CodeGen/MIRParser/MIParser.cpp
    M llvm/lib/CodeGen/MIRParser/MIRParser.cpp
    M llvm/lib/CodeGen/MIRPrinter.cpp
    M llvm/lib/CodeGen/MachineBlockPlacement.cpp
    M llvm/lib/CodeGen/MachineLICM.cpp
    M llvm/lib/CodeGen/MachinePipeliner.cpp
    M llvm/lib/CodeGen/MachineVerifier.cpp
    M llvm/lib/CodeGen/ReachingDefAnalysis.cpp
    M llvm/lib/CodeGen/RegAllocGreedy.cpp
    M llvm/lib/CodeGen/RegisterBankInfo.cpp
    M llvm/lib/CodeGen/RegisterPressure.cpp
    M llvm/lib/CodeGen/RemoveLoadsIntoFakeUses.cpp
    M llvm/lib/CodeGen/ScheduleDAGInstrs.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
    M llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
    M llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/DebugInfo/DWARF/CMakeLists.txt
    M llvm/lib/DebugInfo/DWARF/DWARFDebugArangeSet.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFDie.cpp
    R llvm/lib/DebugInfo/DWARF/DWARFTypePrinter.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
    M llvm/lib/DebugInfo/LogicalView/Core/LVCompare.cpp
    M llvm/lib/ExecutionEngine/Orc/COFFPlatform.cpp
    M llvm/lib/ExecutionEngine/Orc/Debugging/VTuneSupportPlugin.cpp
    M llvm/lib/ExecutionEngine/Orc/ELFNixPlatform.cpp
    M llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
    M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
    M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp
    M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.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 llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/AttributeImpl.h
    M llvm/lib/IR/Attributes.cpp
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/IR/CMakeLists.txt
    M llvm/lib/IR/ConstantFPRange.cpp
    M llvm/lib/IR/ConstantFold.cpp
    M llvm/lib/IR/Constants.cpp
    M llvm/lib/IR/Core.cpp
    M llvm/lib/IR/Function.cpp
    M llvm/lib/IR/Globals.cpp
    M llvm/lib/IR/Instruction.cpp
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/IR/IntrinsicInst.cpp
    A llvm/lib/IR/Intrinsics.cpp
    M llvm/lib/IR/Operator.cpp
    M llvm/lib/IR/Type.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/LTO/ThinLTOCodeGenerator.cpp
    M llvm/lib/MC/CMakeLists.txt
    M llvm/lib/MC/MCParser/MasmParser.cpp
    M llvm/lib/MC/XCOFFObjectWriter.cpp
    M llvm/lib/MCA/InstrBuilder.cpp
    M llvm/lib/Object/Archive.cpp
    M llvm/lib/Object/ArchiveWriter.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/Passes/StandardInstrumentations.cpp
    M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
    M llvm/lib/ProfileData/MemProfReader.cpp
    M llvm/lib/SandboxIR/BasicBlock.cpp
    M llvm/lib/SandboxIR/CMakeLists.txt
    M llvm/lib/SandboxIR/Constant.cpp
    M llvm/lib/SandboxIR/Context.cpp
    A llvm/lib/SandboxIR/Function.cpp
    M llvm/lib/SandboxIR/Instruction.cpp
    M llvm/lib/SandboxIR/Module.cpp
    M llvm/lib/SandboxIR/PassManager.cpp
    M llvm/lib/SandboxIR/Region.cpp
    R llvm/lib/SandboxIR/SandboxIR.cpp
    A llvm/lib/SandboxIR/Use.cpp
    M llvm/lib/SandboxIR/User.cpp
    M llvm/lib/Support/APFixedPoint.cpp
    M llvm/lib/Support/APFloat.cpp
    M llvm/lib/Support/APInt.cpp
    M llvm/lib/Support/Caching.cpp
    M llvm/lib/Support/KnownBits.cpp
    M llvm/lib/Support/TimeProfiler.cpp
    M llvm/lib/Support/Unix/Threading.inc
    M llvm/lib/TableGen/CMakeLists.txt
    M llvm/lib/TableGen/DetailedRecordsBackend.cpp
    M llvm/lib/TableGen/Error.cpp
    M llvm/lib/TableGen/Main.cpp
    M llvm/lib/TableGen/Record.cpp
    M llvm/lib/TableGen/SetTheory.cpp
    M llvm/lib/TableGen/TGParser.cpp
    M llvm/lib/TableGen/TGParser.h
    A llvm/lib/TableGen/TGTimer.cpp
    M llvm/lib/TableGen/TableGenBackend.cpp
    M llvm/lib/TableGen/TableGenBackendSkeleton.cpp
    M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
    M llvm/lib/Target/AArch64/AArch64FMV.td
    M llvm/lib/Target/AArch64/AArch64Features.td
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
    M llvm/lib/Target/AArch64/AArch64GlobalsTagging.cpp
    M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.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/AsmParser/AArch64AsmParser.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/lib/Target/AArch64/SMEInstrFormats.td
    M llvm/lib/Target/AArch64/SVEInstrFormats.td
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUAsanInstrumentation.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.h
    M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUCtorDtorLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUFeatures.td
    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/AMDGPUISelLowering.h
    M llvm/lib/Target/AMDGPU/AMDGPUImageIntrinsicOptimizer.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInsertDelayAlu.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/AMDGPULateCodeGenPrepare.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h
    M llvm/lib/Target/AMDGPU/AMDGPULibFunc.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerKernelAttributes.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.h
    A llvm/lib/Target/AMDGPU/AMDGPUMCResourceInfo.cpp
    A llvm/lib/Target/AMDGPU/AMDGPUMCResourceInfo.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/AMDGPUPromoteAlloca.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    A llvm/lib/Target/AMDGPU/AMDGPUReserveWWMRegs.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUResourceUsageAnalysis.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUResourceUsageAnalysis.h
    M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
    M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
    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/AMDGPUTargetTransformInfo.h
    M llvm/lib/Target/AMDGPU/AMDGPUUnifyMetadata.cpp
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/CMakeLists.txt
    M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
    M llvm/lib/Target/AMDGPU/FLATInstructions.td
    M llvm/lib/Target/AMDGPU/GCNDPPCombine.cpp
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.h
    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/GCNRegPressure.h
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.h
    M llvm/lib/Target/AMDGPU/GCNSubtarget.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.h
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCExpr.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCKernelDescriptor.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.h
    M llvm/lib/Target/AMDGPU/MCTargetDesc/R600InstPrinter.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/R600MCCodeEmitter.cpp
    M llvm/lib/Target/AMDGPU/R600OpenCLImageTypeLoweringPass.cpp
    M llvm/lib/Target/AMDGPU/R600Processors.td
    M llvm/lib/Target/AMDGPU/R600Subtarget.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/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SILateBranchLowering.cpp
    M llvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp
    M llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
    M llvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp
    M llvm/lib/Target/AMDGPU/SIOptimizeExecMaskingPreRA.cpp
    M llvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.h
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
    M llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
    M llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUPALMetadata.cpp
    M llvm/lib/Target/AMDGPU/VOP1Instructions.td
    M llvm/lib/Target/AMDGPU/VOP2Instructions.td
    M llvm/lib/Target/AMDGPU/VOP3Instructions.td
    M llvm/lib/Target/ARM/ARMArchitectures.td
    M llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp
    M llvm/lib/Target/ARM/ARMBaseRegisterInfo.h
    M llvm/lib/Target/ARM/ARMFeatures.td
    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/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/MCTargetDesc/ARMELFStreamer.cpp
    M llvm/lib/Target/ARM/Thumb1FrameLowering.cpp
    M llvm/lib/Target/ARM/Thumb2InstrInfo.cpp
    M llvm/lib/Target/AVR/MCTargetDesc/AVRInstPrinter.cpp
    M llvm/lib/Target/AVR/MCTargetDesc/AVRInstPrinter.h
    M llvm/lib/Target/AVR/MCTargetDesc/AVRMCCodeEmitter.cpp
    M llvm/lib/Target/BPF/AsmParser/BPFAsmParser.cpp
    M llvm/lib/Target/BPF/BPFISelLowering.h
    M llvm/lib/Target/BPF/BPFMIPeephole.cpp
    M llvm/lib/Target/CSKY/AsmParser/CSKYAsmParser.cpp
    M llvm/lib/Target/CSKY/MCTargetDesc/CSKYMCCodeEmitter.cpp
    M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
    M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.h
    M llvm/lib/Target/DirectX/DXILOpLowering.cpp
    M llvm/lib/Target/DirectX/DirectXPassRegistry.def
    M llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
    M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.cpp
    M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.h
    M llvm/lib/Target/Hexagon/AsmParser/HexagonAsmParser.cpp
    M llvm/lib/Target/Hexagon/Disassembler/HexagonDisassembler.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCChecker.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCChecker.h
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCCodeEmitter.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCCompound.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCDuplexInfo.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCInstrInfo.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCInstrInfo.h
    M llvm/lib/Target/Lanai/AsmParser/LanaiAsmParser.cpp
    M llvm/lib/Target/Lanai/MCTargetDesc/LanaiBaseInfo.h
    M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
    M llvm/lib/Target/MSP430/AsmParser/MSP430AsmParser.cpp
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/lib/Target/NVPTX/NVPTXRegisterInfo.cpp
    M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
    M llvm/lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp
    M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVInstructionSelector.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.h
    M llvm/lib/Target/RISCV/GISel/RISCVRegisterBankInfo.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
    M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
    M llvm/lib/Target/RISCV/RISCVCallingConv.cpp
    M llvm/lib/Target/RISCV/RISCVDeadRegisterDefinitions.cpp
    M llvm/lib/Target/RISCV/RISCVExpandPseudoInsts.cpp
    M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
    M llvm/lib/Target/RISCV/RISCVFrameLowering.h
    M llvm/lib/Target/RISCV/RISCVGISel.td
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.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/RISCVInstrGISel.td
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoC.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoF.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXCV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXTHead.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZfa.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZk.td
    M llvm/lib/Target/RISCV/RISCVMakeCompressible.cpp
    M llvm/lib/Target/RISCV/RISCVMergeBaseOffset.cpp
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.h
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.td
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
    M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
    M llvm/lib/Target/SPIRV/SPIRVDuplicatesTracker.cpp
    M llvm/lib/Target/SPIRV/SPIRVDuplicatesTracker.h
    M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.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/SPIRVInstrInfo.td
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    M llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
    M llvm/lib/Target/SPIRV/SPIRVTargetTransformInfo.h
    M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.h
    M llvm/lib/Target/Sparc/SparcTargetMachine.cpp
    M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
    M llvm/lib/Target/SystemZ/SystemZISelLowering.h
    M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp
    M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.h
    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/lib/Target/WebAssembly/WebAssemblyFastISel.cpp
    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/MCTargetDesc/X86InstComments.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MCAsmInfo.cpp
    M llvm/lib/Target/X86/X86FastISel.cpp
    M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/lib/Target/X86/X86ISelLoweringCall.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/Xtensa/XtensaISelLowering.cpp
    M llvm/lib/Target/Xtensa/XtensaInstrInfo.td
    M llvm/lib/TargetParser/ARMTargetParser.cpp
    M llvm/lib/TargetParser/ARMTargetParserCommon.cpp
    M llvm/lib/TargetParser/Host.cpp
    M llvm/lib/TargetParser/RISCVISAInfo.cpp
    M llvm/lib/TargetParser/Triple.cpp
    M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.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/ArgumentPromotion.cpp
    M llvm/lib/Transforms/IPO/Attributor.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/IPO/FunctionImport.cpp
    M llvm/lib/Transforms/IPO/FunctionSpecialization.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/IndirectCallPromotion.cpp
    M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
    M llvm/lib/Transforms/Instrumentation/RealtimeSanitizer.cpp
    M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
    M llvm/lib/Transforms/Scalar/EarlyCSE.cpp
    M llvm/lib/Transforms/Scalar/GVN.cpp
    M llvm/lib/Transforms/Scalar/IndVarSimplify.cpp
    M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
    M llvm/lib/Transforms/Scalar/JumpTableToSwitch.cpp
    M llvm/lib/Transforms/Scalar/LICM.cpp
    M llvm/lib/Transforms/Scalar/LoopPassManager.cpp
    M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
    M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
    M llvm/lib/Transforms/Scalar/Scalarizer.cpp
    M llvm/lib/Transforms/Utils/BuildLibCalls.cpp
    M llvm/lib/Transforms/Utils/CloneFunction.cpp
    M llvm/lib/Transforms/Utils/IntegerDivision.cpp
    M llvm/lib/Transforms/Utils/Local.cpp
    M llvm/lib/Transforms/Utils/LoopSimplify.cpp
    M llvm/lib/Transforms/Utils/LoopUtils.cpp
    M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
    M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Utils/SimplifyIndVar.cpp
    M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
    M llvm/lib/Transforms/Vectorize/CMakeLists.txt
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
    A llvm/lib/Transforms/Vectorize/SandboxVectorizer/Interval.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
    A llvm/lib/Transforms/Vectorize/SandboxVectorizer/SeedCollector.cpp
    M llvm/lib/Transforms/Vectorize/VPRecipeBuilder.h
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    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/VPlanTransforms.h
    M llvm/lib/Transforms/Vectorize/VPlanValue.h
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Analysis/CostModel/PowerPC/vsr_load_32_64.ll
    M llvm/test/Analysis/CostModel/RISCV/arith-fp.ll
    M llvm/test/Analysis/CostModel/RISCV/reduce-fadd.ll
    A llvm/test/Analysis/CostModel/RISCV/reduce-fmul.ll
    A llvm/test/Analysis/LoopAccessAnalysis/no-dep-via-loop-guards.ll
    R llvm/test/Analysis/LoopAccessAnalysis/pr96656.ll
    M llvm/test/Analysis/LoopAccessAnalysis/symbolic-stride.ll
    M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info.ll
    M llvm/test/Analysis/ScalarEvolution/ne-overflow.ll
    M llvm/test/Analysis/ScalarEvolution/predicated-max-backedge-taken-count-guard-info.ll
    M llvm/test/Analysis/ScalarEvolution/scev-expander-reuse-gep.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-urem.ll
    A llvm/test/Analysis/ScalarEvolution/umin-seq-operand-may-trigger-ub.ll
    M llvm/test/Assembler/allockind-missing.ll
    A llvm/test/Assembler/amdgcn-intrinsic-attributes.ll
    M llvm/test/Assembler/auto_upgrade_nvvm_intrinsics.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/CodeGen/AArch64/DAGCombine_vscale.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-mul-to-shl.mir
    A llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-subvector.ll
    M llvm/test/CodeGen/AArch64/concat-vector.ll
    M llvm/test/CodeGen/AArch64/fexplog.ll
    M llvm/test/CodeGen/AArch64/fpow.ll
    M llvm/test/CodeGen/AArch64/fpowi.ll
    M llvm/test/CodeGen/AArch64/fptosi-sat-vector.ll
    M llvm/test/CodeGen/AArch64/fptoui-sat-vector.ll
    M llvm/test/CodeGen/AArch64/frem.ll
    M llvm/test/CodeGen/AArch64/fsincos.ll
    A llvm/test/CodeGen/AArch64/icmp-ult-eq-fold.ll
    M llvm/test/CodeGen/AArch64/llvm-ir-to-intrinsic.ll
    M llvm/test/CodeGen/AArch64/load.ll
    M llvm/test/CodeGen/AArch64/neon-partial-reduce-dot-product.ll
    M llvm/test/CodeGen/AArch64/pr58516.ll
    A llvm/test/CodeGen/AArch64/selectopt-const.ll
    M llvm/test/CodeGen/AArch64/signed-truncation-check.ll
    A llvm/test/CodeGen/AArch64/sme-callee-save-restore-pairs.ll
    M llvm/test/CodeGen/AArch64/sme-disable-rematerialize-with-streaming-mode-changes.ll
    A llvm/test/CodeGen/AArch64/sme2-intrinsics-luti4.ll
    A llvm/test/CodeGen/AArch64/sme2-intrinsics-write-zt.ll
    M llvm/test/CodeGen/AArch64/stack-tagging-dbg-assign-tag-offset.ll
    M llvm/test/CodeGen/AArch64/stack-tagging-dbg-declare-tag-offset.ll
    M llvm/test/CodeGen/AArch64/stack-tagging-dbg-value-tag-offset-nopad.ll
    M llvm/test/CodeGen/AArch64/stack-tagging-prologue.ll
    M llvm/test/CodeGen/AArch64/store.ll
    M llvm/test/CodeGen/AArch64/sve-adr.ll
    A llvm/test/CodeGen/AArch64/sve-bf16-arith.ll
    A llvm/test/CodeGen/AArch64/sve-bf16-rounding.ll
    M llvm/test/CodeGen/AArch64/sve-callee-save-restore-pairs.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-bfloat.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-intrinsics-while.ll
    M llvm/test/CodeGen/AArch64/sve-knownbits.ll
    M llvm/test/CodeGen/AArch64/sve-partial-reduce-dot-product.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
    A llvm/test/CodeGen/AArch64/sve2-bf16-converts.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
    A llvm/test/CodeGen/AArch64/wineh-catchret-label-generation.ll
    M llvm/test/CodeGen/AArch64/wineh-try-catch.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmax.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmin.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-load-store-pointers.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/inline-asm-mismatched-size.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-ashr.s16.mir
    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/inst-select-lshr.s16.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-pattern-smed3.s16.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-pattern-umed3.s16.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-shl.s16.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fdiv.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
    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/GlobalISel/mubuf-global.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-or.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-select.mir
    M llvm/test/CodeGen/AMDGPU/accvgpr-spill-scc-clobber.mir
    M llvm/test/CodeGen/AMDGPU/agpr-register-count.ll
    M llvm/test/CodeGen/AMDGPU/alloc-aligned-tuples-gfx908.mir
    M llvm/test/CodeGen/AMDGPU/alloc-aligned-tuples-gfx90a.mir
    M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-cc.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-preserve-cc.ll
    M llvm/test/CodeGen/AMDGPU/amdhsa-kernarg-preload-num-sgprs.ll
    M llvm/test/CodeGen/AMDGPU/amdpal-metadata-agpr-register-count.ll
    M llvm/test/CodeGen/AMDGPU/array-ptr-calc-i32.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
    M llvm/test/CodeGen/AMDGPU/atomicrmw-expand.ll
    M llvm/test/CodeGen/AMDGPU/attr-amdgpu-flat-work-group-size-vgpr-limit.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/branch-relax-spill.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/call-alias-register-usage-agpr.ll
    M llvm/test/CodeGen/AMDGPU/call-alias-register-usage0.ll
    M llvm/test/CodeGen/AMDGPU/call-alias-register-usage1.ll
    M llvm/test/CodeGen/AMDGPU/call-alias-register-usage2.ll
    M llvm/test/CodeGen/AMDGPU/call-alias-register-usage3.ll
    M llvm/test/CodeGen/AMDGPU/call-graph-register-usage.ll
    M llvm/test/CodeGen/AMDGPU/captured-frame-index.ll
    M llvm/test/CodeGen/AMDGPU/cf-loop-on-constant.ll
    M llvm/test/CodeGen/AMDGPU/cndmask-no-def-vcc.ll
    M llvm/test/CodeGen/AMDGPU/codegen-internal-only-func.ll
    M llvm/test/CodeGen/AMDGPU/collapse-endcf.ll
    A llvm/test/CodeGen/AMDGPU/commute-op-sel.mir
    M llvm/test/CodeGen/AMDGPU/control-flow-fastregalloc.ll
    M llvm/test/CodeGen/AMDGPU/csr-sgpr-spill-live-ins.mir
    M llvm/test/CodeGen/AMDGPU/dag-divergence-atomic.ll
    A llvm/test/CodeGen/AMDGPU/dag-preserve-disjoint-flag.ll
    M llvm/test/CodeGen/AMDGPU/div_i128.ll
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-add-i32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32-wave32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-u32.mir
    M llvm/test/CodeGen/AMDGPU/extend-wwm-virt-reg-liveness.mir
    M llvm/test/CodeGen/AMDGPU/fdiv.f16.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-scratch-init.ll
    M llvm/test/CodeGen/AMDGPU/flat-scratch-reg.ll
    M llvm/test/CodeGen/AMDGPU/flat-scratch.ll
    M llvm/test/CodeGen/AMDGPU/flat_atomics_i64.ll
    M llvm/test/CodeGen/AMDGPU/fold-int-pow2-with-fmul-or-fdiv.ll
    A llvm/test/CodeGen/AMDGPU/fold-operands-frame-index.gfx10.mir
    A llvm/test/CodeGen/AMDGPU/fold-operands-frame-index.mir
    M llvm/test/CodeGen/AMDGPU/fold-reload-into-exec.mir
    M llvm/test/CodeGen/AMDGPU/fold-reload-into-m0.mir
    M llvm/test/CodeGen/AMDGPU/fp-atomics-gfx940.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/frame-index.mir
    M llvm/test/CodeGen/AMDGPU/frem.ll
    A llvm/test/CodeGen/AMDGPU/function-resource-usage.ll
    A llvm/test/CodeGen/AMDGPU/gep-flags-stack-offsets.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-return-types.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/greedy-instruction-split-subrange.mir
    M llvm/test/CodeGen/AMDGPU/high-RP-reschedule.mir
    M llvm/test/CodeGen/AMDGPU/identical-subrange-spill-infloop.ll
    M llvm/test/CodeGen/AMDGPU/illegal-eviction-assert.mir
    M llvm/test/CodeGen/AMDGPU/indirect-addressing-si.ll
    M llvm/test/CodeGen/AMDGPU/inline-asm-reserved-regs.ll
    A llvm/test/CodeGen/AMDGPU/inlineasm-mismatched-size-error.ll
    A llvm/test/CodeGen/AMDGPU/inlineasm-mismatched-size.ll
    M llvm/test/CodeGen/AMDGPU/insert-delay-alu-bug.ll
    M llvm/test/CodeGen/AMDGPU/insert-waitcnts-crash.ll
    M llvm/test/CodeGen/AMDGPU/insert_vector_dynelt.ll
    M llvm/test/CodeGen/AMDGPU/insert_waitcnt_for_precise_memory.ll
    M llvm/test/CodeGen/AMDGPU/ipra.ll
    M llvm/test/CodeGen/AMDGPU/isel-amdgcn-cs-chain-intrinsic-w32.ll
    M llvm/test/CodeGen/AMDGPU/isel-amdgcn-cs-chain-intrinsic-w64.ll
    M llvm/test/CodeGen/AMDGPU/kernel-vgpr-spill-mubuf-with-voffset.ll
    M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.f32.fp8.err.ll
    M llvm/test/CodeGen/AMDGPU/load-constant-i1.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/local-stack-alloc-add-references.gfx8.mir
    M llvm/test/CodeGen/AMDGPU/local-stack-alloc-block-sp-reference.ll
    A llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-contents-legalization.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-module-lds-offsets.ll
    M llvm/test/CodeGen/AMDGPU/lower-multiple-ctor-dtor.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix-lo.ll
    M llvm/test/CodeGen/AMDGPU/materialize-frame-index-sgpr.gfx10.ll
    M llvm/test/CodeGen/AMDGPU/materialize-frame-index-sgpr.ll
    M llvm/test/CodeGen/AMDGPU/maximumnum.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
    M llvm/test/CodeGen/AMDGPU/minimumnum.ll
    M llvm/test/CodeGen/AMDGPU/module-lds-false-sharing.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/mubuf-offset-private.ll
    M llvm/test/CodeGen/AMDGPU/pal-metadata-3.0.ll
    M llvm/test/CodeGen/AMDGPU/partial-regcopy-and-spill-missed-at-regalloc.ll
    M llvm/test/CodeGen/AMDGPU/partial-sgpr-to-vgpr-spills.ll
    M llvm/test/CodeGen/AMDGPU/pei-amdgpu-cs-chain-preserve.mir
    M llvm/test/CodeGen/AMDGPU/pei-amdgpu-cs-chain.mir
    M llvm/test/CodeGen/AMDGPU/pr51516.mir
    A llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs-IR-lowering.ll
    A llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs.ll
    M llvm/test/CodeGen/AMDGPU/preserve-only-inactive-lane.mir
    M llvm/test/CodeGen/AMDGPU/preserve-wwm-copy-dst-reg.ll
    M llvm/test/CodeGen/AMDGPU/recursion.ll
    M llvm/test/CodeGen/AMDGPU/regalloc-failure-overlapping-insert-assert.mir
    M llvm/test/CodeGen/AMDGPU/register-count-comments.ll
    M llvm/test/CodeGen/AMDGPU/rem_i128.ll
    M llvm/test/CodeGen/AMDGPU/remat-vop.mir
    M llvm/test/CodeGen/AMDGPU/resource-optimization-remarks.ll
    M llvm/test/CodeGen/AMDGPU/resource-usage-dead-function.ll
    M llvm/test/CodeGen/AMDGPU/scc-clobbered-sgpr-to-vmem-spill.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/scratch-simple.ll
    A llvm/test/CodeGen/AMDGPU/sdwa-commute.ll
    A llvm/test/CodeGen/AMDGPU/sdwa-cse.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-regalloc-flags.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-dead-frame-in-dbg-value.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-incorrect-fi-bookkeeping-bug.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-no-vgprs.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-overlap-wwm-reserve.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-to-vmem-scc-clobber.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spills-empty-prolog-block.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spills-split-regalloc.ll
    M llvm/test/CodeGen/AMDGPU/si-lower-sgpr-spills-vgpr-lanes-usage.mir
    R llvm/test/CodeGen/AMDGPU/si-spill-sgpr-stack.ll
    M llvm/test/CodeGen/AMDGPU/snippet-copy-bundle-regression.mir
    M llvm/test/CodeGen/AMDGPU/spill-csr-frame-ptr-reg-copy.ll
    M llvm/test/CodeGen/AMDGPU/spill-empty-live-interval.mir
    M llvm/test/CodeGen/AMDGPU/spill-reg-tuple-super-reg-use.mir
    M llvm/test/CodeGen/AMDGPU/spill-scavenge-offset.ll
    M llvm/test/CodeGen/AMDGPU/spill-sgpr-to-virtual-vgpr.mir
    M llvm/test/CodeGen/AMDGPU/spill-sgpr-used-for-exec-copy.mir
    M llvm/test/CodeGen/AMDGPU/spill-vector-superclass.ll
    M llvm/test/CodeGen/AMDGPU/spill-vgpr-to-agpr-update-regscavenger.ll
    M llvm/test/CodeGen/AMDGPU/spill192.mir
    M llvm/test/CodeGen/AMDGPU/spill224.mir
    M llvm/test/CodeGen/AMDGPU/spill288.mir
    M llvm/test/CodeGen/AMDGPU/spill320.mir
    M llvm/test/CodeGen/AMDGPU/spill352.mir
    M llvm/test/CodeGen/AMDGPU/spill384.mir
    M llvm/test/CodeGen/AMDGPU/stack-pointer-offset-relative-frameindex.ll
    M llvm/test/CodeGen/AMDGPU/stack-realign.ll
    M llvm/test/CodeGen/AMDGPU/stacksave_stackrestore.ll
    A llvm/test/CodeGen/AMDGPU/tail-call-inreg-arguments.convergencetokens.ll
    A llvm/test/CodeGen/AMDGPU/tail-call-inreg-arguments.error.ll
    A llvm/test/CodeGen/AMDGPU/tail-call-inreg-arguments.ll
    A llvm/test/CodeGen/AMDGPU/tail-call-uniform-target-in-vgprs-issue110930.convergencetokens.ll
    A llvm/test/CodeGen/AMDGPU/tail-call-uniform-target-in-vgprs-issue110930.ll
    M llvm/test/CodeGen/AMDGPU/tied-op-for-wwm-scratch-reg-spill-restore.mir
    M llvm/test/CodeGen/AMDGPU/trap-abis.ll
    M llvm/test/CodeGen/AMDGPU/true16-ra-pre-gfx11-regression-test.mir
    M llvm/test/CodeGen/AMDGPU/vgpr-spill-placement-issue61083.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-spill-scc-clobber.mir
    M llvm/test/CodeGen/AMDGPU/virtregrewrite-undef-identity-copy.mir
    M llvm/test/CodeGen/AMDGPU/whole-wave-register-copy.ll
    M llvm/test/CodeGen/AMDGPU/whole-wave-register-spill.ll
    A llvm/test/CodeGen/AMDGPU/wwm-regalloc-error.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved.ll
    A llvm/test/CodeGen/ARM/stack-guard-nomovt.ll
    M llvm/test/CodeGen/BPF/32-bit-subreg-alu.ll
    M llvm/test/CodeGen/BPF/BTF/print_btf.py
    A llvm/test/CodeGen/BPF/bpf-fastcall-4.ll
    A llvm/test/CodeGen/BPF/bpf-fastcall-5.ll
    M llvm/test/CodeGen/BPF/sdiv_error.ll
    A llvm/test/CodeGen/BPF/sdiv_to_mul.ll
    M llvm/test/CodeGen/BPF/srem_error.ll
    M llvm/test/CodeGen/DirectX/abs.ll
    M llvm/test/CodeGen/DirectX/atan2_error.ll
    M llvm/test/CodeGen/DirectX/clamp.ll
    A llvm/test/CodeGen/DirectX/cross.ll
    M llvm/test/CodeGen/DirectX/exp.ll
    M llvm/test/CodeGen/DirectX/fdot.ll
    M llvm/test/CodeGen/DirectX/idot.ll
    M llvm/test/CodeGen/DirectX/length.ll
    M llvm/test/CodeGen/DirectX/length_error.ll
    M llvm/test/CodeGen/DirectX/length_invalid_intrinsic_error.ll
    M llvm/test/CodeGen/DirectX/lerp.ll
    M llvm/test/CodeGen/DirectX/llc-pipeline.ll
    M llvm/test/CodeGen/DirectX/log.ll
    M llvm/test/CodeGen/DirectX/log10.ll
    M llvm/test/CodeGen/DirectX/normalize.ll
    M llvm/test/CodeGen/DirectX/normalize_error.ll
    M llvm/test/CodeGen/DirectX/pow.ll
    A llvm/test/CodeGen/DirectX/radians.ll
    M llvm/test/CodeGen/DirectX/rsqrt.ll
    M llvm/test/CodeGen/DirectX/scalar-data.ll
    M llvm/test/CodeGen/DirectX/scalar-load.ll
    M llvm/test/CodeGen/DirectX/scalar-store.ll
    M llvm/test/CodeGen/DirectX/sign.ll
    M llvm/test/CodeGen/DirectX/step.ll
    M llvm/test/CodeGen/Generic/llc-start-stop.ll
    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/CodeGen/Mips/fp16-promote.ll
    M llvm/test/CodeGen/NVPTX/bf16x2-instructions.ll
    M llvm/test/CodeGen/NVPTX/f16x2-instructions.ll
    M llvm/test/CodeGen/NVPTX/i1-int-to-fp.ll
    R llvm/test/CodeGen/NVPTX/intrin-nocapture.ll
    M llvm/test/CodeGen/NVPTX/vector-returns.ll
    M llvm/test/CodeGen/PowerPC/aix64-cc-abi-vaarg.ll
    M llvm/test/CodeGen/PowerPC/p10-spill-crlt.ll
    M llvm/test/CodeGen/PowerPC/vec-min-max.ll
    M llvm/test/CodeGen/PowerPC/vec_abs.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/alu-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/rotate-rv64.mir
    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
    M llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/zba-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/irtranslator/calling-conv-half.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/irtranslator/calling-conv-ilp32-ilp32f-ilp32d-common.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/irtranslator/calling-conv-lp64-lp64f-lp64d-common.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-abs-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-abs-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-addo-subo-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-addo-subo-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ashr-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ashr-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-bitreverse-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-bitreverse-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-bswap-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-bswap-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-const-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-constbarrier-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-constbarrier-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctlz-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctlz-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctpop-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctpop-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-cttz-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-cttz-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-div-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-div-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-fshl-fshr-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-fshl-fshr-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-icmp-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-icmp-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-implicit-def-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-implicit-def-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-itofp-f16-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-itofp-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-load-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-load-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-lshr-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-lshr-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-mul-ext-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-mul-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-mul-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-mulo-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-mulo-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-rem-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-rem-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-rotate-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-rotate-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-sat-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-sat-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-select-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-select-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-shl-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-shl-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-smax-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-smax-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-smin-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-smin-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-store-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-store-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-umax-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-umax-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-umin-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-umin-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-anyext.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-extract-subvector.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-icmp.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-sext.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-splatvector-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-splatvector-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-splatvector-s64-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-vscale-rv32.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-vscale-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-zext.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/regbankselect/rvv/splatvector-rv32.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/regbankselect/rvv/splatvector-rv64.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/regbankselect/rvv/vmclr-rv32.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/regbankselect/rvv/vmclr-rv64.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/rvv/splat-vector.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/shift.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/abdu.ll
    M llvm/test/CodeGen/RISCV/add-before-shl.ll
    M llvm/test/CodeGen/RISCV/atomic-rmw-discard.ll
    M llvm/test/CodeGen/RISCV/atomic-rmw.ll
    M llvm/test/CodeGen/RISCV/atomic-signext.ll
    M llvm/test/CodeGen/RISCV/atomicrmw-cond-sub-clamp.ll
    M llvm/test/CodeGen/RISCV/atomicrmw-uinc-udec-wrap.ll
    M llvm/test/CodeGen/RISCV/branch-relaxation.ll
    M llvm/test/CodeGen/RISCV/callee-saved-fpr32s.ll
    M llvm/test/CodeGen/RISCV/callee-saved-fpr64s.ll
    M llvm/test/CodeGen/RISCV/callee-saved-gprs.ll
    M llvm/test/CodeGen/RISCV/calling-conv-ilp32-ilp32f-ilp32d-common.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/early-clobber-tied-def-subreg-liveness.ll
    M llvm/test/CodeGen/RISCV/fastcc-without-f-reg.ll
    M llvm/test/CodeGen/RISCV/float-arith.ll
    M llvm/test/CodeGen/RISCV/float-bitmanip-dagcombines.ll
    M llvm/test/CodeGen/RISCV/float-frem.ll
    M llvm/test/CodeGen/RISCV/float-imm.ll
    M llvm/test/CodeGen/RISCV/float-intrinsics.ll
    M llvm/test/CodeGen/RISCV/forced-atomics.ll
    M llvm/test/CodeGen/RISCV/fpclamptosat.ll
    M llvm/test/CodeGen/RISCV/half-intrinsics.ll
    A llvm/test/CodeGen/RISCV/inline-asm-xsfvcp.ll
    A llvm/test/CodeGen/RISCV/instruction-count-remark.mir
    M llvm/test/CodeGen/RISCV/kcfi-mir.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
    A llvm/test/CodeGen/RISCV/make-compressible-zfinx.mir
    M llvm/test/CodeGen/RISCV/memcpy.ll
    M llvm/test/CodeGen/RISCV/misched-load-clustering.ll
    M llvm/test/CodeGen/RISCV/mul.ll
    M llvm/test/CodeGen/RISCV/nontemporal.ll
    M llvm/test/CodeGen/RISCV/out-of-reach-emergency-slot.mir
    M llvm/test/CodeGen/RISCV/overflow-intrinsics.ll
    M llvm/test/CodeGen/RISCV/push-pop-popret.ll
    M llvm/test/CodeGen/RISCV/reduction-formation.ll
    M llvm/test/CodeGen/RISCV/rv32zbb.ll
    M llvm/test/CodeGen/RISCV/rv32zbs.ll
    M llvm/test/CodeGen/RISCV/rv64i-shift-sext.ll
    M llvm/test/CodeGen/RISCV/rv64zba.ll
    M llvm/test/CodeGen/RISCV/rv64zbs.ll
    M llvm/test/CodeGen/RISCV/rvv-cfi-info.ll
    M llvm/test/CodeGen/RISCV/rvv/access-fixed-objects-by-rvv.ll
    M llvm/test/CodeGen/RISCV/rvv/addi-scalable-offset.mir
    M llvm/test/CodeGen/RISCV/rvv/alloca-load-store-scalable-array.ll
    M llvm/test/CodeGen/RISCV/rvv/allocate-lmul-2-4-8.ll
    M llvm/test/CodeGen/RISCV/rvv/callee-saved-regs.ll
    M llvm/test/CodeGen/RISCV/rvv/calling-conv.ll
    M llvm/test/CodeGen/RISCV/rvv/emergency-slot.mir
    M llvm/test/CodeGen/RISCV/rvv/expand-no-v.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vector-i8-index-cornercase.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-elen.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-buildvec-bf16.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-buildvec.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-buildvec.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-interleaved-access-zve32x.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-interleaved-access.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-fp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-load-store-asm.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfwmaccbf16.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vpscatter.ll
    M llvm/test/CodeGen/RISCV/rvv/fmaximum-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fminimum-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fpclamptosat_vec.ll
    M llvm/test/CodeGen/RISCV/rvv/frm-insert.ll
    M llvm/test/CodeGen/RISCV/rvv/insertelt-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/large-rvv-stack-size.mir
    M llvm/test/CodeGen/RISCV/rvv/named-vector-shuffle-reverse.ll
    M llvm/test/CodeGen/RISCV/rvv/no-reserved-frame.ll
    M llvm/test/CodeGen/RISCV/rvv/rv32-spill-vector.ll
    M llvm/test/CodeGen/RISCV/rvv/rv32-spill-zvlsseg.ll
    M llvm/test/CodeGen/RISCV/rvv/rv64-spill-vector.ll
    M llvm/test/CodeGen/RISCV/rvv/rv64-spill-zvlsseg.ll
    M llvm/test/CodeGen/RISCV/rvv/rvv-peephole-vmerge-to-vmv.mir
    M llvm/test/CodeGen/RISCV/rvv/scalar-stack-align.ll
    M llvm/test/CodeGen/RISCV/rvv/stack-folding.ll
    M llvm/test/CodeGen/RISCV/rvv/vfadd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfdiv-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfma-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmul-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfsub-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vpscatter-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vreductions-fp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vxrm-insert.ll
    M llvm/test/CodeGen/RISCV/rvv/wrong-stack-offset-for-rvv-object.mir
    M llvm/test/CodeGen/RISCV/scmp.ll
    M llvm/test/CodeGen/RISCV/shifts.ll
    M llvm/test/CodeGen/RISCV/srem-seteq-illegal-types.ll
    M llvm/test/CodeGen/RISCV/srem-vector-lkk.ll
    A llvm/test/CodeGen/RISCV/stack-guard-global.ll
    A llvm/test/CodeGen/RISCV/stack-guard-tls.ll
    M llvm/test/CodeGen/RISCV/stack-realignment.ll
    M llvm/test/CodeGen/RISCV/stack-store-check.ll
    M llvm/test/CodeGen/RISCV/ucmp.ll
    M llvm/test/CodeGen/RISCV/umulo-128-legalisation-lowering.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.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/xcvalu.ll
    M llvm/test/CodeGen/RISCV/xtheadmempair.ll
    A llvm/test/CodeGen/SPARC/data-align.ll
    M llvm/test/CodeGen/SPARC/fp128-split.ll
    A llvm/test/CodeGen/SPIRV/HlslBufferLoad.ll
    A llvm/test/CodeGen/SPIRV/ShaderBufferImage.ll
    A llvm/test/CodeGen/SPIRV/ShaderImage.ll
    M llvm/test/CodeGen/SPIRV/debug-info/debug-compilation-unit.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-type-pointer.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fun-ptr-addrcast.ll
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/cross.ll
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/radians.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/arithmetic-fence.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/ignore-llvm-intrinsic.ll
    A llvm/test/CodeGen/SPIRV/opencl/radians.ll
    A llvm/test/CodeGen/SPIRV/pointers/PtrCast-in-OpSpecConstantOp.ll
    A llvm/test/CodeGen/SPIRV/pointers/PtrCast-null-in-OpSpecConstantOp.ll
    A llvm/test/CodeGen/SPIRV/pointers/phi-valid-operand-types-rev.ll
    A llvm/test/CodeGen/SPIRV/pointers/phi-valid-operand-types.ll
    M llvm/test/CodeGen/SystemZ/args-15.ll
    M llvm/test/CodeGen/SystemZ/args-16.ll
    M llvm/test/CodeGen/SystemZ/args-17.ll
    M llvm/test/CodeGen/SystemZ/args-18.ll
    M llvm/test/CodeGen/SystemZ/args-19.ll
    M llvm/test/CodeGen/SystemZ/args-20.ll
    M llvm/test/CodeGen/SystemZ/args-21.ll
    M llvm/test/CodeGen/SystemZ/inline-thresh-adjust.ll
    M llvm/test/CodeGen/Thumb2/LowOverheadLoops/mve-float-loops.ll
    M llvm/test/CodeGen/Thumb2/mve-fmath.ll
    A llvm/test/CodeGen/WebAssembly/fast-isel-no-offset.ll
    M llvm/test/CodeGen/WebAssembly/fast-isel-pr47040.ll
    M llvm/test/CodeGen/WebAssembly/simd-shift-in-loop.ll
    M llvm/test/CodeGen/WebAssembly/simd-unsupported.ll
    M llvm/test/CodeGen/X86/2006-08-21-ExtraMovInst.ll
    M llvm/test/CodeGen/X86/2007-01-13-StackPtrIndex.ll
    M llvm/test/CodeGen/X86/2007-03-15-GEP-Idx-Sink.ll
    M llvm/test/CodeGen/X86/2007-10-12-CoalesceExtSubReg.ll
    M llvm/test/CodeGen/X86/2007-10-12-SpillerUnfold2.ll
    M llvm/test/CodeGen/X86/2007-11-06-InstrSched.ll
    M llvm/test/CodeGen/X86/2007-11-30-LoadFolding-Bug.ll
    M llvm/test/CodeGen/X86/2008-04-28-CoalescerBug.ll
    M llvm/test/CodeGen/X86/2008-08-06-CmpStride.ll
    M llvm/test/CodeGen/X86/2008-12-01-loop-iv-used-outside-loop.ll
    M llvm/test/CodeGen/X86/2009-02-26-MachineLICMBug.ll
    M llvm/test/CodeGen/X86/2009-04-25-CoalescerBug.ll

  Log Message:
  -----------
  rev

Created using spr 1.3.4


Compare: https://github.com/llvm/llvm-project/compare/d822d4b65b6a...ca8d388602b0

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