[all-commits] [llvm/llvm-project] e6da78: Reapply "[CycleAnalysis] Methods to verify cycles ...

Vitaly Buka via All-commits all-commits at lists.llvm.org
Wed Aug 21 17:47:51 PDT 2024


  Branch: refs/heads/users/vitalybuka/spr/asandarwin-simplify-test
  Home:   https://github.com/llvm/llvm-project
  Commit: e6da78a326a7cbf8f3a6422d33f48d13708e0da3
      https://github.com/llvm/llvm-project/commit/e6da78a326a7cbf8f3a6422d33f48d13708e0da3
  Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/include/llvm/ADT/GenericCycleImpl.h
    M llvm/include/llvm/ADT/GenericCycleInfo.h
    M llvm/include/llvm/Analysis/CycleAnalysis.h
    M llvm/lib/Analysis/CycleAnalysis.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/test/Analysis/CycleInfo/basic.ll
    M llvm/test/Analysis/CycleInfo/unreachable-predecessor.ll

  Log Message:
  -----------
  Reapply "[CycleAnalysis] Methods to verify cycles and their nesting. (#102300)"

This reverts commit 4aacc60fe7e1f7b3f788bba8382ea1fa5189ef3b.

The original implementation provided a simple method to check whether the forest
of nested cycles is well-formed. This is now augmented with other methods to
check well-formedness of every cycle, either individually, or as the entire
forest. These will be used by future transforms that modify CycleInfo.


  Commit: fe946bfb728481a249282fb1e14378bf444defd3
      https://github.com/llvm/llvm-project/commit/fe946bfb728481a249282fb1e14378bf444defd3
  Author: David Green <david.green at arm.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64MIPeepholeOpt.cpp
    M llvm/test/CodeGen/AArch64/aarch64-mull-masks.ll
    M llvm/test/CodeGen/AArch64/peephole-sxtw.mir

  Log Message:
  -----------
  [AArch64] Extend sxtw peephole to uxtw. (#104516)

This extends the existing sxtw peephole optimization (#96293) to uxtw,
which in llvm is a ORRWrr which clears the top bits.

Fixes #98481


  Commit: fd83b86bf6da6486d447d67f2c8204aa1a94dfd6
      https://github.com/llvm/llvm-project/commit/fd83b86bf6da6486d447d67f2c8204aa1a94dfd6
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/test/Transforms/InstCombine/bit-checks.ll

  Log Message:
  -----------
  [InstCombine] Thwart complexity-based canonicalization in test (NFC)


  Commit: 27e5f505e5eee3da27c1515d6ed95d66fbe543ea
      https://github.com/llvm/llvm-project/commit/27e5f505e5eee3da27c1515d6ed95d66fbe543ea
  Author: Andy Kaylor <andrew.kaylor at intel.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/docs/UsersManual.rst
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/CodeGen/ffp-model.c
    M clang/test/Driver/fp-model.c

  Log Message:
  -----------
  [Driver] Make ffp-model=fast honor non-finite-values, introduce ffp-model=aggressive (#100453)

This change modifies -ffp-model=fast to select options that more closely
match -funsafe-math-optimizations, and introduces a new model,
-ffp-model=aggressive which matches the existing behavior (except for a
minor change in the fp-contract behavior).

The primary motivation for this change is to make -ffp-model=fast more
user friendly, particularly in light of LLVM's aggressive optimizations
when -fno-honor-nans and -fno-honor-infinites are used.

This was previously proposed here:

https://discourse.llvm.org/t/making-ffp-model-fast-more-user-friendly/78402


  Commit: 254da5ab8bce846bcbac9862f31c1891d8feea44
      https://github.com/llvm/llvm-project/commit/254da5ab8bce846bcbac9862f31c1891d8feea44
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/X86/ctlz-codesize.ll
    M llvm/test/Analysis/CostModel/X86/ctlz-latency.ll
    M llvm/test/Analysis/CostModel/X86/ctlz-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/ctlz.ll
    M llvm/test/Analysis/CostModel/X86/cttz-codesize.ll
    M llvm/test/Analysis/CostModel/X86/cttz-latency.ll
    M llvm/test/Analysis/CostModel/X86/cttz-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/cttz.ll
    M llvm/test/Analysis/CostModel/X86/intrinsic-cost-kinds.ll
    M llvm/test/Transforms/LoopIdiom/X86/ctlz.ll
    M llvm/test/Transforms/LoopIdiom/X86/left-shift-until-bittest.ll
    M llvm/test/Transforms/LoopIdiom/X86/left-shift-until-zero.ll

  Log Message:
  -----------
  [CostModel][X86] Add missing costkinds for scalar CTLZ/CTTZ instructions

Baed off worst case llvm-mca numbers for CTLZ/CTTZ(+ZERO_UNDEF) codegen

Prep work for #102885


  Commit: 9bb555688caf6ae4ba89fee5baa3dc29fec6a9b1
      https://github.com/llvm/llvm-project/commit/9bb555688caf6ae4ba89fee5baa3dc29fec6a9b1
  Author: Kyungwoo Lee <kyulee at meta.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    A llvm/include/llvm/CGData/CodeGenData.h
    A llvm/include/llvm/CGData/CodeGenData.inc
    A llvm/include/llvm/CGData/CodeGenDataReader.h
    A llvm/include/llvm/CGData/CodeGenDataWriter.h
    A llvm/include/llvm/CGData/OutlinedHashTree.h
    A llvm/include/llvm/CGData/OutlinedHashTreeRecord.h
    R llvm/include/llvm/CodeGenData/OutlinedHashTree.h
    R llvm/include/llvm/CodeGenData/OutlinedHashTreeRecord.h
    A llvm/lib/CGData/CMakeLists.txt
    A llvm/lib/CGData/CodeGenData.cpp
    A llvm/lib/CGData/CodeGenDataReader.cpp
    A llvm/lib/CGData/CodeGenDataWriter.cpp
    A llvm/lib/CGData/OutlinedHashTree.cpp
    A llvm/lib/CGData/OutlinedHashTreeRecord.cpp
    M llvm/lib/CMakeLists.txt
    R llvm/lib/CodeGenData/CMakeLists.txt
    R llvm/lib/CodeGenData/OutlinedHashTree.cpp
    R llvm/lib/CodeGenData/OutlinedHashTreeRecord.cpp
    M llvm/test/CMakeLists.txt
    M llvm/test/lit.cfg.py
    A llvm/test/tools/llvm-cgdata/convert.test
    A llvm/test/tools/llvm-cgdata/empty.test
    A llvm/test/tools/llvm-cgdata/error.test
    A llvm/test/tools/llvm-cgdata/merge-archive.test
    A llvm/test/tools/llvm-cgdata/merge-concat.test
    A llvm/test/tools/llvm-cgdata/merge-double.test
    A llvm/test/tools/llvm-cgdata/merge-single.test
    A llvm/test/tools/llvm-cgdata/show.test
    A llvm/tools/llvm-cgdata/CMakeLists.txt
    A llvm/tools/llvm-cgdata/Opts.td
    A llvm/tools/llvm-cgdata/llvm-cgdata.cpp
    A llvm/unittests/CGData/CMakeLists.txt
    A llvm/unittests/CGData/OutlinedHashTreeRecordTest.cpp
    A llvm/unittests/CGData/OutlinedHashTreeTest.cpp
    M llvm/unittests/CMakeLists.txt
    R llvm/unittests/CodeGenData/CMakeLists.txt
    R llvm/unittests/CodeGenData/OutlinedHashTreeRecordTest.cpp
    R llvm/unittests/CodeGenData/OutlinedHashTreeTest.cpp

  Log Message:
  -----------
  Reland [CGData] llvm-cgdata #89884 (#101461)

Reland [CGData] llvm-cgdata #89884 using `Opt` instead of `cl`
- Action options are required, `--convert`, `--show`, `--merge`. This
was similar to sub-commands previously implemented, but having a prefix
`--`.
- `--format` option is added, which specifies `text` or `binary`.

---------

Co-authored-by: Kyungwoo Lee <kyulee at fb.com>


  Commit: 74f5ee4ffe89da4a0e9c762c69f8a68536fbf754
      https://github.com/llvm/llvm-project/commit/74f5ee4ffe89da4a0e9c762c69f8a68536fbf754
  Author: S. Bharadwaj Yadavalli <Bharadwaj.Yadavalli at microsoft.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/DXILMetadataAnalysis.h
    M llvm/lib/Analysis/DXILMetadataAnalysis.cpp
    M llvm/test/CodeGen/DirectX/Metadata/dxilVer-1.0.ll
    M llvm/test/CodeGen/DirectX/Metadata/dxilVer-1.8.ll
    A llvm/test/CodeGen/DirectX/Metadata/empty-valver1.8.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-as.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-cs-val-ver-0.0.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-cs.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-gs.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-hs.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-lib.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-ms.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-ps.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-vs.ll

  Log Message:
  -----------
  [DXIL][Analysis] Add validator version to info collected by Module Metadata Analysis  (#104828)

Add Validator Version to information collected by Module Metadata
Analysis pass. An earlier change (#104040) added a default hardcoded
value for validator version to be associated with DXIL module created
during HLSL source compilation.

Add tests to verify validator version info collected
 - Updated existing tests
 - Added a test with validator version specified in DXIL metadata


  Commit: 8f4f3df3c0ffc22c09d9201980a88ebb8aecc8f8
      https://github.com/llvm/llvm-project/commit/8f4f3df3c0ffc22c09d9201980a88ebb8aecc8f8
  Author: Daniel Grumberg <dgrumberg at apple.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M clang/include/clang/ExtractAPI/API.h
    M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
    M clang/lib/ExtractAPI/API.cpp
    M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
    M clang/test/ExtractAPI/anonymous_record_no_typedef.c

  Log Message:
  -----------
  Reenable anon structs (#104922)

Add back missing includes and revert revert "[clang][ExtractAPI] Stop
dropping fields of nested anonymous record types when they aren't
attached to variable declaration (#104600)"


  Commit: 723a9b87e212a06ae1183f52aa51fa5e367d5a68
      https://github.com/llvm/llvm-project/commit/723a9b87e212a06ae1183f52aa51fa5e367d5a68
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/tools/llvm-cgdata/llvm-cgdata.cpp

  Log Message:
  -----------
  [llvm-cgdata] Fix -Wcovered-switch-default (NFC)

/llvm-project/llvm/tools/llvm-cgdata/llvm-cgdata.cpp:349:3:
error: default label in switch which covers all enumeration values [-Werror,-Wcovered-switch-default]
  default:
  ^
1 error generated.


  Commit: b5f7b6961d2bc4d852fc3a5992aecf5e2e48baee
      https://github.com/llvm/llvm-project/commit/b5f7b6961d2bc4d852fc3a5992aecf5e2e48baee
  Author: Tomas Matheson <tomas.matheson at arm.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/unittests/TargetParser/TargetParserTest.cpp

  Log Message:
  -----------
  [AArch64] fix buildbot by removing dead code

Failure with -Werror buildbot caused by #104587


  Commit: 1c3955f9dff9b653be88d5dea5bc3cd007904e90
      https://github.com/llvm/llvm-project/commit/1c3955f9dff9b653be88d5dea5bc3cd007904e90
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

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

  Log Message:
  -----------
  [clang][OpenMP] Fix typo in comment, NFC


  Commit: 55d744eea36194809c4d16437db08aaa91c74292
      https://github.com/llvm/llvm-project/commit/55d744eea36194809c4d16437db08aaa91c74292
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUAnnotateUniformValues.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAsanInstrumentation.h
    M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
    A llvm/lib/Target/AMDGPU/AMDGPUMemoryUtils.cpp
    A llvm/lib/Target/AMDGPU/AMDGPUMemoryUtils.h
    M llvm/lib/Target/AMDGPU/AMDGPUPromoteKernelArguments.cpp
    M llvm/lib/Target/AMDGPU/CMakeLists.txt
    R llvm/lib/Target/AMDGPU/Utils/AMDGPUMemoryUtils.cpp
    R llvm/lib/Target/AMDGPU/Utils/AMDGPUMemoryUtils.h
    M llvm/lib/Target/AMDGPU/Utils/CMakeLists.txt

  Log Message:
  -----------
  [AMDGPU] Move AMDGPUMemoryUtils out of Utils. NFC. (#104930)

It is only used by CodeGen so does not need to be shared with the
assembler/disassembler.


  Commit: d5e9691509aa774d1acedc4d3fa2d497757a2d6d
      https://github.com/llvm/llvm-project/commit/d5e9691509aa774d1acedc4d3fa2d497757a2d6d
  Author: Durgadoss R <durgadossr at nvidia.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/docs/NVPTXUsage.rst
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    A llvm/test/CodeGen/NVPTX/elect.ll

  Log Message:
  -----------
  [NVPTX] Add elect.sync Intrinsic (#104780)

This patch adds an NVVM intrinsic and NVPTX codegen for the elect.sync
PTX instruction. Lit tests are
added in elect.ll and verified through ptxas.

PTX ISA reference:

https://docs.nvidia.com/cuda/parallel-thread-execution/index.html#parallel-synchronization-and-communication-instructions-elect-sync

Signed-off-by: Durgadoss R <durgadossr at nvidia.com>


  Commit: 5f777347197da26f9f9b5c561b5ba83f307519bb
      https://github.com/llvm/llvm-project/commit/5f777347197da26f9f9b5c561b5ba83f307519bb
  Author: Chris Apple <cja-private at pm.me>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/docs/BitCodeFormat.rst

  Log Message:
  -----------
  [NFC] Remove explicit bitcode enumeration from BitCodeFormat.rst (#102618)

This explicit listing of the bitcodes is out of date, and had fallen out of date in the past as well.

Delete the explicit listing and point users to where they can find it.


  Commit: 5032fa89ad1ea1b460a0b9ef1375d7c868db1712
      https://github.com/llvm/llvm-project/commit/5032fa89ad1ea1b460a0b9ef1375d7c868db1712
  Author: Marius Brehler <marius.brehler at amd.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
    M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
    M mlir/test/Dialect/EmitC/invalid_ops.mlir
    M mlir/test/Dialect/EmitC/ops.mlir

  Log Message:
  -----------
  [MLIR][EmitC] Allow ptrdiff_t as result in sub op (#104921)

This explicitly allows the `emitc.ptrdiff_t` type for the result of
substrating two pointers and changes the example accordingly.


  Commit: c670cb47d109b68158dd53885aff94542a8312c5
      https://github.com/llvm/llvm-project/commit/c670cb47d109b68158dd53885aff94542a8312c5
  Author: S. Bharadwaj Yadavalli <Bharadwaj.Yadavalli at microsoft.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    R llvm/test/CodeGen/DirectX/Metadata/empty-valver1.8.ll

  Log Message:
  -----------
  [DXIL][Analysis] Delete unnecessary test (#105025)

Delete an unnecessary test added in an earlier PR.


  Commit: 90a8e5a7ac52d05c2331f0f3d1461fcab6b7d520
      https://github.com/llvm/llvm-project/commit/90a8e5a7ac52d05c2331f0f3d1461fcab6b7d520
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

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

  Log Message:
  -----------
  InferAddressSpaces: Factor replacement loop into function [NFC] (#104430)


  Commit: f9e2a86b2e852dbed027e6aea5b48f32f2415b13
      https://github.com/llvm/llvm-project/commit/f9e2a86b2e852dbed027e6aea5b48f32f2415b13
  Author: Nicolas van Kempen <nvankemp at gmail.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/ASTMatchers/ASTMatchers.h
    M clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp

  Log Message:
  -----------
  [clang][ASTMatcher] Fix execution order of hasOperands submatchers (#104148)

`hasOperands` does not always execute matchers in the order they are
written. This can cause issue in code using bindings when one operand
matcher is relying on a binding set by the other. With this change, the
first matcher present in the code is always executed first and any
binding it sets are available to the second matcher.

Simple example with current version (1 match) and new version (2
matches):
```bash
> cat tmp.cpp
int a = 13;
int b = ((int) a) - a;
int c = a - ((int) a);

> clang-query tmp.cpp
clang-query> set traversal IgnoreUnlessSpelledInSource
clang-query> m binaryOperator(hasOperands(cStyleCastExpr(has(declRefExpr(hasDeclaration(valueDecl().bind("d"))))), declRefExpr(hasDeclaration(valueDecl(equalsBoundNode("d"))))))

Match #1:

tmp.cpp:1:1: note: "d" binds here
int a = 13;
^~~~~~~~~~
tmp.cpp:2:9: note: "root" binds here
int b = ((int)a) - a;
        ^~~~~~~~~~~~
1 match.

> ./build/bin/clang-query tmp.cpp
clang-query> set traversal IgnoreUnlessSpelledInSource
clang-query> m binaryOperator(hasOperands(cStyleCastExpr(has(declRefExpr(hasDeclaration(valueDecl().bind("d"))))), declRefExpr(hasDeclaration(valueDecl(equalsBoundNode("d"))))))

Match #1:

tmp.cpp:1:1: note: "d" binds here
    1 | int a = 13;
      | ^~~~~~~~~~
tmp.cpp:2:9: note: "root" binds here
    2 | int b = ((int)a) - a;
      |         ^~~~~~~~~~~~

Match #2:

tmp.cpp:1:1: note: "d" binds here
    1 | int a = 13;
      | ^~~~~~~~~~
tmp.cpp:3:9: note: "root" binds here
    3 | int c = a - ((int)a);
      |         ^~~~~~~~~~~~
2 matches.
```

If this should be documented or regression tested anywhere please let me
know where.


  Commit: 8f44feedb593cde6826d1b417c4d4d58ca060dde
      https://github.com/llvm/llvm-project/commit/8f44feedb593cde6826d1b417c4d4d58ca060dde
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/docs/LangRef.rst

  Log Message:
  -----------
  [docs] Fix typo in llvm.experimental.vector.compress code-block snippet


  Commit: c106e8d729d121bb70739d9703be8b8cd416916f
      https://github.com/llvm/llvm-project/commit/c106e8d729d121bb70739d9703be8b8cd416916f
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

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

  Log Message:
  -----------
  [Support] Remove unneeded __has_include fallback

This is a C++17 feature implemented in all supported compilers.

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


  Commit: 7c06786479311fbf19f54c7980c6e96936fa05a8
      https://github.com/llvm/llvm-project/commit/7c06786479311fbf19f54c7980c6e96936fa05a8
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/cmake/config-ix.cmake
    M llvm/include/llvm/Config/config.h.cmake
    M llvm/lib/Support/Unix/Signals.inc
    M llvm/unittests/Support/SignalsTest.cpp
    M llvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn
    M utils/bazel/llvm-project-overlay/llvm/config.bzl
    M utils/bazel/llvm-project-overlay/llvm/include/llvm/Config/config.h
    M utils/bazel/llvm_configs/config.h.cmake

  Log Message:
  -----------
  [CMake] Remove HAVE_LINK_H

We can remove the variable from https://reviews.llvm.org/D5610 since
link.h is available on Linux (glibc/musl/Bionic), FreeBSD, and NetBSD.
Use `__has_include(<link.h>)` before including it.

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


  Commit: 61f8ab3a367505ac8fab900f9160ecd629a85859
      https://github.com/llvm/llvm-project/commit/61f8ab3a367505ac8fab900f9160ecd629a85859
  Author: Alex Rice <alexrice999 at hotmail.co.uk>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/IRDL/IR/IRDL.td
    M mlir/include/mlir/Dialect/IRDL/IR/IRDLOps.td

  Log Message:
  -----------
  [mlir] [irdl] Improve IRDL documentation (#104928)

Updates some of the irdl documentation to be in line with the current
state of IRDL. Also removes some trailing spaces in this documentation.


  Commit: 2641ed7d26198557a63ce447a0584a96494a5ac4
      https://github.com/llvm/llvm-project/commit/2641ed7d26198557a63ce447a0584a96494a5ac4
  Author: Johannes Doerfert <johannes at jdoerfert.de>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/IPO/OpenMPOpt.cpp
    M llvm/test/Transforms/OpenMP/spmdization.ll

  Log Message:
  -----------
  [OpenMP][FIX] Check for requirements early (#104836)

If we can't transform the region to SPMD, we should not wait till the
end to decide that. Other AAs might assume SPMD, and we did set the
constant initializer to indicate SPMD, but we did not change the code
properly.


  Commit: dfc3494d48f06be9144b9a1d5cb76e519c194215
      https://github.com/llvm/llvm-project/commit/dfc3494d48f06be9144b9a1d5cb76e519c194215
  Author: Kyungwoo Lee <kyulee at meta.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:

  Log Message:
  -----------
  Fix a warning for -Wcovered-switch-default (#105054)

This fixes a build break from [llvm/llvm-project] Reland [CGData]
llvm-cgdata #89884 (PR #101461)


  Commit: 9b25ad818c0b82fe4db8b43e9c9700805a2c7322
      https://github.com/llvm/llvm-project/commit/9b25ad818c0b82fe4db8b43e9c9700805a2c7322
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/fold-loop-of-urem.ll
    M llvm/test/Transforms/CodeGenPrepare/X86/fold-loop-of-urem.ll

  Log Message:
  -----------
  [CodeGenPrepare][X86] Add tests for fixing `urem` transform; NFC


  Commit: e4c67ba67ee25e74bbcb719f90dba6e2e9ce41a0
      https://github.com/llvm/llvm-project/commit/e4c67ba67ee25e74bbcb719f90dba6e2e9ce41a0
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/test/CodeGen/X86/fold-loop-of-urem.ll
    M llvm/test/Transforms/CodeGenPrepare/X86/fold-loop-of-urem.ll

  Log Message:
  -----------
  Recommit "[CodeGenPrepare] Folding `urem` with loop invariant value"

Was missing remainder on `Start` value.

Also changed logic as as nikic suggested (getting loop from `PN`
instead of `Rem`). The prior impl increased the complexity of the code
and made debugging it more difficult.

Closes #104877


  Commit: aaba552f51e1a96f829afa8b422ca8d7ace55781
      https://github.com/llvm/llvm-project/commit/aaba552f51e1a96f829afa8b422ca8d7ace55781
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vdiv-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vdivu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vrem-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vremu-vp.ll

  Log Message:
  -----------
  [RISCV] Add coverage for VP div[u]/rem[u] with non-power-of-2 vectors

This already works, just adding coverage to show that before a change
which depends on this functionality.


  Commit: 0e24686af49d2f9e50438d3a27db6f1ade594855
      https://github.com/llvm/llvm-project/commit/0e24686af49d2f9e50438d3a27db6f1ade594855
  Author: Mital Ashok <mital at mitalashok.co.uk>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/FormatString.cpp
    M clang/lib/Sema/SemaExpr.cpp
    A clang/test/CXX/drs/cwg722.cpp
    M clang/test/CXX/drs/cwg7xx.cpp
    A clang/test/Sema/format-pointer.c
    M clang/test/Sema/format-strings-pedantic.c
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  [Clang] CWG722: nullptr to ellipses (#104704)

https://cplusplus.github.io/CWG/issues/722.html

nullptr passed to a variadic function now converted to void* in C++.
This does not affect C23 nullptr.

Also fixes -Wformat-pedantic so that it no longer warns for nullptr
passed to %p (because it is converted to void* in C++ and it is allowed
for va_arg(ap, void*) in C23)


  Commit: 8ac924744e93258d0c490e2fa2d4518e24cb458d
      https://github.com/llvm/llvm-project/commit/8ac924744e93258d0c490e2fa2d4518e24cb458d
  Author: Kunwar Grover <groverkss at gmail.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

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

  Log Message:
  -----------
  [bazel] Port bf68e9047f62c22ca87f9a4a7c59a46b3de06abb (#104907)

Add dep on ControlFlowInterfaces for arith td files


  Commit: abd3a2ded32a4dfad63ed6397f291c64453d744f
      https://github.com/llvm/llvm-project/commit/abd3a2ded32a4dfad63ed6397f291c64453d744f
  Author: Chenguang Wang <w3cing at gmail.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

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

  Log Message:
  -----------
  [bazel] Add missing deps in {Arith,DLTI}DialectTdFiles (#105091)


  Commit: 514481736cf943464125ef34570a7df0a19290de
      https://github.com/llvm/llvm-project/commit/514481736cf943464125ef34570a7df0a19290de
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

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

  Log Message:
  -----------
  [RISCV] Add isel optimization for (and (sra y, c2), c1) to recover regression from #101751. (#104114)

If c1 is a shifted mask with c3 leading zeros and c4 trailing zeros. If
c2 is greater than c3, we can use (srli (srai y, c2 - c3), c3 + c4)
followed by a SHXADD with c4 as the X amount.

Without Zba we can use (slli (srli (srai y, c2 - c3), c3 + c4), c4).
Alive2: https://alive2.llvm.org/ce/z/AwhheR


  Commit: 6a38e19c92ed09eeecb70d5f61c3b822acb4964d
      https://github.com/llvm/llvm-project/commit/6a38e19c92ed09eeecb70d5f61c3b822acb4964d
  Author: S. Bharadwaj Yadavalli <Bharadwaj.Yadavalli at microsoft.com>
  Date:   2024-08-20 (Tue, 20 Aug 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/saturate.hlsl
    A clang/test/SemaHLSL/BuiltIns/saturate-errors.hlsl
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    A llvm/test/CodeGen/DirectX/saturate.ll
    A llvm/test/CodeGen/DirectX/saturate_errors.ll
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/saturate.ll

  Log Message:
  -----------
  [HLSL] Implement support for HLSL intrinsic  - saturate (#104619)

Implement support for HLSL intrinsic saturate.
Implement DXIL codegen for the intrinsic saturate by lowering it to DXIL
Op dx.saturate.
Implement SPIRV codegen by transforming saturate(x) to clamp(x, 0.0f,
1.0f).

Add tests for DXIL and SPIRV CodeGen.


  Commit: e6751bfbf77bd9888b7882a46e2453e4ed149c7b
      https://github.com/llvm/llvm-project/commit/e6751bfbf77bd9888b7882a46e2453e4ed149c7b
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

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

  Log Message:
  -----------
  [NFC][TableGen] Elminate use of isalpha/isdigit from TGLexer (#104837)

- Replace use of std::isalpha, std::isdigit, std:isxdigit with LLVM's
StringExtras versions, to avoid possibly locale dependent behavior (e.g.
glibc).
- Create helper function for common checks for valid identifier
characters.


  Commit: e0326b668efda1d4ed7969c1a6cca44a487d24b6
      https://github.com/llvm/llvm-project/commit/e0326b668efda1d4ed7969c1a6cca44a487d24b6
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M clang/test/OpenMP/nvptx_allocate_codegen.cpp
    M offload/test/api/omp_device_alloc.c

  Log Message:
  -----------
  [OpenMP] Map `omp_default_mem_alloc` to global memory (#104790)

Summary:
Currently, we assign this to private memory. This causes failures on
some SOLLVE tests. The standard isn't clear on the semantics of this
allocation type, but there seems to be a consensus that it's supposed to
be shared memory.


  Commit: e0441d587b3c5c5d11b08cbcfbbbb66ea8185510
      https://github.com/llvm/llvm-project/commit/e0441d587b3c5c5d11b08cbcfbbbb66ea8185510
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx2cIssues.csv
    M libcxx/include/__chrono/leap_second.h

  Log Message:
  -----------
  [libc++][chono] Use hidden friends for leap_second comparison. (#104713)

The function

    template<class Duration>
requires three_way_comparable_with<sys_seconds, sys_time<Duration>>
constexpr auto operator<=>(const leap_second& x, const
sys_time<Duration>& y) noexcept;

Has a recursive constrained. This caused an infinite loop in GCC and is
now hit by https://github.com/llvm/llvm-project/pull/102857.

A fix would be to make this function a hidden friend, this solution is
propsed in LWG4139.

For consistency all comparisons are made hidden friends. Since the issue
causes compilation failures no additional test are needed.

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


  Commit: 93eda08babe95188ee41400035abaade79cda7d1
      https://github.com/llvm/llvm-project/commit/93eda08babe95188ee41400035abaade79cda7d1
  Author: Angel Zhang <angel.zhang at amd.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M mlir/lib/Conversion/ConvertToSPIRV/CMakeLists.txt
    M mlir/lib/Conversion/ConvertToSPIRV/ConvertToSPIRVPass.cpp
    A mlir/test/Conversion/ConvertToSPIRV/argmax-kernel.mlir
    A mlir/test/Conversion/ConvertToSPIRV/gpu.mlir
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir][spirv] Support `gpu` in `convert-to-spirv` pass (#105010)

This PR adds conversion patterns for GPU to the `convert-to-spirv` pass,
introduced in #95942. Now the pass is able to convert each `gpu.module`
and its ops within a `builtin.module` into a `spirv.module`.

**Future Plans**
- Use `gpu.launch_func` to invoke kernel from host functions
- Potentially integrate into the `mlir-vulkan-runner` for e2e testing


  Commit: 7aa22f013e24d20291aad745368ff907baa9dfa4
      https://github.com/llvm/llvm-project/commit/7aa22f013e24d20291aad745368ff907baa9dfa4
  Author: Andrea Faulds <andrea.faulds at amd.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
    M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
    M mlir/lib/Conversion/GPUToSPIRV/GPUToSPIRV.cpp
    M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
    M mlir/lib/Dialect/GPU/Transforms/SubgroupReduceLowering.cpp
    M mlir/test/Dialect/GPU/canonicalize.mlir
    M mlir/test/Dialect/GPU/invalid.mlir
    M mlir/test/Dialect/GPU/subgroup-reduce-lowering.mlir

  Log Message:
  -----------
  [mlir][gpu] Add 'cluster_size' attribute to gpu.subgroup_reduce (#104851)

This enables performing several reductions in parallel, each smaller
than the size of the subgroup.

One potential application is flash attention with subgroup-wide matrix
multiplication and reduction combined in one kernel. The multiplication
operation requires a 2D matrix to be distributed over the lanes of the
subgroup, which then constrains the shape the following reduction can
have if we want to keep data in registers.


  Commit: 770cd24140038646539602406fff54497793dae8
      https://github.com/llvm/llvm-project/commit/770cd24140038646539602406fff54497793dae8
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M lldb/source/Plugins/ExpressionParser/Clang/ASTUtils.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ASTUtils.h
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp

  Log Message:
  -----------
  [lldb][ClangExpressionParser] Don't leak memory when multiplexing ExternalASTSources (#104799)

When we use `SemaSourceWithPriorities` as the `ASTContext`s
ExternalASTSource, we allocate a `ClangASTSourceProxy` (via
`CreateProxy`) and two `ExternalASTSourceWrapper`. Then we push these
sources into a vector in `SemaSourceWithPriorities`. The allocated
`SemaSourceWithPriorities` itself will get properly deallocated because
the `ASTContext` wraps it in an `IntrusiveRefCntPtr`. But the three
sources we allocated earlier will never get released.

This patch fixes this by mimicking what `MultiplexExternalSemaSource`
does (which is what `SemaSourceWithPriorities` is based on anyway).
I.e., when `SemaSourceWithPriorities` gets constructed, it increments
the use count of its sources. And on destruction it decrements them.

Similarly, to make sure we dealloacted the `ClangASTProxy` properly, the
`ExternalASTSourceWrapper` now assumes shared ownership of the
underlying source.


  Commit: ddaa8284f5b4a240108eac8db92fa3eaae3299f5
      https://github.com/llvm/llvm-project/commit/ddaa8284f5b4a240108eac8db92fa3eaae3299f5
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M compiler-rt/lib/fuzzer/FuzzerUtilFuchsia.cpp

  Log Message:
  -----------
  Revert "[compiler-rt][fuzzer] implements SetThreadName for fuchsia." (#105162)

Reverts llvm/llvm-project#99953


  Commit: 8056d92bc201906edbb27f4efa1cc80a18359880
      https://github.com/llvm/llvm-project/commit/8056d92bc201906edbb27f4efa1cc80a18359880
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M lldb/source/Plugins/ExpressionParser/Clang/ASTUtils.h
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
    A lldb/test/Shell/Expr/TestAnonNamespaceParamFunc.cpp

  Log Message:
  -----------
  [lldb][ClangExpressionParser] Implement ExternalSemaSource::ReadUndefinedButUsed (#104817)

While parsing an expression, Clang tries to diagnose usage of decls
(with possibly non-external linkage) for which it hasn't been provided
with a definition. This is the case, e.g., for functions with parameters
that live in an anonymous namespace (those will have `UniqueExternal`
linkage, this is computed [here in
computeTypeLinkageInfo](https://github.com/llvm/llvm-project/blob/ea8bb4d633683f5cbfd82491620be3056f347a02/clang/lib/AST/Type.cpp#L4647-L4653)).
Before diagnosing such situations, Clang calls
`ExternalSemaSource::ReadUndefinedButUsed`. The intended use of this API
is to extend the set of "used but not defined" decls with additional
ones that the external source knows about. However, in LLDB's case, we
never provide `FunctionDecl`s with a definition, and instead rely on the
expression parser to resolve those symbols by linkage name. Thus, to
avoid the Clang parser from erroring out in these situations, this patch
implements `ReadUndefinedButUsed` which just removes the "undefined"
non-external `FunctionDecl`s that Clang found.

We also had to add an `ExternalSemaSource` to the `clang::Sema` instance
LLDB creates. We previously didn't have any source on `Sema`. Because we
add the `ExternalASTSourceWrapper` here, that means we'd also
technically be adding the `ClangExpressionDeclMap` as an
`ExternalASTSource` to `Sema`, which is fine because `Sema` will only be
calling into the `ExternalSemaSource` APIs (though nothing currently
strictly enforces this, which is a bit worrying).

Note, the decision for whether to put a function into `UndefinedButUsed`
is done in
[Sema::MarkFunctionReferenced](https://github.com/llvm/llvm-project/blob/ea8bb4d633683f5cbfd82491620be3056f347a02/clang/lib/Sema/SemaExpr.cpp#L18083-L18087).
The `UniqueExternal` linkage computation is done in
[getLVForNamespaceScopeDecl](https://github.com/llvm/llvm-project/blob/ea8bb4d633683f5cbfd82491620be3056f347a02/clang/lib/AST/Decl.cpp#L821-L833).

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


  Commit: 356533246aa33db44c75afb2d3eb6e0e08f0d7a6
      https://github.com/llvm/llvm-project/commit/356533246aa33db44c75afb2d3eb6e0e08f0d7a6
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/OperatingSystemPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/OperatingSystemPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptInterpreterPythonInterfaces.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptInterpreterPythonInterfaces.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/ScriptedPlatformPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/ScriptedPlatformPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface/ScriptedThreadPlanPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface/ScriptedThreadPlanPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp

  Log Message:
  -----------
  [lldb] Fix windows debug build after 9d07f43 (#104896)

This patch tries to fix an issue with the windows debug builds where the
PDB file for python scripted interfaces cannot be opened since its path
length exceed the windows `MAX_PATH` limit:

https://github.com/llvm/llvm-project/pull/101672#issuecomment-2289481324

This patch addresses the issue by building all the interfaces as a
single library plugin that initiliazes each component as part of its
`Initialize` method, instead of building each interface as its own
library plugin.

This keeps the build artifact path length smaller while respecting the
naming convention and without making any exception in the build system.

Fixes #104895.

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: c8a678b1e4863df2845b1305849534047f10caf1
      https://github.com/llvm/llvm-project/commit/c8a678b1e4863df2845b1305849534047f10caf1
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/CtxProfAnalysis.h
    M llvm/lib/Analysis/CtxProfAnalysis.cpp
    M llvm/unittests/Analysis/CMakeLists.txt
    A llvm/unittests/Analysis/CtxProfAnalysisTest.cpp

  Log Message:
  -----------
  [ctx_prof] Add analysis utility to fetch ID of a callsite (#104491)

This will be needed when maintaining the contextual profile for ICP or inlining - we'll need to first fetch the ID of a callsite, which is in an instrumentation instruction (intrinsic) preceding the callsite.


  Commit: e56ad22b4a41e65984d6997b2c2496a20f906d1d
      https://github.com/llvm/llvm-project/commit/e56ad22b4a41e65984d6997b2c2496a20f906d1d
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILOpBuilder.cpp
    M llvm/lib/Target/DirectX/DXILOpBuilder.h
    M llvm/lib/Target/DirectX/DXILOpLowering.cpp

  Log Message:
  -----------
  [DirectX] Encapsulate DXILOpLowering's state into a class. NFC

This introduces an anonymous class "OpLowerer" to help with lowering DXIL ops,
and moves the DXILOpBuilder there instead of creating a new one for every
operation. DXILOpBuilder is also changed to own its IRBuilder, since that makes
it simpler to ensure that it isn't misused.

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


  Commit: 655d62c4b326f2606b1e89a4dff0212c1d9226ab
      https://github.com/llvm/llvm-project/commit/655d62c4b326f2606b1e89a4dff0212c1d9226ab
  Author: Alex Rice <alexrice999 at hotmail.co.uk>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M mlir/include/mlir/IR/CommonTypeConstraints.td

  Log Message:
  -----------
  [mlir][tablegen] Fix tablegen bug with `Complex` class (#104974)

The `Complex` class in tablegen tries to store its element type, but due
to a name collision it actually ends up storing the `type` field of the
`ConfinedType` superclass, and so `elementType` is always set to
`AnyComplex`.

This renames the field so that it gets correctly set.


  Commit: 30318401ad64b11dcad891d8ba86b81715caa408
      https://github.com/llvm/llvm-project/commit/30318401ad64b11dcad891d8ba86b81715caa408
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/unittests/Analysis/CMakeLists.txt

  Log Message:
  -----------
  Fix post-104491 (#105191)


  Commit: c44202574ff9a8c0632aba30c2765b134557435f
      https://github.com/llvm/llvm-project/commit/c44202574ff9a8c0632aba30c2765b134557435f
  Author: Peiming Liu <peiming at google.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorOps.td
    M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Sparsification.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/CodegenEnv.h
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/LoopEmitter.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/LoopEmitter.h
    M mlir/test/Dialect/SparseTensor/sparse_kernels_to_iterator.mlir

  Log Message:
  -----------
  [mlir][sparse] support sparsification to coiterate operations. (#102546)


  Commit: b941ba1e126d44f94ff317c9a996143c3165774b
      https://github.com/llvm/llvm-project/commit/b941ba1e126d44f94ff317c9a996143c3165774b
  Author: Sumanth Gundapaneni <sumanth.gundapaneni at amd.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/lib/CodeGen/MachineVerifier.cpp
    M llvm/lib/IR/Verifier.cpp
    A llvm/test/Assembler/lround.ll
    M llvm/test/MachineVerifier/test_g_llround.mir
    M llvm/test/MachineVerifier/test_g_lround.mir

  Log Message:
  -----------
  llvm.lround: Update verifier to validate support of vector types. (#98950)

Both IRVerifier and Machine Verifier are updated


  Commit: 31e55d461693df035049e09cbeeb8886ca2cb6d3
      https://github.com/llvm/llvm-project/commit/31e55d461693df035049e09cbeeb8886ca2cb6d3
  Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M lldb/test/API/lang/cpp/bitfields/TestCppBitfields.py

  Log Message:
  -----------
  [lldb] Disable the API test TestCppBitfields on Windows (#105037)

This test causes the assert in clang CodeGen and python crashes with the
error code 0x80000003. See #105019 for more details. Note the similar
test lldb/test/API/lang/c/bitfields/TestBitfields.py is already disabled
on Windows.


  Commit: f73050e722dd2e484358d03674eb186f3a2f4799
      https://github.com/llvm/llvm-project/commit/f73050e722dd2e484358d03674eb186f3a2f4799
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M libcxx/include/__algorithm/partition.h
    M libcxx/include/__pstl/backends/default.h
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/partition.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.contains/ranges.contains.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.ends_with/ranges.ends_with.pass.cpp
    M libcxx/test/std/containers/associative/from_range_associative_containers.h
    M libcxx/test/std/containers/container.adaptors/from_range_container_adaptors.h
    M libcxx/test/std/containers/sequences/from_range_sequence_containers.h
    M libcxx/test/std/containers/unord/from_range_unordered_containers.h
    M libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.distance/iterator_sentinel.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.distance/range.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.counted/counted.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.elements/iterator/increment.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.split/begin.pass.cpp
    A libcxx/test/std/ranges/range.utility/range.subrange/begin_end.pass.cpp
    M libcxx/test/std/strings/basic.string/string.cons/from_range.pass.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.formatter/format.functions.tests.h
    M libcxx/test/std/utilities/memory/specialized.algorithms/specialized.construct/construct_at.pass.cpp
    A libcxx/test/support/double_move_tracker.h
    M libcxx/test/support/test_iterators.h

  Log Message:
  -----------
  [libc++] Fix several double-moves in the code base (#104616)

This patch hardens the "test iterators" we use to test algorithms by
ensuring that they don't get double-moved. As a result of this
hardening, the tests started reporting multiple failures where we would
double-move iterators, which are being fixed in this patch.

In particular:
- Fixed a double-move in pstl.partition
- Add coverage for begin()/end() in subrange tests
- Fix tests for ranges::ends_with and ranges::contains, which were
  incorrectly calling begin() twice on the same subrange containing
  non-copyable input iterators.

Fixes #100709


  Commit: fd4f9520a6a08c3dcf15622e3b887d8f3624fc42
      https://github.com/llvm/llvm-project/commit/fd4f9520a6a08c3dcf15622e3b887d8f3624fc42
  Author: Ahmed Bougacha <ahmed at bougacha.org>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/include/llvm/BinaryFormat/MachO.h
    M llvm/lib/BinaryFormat/MachO.cpp
    M llvm/lib/MC/MachObjectWriter.cpp
    M llvm/lib/Object/MachOObjectFile.cpp
    M llvm/test/MC/AArch64/arm64e-subtype.s
    A llvm/test/tools/llvm-objdump/AArch64/Inputs/fat.macho-arm64e-kernel-ptrauth-abi
    A llvm/test/tools/llvm-objdump/AArch64/Inputs/fat.macho-arm64e-ptrauth-abi
    A llvm/test/tools/llvm-objdump/AArch64/macho-universal-arm64e-kernel-ptrauth-abi.test
    A llvm/test/tools/llvm-objdump/AArch64/macho-universal-arm64e-ptrauth-abi.test
    A llvm/test/tools/llvm-objdump/macho-ptrauth-cpusubtype.test
    M llvm/tools/dsymutil/MachOUtils.cpp
    M llvm/tools/llvm-objdump/MachODump.cpp
    M llvm/unittests/BinaryFormat/MachOTest.cpp

  Log Message:
  -----------
  [AArch64][MachO] Add ptrauth ABI version to arm64e cpusubtype. (#104650)

In a mach_header, the cpusubtype is a 32-bit field, but it's split in 2
subfields:
- the low 24 bits containing the cpu subtype proper, (e.g.,
CPU_SUBTYPE_ARM64E 2)
- the high 8 bits containing a capability field used for additional
feature flags.

Notably, it's only the subtype subfield that participates in fat file
slice discrimination: the caps are ignored.

arm64e uses the caps subfield to encode a ptrauth ABI version:
- 0x80 (CPU_SUBTYPE_PTRAUTH_ABI) denotes a versioned binary
- 0x40 denotes a kernel-ABI binary
- 0x00-0x0F holds the ptrauth ABI version

This teaches the basic obj tools to decode that (or ignore it when
unneeded).

It also teaches the MachO writer to default to emitting versioned
binaries, but with a version of 0 (and without the kernel ABI flag).

Modern arm64e requires versioned binaries: a binary with 0x00 caps in
cpusubtype is now rejected by the linker and everything after. We can
live without the sophistication of specifying the version and kernel ABI
for now.

Co-authored-by: Francis Visoiu Mistrih <francisvm at apple.com>


  Commit: 552d26e275b094f7ceb96ede9cc478b23e2c12cc
      https://github.com/llvm/llvm-project/commit/552d26e275b094f7ceb96ede9cc478b23e2c12cc
  Author: Finlay <finlay.marno at codeplay.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
    M mlir/lib/Conversion/GPUToLLVMSPV/GPUToLLVMSPV.cpp
    M mlir/test/Conversion/GPUToLLVMSPV/gpu-to-llvm-spv.mlir
    M mlir/test/Dialect/GPU/invalid.mlir

  Log Message:
  -----------
  [mlir][gpu] Add extra value types for gpu::ShuffleOp (#104605)

Expand the accepted types for gpu.shuffle to any integer, float or 1d vector of integers or floats.
Also updated the gpu-to-llvm-spv pass to support those types.


  Commit: 349d76d490fe0e32995f7381c91c17f38541f691
      https://github.com/llvm/llvm-project/commit/349d76d490fe0e32995f7381c91c17f38541f691
  Author: Connie Zhu <60797237+connieyzhu at users.noreply.github.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/utils/lit/tests/Inputs/shtest-cat/cat-error-0.txt
    M llvm/utils/lit/tests/Inputs/shtest-cat/cat-error-1.txt
    M llvm/utils/lit/tests/Inputs/shtest-cat/cat.txt

  Log Message:
  -----------
  [llvm-lit][test] Updated built-in cat command tests (#104473)

This patch makes changes to improve syntax in tests and to add more
strict checks on cat output. This is a prequisite for
https://github.com/llvm/llvm-project/pull/101530.


  Commit: 6558e04f02858bff61c01c9ec0900849fc8532f5
      https://github.com/llvm/llvm-project/commit/6558e04f02858bff61c01c9ec0900849fc8532f5
  Author: Connie Zhu <60797237+connieyzhu at users.noreply.github.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M lldb/test/Shell/Driver/TestUseColor.test

  Log Message:
  -----------
  [lldb][test] Change unsupported cat -e to cat -v to work with lit internal shell (#104878)

This patch changes the test that uses the `cat -e` option to `cat -v` so
that the test can be run using lit's internal shell. For `cat`, the `-v`
option prints non-printing characters in ^ and M- notation, while the
`-e` option adds `$` to the end of lines in addition to printing
non-printing characters in ^ and M- notation. This is an alternative
patch to https://github.com/llvm/llvm-project/pull/102061, opting to
rewrite the test that uses `cat -e` instead of extending support to the
`-e` option.

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


  Commit: ce132a58b8d5fcd21c50204171f5c30d939df516
      https://github.com/llvm/llvm-project/commit/ce132a58b8d5fcd21c50204171f5c30d939df516
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx12.cl
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx90a.cl
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx940.cl

  Log Message:
  -----------
  clang/AMDGPU: Emit atomicrmw from {global|flat}_atomic_fadd_v2f16 builtins (#96873)


  Commit: 10cc4a5fab3ad8da7a64ba784007b99a039134c1
      https://github.com/llvm/llvm-project/commit/10cc4a5fab3ad8da7a64ba784007b99a039134c1
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M flang/lib/Semantics/expression.cpp
    A flang/test/Semantics/structconst10.f90

  Log Message:
  -----------
  [flang] More support for anonymous parent components in struct constr… (#102642)

…uctors

A non-conforming extension to Fortran present in a couple other
compilers is allowing a anonymous component in a structure constructor
to initialize a parent (or greater ancestor) component. This was working
in this compiler only for direct parents, and only when the type was not
use-associated.

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


  Commit: 90d753ab75afdaab998cad20620b8197610e6dbd
      https://github.com/llvm/llvm-project/commit/90d753ab75afdaab998cad20620b8197610e6dbd
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M flang/lib/Semantics/resolve-names.cpp
    A flang/test/Semantics/implicit15.f90

  Log Message:
  -----------
  [flang] Fix inheritance of IMPLICIT typing rules (#102692)

Interfaces don't inherit the IMPLICIT typing rules of their enclosing
scope, and separate MODULE PROCEDUREs inherit the IMPLICIT typing rules
of submodule in which they are defined, not the rules from their
interface.

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


  Commit: f0590177b28a3940b9afdf2f65eae054eeb49eed
      https://github.com/llvm/llvm-project/commit/f0590177b28a3940b9afdf2f65eae054eeb49eed
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M flang/lib/Semantics/definable.cpp
    M flang/test/Semantics/undef-result01.f90

  Log Message:
  -----------
  [flang] Silence an inappropriate warning (#104685)

A bare ALLOCATE statement with no SOURCE= rightly earns a warning about
an undefined function result, if that result is an allocatable that
appears in the ALLOCATE. But in the case of a pointer, where the warning
should care more about the pointer's association status than the value
of its target, a bare ALLOCATE should suffice to silence the warning.


  Commit: 143be4eafc69ed9a0923f44cdf99710cbaa70132
      https://github.com/llvm/llvm-project/commit/143be4eafc69ed9a0923f44cdf99710cbaa70132
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M flang/lib/Semantics/tools.cpp
    M flang/test/Semantics/declarations05.f90

  Log Message:
  -----------
  [flang] Silence spurious error (#104821)

Don't complain about a local object with an impure final procedure in a
pure subprogram when the local object is a named constant.

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


  Commit: 1e1cf258c718bdce8c50c2b1923f1a522163fbc9
      https://github.com/llvm/llvm-project/commit/1e1cf258c718bdce8c50c2b1923f1a522163fbc9
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M flang/include/flang/Evaluate/real.h
    M flang/lib/Evaluate/fold-real.cpp
    M flang/test/Evaluate/fold-nearest.f90

  Log Message:
  -----------
  [flang] Fix IEEE_NEAREST_AFTER folding edge cases (#104846)

Conversions of infinities from other kinds to real(10) were incorrect,
and comparisons of real(2) vs real(3) are dicey as conversions in one
direction can overflow and conversions in the other can lose precision.
Use real(16) as the common type for comparisons in IEEE_NEAREST_AFTER.


  Commit: 8266d47cd18eaf8755fba2a496c799c931f3bf6c
      https://github.com/llvm/llvm-project/commit/8266d47cd18eaf8755fba2a496c799c931f3bf6c
  Author: Johannes Doerfert <johannes at jdoerfert.de>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

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

  Log Message:
  -----------
  [Attributor] Improve AAUnderlyingObjects (#104835)

- Allocas and GlobalValues cannot be simplified, so we should not try.
- If we never used any assumed state, the AAUnderlyingObjects doesn't
require an additional update.
- If we have seen an object (or it's underlying object) before, we do
not need to inspect it anymore.

The original logic for "SeenObjects" was flawed and caused us to add
intermediate values to the underlying object list if a PHI or select
instruction referenced the same underlying object twice. The test
changes are all instances of this situation and we now correctly derive
`memory(none)` for the functions that only access stack memory.

---------

Co-authored-by: Shilei Tian <i at tianshilei.me>


  Commit: c932a0eb2ee222380a7fe237b7efb872c39e7d6b
      https://github.com/llvm/llvm-project/commit/c932a0eb2ee222380a7fe237b7efb872c39e7d6b
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/lib/Target/DirectX/DXIL.td

  Log Message:
  -----------
  [Driver,DXIL] Fix build


  Commit: 0a22655f31b146da68f1276c072b30be8392d1ef
      https://github.com/llvm/llvm-project/commit/0a22655f31b146da68f1276c072b30be8392d1ef
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx90a.cl
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx940.cl

  Log Message:
  -----------
  clang/AMDGPU: Emit atomicrmw from flat_atomic_{f32|f64} builtins (#96874)


  Commit: 5822cc271be4cb9dcf454922ea13aac11d88be8a
      https://github.com/llvm/llvm-project/commit/5822cc271be4cb9dcf454922ea13aac11d88be8a
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx12.cl
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx940.cl

  Log Message:
  -----------
  clang/AMDGPU: Emit atomicrmw for global/flat fadd v2bf16 builtins (#96875)


  Commit: 93e0f312c2a8709e7d4747570ddd40243314ea6b
      https://github.com/llvm/llvm-project/commit/93e0f312c2a8709e7d4747570ddd40243314ea6b
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx90a.cl

  Log Message:
  -----------
  clang/AMDGPU: Emit atomicrmw for flat/global atomic min/max f64 builtins (#96876)


  Commit: 6e8c97035ca32c6b163f8735a340e15e011ec0c8
      https://github.com/llvm/llvm-project/commit/6e8c97035ca32c6b163f8735a340e15e011ec0c8
  Author: vporpo <vporpodas at google.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/SandboxIR.h
    M llvm/include/llvm/SandboxIR/SandboxIRValues.def
    M llvm/include/llvm/SandboxIR/Tracker.h
    M llvm/lib/SandboxIR/SandboxIR.cpp
    M llvm/lib/SandboxIR/Tracker.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp
    M llvm/unittests/SandboxIR/TrackerTest.cpp

  Log Message:
  -----------
  [SandboxIR] Implement CatchSwitchInst (#104652)

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


  Commit: afeef4dbc3a9e523c82022ccd30bf9875ded12c8
      https://github.com/llvm/llvm-project/commit/afeef4dbc3a9e523c82022ccd30bf9875ded12c8
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

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

  Log Message:
  -----------
  AMDGPU/NewPM: Fill out passes in addCodeGenPrepare (#102867)

AMDGPUAnnotateKernelFeatures hasn't been ported yet, but it
should be soon removable.


  Commit: 33e18b2b433a6e8331e09cc60965e4c943b66c05
      https://github.com/llvm/llvm-project/commit/33e18b2b433a6e8331e09cc60965e4c943b66c05
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

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

  Log Message:
  -----------
  AMDGPU/NewPM: Start filling out addIRPasses (#102884)

This is not complete, but gets AtomicExpand running. I was able
to get further than I expected; we're quite close to having all
the IR codegen passes ported.


  Commit: 26ae31662b4ac3fe5569733316ac7de9d19d5fd5
      https://github.com/llvm/llvm-project/commit/26ae31662b4ac3fe5569733316ac7de9d19d5fd5
  Author: yingopq <115543042+yingopq at users.noreply.github.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/CodeGenOptions.def
    M clang/include/clang/Driver/Options.td
    M clang/lib/Driver/ToolChains/Clang.cpp
    A clang/test/Driver/mips-msa.c

  Log Message:
  -----------
  [clang] Support -Wa, options -mmsa and -mno-msa (#99615)

Co-authored-by: Fangrui Song <i at maskray.me>


  Commit: 66ab4b80a4103a67a3c79b8c3b0974e301903f05
      https://github.com/llvm/llvm-project/commit/66ab4b80a4103a67a3c79b8c3b0974e301903f05
  Author: Kelvin Li <kkwli at users.noreply.github.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M flang/unittests/Runtime/Time.cpp

  Log Message:
  -----------
  [flang] Re-enable date_and_time intrinsic test (NFC) (#104967)


  Commit: d03dcf6e8c360e2b46bed16b329d186c68fbcc6a
      https://github.com/llvm/llvm-project/commit/d03dcf6e8c360e2b46bed16b329d186c68fbcc6a
  Author: ZERICO2005 <71151164+ZERICO2005 at users.noreply.github.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M clang/docs/LanguageExtensions.rst

  Log Message:
  -----------
  [NFC] Fixed two typos: "__builin_" --> "__builtin_" (#98782)

Fixed two typos:
1. `__builin_va_list` --> `__builtin_va_list`
2. `__builin_suspend` --> `__builtin_suspend`


  Commit: 660de533a23485eec4c5f8d3d88f9dd53497bcf8
      https://github.com/llvm/llvm-project/commit/660de533a23485eec4c5f8d3d88f9dd53497bcf8
  Author: Michael Park <mcypark at gmail.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M clang/docs/InternalsManual.rst

  Log Message:
  -----------
  [NFC] Fix a typo in InternalsManual: ActOnCXX -> ActOnXXX (#105207)

This part of the manual describes uses of `ActOnXXX` and `BuildXXX`.


  Commit: 1233df731761060a655814fb975dc741b2ab5393
      https://github.com/llvm/llvm-project/commit/1233df731761060a655814fb975dc741b2ab5393
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M flang/test/Evaluate/fold-nearest.f90

  Log Message:
  -----------
  [flang] Disable failing test (#105327)

flang/test/Evaluate/fold-nearest.f90 is failing oddly on ppc64le;
disable it for now while I sort things out.


  Commit: 2599d695128381e6932b43f0e95649c533308d6d
      https://github.com/llvm/llvm-project/commit/2599d695128381e6932b43f0e95649c533308d6d
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    M llvm/test/CodeGen/RISCV/GlobalISel/alu-roundtrip.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/alu_m-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-div-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-rem-rv64.mir

  Log Message:
  -----------
  [RISCV][GISel] Remove s32 support on RV64 for DIV, and REM. (#102519)

Based on experience with SelectionDAG and experimental-rv64-legal-i32, I
don't believe making s32 a legal type is viable without introducing an
invariant that s32 values are always sign extended like Mips64 does.
Mips64 does this with a separate 32-bit register class.

`experimental-rv64-legal-i32` was removed in ##102509.

This patch is part of a series to remove s32 support so we can remove
the isel patterns that SelectionDAG is no longer using. To restore code
quality, we will need to add custom W nodes like SelectionDAG.


  Commit: 295fe0bd438209831071ffbacf003c4941f31b90
      https://github.com/llvm/llvm-project/commit/295fe0bd438209831071ffbacf003c4941f31b90
  Author: Justin Stitt <justinstitt at google.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/docs/UndefinedBehaviorSanitizer.rst
    M clang/include/clang/AST/Expr.h
    M clang/include/clang/AST/Stmt.h
    M clang/include/clang/Basic/LangOptions.h
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Driver/SanitizerArgs.h
    M clang/lib/AST/Expr.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/Driver/SanitizerArgs.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    A clang/test/CodeGen/ignore-overflow-pattern-false-pos.c
    A clang/test/CodeGen/ignore-overflow-pattern.c

  Log Message:
  -----------
  [Clang] Re-land Overflow Pattern Exclusions (#104889)

Introduce "-fsanitize-undefined-ignore-overflow-pattern=" which can
be used to disable sanitizer instrumentation for common overflow-dependent
code patterns.

For a wide selection of projects, proper overflow sanitization could
help catch bugs and solve security vulnerabilities. Unfortunately, in
some cases the integer overflow sanitizers are too noisy for their users
and are often left disabled. Providing users with a method to disable
sanitizer instrumentation of common patterns could mean more projects
actually utilize the sanitizers in the first place.

One such project that has opted to not use integer overflow (or
truncation) sanitizers is the Linux Kernel. There has been some
discussion[1] recently concerning mitigation strategies for unexpected
arithmetic overflow. This discussion is still ongoing and a succinct
article[2] accurately sums up the discussion. In summary, many Kernel
developers do not want to introduce more arithmetic wrappers when
most developers understand the code patterns as they are.

Patterns like:

  if (base + offset < base) { ... }

or

  while (i--) { ... }

or

  #define SOME -1UL

are extremely common in a code base like the Linux Kernel. It is
perhaps too much to ask of kernel developers to use arithmetic wrappers
in these cases. For example:

  while (wrapping_post_dec(i)) { ... }

which wraps some builtin would not fly. This would incur too many
changes to existing code; the code churn would be too much, at least too
much to justify turning on overflow sanitizers.

Currently, this commit tackles three pervasive idioms:

1. "if (a + b < a)" or some logically-equivalent re-ordering like "if (a > b + a)"
2. "while (i--)" (for unsigned) a post-decrement always overflows here
3. "-1UL, -2UL, etc" negation of unsigned constants will always overflow

The patterns that are excluded can be chosen from the following list:

- add-overflow-test
- post-decr-while
- negated-unsigned-const

These can be enabled with a comma-separated list:

  -fsanitize-undefined-ignore-overflow-pattern=add-overflow-test,negated-unsigned-const

"all" or "none" may also be used to specify that all patterns should be
excluded or that none should be.

[1] https://lore.kernel.org/all/202404291502.612E0A10@keescook/
[2] https://lwn.net/Articles/979747/

CCs: @efriedma-quic @kees @jyknight @fmayer @vitalybuka
Signed-off-by: Justin Stitt <justinstitt at google.com>
Co-authored-by: Bill Wendling <morbo at google.com>


  Commit: e96146cd46b29e0d100a4566358da8fb38bea43e
      https://github.com/llvm/llvm-project/commit/e96146cd46b29e0d100a4566358da8fb38bea43e
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M offload/test/api/omp_device_alloc.c

  Log Message:
  -----------
  [OpenMP] Temporarily disable test to keep bots green

Summary:
This test mysteriously fails on the bots but not locally, disable until
I can figure out why.


  Commit: dd90c72b05822927bf62724759f73c491166248c
      https://github.com/llvm/llvm-project/commit/dd90c72b05822927bf62724759f73c491166248c
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

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

  Log Message:
  -----------
  AMDGPU: Temporarily stop adding AtomicExpand to new PM passes

This breaks using -passes=atomic-expand (but only sometimes?).
Somehow an AtomicExpand pass ends up running without a TargetMachine,
despite always being constructed with one.


  Commit: 0c489863e77575287caa57f1194c78ac3c30035b
      https://github.com/llvm/llvm-project/commit/0c489863e77575287caa57f1194c78ac3c30035b
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M flang/test/Evaluate/fold-nearest.f90

  Log Message:
  -----------
  [flang] Disable part of failing test (temporary) (#105350)

A new section of a test is failing on aarch64 and ppc64le; disable it
while I sort things out.


  Commit: 8f3050684ef22aa8403c3820e89ebef915136bf7
      https://github.com/llvm/llvm-project/commit/8f3050684ef22aa8403c3820e89ebef915136bf7
  Author: Maksim Panchenko <maks at fb.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M bolt/lib/Core/BinaryFunction.cpp

  Log Message:
  -----------
  [BOLT] Reduce CFI warning verbosity (#105336)

CFI programs may have more saves than restores and this is completely
benign from BOLT's perspective. Reduce the verbosity and print the
warning only under `-v=1` and above.


  Commit: 91b423d955ff1da6cfbe82436ffee280fa25cd02
      https://github.com/llvm/llvm-project/commit/91b423d955ff1da6cfbe82436ffee280fa25cd02
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/MatchContext.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int.ll

  Log Message:
  -----------
  [DAG][RISCV] Use vp.<binop> when widening illegal types for binops which can trap (#105214)

This allows the use a single wider operation with a restricted EVL
instead of having to split and cover via decreasing powers-of-two sizes.

On RISCV, this avoids the need for a bunch of vslidedown and vslideup
instructions to extract subvectors, and VL toggles to switch between the
various widths.

Note there is a potential downside of using vp nodes; we loose any
generic DAG combines which might have applied to the split form.


  Commit: 2353f484a51b9aab992402400010bbb450fea1b2
      https://github.com/llvm/llvm-project/commit/2353f484a51b9aab992402400010bbb450fea1b2
  Author: Michael Jones <michaelrj at google.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M libc/startup/linux/CMakeLists.txt

  Log Message:
  -----------
  [libc] Include startup code when installing all (#105203)

Previously the libc startup code was marked `EXCLUDE_FROM_ALL` due to
build issues. This patch removes that as no longer necessary.


  Commit: aeeb74f94f51b515392f5503054dfd98b0af775b
      https://github.com/llvm/llvm-project/commit/aeeb74f94f51b515392f5503054dfd98b0af775b
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/cmake/platforms/WinMsvc.cmake

  Log Message:
  -----------
  [cmake] Set up llvm-ml as ASM_MASM tool in WinMsvc.cmake (#104903)

Nowadays, an ASM_MASM tool is required for building the BLAKE3 assembly
in llvm/lib/Support - the llvm-ml tool can do this.


  Commit: a3c66c8f35df9d231761385e2986c54e824d39fa
      https://github.com/llvm/llvm-project/commit/a3c66c8f35df9d231761385e2986c54e824d39fa
  Author: Michael Jones <michaelrj at google.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M libc/newhdrgen/yaml_to_classes.py

  Log Message:
  -----------
  [libc] move newheadergen back to safe_load (#105374)

In #100024 we moved from safe_load to load for reading the yaml in
newheadergen due to dependency issues. Those should be resolved by now
so this should be a simple safety improvement.


  Commit: 389f339c11179fe047e7f564657c86247933e445
      https://github.com/llvm/llvm-project/commit/389f339c11179fe047e7f564657c86247933e445
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/benchmarks/CMakeLists.txt
    A llvm/benchmarks/GetIntrinsicForClangBuiltin.cpp
    M llvm/include/llvm/IR/Intrinsics.h
    M llvm/include/llvm/TableGen/StringToOffsetTable.h
    M llvm/unittests/IR/IntrinsicsTest.cpp
    M llvm/utils/TableGen/IntrinsicEmitter.cpp

  Log Message:
  -----------
  [TableGen] Rework `EmitIntrinsicToBuiltinMap` (#104681)

Rework `IntrinsicEmitter::EmitIntrinsicToBuiltinMap` for improved
    peformance as well as refactor the code.

    Performance:
    - Current generated code does a linear search on the TargetPrefix,
      followed by a binary search on the builtin names for that
      target's builtins.
    - Improve the performance of this code in 2 ways:
      (a) Use binary search on the target prefix to lookup the builtin
          table for the target.
      (b) Improve the (common) case of when all builtins for a target
          share a common prefix.  Check this common prefix first, and
then do the binary search in the builtin table using the builtin
          name with the common prefix removed. This should help
          both data size (by creating a smaller static string table) and
          runtime (by reducing the cost of binary search on smaller
          strings).

    Refactor:
    - Use range based for loops for iterating over maps.
- Use formatv() and C++ raw string literals to simplify the emission
code.
    - Change the generated `getIntrinsicForClangBuiltin` and 
      `getIntrinsicForMSBuiltin`  to take a `StringRef` instead of 
      `const char *` for the prefix.


  Commit: 5e6a1987a5d4574d3c3811f878ddbbbf7c35fa01
      https://github.com/llvm/llvm-project/commit/5e6a1987a5d4574d3c3811f878ddbbbf7c35fa01
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    M llvm/test/CodeGen/RISCV/GlobalISel/iabs.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-abs-rv64.mir

  Log Message:
  -----------
  [RISCV][GISel] Remove s32 support for G_ABS on RV64.


  Commit: 019e1a3a4285ae34c215d4b7526df041e0aeb250
      https://github.com/llvm/llvm-project/commit/019e1a3a4285ae34c215d4b7526df041e0aeb250
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

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

  Log Message:
  -----------
  [bazel] Add missing dependencies for c8a678b1e4863df2845b1305849534047f10caf1


  Commit: c9a4c51bb0018778bb78871e555b06613530f155
      https://github.com/llvm/llvm-project/commit/c9a4c51bb0018778bb78871e555b06613530f155
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M flang/test/Evaluate/fold-nearest.f90

  Log Message:
  -----------
  [flang] Fix test on ppc64le & aarch64 (#105439)

Don't try to fold x87 extended precision operations in a test unless
it's targeting x86-64.


  Commit: 1a2a18fdc00dc9fc8955107d16b48a476320e542
      https://github.com/llvm/llvm-project/commit/1a2a18fdc00dc9fc8955107d16b48a476320e542
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/test/Analysis/DXILResource/buffer-frombinding.ll

  Log Message:
  -----------
  [DXIL][Analysis] Update test to match comment. NFC (#105409)

The mismatch between the comment on this test and the test itself was
pointed out in
https://github.com/llvm/llvm-project/pull/100699#discussion_r1715835841,
but apparently I failed to actually commit the fix.


  Commit: 26b79f87079091ecd805f6dfb624df7ba6d702d1
      https://github.com/llvm/llvm-project/commit/26b79f87079091ecd805f6dfb624df7ba6d702d1
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    A llvm/test/Transforms/FunctionAttrs/cold.ll

  Log Message:
  -----------
  [FunctionAttrs] Add tests for deducing attr `cold` on functions; NFC


  Commit: b7eac8c6fea1ba3930d08011a0e5e3a262bfaece
      https://github.com/llvm/llvm-project/commit/b7eac8c6fea1ba3930d08011a0e5e3a262bfaece
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
    M llvm/test/Transforms/FunctionAttrs/cold.ll

  Log Message:
  -----------
  [FunctionAttrs] deduce attr `cold` on functions if all CG paths call a `cold` function

Closes #101298


  Commit: 8d712b4e3f14fe0102a5065cbd5b758dc997b529
      https://github.com/llvm/llvm-project/commit/8d712b4e3f14fe0102a5065cbd5b758dc997b529
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M lldb/test/Shell/Expr/TestAnonNamespaceParamFunc.cpp

  Log Message:
  -----------
  [lldb][test] XFAIL TestAnonNamespaceParamFunc.cpp on Windows

This recently added test is failing on Windows with:
```
c:\users\tcwg\llvm-worker\lldb-aarch64-windows\build\bin\lldb.exe --no-lldbinit -S C:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/tools/lldb\test\Shell\lit-lldb-init-quiet C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\build\tools\lldb\test\Shell\Expr\Output\TestAnonNamespaceParamFunc.cpp.tmp -o run -o "expression func(a)" -o exit | c:\users\tcwg\llvm-worker\lldb-aarch64-windows\build\bin\filecheck.exe C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\test\Shell\Expr\TestAnonNamespaceParamFunc.cpp
executed command: 'c:\users\tcwg\llvm-worker\lldb-aarch64-windows\build\bin\lldb.exe' --no-lldbinit -S 'C:/Users/tcwg/llvm-worker/lldb-aarch64-windows/build/tools/lldb\test\Shell\lit-lldb-init-quiet' 'C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\build\tools\lldb\test\Shell\Expr\Output\TestAnonNamespaceParamFunc.cpp.tmp' -o run -o 'expression func(a)' -o exit
.---command stderr------------
| TestAnonNamespaceParamFunc.cpp.tmp :: Class 'tagARRAYDESC' has a member 'tdescElem' of type 'tagTYPEDESC' which does not have a complete definition.error: TestAnonNamespaceParamFunc.cpp.tmp :: Class 'tagARRAYDESC' has a member 'tdescElem' of type 'tagTYPEDESC' which does not have a complete definition.
| (lldb) TestAnonNamespaceParamFunc.cpp.tmp :: Class 'std::partial_ordering' has a member 'less' of type 'std::partial_ordering' which does not have a complete definition.error: TestAnonNamespaceParamFunc.cpp.tmp :: Class 'std::partial_ordering' has a member 'less' of type 'std::partial_ordering' which does not have a complete definition.
| (lldb) TestAnonNamespaceParamFunc.cpp.tmp :: Class 'std::strong_ordering' has a member 'less' of type 'std::strong_ordering' which does not have a complete definition.error: TestAnonNamespaceParamFunc.cpp.tmp :: Class 'std::strong_ordering' has a member 'less' of type 'std::strong_ordering' which does not have a complete definition.
| (lldb) TestAnonNamespaceParamFunc.cpp.tmp :: Class 'std::weak_ordering' has a member 'less' of type 'std::weak_ordering' which does not have a complete definition.error: TestAnonNamespaceParamFunc.cpp.tmp :: Class 'std::weak_ordering' has a member 'less' of type 'std::weak_ordering' which does not have a complete definition.
| (lldb) error: Couldn't look up symbols:
|   int func(struct `anonymous namespace'::InAnon)
| Hint: The expression tried to call a function that is not present in the target, perhaps because it was optimized out by the compiler.
`-----------------------------
executed command: 'c:\users\tcwg\llvm-worker\lldb-aarch64-windows\build\bin\filecheck.exe' 'C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\test\Shell\Expr\TestAnonNamespaceParamFunc.cpp'
.---command stderr------------
| C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\test\Shell\Expr\TestAnonNamespaceParamFunc.cpp:10:11: error: CHECK: expected string not found in input
| // CHECK: (int) $0 = 15
|           ^
| <stdin>:16:26: note: scanning from here
| (lldb) expression func(a)
|                          ^
```

So the function is still not callable. But AFAICT, this is not a
regression, since this function wasn't callable prior to the patch
anyway. I currently do not have a Windows setup to test this on,
so XFAIL for now.


  Commit: 1e9d0028d35ae69263aa848b4cb02245f442eb5c
      https://github.com/llvm/llvm-project/commit/1e9d0028d35ae69263aa848b4cb02245f442eb5c
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

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

  Log Message:
  -----------
  [RISCV][GISel] Split LoadStoreActions in LoadActions and StoreActions.

Remove widenToNextPow2 from StoreActions.
Reorder clampScalar and lowerIfMemSizeNotByteSizePow2 for StoreActions.

These match AArch64 and got me further on a test case I was playing with
that contained a i129 store.


  Commit: f01f80ce6ca7640bb0e267b84b1ed0e89b57e2d9
      https://github.com/llvm/llvm-project/commit/f01f80ce6ca7640bb0e267b84b1ed0e89b57e2d9
  Author: Adrian Prantl <aprantl at apple.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M lldb/bindings/python/python-wrapper.swig
    M lldb/include/lldb/API/SBFrame.h
    M lldb/include/lldb/Interpreter/ScriptInterpreter.h
    M lldb/include/lldb/Target/StackFrame.h
    M lldb/include/lldb/Target/StackFrameList.h
    M lldb/include/lldb/Target/StackFrameRecognizer.h
    M lldb/include/lldb/Target/Thread.h
    M lldb/source/API/SBFrame.cpp
    M lldb/source/API/SBThread.cpp
    M lldb/source/Commands/CommandCompletions.cpp
    M lldb/source/Commands/CommandObjectFrame.cpp
    M lldb/source/Commands/CommandObjectMemory.cpp
    M lldb/source/Commands/CommandObjectThread.cpp
    M lldb/source/Commands/Options.td
    M lldb/source/Core/Debugger.cpp
    M lldb/source/Interpreter/CommandInterpreter.cpp
    M lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/SWIGPythonBridge.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPythonImpl.h
    M lldb/source/Target/Process.cpp
    M lldb/source/Target/StackFrame.cpp
    M lldb/source/Target/StackFrameList.cpp
    M lldb/source/Target/StackFrameRecognizer.cpp
    M lldb/source/Target/Thread.cpp
    M lldb/source/Target/ThreadPlanStepOut.cpp
    M lldb/test/API/commands/frame/recognizer/TestFrameRecognizer.py
    M lldb/test/API/commands/frame/recognizer/main.m
    M lldb/test/API/commands/frame/recognizer/recognizer.py
    A lldb/test/API/lang/cpp/std-function-recognizer/Makefile
    A lldb/test/API/lang/cpp/std-function-recognizer/TestStdFunctionRecognizer.py
    A lldb/test/API/lang/cpp/std-function-recognizer/main.cpp

  Log Message:
  -----------
  [lldb] Extend frame recognizers to hide frames from backtraces (#104523)

Compilers and language runtimes often use helper functions that are
fundamentally uninteresting when debugging anything but the
compiler/runtime itself. This patch introduces a user-extensible
mechanism that allows for these frames to be hidden from backtraces and
automatically skipped over when navigating the stack with `up` and
`down`.

This does not affect the numbering of frames, so `f <N>` will still
provide access to the hidden frames. The `bt` output will also print a
hint that frames have been hidden.

My primary motivation for this feature is to hide thunks in the Swift
programming language, but I'm including an example recognizer for
`std::function::operator()` that I wished for myself many times while
debugging LLDB.

rdar://126629381


Example output. (Yes, my proof-of-concept recognizer could hide even
more frames if we had a method that returned the function name without
the return type or I used something that isn't based off regex, but it's
really only meant as an example).

before:
```
(lldb) thread backtrace --filtered=false
* thread #1, queue = 'com.apple.main-thread', stop reason = breakpoint 1.1
  * frame #0: 0x0000000100001f04 a.out`foo(x=1, y=1) at main.cpp:4:10
    frame #1: 0x0000000100003a00 a.out`decltype(std::declval<int (*&)(int, int)>()(std::declval<int>(), std::declval<int>())) std::__1::__invoke[abi:se200000]<int (*&)(int, int), int, int>(__f=0x000000016fdff280, __args=0x000000016fdff224, __args=0x000000016fdff220) at invoke.h:149:25
    frame #2: 0x000000010000399c a.out`int std::__1::__invoke_void_return_wrapper<int, false>::__call[abi:se200000]<int (*&)(int, int), int, int>(__args=0x000000016fdff280, __args=0x000000016fdff224, __args=0x000000016fdff220) at invoke.h:216:12
    frame #3: 0x0000000100003968 a.out`std::__1::__function::__alloc_func<int (*)(int, int), std::__1::allocator<int (*)(int, int)>, int (int, int)>::operator()[abi:se200000](this=0x000000016fdff280, __arg=0x000000016fdff224, __arg=0x000000016fdff220) at function.h:171:12
    frame #4: 0x00000001000026bc a.out`std::__1::__function::__func<int (*)(int, int), std::__1::allocator<int (*)(int, int)>, int (int, int)>::operator()(this=0x000000016fdff278, __arg=0x000000016fdff224, __arg=0x000000016fdff220) at function.h:313:10
    frame #5: 0x0000000100003c38 a.out`std::__1::__function::__value_func<int (int, int)>::operator()[abi:se200000](this=0x000000016fdff278, __args=0x000000016fdff224, __args=0x000000016fdff220) const at function.h:430:12
    frame #6: 0x0000000100002038 a.out`std::__1::function<int (int, int)>::operator()(this= Function = foo(int, int) , __arg=1, __arg=1) const at function.h:989:10
    frame #7: 0x0000000100001f64 a.out`main(argc=1, argv=0x000000016fdff4f8) at main.cpp:9:10
    frame #8: 0x0000000183cdf154 dyld`start + 2476
(lldb) 
```

after

```
(lldb) bt
* thread #1, queue = 'com.apple.main-thread', stop reason = breakpoint 1.1
  * frame #0: 0x0000000100001f04 a.out`foo(x=1, y=1) at main.cpp:4:10
    frame #1: 0x0000000100003a00 a.out`decltype(std::declval<int (*&)(int, int)>()(std::declval<int>(), std::declval<int>())) std::__1::__invoke[abi:se200000]<int (*&)(int, int), int, int>(__f=0x000000016fdff280, __args=0x000000016fdff224, __args=0x000000016fdff220) at invoke.h:149:25
    frame #2: 0x000000010000399c a.out`int std::__1::__invoke_void_return_wrapper<int, false>::__call[abi:se200000]<int (*&)(int, int), int, int>(__args=0x000000016fdff280, __args=0x000000016fdff224, __args=0x000000016fdff220) at invoke.h:216:12
    frame #6: 0x0000000100002038 a.out`std::__1::function<int (int, int)>::operator()(this= Function = foo(int, int) , __arg=1, __arg=1) const at function.h:989:10
    frame #7: 0x0000000100001f64 a.out`main(argc=1, argv=0x000000016fdff4f8) at main.cpp:9:10
    frame #8: 0x0000000183cdf154 dyld`start + 2476
Note: Some frames were hidden by frame recognizers
```


  Commit: 4a4b233f35adaed44e50157db3846d0d23f2f6e1
      https://github.com/llvm/llvm-project/commit/4a4b233f35adaed44e50157db3846d0d23f2f6e1
  Author: DanielLevi6 <75536731+DanielLevi6 at users.noreply.github.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
    M mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp

  Log Message:
  -----------
  [mlir][linalg] Improve getPreservedProducerResults estimation in ElementwiseOpFusion (#104409)

This commit changes the getPreservedProducerResults function so that it
takes the consumer into account along with the producer, in order to
predict which of the producer’s outputs can be dropped during the fusion
process. It provides a more accurate prediction, considering that the
fusion process also depends on the consumer.


  Commit: a16f0dc9c2f0690e28622b0d80bd154fb0e6a30a
      https://github.com/llvm/llvm-project/commit/a16f0dc9c2f0690e28622b0d80bd154fb0e6a30a
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/GISel/RISCVCallLowering.cpp
    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

  Log Message:
  -----------
  [RISCV][GISel] Allow >2*XLen integers in isSupportedReturnType.


  Commit: 81ee38551f2c9d1677471ab59bdc800e667b9616
      https://github.com/llvm/llvm-project/commit/81ee38551f2c9d1677471ab59bdc800e667b9616
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILOpLowering.cpp
    A llvm/lib/Target/DirectX/DXILOpLowering.h
    M llvm/lib/Target/DirectX/DXILPrettyPrinter.cpp
    A llvm/lib/Target/DirectX/DXILPrettyPrinter.h
    M llvm/lib/Target/DirectX/DXILResourceAnalysis.cpp
    M llvm/lib/Target/DirectX/DXILResourceAnalysis.h
    M llvm/lib/Target/DirectX/DXILTranslateMetadata.cpp
    A llvm/lib/Target/DirectX/DXILTranslateMetadata.h
    M llvm/lib/Target/DirectX/DirectX.h
    M llvm/lib/Target/DirectX/DirectXPassRegistry.def
    M llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
    M llvm/test/CodeGen/DirectX/Metadata/dxilVer-1.0.ll
    M llvm/test/CodeGen/DirectX/Metadata/dxilVer-1.8.ll
    M llvm/test/CodeGen/DirectX/UAVMetadata.ll
    M llvm/test/CodeGen/DirectX/any.ll
    M llvm/test/CodeGen/DirectX/cbuf.ll
    M llvm/test/CodeGen/DirectX/floor.ll

  Log Message:
  -----------
  [DirectX] Register a few DXIL passes with the new PM

This wires up dxil-op-lower, dxil-intrinsic-expansion, dxil-translate-metadata,
and dxil-pretty-printer to the new pass manager, both as a matter of future
proofing the backend and so that they can be used more flexibly in tests.

A few arbitrary tests are updated in order to test the new PM path, and we drop
the "print-dxil-resource-md" pass since it's redundant with the pretty printer.

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


  Commit: a8ef679507743a05c1fdfa677a4599eefa04fc37
      https://github.com/llvm/llvm-project/commit/a8ef679507743a05c1fdfa677a4599eefa04fc37
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/GISel/RISCVCallLowering.cpp
    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

  Log Message:
  -----------
  Revert "[RISCV][GISel] Allow >2*XLen integers in isSupportedReturnType."

It didn't crash so I thought this worked now, but upon further review
it miscalculates the stack address for the return.


  Commit: 3145cff24bda61ae0d3ba3981c19599f12af95ab
      https://github.com/llvm/llvm-project/commit/3145cff24bda61ae0d3ba3981c19599f12af95ab
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-int.ll

  Log Message:
  -----------
  [RISCV] Add coverage for int reductions of <3 x i8> vectors

Specifically, to illustrate our general lowering strategy for
non-power of two vectors.


  Commit: e1c36bde0551977d4b2efae032af6dfc4b2b3936
      https://github.com/llvm/llvm-project/commit/e1c36bde0551977d4b2efae032af6dfc4b2b3936
  Author: Sami Tolvanen <samitolvanen at users.noreply.github.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/test/CodeGen/kcfi-normalize.c
    M llvm/lib/Transforms/Utils/ModuleUtils.cpp
    A llvm/test/Transforms/GCOVProfiling/kcfi-normalize.ll
    M llvm/test/Transforms/GCOVProfiling/kcfi.ll

  Log Message:
  -----------
  Fix KCFI types for generated functions with integer normalization (#104826)

With -fsanitize-cfi-icall-experimental-normalize-integers, Clang
appends ".normalized" to KCFI types in CodeGenModule::CreateKCFITypeId,
which changes type hashes also for functions that don't have integer
types in their signatures. However, llvm::setKCFIType does not take
integer normalization into account, which means LLVM generated
functions with KCFI types, e.g. sanitizer constructors, will fail KCFI
checks when integer normalization is enabled in Clang.

Add a cfi-normalize-integers module flag to indicate integer
normalization is used, and append ".normalized" to KCFI types also in
llvm::setKCFIType to fix the type mismatch.


  Commit: 39ec1f79b7b7708f534761d8b8d319b7ba423d6f
      https://github.com/llvm/llvm-project/commit/39ec1f79b7b7708f534761d8b8d319b7ba423d6f
  Author: Amara Emerson <amara at apple.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64CallingConvention.td
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
    M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
    M llvm/test/CodeGen/AArch64/sve-calling-convention-byref.ll
    M llvm/test/CodeGen/AArch64/sve-calling-convention.ll

  Log Message:
  -----------
  [AArch64] Basic SVE PCS support for handling scalable vectors on Darwin.

For the tests I just added +sve instead of what actual hardware has, which is only SME,
since otherwise all the test functions need to be marked as streaming mode.

rdar://121864771


  Commit: 381a803da253b75c8b7b10bb732e9e90925185e8
      https://github.com/llvm/llvm-project/commit/381a803da253b75c8b7b10bb732e9e90925185e8
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

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

  Log Message:
  -----------
  [RISCV][GISel] Merge RISCVCallLowering::lowerReturnVal into RISCVCallLowering::lowerReturn. NFC

This is similar to X86 and AArch64 structure.


  Commit: d8b6df2e8b1d294d92239e507c19b5622d86490d
      https://github.com/llvm/llvm-project/commit/d8b6df2e8b1d294d92239e507c19b5622d86490d
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp

  Log Message:
  -----------
  [mlir] Fix -Wunused-result in ElementwiseOpFusion.cpp (NFC)

/llvm-project/mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp:124:7:
error: ignoring return value of function declared with 'nodiscard' attribute [-Werror,-Wunused-result]
      opOperandsToIgnore.pop_back_val();
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.


  Commit: 2b84fe6f16bf2beb78e48e40db3752143ded6228
      https://github.com/llvm/llvm-project/commit/2b84fe6f16bf2beb78e48e40db3752143ded6228
  Author: YunQiang Su <yunqiang at isrc.iscas.ac.cn>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoD.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoF.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td
    M llvm/test/CodeGen/RISCV/double-intrinsics.ll
    M llvm/test/CodeGen/RISCV/float-intrinsics.ll
    M llvm/test/CodeGen/RISCV/half-intrinsics.ll

  Log Message:
  -----------
  RISC-V: Add fminimumnum and fmaximumnum support (#104411)

Since 2.2, `fmin.s/fmax.s` instructions follow the IEEE754-2019, if F
extension is avaiable; and `fmin.d/fmax.d` also follow the IEEE754-2019
if D extension is avaiable.

So, let's mark them as Legal.


  Commit: 5ec73b7dcf7f23225ccd37a605f0b752058ea643
      https://github.com/llvm/llvm-project/commit/5ec73b7dcf7f23225ccd37a605f0b752058ea643
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    A llvm/utils/gn/secondary/llvm/lib/CGData/BUILD.gn
    R llvm/utils/gn/secondary/llvm/lib/CodeGenData/BUILD.gn
    M llvm/utils/gn/secondary/llvm/test/BUILD.gn
    A llvm/utils/gn/secondary/llvm/tools/llvm-cgdata/BUILD.gn
    M llvm/utils/gn/secondary/llvm/unittests/BUILD.gn
    A llvm/utils/gn/secondary/llvm/unittests/CGData/BUILD.gn
    R llvm/utils/gn/secondary/llvm/unittests/CodeGenData/BUILD.gn

  Log Message:
  -----------
  Reland "[gn build] Port d3fb41dddc11 (llvm-cgdata)"

This reverts commit 6476a1d6865fc3a4c0fa3e436174a9a99a6ffedb.
d3fb41dddc11 relanded in 9bb555688caf6a.

...amended to incorporate changes from the reland.


  Commit: b96f18b20c31449ef9a6878b5c2725a7cf65c552
      https://github.com/llvm/llvm-project/commit/b96f18b20c31449ef9a6878b5c2725a7cf65c552
  Author: Ivy Zhang <yan3.zhang at intel.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M mlir/lib/Conversion/MathToLibm/MathToLibm.cpp
    M mlir/lib/Dialect/Math/Transforms/LegalizeToF32.cpp
    M mlir/test/Conversion/MathToLibm/convert-to-libm.mlir
    M mlir/test/Dialect/Math/legalize-to-f32.mlir

  Log Message:
  -----------
  [MLIR][MathDialect] fix fp32 promotion crash when encounters scf.if (#104451)

1. Expand legal op list in `legalizeToF32`
2. add legalization support for `math::rsqrtOp` in `mathToLibm`.


  Commit: 04ebae907ab4892ea79a20219a7231c425643f86
      https://github.com/llvm/llvm-project/commit/04ebae907ab4892ea79a20219a7231c425643f86
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

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

  Log Message:
  -----------
  [gn] tblgen opts for llvm-cgdata

This should have been part of 5ec73b7dcf7f232.


  Commit: 12d4c89e88bf9349a063fdd992233b29adeb8241
      https://github.com/llvm/llvm-project/commit/12d4c89e88bf9349a063fdd992233b29adeb8241
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M lld/test/ELF/error-handling-script-linux.test
    M lld/test/ELF/error-handling-script-windows.bat

  Log Message:
  -----------
  [ELF,test] Improve error-handling-script-linux.test

* Use split-file
* Remove -o /dev/null
* Avoid `{ list; }` compound command not supported by the lit internal shell (#102382)
* Don't test "ld.lld" before "error:" as per convention

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


  Commit: 64d75bd100ac974e7343740b1b692be89ce0d9a5
      https://github.com/llvm/llvm-project/commit/64d75bd100ac974e7343740b1b692be89ce0d9a5
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/Utils/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 55d744eea361


  Commit: d9b6e9f1c1565d9469eb0546da8c276051175408
      https://github.com/llvm/llvm-project/commit/d9b6e9f1c1565d9469eb0546da8c276051175408
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

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

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


  Commit: 0f22d47a7a1f70ec77ea8ccdf08a6487827937db
      https://github.com/llvm/llvm-project/commit/0f22d47a7a1f70ec77ea8ccdf08a6487827937db
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/include/llvm/LTO/LTO.h
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/LTO/ThinLTOCodeGenerator.cpp

  Log Message:
  -----------
  [LTO] Teach computeLTOCacheKey to return std::string (NFC) (#105331)

Without this patch, computeLTOCacheKey computes SHA1, creates its
hexadecimal representation with toHex, which returns std::string, and
then copies it to an output parameter of type SmallString.

This patch removes the redirection and teaches computeLTOCacheKey to
directly return std::string computed by toHex.  With the move
semantics, no buffer copy should be involved.

While I am at it, this patch adds a Twine to concatenate two strings.


  Commit: 35cec805bfa91fd9b83c29c45f3a5877e484bd85
      https://github.com/llvm/llvm-project/commit/35cec805bfa91fd9b83c29c45f3a5877e484bd85
  Author: Will Hawkins <hawkinsw at obs.cr>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M lldb/unittests/Process/elf-core/CMakeLists.txt
    M lldb/unittests/Process/elf-core/ThreadElfCoreTest.cpp

  Log Message:
  -----------
  [lldb][test] Workaround older systems that lack gettid (#104831)

Older glibc versions do not provide `gettid`. Provide our own `gettid`
in these cases.

Fixes a build failure caused by #104109.


  Commit: cbd302410e9f27013223a96edcd78dfb597979e1
      https://github.com/llvm/llvm-project/commit/cbd302410e9f27013223a96edcd78dfb597979e1
  Author: ShatianWang <38512325+ShatianWang at users.noreply.github.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M bolt/lib/Core/BinaryFunctionProfile.cpp
    A bolt/test/X86/infer-fall-throughs.s

  Log Message:
  -----------
  [BOLT] Improve BinaryFunction::inferFallThroughCounts() (#105450)

This PR improves how basic block execution count is updated when using
the BOLT option `-infer-fall-throughs`. Previously, if a 0-count
fall-through edge is assigned a positive inferred count N, then the
successor block's execution count will be incremented by N. Since the
successor's execution count is calculated using information besides
inflow sum (such as outflow sum), it likely is already correct, and
incrementing it by an additional N would be wrong. This PR improves how
the successor's execution count is updated by using the max over its
current count and N.


  Commit: 33f1aedef878931f61208b39c0220aa0d4bc9381
      https://github.com/llvm/llvm-project/commit/33f1aedef878931f61208b39c0220aa0d4bc9381
  Author: Chaitanya <Krishna.Sankisa at amd.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

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

  Log Message:
  -----------
  [AMDGPU] Update instrumentAddress method to support aligned size and unusual size accesses. (#104804)

This PR updates instrumentAddress api to support properly aligned sizes
and unsual size accesses. Changes ported from asan pass.


  Commit: 69a0af756b921ad445eb9684f325d27a1c3a13b8
      https://github.com/llvm/llvm-project/commit/69a0af756b921ad445eb9684f325d27a1c3a13b8
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
    M llvm/test/Transforms/FunctionAttrs/cold.ll

  Log Message:
  -----------
  Revert "[FunctionAttrs] deduce attr `cold` on functions if all CG paths call a `cold` function"

This reverts commit b7eac8c6fea1ba3930d08011a0e5e3a262bfaece.

Causing a test failure. Not 100% sure the issue so to reverting to
unblock pipeline.


  Commit: 341d86dcd3ec4ff3073d5f666564bb2cd38f6142
      https://github.com/llvm/llvm-project/commit/341d86dcd3ec4ff3073d5f666564bb2cd38f6142
  Author: Vladimir Vereschaka <vvereschaka at accesssoftek.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

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

  Log Message:
  -----------
  [CMake] Update CMake cache file for the ARM/Aarch64 cross toolchain builds. NFC. (#103552)

In order to build LLDB project added the following changes:

* enable LIBCXX_ENABLE_STATIC_ABI_LIBRARY option to link the ABI library statically.
* set LIBCXX_ABI_VERSION to 1 by default.


  Commit: 6c62ad446b2441b78ae524d9e700e351d5a76394
      https://github.com/llvm/llvm-project/commit/6c62ad446b2441b78ae524d9e700e351d5a76394
  Author: Vassil Vassilev <v.g.vassilev at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenModule.h
    M clang/lib/CodeGen/CodeGenTBAA.cpp
    M clang/lib/CodeGen/CodeGenTBAA.h
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/lib/CodeGen/CodeGenTypes.h
    M clang/lib/CodeGen/MicrosoftCXXABI.cpp
    A clang/test/Interpreter/assigment-with-implicit-ctor.cpp

  Log Message:
  -----------
  [clang-repl] [codegen] Reduce the state in TBAA. NFC for static compilation. (#98138)

In incremental compilation clang works with multiple `llvm::Module`s.
Our current approach is to create a CodeGenModule entity for every new
module request (via StartModule). However, some of the state such as the
mangle context needs to be preserved to keep the original semantics in
the ever-growing TU.

Fixes: llvm/llvm-project#95581.

cc: @jeaye


  Commit: a14c7309900f5a61f89b82f6f3d2dc5a51b3e1b4
      https://github.com/llvm/llvm-project/commit/a14c7309900f5a61f89b82f6f3d2dc5a51b3e1b4
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/EvalEmitter.cpp
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/test/CXX/temp/temp.arg/temp.arg.nontype/p1-11.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix diagnostic in final ltor cast (#105292)

Don't diagnose volatile reads but diagnose a few other accesses earlier.


  Commit: 6f456024c37424d9c8cc1cea07126a28f246588d
      https://github.com/llvm/llvm-project/commit/6f456024c37424d9c8cc1cea07126a28f246588d
  Author: Adrian Vogelsgesang <avogelsgesang at salesforce.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    A lldb/test/API/tools/lldb-dap/stackTrace/subtleFrames/Makefile
    A lldb/test/API/tools/lldb-dap/stackTrace/subtleFrames/TestDAP_subtleFrames.py
    A lldb/test/API/tools/lldb-dap/stackTrace/subtleFrames/main.cpp
    M lldb/tools/lldb-dap/JSONUtils.cpp

  Log Message:
  -----------
  [lldb-dap] Mark hidden frames as "subtle" (#105457)

This commit takes advantage of the recently introduced
`SBFrame::IsHidden` to show those hidden frames as "subtle" frames in
the UI. E.g., VS Code hides those stack frames by default, and renders
them as grayed out frames, in case the user decides to show them in the
stack trace


  Commit: 86f2ec03f898950e1e41c2205f4cf7c60d118390
      https://github.com/llvm/llvm-project/commit/86f2ec03f898950e1e41c2205f4cf7c60d118390
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/lib/DWARFLinker/Classic/DWARFLinker.cpp
    M llvm/test/tools/dsymutil/X86/modules.m

  Log Message:
  -----------
  [llvm][DWARFLinker] Don't attach DW_AT_dwo_id to CUs (#105186)

This fixes a verifier error uncovered as a result of
https://github.com/llvm/llvm-project/pull/101775.

When compiling with `-gmodules`, Clang will create a skeleton CU that
contains a `DW_AT_dwo_id` and a `DW_AT_dwo_name` corresponding to the
path of the `.pcm` that carries the type definitions referenced in the
non-skeleton CU (see the [gmodules LLDB
docs](https://lldb.llvm.org/resources/extensions.html) for more
details). The non-skeleton CU will also contain a `DW_AT_dwo_id` that
matches that of the skeleton.

`dsymutil` effectively undoes the `-gmodules` work, replacing all the
module type references with definitions. I.e., we no longer create a
skeleton `.dwo` CU.

Prior to this patch `dsymutil` did not strip out the `DW_AT_dwo_id` on
the non-skeleton CU. This now (since
https://github.com/llvm/llvm-project/pull/101775) causes verification
errors such as:
```
Verifying .debug_names...
error: Name Index @ 0x0: Entry @ 0x9a unable to load .dwo file "None"
for DWARF unit @ 0x0.
error: output verification failed for x86_64
make: *** [a.out.dSYM] Error 1
```
...because the verifier sees the DWO ID but can't find a matching `.dwo`
unit.

This patch simply strips the `DW_AT_dwo_id` from the main CU.


  Commit: 7f7f4feaf07dd3bb4b22d0c25d34b6c99c753aa2
      https://github.com/llvm/llvm-project/commit/7f7f4feaf07dd3bb4b22d0c25d34b6c99c753aa2
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    M llvm/test/CodeGen/AArch64/movimm-expand-ldst.ll
    M llvm/test/CodeGen/AArch64/movimm-expand-ldst.mir

  Log Message:
  -----------
  Revert "[AArch64] Optimize when storing symmetry constants" (#105474)

Reverts llvm/llvm-project#93717

Introduce stack use after return
https://lab.llvm.org/buildbot/#/builders/24/builds/1003


  Commit: 90556efaa2f5703920cce4a9c0ee36365e15e2ab
      https://github.com/llvm/llvm-project/commit/90556efaa2f5703920cce4a9c0ee36365e15e2ab
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-20 (Tue, 20 Aug 2024)

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

  Log Message:
  -----------
  [Driver] Use llvm::make_range(std::pair) (NFC) (#105470)


  Commit: a3d41879ecf5690a73f9226951d3856c7faa34a4
      https://github.com/llvm/llvm-project/commit/a3d41879ecf5690a73f9226951d3856c7faa34a4
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    A mlir/docs/DefiningDialects/Constraints.md
    M mlir/include/mlir/IR/BuiltinTypes.h
    M mlir/include/mlir/IR/BuiltinTypes.td
    M mlir/include/mlir/IR/CMakeLists.txt
    M mlir/include/mlir/IR/Constraints.td
    M mlir/include/mlir/TableGen/Constraint.h
    M mlir/lib/IR/BuiltinTypes.cpp
    M mlir/lib/IR/CMakeLists.txt
    M mlir/lib/TableGen/Constraint.cpp
    A mlir/test/mlir-tblgen/type-constraints.td
    M mlir/tools/mlir-tblgen/AttrOrTypeDefGen.cpp

  Log Message:
  -----------
  [mlir][ODS] Optionally generate public C++ functions for type constraints (#104577)

Add `gen-type-constraint-decls` and `gen-type-constraint-defs`, which
generate public C++ functions for type constraints. The name of the C++
function is specified in the `cppFunctionName` field.

Type constraints are typically used for op/type/attribute verification.
They are also sometimes called from builders and transformations. Until
now, this required duplicating the check in C++.

Note: This commit just adds the option for type constraints, but
attribute constraints could be supported in the same way.

Alternatives considered:
1. The C++ functions could also be generated as part of
`gen-typedef-decls/defs`, but that can be confusing because type
constraints may rely on type definitions from multiple `.td` files.
`#include`s could cause duplicate definitions of the same type
constraint.
2. The C++ functions could also be generated as static member functions
of dialects, but they don't really belong to a dialect. (Because they
may rely on type definitions from multiple dialects.)


  Commit: 947b9f55b5f327e14368a48fb6ce10242ea29bf3
      https://github.com/llvm/llvm-project/commit/947b9f55b5f327e14368a48fb6ce10242ea29bf3
  Author: Jonas Hahnfeld <jonas.hahnfeld at cern.ch>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M clang/lib/Frontend/PrintPreprocessedOutput.cpp
    A clang/test/Interpreter/preprocessor.cpp

  Log Message:
  -----------
  [clang-repl] Fix printing preprocessed tokens and macros (#104964)


  Commit: 89b1468345a74d2095616a8be2306cf0b08fa43a
      https://github.com/llvm/llvm-project/commit/89b1468345a74d2095616a8be2306cf0b08fa43a
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M lld/ELF/Arch/PPC64.cpp
    M lld/ELF/Config.h
    M lld/ELF/Driver.cpp
    M lld/ELF/InputSection.cpp
    M lld/ELF/InputSection.h
    M lld/ELF/Relocations.cpp
    M lld/ELF/Writer.cpp

  Log Message:
  -----------
  [ELF] Move ppc64noTocRelax to Ctx. NFC

Ctx was introduced in March 2022 as a more suitable place for such
singletons.


  Commit: d7c84d7b71fc5ea89b87480ff5d727496288799c
      https://github.com/llvm/llvm-project/commit/d7c84d7b71fc5ea89b87480ff5d727496288799c
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

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

  Log Message:
  -----------
  [LAA] Collect loop guards only once in MemoryDepChecker (NFCI).

This on its own gives small compile-time improvements in some configs
and enables using loop guards at more places in the future while keeping
compile-time impact low.

https://llvm-compile-time-tracker.com/compare.php?from=c44202574ff9a8c0632aba30c2765b134557435f&to=55ffc3dd920fa9af439fd39f8f9cc13509531420&stat=instructions:u


  Commit: f47966b1de459a095b01ac2f9fa975076b609c06
      https://github.com/llvm/llvm-project/commit/f47966b1de459a095b01ac2f9fa975076b609c06
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M compiler-rt/lib/fuzzer/FuzzerUtilFuchsia.cpp

  Log Message:
  -----------
  [compiler-rt] Reland "SetThreadName implementation for Fuchsia" (#105179)


  Commit: b6686e764c02b1373359bbd80d9c0e1a834d1a64
      https://github.com/llvm/llvm-project/commit/b6686e764c02b1373359bbd80d9c0e1a834d1a64
  Author: serge-sans-paille <sergesanspaille at free.fr>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M flang/runtime/edit-input.cpp
    M flang/runtime/exceptions.cpp
    M flang/runtime/stop.cpp

  Log Message:
  -----------
  [Flang][Runtime] Handle missing definitions in <cfenv> (#101242)

According to the C99 standard, <fenv.h> may not define FE_INVALID and
the likes. Even if C++11 mandate them, musl and emscripten don't provide
them, so handle that case.


  Commit: 7c4cadfc4333df8a20bb5a66b0ba4560bb4bd91c
      https://github.com/llvm/llvm-project/commit/7c4cadfc4333df8a20bb5a66b0ba4560bb4bd91c
  Author: Freddy Ye <freddy.ye at intel.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsX86.def
    M clang/lib/Headers/CMakeLists.txt
    A clang/lib/Headers/avx10_2_512convertintrin.h
    A clang/lib/Headers/avx10_2convertintrin.h
    M clang/lib/Headers/immintrin.h
    M clang/lib/Sema/SemaX86.cpp
    A clang/test/CodeGen/X86/avx10_2_512convert-builtins.c
    A clang/test/CodeGen/X86/avx10_2convert-builtins.c
    M llvm/include/llvm/IR/IntrinsicsX86.td
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/lib/Target/X86/X86InstrAVX10.td
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Target/X86/X86InstrFragmentsSIMD.td
    M llvm/lib/Target/X86/X86IntrinsicsInfo.h
    A llvm/test/CodeGen/X86/avx10_2_512convert-intrinsics.ll
    A llvm/test/CodeGen/X86/avx10_2convert-intrinsics.ll
    A llvm/test/MC/Disassembler/X86/avx10.2convert-32.txt
    A llvm/test/MC/Disassembler/X86/avx10.2convert-64.txt
    A llvm/test/MC/X86/avx10.2convert-32-att.s
    A llvm/test/MC/X86/avx10.2convert-32-intel.s
    A llvm/test/MC/X86/avx10.2convert-64-att.s
    A llvm/test/MC/X86/avx10.2convert-64-intel.s
    M llvm/test/TableGen/x86-fold-tables.inc

  Log Message:
  -----------
  [X86][AVX10.2] Support AVX10.2-CONVERT new instructions. (#101600)

Ref.: https://cdrdv2.intel.com/v1/dl/getContent/828965


  Commit: 9fa2386ff13289d46ebf31656f4be7859f501468
      https://github.com/llvm/llvm-project/commit/9fa2386ff13289d46ebf31656f4be7859f501468
  Author: Sam Elliott <quic_aelliott at quicinc.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M clang/test/Driver/riscv-cpus.c
    M clang/test/Misc/target-invalid-cpu-note/riscv.c
    M llvm/docs/ReleaseNotes.rst
    M llvm/lib/Target/RISCV/RISCVProcessors.td

  Log Message:
  -----------
  [RISCV] Add Hazard3 Core as taped out for RP2350 (#102452)

Luke Wren's Hazard3 is a configurable, open-source 32-bit RISC-V core.
The core's source code and docs are available on github:
https://github.com/wren6991/hazard3

This is the RISC-V core used in the RP2350, a recently announced SoC by
Raspberry Pi (which also contains Arm cores):
https://datasheets.raspberrypi.com/rp2350/rp2350-datasheet.pdf

We have agreed to name this `-mcpu` option `rp2350-hazard3`, and it
reflects exactly the options configured in the RP2350 chips. Notably,
the Zbc is not configured, and nor is B because the `misa.B` bit is not
either.


  Commit: 7063c9427e11b5028ab2e926768faa7ff431bb85
      https://github.com/llvm/llvm-project/commit/7063c9427e11b5028ab2e926768faa7ff431bb85
  Author: Longsheng Mou <moulongsheng at huawei.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/test/Dialect/Linalg/canonicalize.mlir
    M mlir/test/Dialect/Linalg/loops.mlir

  Log Message:
  -----------
  [mlir][Linalg] Bugfix for folder of `linalg.transpose` (#102888)

Folder of linalg transpose only support tensor type. Fix #102576.


  Commit: 749ba7f6b29887a74d8f68837b21f478cd6e1486
      https://github.com/llvm/llvm-project/commit/749ba7f6b29887a74d8f68837b21f478cd6e1486
  Author: Hugo Trachino <hugo.trachino at huawei.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir

  Log Message:
  -----------
  [mlir][vector] Add more tests for ConvertVectorToLLVM (5/n) (#104784)

This patch aims to disambiguate test names for some of the
Vector-To-LLVM conversion pass.
Covers the following Ops:
  * vector.extractelement
  * vector.extract
  * vector.insertelement
  * vector.insert
  
1. Tests targetting `vector.{insert|extract}` Ops do not have names like
`{insert|extract}_element*` which was confusing against
`vector.{insert|extract}element` ops targetting tests.
2. Tests mention the type of the target/source buffer. e.g.
`@extractelement` => `@extractelement_from_vec_1d`
3. Align LIT ligns consistently with other tests.
4. Tests with a different type for position have a name updated
accordingly. `@extractelement_index` =>`@extractelement_index_position`
5. Tests with a dynamic value for position have a name updated
accordingly. `@extract_element_with_value_1d`
=>`@extract_scalar_dynamic_position_from_vec_1d`
6. Added the scalable flavour of the tests
`insert_scalar_into_vec_2d_dynamic_position` and
`@extract_scalar_from_vec_2d_dynamic_position`


  Commit: 25ffd2efb33476f2a235f6cb1377759bab367324
      https://github.com/llvm/llvm-project/commit/25ffd2efb33476f2a235f6cb1377759bab367324
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

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

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


  Commit: 99741ac28522f519713907d7bea4438ea5412e21
      https://github.com/llvm/llvm-project/commit/99741ac28522f519713907d7bea4438ea5412e21
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-intrinsics-reduction.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-chains.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-complex.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-sink-replicate-region.ll
    M llvm/test/Transforms/LoopVectorize/instruction-only-used-outside-of-loop.ll
    M llvm/test/Transforms/LoopVectorize/pr36983.ll
    M llvm/test/Transforms/LoopVectorize/pr55167-fold-tail-live-out.ll
    M llvm/test/Transforms/LoopVectorize/select-cmp-multiuse.ll
    M llvm/test/Transforms/LoopVectorize/vplan-printing.ll

  Log Message:
  -----------
  [VPlan] Introduce explicit ExtractFromEnd recipes for live-outs. (#100658)

Introduce explicit ExtractFromEnd recipes to extract the final values
for live-outs instead of implicitly extracting in VPLiveOut::fixPhi.

This is a follow-up to the recent changes of modeling extracts for
recurrences and consolidates live-out extract creation for fixed-order
recurrences at a single place: addLiveOutsForFirstOrderRecurrences.

It is also in preparation of replacing VPLiveOut with VPIRInstructions
wrapping the original scalar phis.

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


  Commit: 9d739e54f4506bf9bd220c5d65f710b86a39f6d5
      https://github.com/llvm/llvm-project/commit/9d739e54f4506bf9bd220c5d65f710b86a39f6d5
  Author: Mital Ashok <mital at mitalashok.co.uk>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/ExprCXX.h
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaInit.cpp
    M clang/test/CXX/drs/cwg23xx.cpp
    M clang/test/SemaCXX/attr-annotate.cpp
    M clang/test/SemaCXX/cxx2a-explicit-bool.cpp
    M clang/test/SemaCXX/sugared-auto.cpp
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  [Clang] Implement CWG2351 `void{}` (#78060)

Per [CWG2351](https://wg21.link/CWG2351), allow `void{}`, treated the
same as `void()`: a prvalue expression of type `void` that performs no
initialization.

Note that the AST for the expression `T{}` looks like:

```
// using T = int;
CXXFunctionalCastExpr 'T':'int' functional cast to T <NoOp>
`-InitListExpr 'T':'int'
// using T = const int;
CXXFunctionalCastExpr 'int' functional cast to T <NoOp>
`-InitListExpr 'int'
// using T = void;
CXXFunctionalCastExpr 'T':'void' functional cast to T <ToVoid>
`-InitListExpr 'void'
// using T = const void;
CXXFunctionalCastExpr 'void' functional cast to T <ToVoid>
`-InitListExpr 'void'
```

As for `void()`/`T() [T = const void]`, that looked like
`CXXScalarValueInitExpr 'void'` and is unchanged after this.

For reference, C++98 [5.2.3p2] says:

> The expression `T()`, where `T` is a simple-type-specifier (7.1.5.2)
for a non-array complete object type or the (possibly cv-qualified) void
type, creates an rvalue of the specified type, whose value is determined
by default-initialization (8.5; no initialization is done for the
`void()` case). [*Note:* if `T` is a non-class type that is
*cv-qualified*, the `cv-qualifiers` are ignored when determining the
type of the resulting rvalue (3.10). ]

Though it is a bit of a misnomer that, for `T = void`,
`CXXScalarValueInitExpr` does not perform value initialization, it would
be a breaking change to change the AST node for `void()`, so I simply
reworded the doc comment.


  Commit: 0b0ccd56c9cabef48a6c99abe6e0b41ac69e5faa
      https://github.com/llvm/llvm-project/commit/0b0ccd56c9cabef48a6c99abe6e0b41ac69e5faa
  Author: Thorsten Schütt <schuett at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/lib/CodeGen/GlobalISel/CombinerHelperCasts.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-cast.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-extract-vec-elt.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-with-flags.mir
    M llvm/test/CodeGen/AArch64/arm64-subvector-extend.ll
    M llvm/test/CodeGen/AArch64/neon-extadd.ll
    M llvm/test/CodeGen/AArch64/sext.ll
    M llvm/test/CodeGen/AArch64/vecreduce-add.ll
    M llvm/test/CodeGen/AArch64/xtn.ll
    M llvm/test/CodeGen/AArch64/zext.ll

  Log Message:
  -----------
  [GlobalIsel] Push cast through build vector (#104634)

Credits: https://github.com/llvm/llvm-project/pull/100563


  Commit: a811f263356af4fcf5b479c7a32d1bab44ac8954
      https://github.com/llvm/llvm-project/commit/a811f263356af4fcf5b479c7a32d1bab44ac8954
  Author: Dmitri Gribenko <gribozavr at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/unittests/Analysis/GraphWriterTest.cpp

  Log Message:
  -----------
  [llvm][test] Write temporary files into a temporary directory


  Commit: 768598bcc3528ff5c4cd2c8a9b74d023614e1a9e
      https://github.com/llvm/llvm-project/commit/768598bcc3528ff5c4cd2c8a9b74d023614e1a9e
  Author: Hans Wennborg <hans at chromium.org>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/PrologEpilogInserter.cpp
    M llvm/lib/Target/X86/X86FrameLowering.cpp
    M llvm/lib/Target/X86/X86RegisterInfo.cpp
    M llvm/lib/Target/X86/X86RegisterInfo.h
    R llvm/test/CodeGen/X86/avx512f-large-stack.ll
    M llvm/test/CodeGen/X86/huge-stack.ll
    M llvm/test/CodeGen/X86/win64-stackprobe-overflow.ll

  Log Message:
  -----------
  Revert "[LLVM] [X86] Fix integer overflows in frame layout for huge frames (#101840)"

This casuses assertion failures targeting 32-bit x86:

  lib/Target/X86/X86RegisterInfo.cpp:989:
  virtual bool llvm::X86RegisterInfo::eliminateFrameIndex(MachineBasicBlock::iterator, int, unsigned int, RegScavenger *) const:
  Assertion `(Is64Bit || FitsIn32Bits) && "Requesting 64-bit offset in 32-bit immediate!"' failed.

See comment on the PR.

> Fix 32-bit integer overflows in the X86 target frame layout when dealing
> with frames larger than 4gb. When this occurs, we'll scavenge a scratch
> register to be able to hold the correct stack offset for frame locals.
>
> This completes reapplying #84114.
>
> Fixes #48911
> Fixes #75944
> Fixes #87154

This reverts commit 0abb7791614947bc24931dd851ade31d02496977.


  Commit: bacedb5684c79d35af61c4e30fb5d7fd9c2daf97
      https://github.com/llvm/llvm-project/commit/bacedb5684c79d35af61c4e30fb5d7fd9c2daf97
  Author: Shao-Ce SUN <sunshaoce at outlook.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M clang/test/Driver/print-supported-extensions-riscv.c
    M clang/test/Preprocessor/riscv-target-features.c
    M llvm/docs/RISCVUsage.rst
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/test/CodeGen/RISCV/attributes.ll
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISCV] Remove experimental for Ssqosid ext (#105476)

Ratified: https://github.com/riscv/riscv-ssqosid/releases/tag/v1.0


  Commit: 6c189eaea9941898e7379903d10274dbf6e2c545
      https://github.com/llvm/llvm-project/commit/6c189eaea9941898e7379903d10274dbf6e2c545
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64.h
    M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
    M llvm/lib/Target/AArch64/CMakeLists.txt
    A llvm/lib/Target/AArch64/SMEPeepholeOpt.cpp
    M llvm/test/CodeGen/AArch64/O3-pipeline.ll
    M llvm/test/CodeGen/AArch64/sme-darwin-sve-vg.ll
    A llvm/test/CodeGen/AArch64/sme-peephole-opts.ll
    M llvm/test/CodeGen/AArch64/sme-streaming-body.ll
    M llvm/test/CodeGen/AArch64/sme-streaming-interface.ll
    M llvm/test/CodeGen/AArch64/sme-toggle-pstateza.ll
    M llvm/test/CodeGen/AArch64/sme-vg-to-stack.ll
    M llvm/test/CodeGen/AArch64/streaming-compatible-memory-ops.ll

  Log Message:
  -----------
  [AArch64] Add SME peephole optimizer pass (#104612)

This pass removes back-to-back smstart/smstop instructions
to reduce the number of streaming mode changes in a function.

The implementation as proposed doesn't aim to solve all problems
yet and suggests a number of cases that can be optimized in the
future.


  Commit: 126b56a234486a2cd05a8beca78bcf89fe47d167
      https://github.com/llvm/llvm-project/commit/126b56a234486a2cd05a8beca78bcf89fe47d167
  Author: Piyou Chen <piyou.chen at sifive.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/test/CodeGen/builtin-cpu-supports.c
    M llvm/include/llvm/TargetParser/RISCVISAInfo.h

  Log Message:
  -----------
  [RISCV] Make EmitRISCVCpuSupports accept multiple features (#104917)

This patch creates an additional EmitRISCVCpuSupports function to handle
situations with multiple features. It also modifies the original
EmitRISCVCpuSupports function to invoke the new one.


  Commit: 5f91de9d18cfa136645c2cbc91901b676c10df81
      https://github.com/llvm/llvm-project/commit/5f91de9d18cfa136645c2cbc91901b676c10df81
  Author: Brox Chen <guochen2 at amd.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s

  Log Message:
  -----------
  [AMDGPU][True16][test] added missing true16 flag in gfx12 asm vop1 (#104884)

added missing true16 flag in gfx12 asm vop1


  Commit: 8ac140f390847e4e85e0a4fd910baaf46e5d115b
      https://github.com/llvm/llvm-project/commit/8ac140f390847e4e85e0a4fd910baaf46e5d115b
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp

  Log Message:
  -----------
  [Clang][NFCI] Cleanup the fix for default function argument substitution (#104911)

(This is one step towards tweaking `getTemplateInstantiationArgs()` as
discussed in https://github.com/llvm/llvm-project/pull/102922)

We don't always substitute into default arguments while transforming a
function parameter. In that case, we would preserve the uninstantiated
expression until after, e.g. building up a CXXDefaultArgExpr and
instantiate the expression there.

For member function instantiation, this algorithm used to cause a
problem in that the default argument of an out-of-line member function
specialization couldn't get properly instantiated. This is because, in
`getTemplateInstantiationArgs()`, we would give up visiting a function's
declaration context if the function is a specialization of a member
template. For example,

```cpp
template <class T>
struct S {
  template <class U>
  void f(T = sizeof(T));
};

template <> template <class U>
void S<int>::f(int) {}
```

The default argument `sizeof(U)` that lexically appears inside the
declaration would be copied to the function declaration in the class
template specialization `S<int>`, as well as to the function's
out-of-line definition. We use template arguments collected from the
out-of-line function definition when substituting into the default
arguments. We would therefore give up the traversal after the function,
resulting in a single-level template argument of the `f` itself. However
the default argument here could still reference the template parameters
of the primary template, hence the error.

In fact, this is similar to constraint checking in some respects: we
actually want the "whole" template arguments relative to the primary
template, not those relative to the function definition. So this patch
adds another flag to indicate `getTemplateInstantiationArgs()` for that.

This patch also consolidates the tests for default arguments and removes
some unnecessary tests.


  Commit: 6b8c194f8587945e063691992068f1f821837769
      https://github.com/llvm/llvm-project/commit/6b8c194f8587945e063691992068f1f821837769
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

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

  Log Message:
  -----------
  [gn build] Port 6c189eaea994


  Commit: 3083459c1d7a723e946db99a5794f33242ba1402
      https://github.com/llvm/llvm-project/commit/3083459c1d7a723e946db99a5794f33242ba1402
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

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

  Log Message:
  -----------
  [bazel] Port a3d41879ecf5690a73f9226951d3856c7faa34a4


  Commit: 297bb467acd31447d64f0540835127d50408e87d
      https://github.com/llvm/llvm-project/commit/297bb467acd31447d64f0540835127d50408e87d
  Author: Edd Dawson <edd.dawson at sony.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/PS4CPU.cpp
    M clang/test/Driver/ps5-linker.c

  Log Message:
  -----------
  [PS5][Driver] Link main components with -pie by default (#102901)

The PS5 linker currently forces `-pie` for typical link jobs. Have the
driver pass `pie` under the same conditions. With this change we can
remove our private linker patch and also allow `-no-pie` to have an
effect.

SIE tracker: TOOLCHAIN-16704


  Commit: a105877646d68e48cdeeeadd9d1e075dc3c5d68d
      https://github.com/llvm/llvm-project/commit/a105877646d68e48cdeeeadd9d1e075dc3c5d68d
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld1-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld1.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld1sb.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld1sh.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld1sw.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld1ub.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld1uh.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld1uw.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st1-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st1.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st1b.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st1h.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st1w.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_loads.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_store.c
    M clang/test/CodeGen/attr-counted-by.c
    M clang/test/CodeGen/fp-reassoc-pragma.cpp
    M clang/test/CodeGen/fp-reciprocal-pragma.cpp
    M clang/test/CodeGen/ms-mixed-ptr-sizes.c
    M clang/test/Headers/wasm.c
    M llvm/include/llvm/Transforms/InstCombine/InstCombiner.h
    M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
    M llvm/test/Analysis/ValueTracking/known-power-of-two-urem.ll
    M llvm/test/Analysis/ValueTracking/known-power-of-two.ll
    M llvm/test/Analysis/ValueTracking/knownbits-and-or-xor-lowbit.ll
    M llvm/test/Analysis/ValueTracking/knownbits-bmi-pattern.ll
    M llvm/test/Analysis/ValueTracking/phi-known-bits.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow-codegen.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pown.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-powr.ll
    M llvm/test/Transforms/IndVarSimplify/rewrite-loop-exit-value.ll
    M llvm/test/Transforms/InstCombine/2004-11-27-SetCCForCastLargerAndConstant.ll
    M llvm/test/Transforms/InstCombine/2010-11-23-Distributed.ll
    M llvm/test/Transforms/InstCombine/abs-1.ll
    M llvm/test/Transforms/InstCombine/add-mask-neg.ll
    M llvm/test/Transforms/InstCombine/add.ll
    M llvm/test/Transforms/InstCombine/add2.ll
    M llvm/test/Transforms/InstCombine/add_or_sub.ll
    M llvm/test/Transforms/InstCombine/and-or-icmp-const-icmp.ll
    M llvm/test/Transforms/InstCombine/and-or-icmps.ll
    M llvm/test/Transforms/InstCombine/and-or-not.ll
    M llvm/test/Transforms/InstCombine/and-or.ll
    M llvm/test/Transforms/InstCombine/and-xor-merge.ll
    M llvm/test/Transforms/InstCombine/and-xor-or.ll
    M llvm/test/Transforms/InstCombine/and.ll
    M llvm/test/Transforms/InstCombine/apint-and-xor-merge.ll
    M llvm/test/Transforms/InstCombine/apint-or.ll
    M llvm/test/Transforms/InstCombine/apint-shift.ll
    M llvm/test/Transforms/InstCombine/apint-sub.ll
    M llvm/test/Transforms/InstCombine/ashr-lshr.ll
    M llvm/test/Transforms/InstCombine/assume-align.ll
    M llvm/test/Transforms/InstCombine/assume-separate_storage.ll
    M llvm/test/Transforms/InstCombine/avg-lsb.ll
    M llvm/test/Transforms/InstCombine/binop-and-shifts.ll
    M llvm/test/Transforms/InstCombine/binop-cast.ll
    M llvm/test/Transforms/InstCombine/bit-checks.ll
    M llvm/test/Transforms/InstCombine/bitcast-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/bitcast.ll
    M llvm/test/Transforms/InstCombine/bitreverse.ll
    M llvm/test/Transforms/InstCombine/bswap-fold.ll
    M llvm/test/Transforms/InstCombine/call-guard.ll
    M llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-eq-to-icmp-ule.ll
    M llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-ne-to-icmp-ugt.ll
    M llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-uge-to-icmp-ule.ll
    M llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-ult-to-icmp-ugt.ll
    M llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-and-icmp-eq-to-icmp-ule.ll
    M llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-and-icmp-ne-to-icmp-ugt.ll
    M llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-v2-and-icmp-eq-to-icmp-ule.ll
    M llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-v2-and-icmp-ne-to-icmp-ugt.ll
    M llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-v3-and-icmp-eq-to-icmp-ule.ll
    M llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-v3-and-icmp-ne-to-icmp-ugt.ll
    M llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-v4-and-icmp-eq-to-icmp-ule.ll
    M llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-v4-and-icmp-ne-to-icmp-ugt.ll
    M llvm/test/Transforms/InstCombine/cast-mul-select.ll
    M llvm/test/Transforms/InstCombine/cast.ll
    M llvm/test/Transforms/InstCombine/cast_phi.ll
    M llvm/test/Transforms/InstCombine/cast_ptr.ll
    M llvm/test/Transforms/InstCombine/cmp-x-vs-neg-x.ll
    M llvm/test/Transforms/InstCombine/conditional-negation.ll
    M llvm/test/Transforms/InstCombine/ctpop-cttz.ll
    M llvm/test/Transforms/InstCombine/ctpop-pow2.ll
    M llvm/test/Transforms/InstCombine/cttz.ll
    M llvm/test/Transforms/InstCombine/demorgan.ll
    M llvm/test/Transforms/InstCombine/dependent-ivs.ll
    M llvm/test/Transforms/InstCombine/fadd-fsub-factor.ll
    M llvm/test/Transforms/InstCombine/fadd.ll
    M llvm/test/Transforms/InstCombine/fast-basictest.ll
    M llvm/test/Transforms/InstCombine/fast-math.ll
    M llvm/test/Transforms/InstCombine/fcmp.ll
    M llvm/test/Transforms/InstCombine/fdiv-sqrt.ll
    M llvm/test/Transforms/InstCombine/fdiv.ll
    M llvm/test/Transforms/InstCombine/float-shrink-compare.ll
    M llvm/test/Transforms/InstCombine/fmul.ll
    M llvm/test/Transforms/InstCombine/fold-ext-eq-c-with-op.ll
    M llvm/test/Transforms/InstCombine/fold-inc-of-add-of-not-x-and-y-to-sub-x-from-y.ll
    M llvm/test/Transforms/InstCombine/fold-select-fmul-if-zero.ll
    M llvm/test/Transforms/InstCombine/fold-signbit-test-power2.ll
    M llvm/test/Transforms/InstCombine/fpextend.ll
    M llvm/test/Transforms/InstCombine/fptrunc.ll
    M llvm/test/Transforms/InstCombine/free-inversion.ll
    M llvm/test/Transforms/InstCombine/fsh.ll
    M llvm/test/Transforms/InstCombine/fsub.ll
    M llvm/test/Transforms/InstCombine/funnel.ll
    M llvm/test/Transforms/InstCombine/getelementptr.ll
    M llvm/test/Transforms/InstCombine/hoist-negation-out-of-bias-calculation.ll
    M llvm/test/Transforms/InstCombine/hoist-xor-by-constant-from-xor-by-value.ll
    M llvm/test/Transforms/InstCombine/icmp-add.ll
    M llvm/test/Transforms/InstCombine/icmp-and-add-sub-xor-p2.ll
    M llvm/test/Transforms/InstCombine/icmp-and-lowbit-mask.ll
    M llvm/test/Transforms/InstCombine/icmp-and-shift.ll
    M llvm/test/Transforms/InstCombine/icmp-custom-dl.ll
    M llvm/test/Transforms/InstCombine/icmp-equality-rotate.ll
    M llvm/test/Transforms/InstCombine/icmp-equality-xor.ll
    M llvm/test/Transforms/InstCombine/icmp-ext-ext.ll
    M llvm/test/Transforms/InstCombine/icmp-gep.ll
    M llvm/test/Transforms/InstCombine/icmp-mul-zext.ll
    M llvm/test/Transforms/InstCombine/icmp-mul.ll
    M llvm/test/Transforms/InstCombine/icmp-of-and-x.ll
    M llvm/test/Transforms/InstCombine/icmp-of-or-x.ll
    M llvm/test/Transforms/InstCombine/icmp-of-trunc-ext.ll
    M llvm/test/Transforms/InstCombine/icmp-of-xor-x.ll
    M llvm/test/Transforms/InstCombine/icmp-or-of-select-with-zero.ll
    M llvm/test/Transforms/InstCombine/icmp-or.ll
    M llvm/test/Transforms/InstCombine/icmp-range.ll
    M llvm/test/Transforms/InstCombine/icmp-rotate.ll
    M llvm/test/Transforms/InstCombine/icmp-select-implies-common-op.ll
    M llvm/test/Transforms/InstCombine/icmp-select.ll
    M llvm/test/Transforms/InstCombine/icmp-sub.ll
    M llvm/test/Transforms/InstCombine/icmp-uge-of-not-of-shl-allones-by-bits-and-val-to-icmp-eq-of-lshr-val-by-bits-and-0.ll
    M llvm/test/Transforms/InstCombine/icmp-ult-of-not-of-shl-allones-by-bits-and-val-to-icmp-ne-of-lshr-val-by-bits-and-0.ll
    M llvm/test/Transforms/InstCombine/icmp.ll
    M llvm/test/Transforms/InstCombine/implies.ll
    M llvm/test/Transforms/InstCombine/invert-variable-mask-in-masked-merge-scalar.ll
    M llvm/test/Transforms/InstCombine/invert-variable-mask-in-masked-merge-vector.ll
    M llvm/test/Transforms/InstCombine/ispow2.ll
    M llvm/test/Transforms/InstCombine/known-bits.ll
    M llvm/test/Transforms/InstCombine/known-never-nan.ll
    M llvm/test/Transforms/InstCombine/ldexp-ext.ll
    M llvm/test/Transforms/InstCombine/log-pow.ll
    M llvm/test/Transforms/InstCombine/logical-select-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/logical-select.ll
    M llvm/test/Transforms/InstCombine/lshr-and-negC-icmpeq-zero.ll
    M llvm/test/Transforms/InstCombine/lshr.ll
    M llvm/test/Transforms/InstCombine/masked-merge-add.ll
    M llvm/test/Transforms/InstCombine/masked-merge-and-of-ors.ll
    M llvm/test/Transforms/InstCombine/masked-merge-or.ll
    M llvm/test/Transforms/InstCombine/masked-merge-xor.ll
    M llvm/test/Transforms/InstCombine/minmax-fold.ll
    M llvm/test/Transforms/InstCombine/minmax-of-xor-x.ll
    M llvm/test/Transforms/InstCombine/mul-masked-bits.ll
    M llvm/test/Transforms/InstCombine/mul-pow2.ll
    M llvm/test/Transforms/InstCombine/mul.ll
    M llvm/test/Transforms/InstCombine/mul_fold.ll
    M llvm/test/Transforms/InstCombine/mul_full_64.ll
    M llvm/test/Transforms/InstCombine/not-add.ll
    M llvm/test/Transforms/InstCombine/not.ll
    M llvm/test/Transforms/InstCombine/onehot_merge.ll
    M llvm/test/Transforms/InstCombine/or-xor-xor.ll
    M llvm/test/Transforms/InstCombine/or-xor.ll
    M llvm/test/Transforms/InstCombine/or.ll
    M llvm/test/Transforms/InstCombine/partally-redundant-left-shift-input-masking-after-truncation-variant-b.ll
    M llvm/test/Transforms/InstCombine/partally-redundant-left-shift-input-masking-variant-b.ll
    M llvm/test/Transforms/InstCombine/phi.ll
    M llvm/test/Transforms/InstCombine/pr44242.ll
    M llvm/test/Transforms/InstCombine/pr49688.ll
    M llvm/test/Transforms/InstCombine/pr75369.ll
    M llvm/test/Transforms/InstCombine/ptr-int-ptr-icmp.ll
    M llvm/test/Transforms/InstCombine/ptrmask.ll
    M llvm/test/Transforms/InstCombine/range-check.ll
    M llvm/test/Transforms/InstCombine/reassociate-nuw.ll
    M llvm/test/Transforms/InstCombine/redundant-left-shift-input-masking-after-truncation-variant-b.ll
    M llvm/test/Transforms/InstCombine/redundant-left-shift-input-masking-variant-b.ll
    M llvm/test/Transforms/InstCombine/rem.ll
    M llvm/test/Transforms/InstCombine/result-of-add-of-negative-is-non-zero-and-no-underflow.ll
    M llvm/test/Transforms/InstCombine/result-of-add-of-negative-or-zero-is-non-zero-and-no-underflow.ll
    M llvm/test/Transforms/InstCombine/result-of-usub-is-non-zero-and-no-overflow.ll
    M llvm/test/Transforms/InstCombine/saturating-add-sub.ll
    M llvm/test/Transforms/InstCombine/scalarization-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/scalarization.ll
    M llvm/test/Transforms/InstCombine/select-and-or.ll
    M llvm/test/Transforms/InstCombine/select-binop-cmp.ll
    M llvm/test/Transforms/InstCombine/select-binop-foldable-floating-point.ll
    M llvm/test/Transforms/InstCombine/select-cmp-eq-op-fold.ll
    M llvm/test/Transforms/InstCombine/select-cmp.ll
    M llvm/test/Transforms/InstCombine/select-ctlz-to-cttz.ll
    M llvm/test/Transforms/InstCombine/select-divrem.ll
    M llvm/test/Transforms/InstCombine/select-factorize.ll
    M llvm/test/Transforms/InstCombine/select-masked_gather.ll
    M llvm/test/Transforms/InstCombine/select-masked_load.ll
    M llvm/test/Transforms/InstCombine/select-of-bittest.ll
    M llvm/test/Transforms/InstCombine/select-safe-transforms.ll
    M llvm/test/Transforms/InstCombine/select-with-bitwise-ops.ll
    M llvm/test/Transforms/InstCombine/select.ll
    M llvm/test/Transforms/InstCombine/select_meta.ll
    M llvm/test/Transforms/InstCombine/set.ll
    M llvm/test/Transforms/InstCombine/shift-add.ll
    M llvm/test/Transforms/InstCombine/shift-amount-reassociation-in-bittest-with-truncation-lshr.ll
    M llvm/test/Transforms/InstCombine/shift-amount-reassociation-in-bittest-with-truncation-shl.ll
    M llvm/test/Transforms/InstCombine/shift-direction-in-bit-test.ll
    M llvm/test/Transforms/InstCombine/shift-logic.ll
    M llvm/test/Transforms/InstCombine/shift.ll
    M llvm/test/Transforms/InstCombine/shl-bo.ll
    M llvm/test/Transforms/InstCombine/shuffle-binop.ll
    M llvm/test/Transforms/InstCombine/signed-truncation-check.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll
    M llvm/test/Transforms/InstCombine/sink-not-into-and.ll
    M llvm/test/Transforms/InstCombine/sink-not-into-or.ll
    M llvm/test/Transforms/InstCombine/smax-icmp.ll
    M llvm/test/Transforms/InstCombine/smin-icmp.ll
    M llvm/test/Transforms/InstCombine/sub-ashr-or-to-icmp-select.ll
    M llvm/test/Transforms/InstCombine/sub-gep.ll
    M llvm/test/Transforms/InstCombine/sub-lshr-or-to-icmp-select.ll
    M llvm/test/Transforms/InstCombine/sub-minmax.ll
    M llvm/test/Transforms/InstCombine/sub-not.ll
    M llvm/test/Transforms/InstCombine/sub-of-negatible-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/sub-of-negatible.ll
    M llvm/test/Transforms/InstCombine/sub-xor-cmp.ll
    M llvm/test/Transforms/InstCombine/sub.ll
    M llvm/test/Transforms/InstCombine/trunc-binop-ext.ll
    M llvm/test/Transforms/InstCombine/uaddo.ll
    M llvm/test/Transforms/InstCombine/umax-icmp.ll
    M llvm/test/Transforms/InstCombine/umin-icmp.ll
    M llvm/test/Transforms/InstCombine/unordered-compare-and-ordered.ll
    M llvm/test/Transforms/InstCombine/unsigned-add-lack-of-overflow-check-via-add.ll
    M llvm/test/Transforms/InstCombine/unsigned-add-lack-of-overflow-check-via-xor.ll
    M llvm/test/Transforms/InstCombine/unsigned-add-lack-of-overflow-check.ll
    M llvm/test/Transforms/InstCombine/unsigned-add-overflow-check-via-add.ll
    M llvm/test/Transforms/InstCombine/unsigned-add-overflow-check-via-xor.ll
    M llvm/test/Transforms/InstCombine/unsigned-add-overflow-check.ll
    M llvm/test/Transforms/InstCombine/unsigned-sub-lack-of-overflow-check.ll
    M llvm/test/Transforms/InstCombine/unsigned-sub-overflow-check.ll
    M llvm/test/Transforms/InstCombine/vec_demanded_elts.ll
    M llvm/test/Transforms/InstCombine/vec_shuffle-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/vec_shuffle.ll
    M llvm/test/Transforms/InstCombine/vector-reverse.ll
    M llvm/test/Transforms/InstCombine/vector-xor.ll
    M llvm/test/Transforms/InstCombine/widenable-conditions.ll
    M llvm/test/Transforms/InstCombine/xor.ll
    M llvm/test/Transforms/InstCombine/xor2.ll
    M llvm/test/Transforms/InstCombine/zext-bool-add-sub.ll
    M llvm/test/Transforms/InstCombine/zext-or-icmp.ll
    M llvm/test/Transforms/InstCombine/zext.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/deterministic-type-shrinkage.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-cond-inv-loads.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-gather-scatter.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-inductions.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-accesses.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-widen-phi.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/vector-reverse-mask4.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-qabs.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-reductions.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-selectandorcost.ll
    M llvm/test/Transforms/LoopVectorize/ARM/pointer_iv.ll
    M llvm/test/Transforms/LoopVectorize/ARM/tail-fold-multiple-icmps.ll
    M llvm/test/Transforms/LoopVectorize/X86/invariant-load-gather.ll
    M llvm/test/Transforms/LoopVectorize/X86/invariant-store-vectorization.ll
    M llvm/test/Transforms/LoopVectorize/X86/pr23997.ll
    M llvm/test/Transforms/LoopVectorize/extract-last-veclane.ll
    M llvm/test/Transforms/LoopVectorize/float-induction.ll
    M llvm/test/Transforms/LoopVectorize/if-conversion-nest.ll
    M llvm/test/Transforms/LoopVectorize/induction.ll
    M llvm/test/Transforms/LoopVectorize/interleaved-accesses.ll
    M llvm/test/Transforms/LoopVectorize/invariant-store-vectorization-2.ll
    M llvm/test/Transforms/LoopVectorize/invariant-store-vectorization.ll
    M llvm/test/Transforms/LoopVectorize/reduction-inloop-cond.ll
    M llvm/test/Transforms/LoopVectorize/reduction-inloop.ll
    M llvm/test/Transforms/LoopVectorize/reduction.ll
    M llvm/test/Transforms/LoopVectorize/runtime-check.ll
    M llvm/test/Transforms/LoopVectorize/scalable-inductions.ll
    M llvm/test/Transforms/LoopVectorize/uniform-args-call-variants.ll
    M llvm/test/Transforms/PGOProfile/chr.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/hoist-runtime-checks.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/hoisting-sinking-required-for-vectorization.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/matrix-extract-insert.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/peel-multiple-unreachable-exits-for-vectorization.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/quant_4x4.ll
    M llvm/test/Transforms/PhaseOrdering/ARM/arm_mult_q15.ll
    M llvm/test/Transforms/PhaseOrdering/X86/hoist-load-of-baseptr.ll
    M llvm/test/Transforms/PhaseOrdering/X86/speculation-vs-tbaa.ll
    M llvm/test/Transforms/PhaseOrdering/X86/vector-reductions-logical.ll
    M llvm/test/Transforms/PhaseOrdering/fast-basictest.ll
    M llvm/test/Transforms/PhaseOrdering/reassociate-instcombine.ll
    M llvm/test/Transforms/PhaseOrdering/runtime-check-removal.ll
    M llvm/test/Transforms/Reassociate/fast-ArrayOutOfBounds.ll
    M llvm/test/Transforms/Reassociate/fast-SubReassociate.ll
    M llvm/test/Transforms/SLPVectorizer/X86/cmp_commute-inseltpoison.ll
    M llvm/test/Transforms/SLPVectorizer/X86/cmp_commute.ll

  Log Message:
  -----------
  [InstCombine] Remove some of the complexity-based canonicalization (#91185)

The idea behind this canonicalization is that it allows us to handle less
patterns, because we know that some will be canonicalized away. This is
indeed very useful to e.g. know that constants are always on the right.

However, this is only useful if the canonicalization is actually
reliable. This is the case for constants, but not for arguments: Moving
these to the right makes it look like the "more complex" expression is
guaranteed to be on the left, but this is not actually the case in
practice. It fails as soon as you replace the argument with another
instruction.

The end result is that it looks like things correctly work in tests,
while they actually don't. We use the "thwart complexity-based
canonicalization" trick to handle this in tests, but it's often a
challenge for new contributors to get this right, and based on the
regressions this PR originally exposed, we clearly don't get this right
in many cases.

For this reason, I think that it's better to remove this complexity
canonicalization. It will make it much easier to write tests for
commuted cases and make sure that they are handled.


  Commit: 9d364286f3b63e99ed3838f179aa2223f930f1ab
      https://github.com/llvm/llvm-project/commit/9d364286f3b63e99ed3838f179aa2223f930f1ab
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-08-21 (Wed, 21 Aug 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/FLATInstructions.td
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/Bitcode/amdgcn-atomic.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fp-atomics-gfx940.ll
    M llvm/test/CodeGen/AMDGPU/fp-atomics-gfx1200.ll
    M llvm/test/CodeGen/AMDGPU/fp-atomics-gfx940.ll

  Log Message:
  -----------
  AMDGPU: Remove flat/global atomic fadd v2bf16 intrinsics (#97050)

These are now fully covered by atomicrmw.


  Commit: 681ae0972205e575ff1fd1d7ab0ef710ae364348
      https://github.com/llvm/llvm-project/commit/681ae0972205e575ff1fd1d7ab0ef710ae364348
  Author: Frank Schlimbach <frank.schlimbach at intel.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Func/Extensions/MeshShardingExtensions.h
    R mlir/include/mlir/Dialect/Mesh/IR/TensorShardingInterfaceImpl.h
    A mlir/include/mlir/Dialect/Tensor/Extensions/AllExtensions.h
    A mlir/include/mlir/Dialect/Tensor/Extensions/MeshShardingExtensions.h
    A mlir/include/mlir/Dialect/Tensor/IR/ShardingInterfaceImpl.h
    M mlir/include/mlir/InitAllDialects.h
    M mlir/include/mlir/InitAllExtensions.h
    M mlir/lib/Dialect/Mesh/Interfaces/CMakeLists.txt
    R mlir/lib/Dialect/Mesh/Interfaces/TensorShardingInterfaceImpl.cpp
    M mlir/lib/Dialect/Tensor/CMakeLists.txt
    A mlir/lib/Dialect/Tensor/Extensions/AllExtensions.cpp
    A mlir/lib/Dialect/Tensor/Extensions/CMakeLists.txt
    A mlir/lib/Dialect/Tensor/Extensions/MeshShardingExtensions.cpp
    M mlir/tools/mlir-lsp-server/CMakeLists.txt

  Log Message:
  -----------
  [MLIR][mesh] moving shardinginterfaceimpl for tensor to tensor extension lib (#104913)

Follow-up to #102598 : as discussed, move tensor sharding implementation
into separate tensor extension lib.

@sogartar @yaochengji, could you take a look at this PR?


  Commit: 8109e5de57fbdfc0fd292f143da7dfa7543ebdab
      https://github.com/llvm/llvm-project/commit/8109e5de57fbdfc0fd292f143da7dfa7543ebdab
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/AArch64/abds-neg.ll
    M llvm/test/CodeGen/AArch64/abds.ll
    M llvm/test/CodeGen/AArch64/abdu-neg.ll
    M llvm/test/CodeGen/AArch64/abdu.ll
    M llvm/test/CodeGen/AMDGPU/sad.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/X86/abds-neg.ll
    M llvm/test/CodeGen/X86/abds.ll
    M llvm/test/CodeGen/X86/abdu.ll

  Log Message:
  -----------
  [DAG] Add select_cc -> abd folds (#102137)

Fixes #100810


  Commit: 0c07e7c211bed5e14372aebc2fc6edc16ecef8cb
      https://github.com/llvm/llvm-project/commit/0c07e7c211bed5e14372aebc2fc6edc16ecef8cb
  Author: Nathan Gauër <brioche at google.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVPostLegalizer.cpp
    A llvm/test/CodeGen/SPIRV/block-ordering.ll
    M llvm/test/CodeGen/SPIRV/branching/OpSwitchBranches.ll
    M llvm/test/CodeGen/SPIRV/branching/Two_OpSwitch_same_register.ll
    M llvm/test/CodeGen/SPIRV/branching/if-merging.ll
    M llvm/test/CodeGen/SPIRV/branching/if-non-merging.ll
    M llvm/test/CodeGen/SPIRV/branching/switch-range-check.ll
    M llvm/test/CodeGen/SPIRV/phi-ptrcast-dominate.ll
    M llvm/test/CodeGen/SPIRV/scfg-add-pre-headers.ll
    M llvm/test/CodeGen/SPIRV/structurizer/merge-exit-break.ll
    M llvm/test/CodeGen/SPIRV/structurizer/merge-exit-convergence-in-break.ll
    M llvm/test/CodeGen/SPIRV/structurizer/merge-exit-multiple-break.ll
    A llvm/test/CodeGen/SPIRV/structurizer/merge-exit-simple-while-identity.ll
    R llvm/test/CodeGen/SPIRV/structurizer/merge-exit-simple-white-identity.ll

  Log Message:
  -----------
  [SPIR-V] Sort basic blocks to match the SPIR-V spec (#102929)

The SPIR-V spec required basic blocks to respect some kind of ordering
(A block dominating another cannot be after in the binary layout).

---------

Signed-off-by: Nathan Gauër <brioche at google.com>


  Commit: 4e04286d61edfb56338ca3a6d0735c5384508b00
      https://github.com/llvm/llvm-project/commit/4e04286d61edfb56338ca3a6d0735c5384508b00
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-chains-vplan.ll
    M llvm/test/tools/UpdateTestChecks/update_analyze_test_checks/Inputs/x86-loopvectorize-costmodel.ll.expected

  Log Message:
  -----------
  [VPlan] Only use selectVectorizationFactor for cross-check (NFCI). (#103033)

Use getBestVF to select VF up-front and only use
selectVectorizationFactor to get the VF legacy VF to check the
vectorization decision matches the VPlan-based cost model.

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


  Commit: a80dd44b0d96fa3ba3fe0501c3ad4b1ee7edff00
      https://github.com/llvm/llvm-project/commit/a80dd44b0d96fa3ba3fe0501c3ad4b1ee7edff00
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/test/Analysis/LoopAccessAnalysis/symbolic-stride.ll

  Log Message:
  -----------
  LAA: pre-commit tests for stride-versioning (#97570)

Add tests for when the Stride is unknown and equal to TC, with different
kinds of casts. In these cases, LAA should not speculate on Stride.


  Commit: 7a19194d0ac0110e5dae43538423293b67a27466
      https://github.com/llvm/llvm-project/commit/7a19194d0ac0110e5dae43538423293b67a27466
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/unittests/ADT/STLExtrasTest.cpp

  Log Message:
  -----------
  [NFC][ADT] Add unit test for llvm::mismatch. (#105459)

- Add basic unit test for llvm::mismatch.


  Commit: 0cff3e85db00b5f425cc4ed0d6921445afa891ca
      https://github.com/llvm/llvm-project/commit/0cff3e85db00b5f425cc4ed0d6921445afa891ca
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Support/ModRef.h
    M llvm/lib/Analysis/AliasAnalysis.cpp
    M llvm/lib/Support/CMakeLists.txt
    A llvm/lib/Support/ModRef.cpp

  Log Message:
  -----------
  [NFC][Support] Move ModRef/MemoryEffects printers to their own file (#105367)

- Move raw_ostream << operators for `ModRef` and `MemoryEffects` to a
new ModRef.cpp file under llvm/Support (instead of AliasAnalysis.cpp)

- This enables calling these operators from `Core` files like
Instructions.cpp (for instance for debugging). Currently, they live in
`LLVMAnalysis` which cannot be linked with `Core`.


  Commit: 2644fe4858a36ffa65c36645f362e79889a0ad21
      https://github.com/llvm/llvm-project/commit/2644fe4858a36ffa65c36645f362e79889a0ad21
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

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

  Log Message:
  -----------
  [gn build] Port 0cff3e85db00


  Commit: 4f075086e7b8d9108749117f53999cd4afdd6894
      https://github.com/llvm/llvm-project/commit/4f075086e7b8d9108749117f53999cd4afdd6894
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

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

  Log Message:
  -----------
  [LLVM][VPlan] Keep all VPBlend masks until VPlan transformation. (#104015)

It's not possible to pick the best mask to remove when optimising
VPBlend at construction and so this patch refactors the code to move the
decision (and thus transformation) to VPlanTransforms.

NOTE: This patch does not change the decision of which mask to pick.
That will be done in a following PR to keep this patch as NFC from an
output point of view.


  Commit: 170a21e7f00d0097d88cba3547967e500e0d8dfe
      https://github.com/llvm/llvm-project/commit/170a21e7f00d0097d88cba3547967e500e0d8dfe
  Author: Marius Kamp <msk at posteo.org>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

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

  Log Message:
  -----------
  [InstCombine] Extend Fold of Zero-extended Bit Test (#102100)

Previously, (zext (icmp ne (and X, (1 << ShAmt)), 0)) has only been
folded if the bit width of X and the result were equal. Use a trunc or
zext instruction to also support other bit widths.
    
This is a follow-up to commit 533190acdb9d2ed774f96a998b5c03be3df4f857,
which introduced a regression: (zext (icmp ne (and (lshr X ShAmt) 1) 0))
is not folded any longer to (zext/trunc (and (lshr X ShAmt) 1)) since
the commit introduced the fold of (icmp ne (and (lshr X ShAmt) 1) 0) to
(icmp ne (and X (1 << ShAmt)) 0). The change introduced by this commit
restores this fold.
    
Alive proof: https://alive2.llvm.org/ce/z/MFkNXs
    
Relates to issue #86813 and pull request #101838.


  Commit: ad435bcc14f42dc97286c717cd12446a0facb2ee
      https://github.com/llvm/llvm-project/commit/ad435bcc14f42dc97286c717cd12446a0facb2ee
  Author: Alex Voicu <alexandru.voicu at amd.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M clang/lib/CodeGen/Targets/SPIR.cpp
    M clang/test/CodeGenCUDA/amdgpu-kernel-arg-pointer-type.cu
    M clang/test/CodeGenCUDA/kernel-args.cu

  Log Message:
  -----------
  [clang][CodeGen][SPIR-V][AMDGPU] Tweak AMDGCNSPIRV ABI to allow for the correct handling of aggregates passed to kernels / functions. (#102776)

The AMDGPU kernel ABI is not directly representable in SPIR-V, since it
relies on passing aggregates `byref`, and SPIR-V only encodes `byval`
(which the AMDGPU BE disallows for kernel arguments). As a temporary
solution to this mismatch, we add special handling for AMDGCN flavoured
SPIR-V, whereby aggregates are passed as direct, both to kernels and to
normal functions. This is not ideal (there are pathological cases where
performance is heavily impacted), but empirically robust and guaranteed
to work as the AMDGPU BE retains handling of `direct` passing for legacy
reasons.

We will revisit this in the future, but as it stands it is enough to
pass a wide array of integration tests and generates correct SPIR-V and
correct reverse translation into LLVM IR. The
amdgpu-kernel-arg-pointer-type test is updated via the automated script,
and thus becomes quite noisy.


  Commit: 848658955a9d2d42ea3e319d191e2dcd5d76c837
      https://github.com/llvm/llvm-project/commit/848658955a9d2d42ea3e319d191e2dcd5d76c837
  Author: Balazs Benics <benicsbalazs at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def
    M clang/lib/StaticAnalyzer/Checkers/Taint.cpp
    M clang/test/Analysis/analyzer-config.c
    M clang/test/Analysis/taint-generic.c

  Log Message:
  -----------
  [analyzer] Limit `isTainted()` by skipping complicated symbols (#105493)

As discussed in

https://discourse.llvm.org/t/rfc-make-istainted-and-complex-symbols-friends/79570/10

Some `isTainted()` queries can blow up the analysis times, and
effectively halt the analysis under specific workloads.

We don't really have the time now to do a caching re-implementation of
`isTainted()`, so we need to workaround the case.

The workaround with the smallest blast radius was to limit what symbols
`isTainted()` does the query (by walking the SymExpr). So far, the
threshold 10 worked for us, but this value can be overridden using the
"max-tainted-symbol-complexity" config value.

This new option is "deprecated" from the getgo, as I expect this issue
to be fixed within the next few months and I don't want users to
override this value anyways. If they do, this message will let them know
that they are on their own, and the next release may break them (as we
no longer recognize this option if we drop it).

Mitigates #89720

CPP-5414


  Commit: 2704b804bec50c2b016bf678bd534c330ec655b6
      https://github.com/llvm/llvm-project/commit/2704b804bec50c2b016bf678bd534c330ec655b6
  Author: Hans Wennborg <hans at chromium.org>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M compiler-rt/lib/asan/asan_flags.inc
    M compiler-rt/lib/asan/asan_globals.cpp
    M compiler-rt/test/asan/TestCases/Linux/initialization-nobug-lld.cpp
    M compiler-rt/test/asan/TestCases/Linux/odr_indicator_unregister.cpp
    M compiler-rt/test/asan/TestCases/Linux/odr_indicators.cpp
    M compiler-rt/test/asan/TestCases/Windows/dll_global_dead_strip.c
    M compiler-rt/test/asan/TestCases/Windows/dll_report_globals_symbolization_at_startup.cpp
    M compiler-rt/test/asan/TestCases/Windows/global_dead_strip.c
    M compiler-rt/test/asan/TestCases/Windows/report_globals_vs_freelibrary.cpp
    M compiler-rt/test/asan/TestCases/initialization-nobug.cpp

  Log Message:
  -----------
  Revert "[asan] Remove debug tracing from `report_globals` (#104404)"

This caused

  SanitizerCommon-asan-x86_64-Darwin :: Darwin/print-stack-trace-in-code-loaded-after-fork.cpp

to fail, see comment on the PR.

> Printing globals registration is internal debug
> tracing and should be controlled with verbosity.

This reverts commit 68f6e7467651f38e0b97343bfbc49e0ce69eaedf and
follow-up commit ef6760116fa2fa21f78e7a3b499f77e1a3eb7b92.


  Commit: 40eca60c5a273e7b89851c7c0b73b5f1037b29ed
      https://github.com/llvm/llvm-project/commit/40eca60c5a273e7b89851c7c0b73b5f1037b29ed
  Author: Zhikai Zeng <backlight.zzk at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/test/SemaTemplate/concepts-friends.cpp

  Log Message:
  -----------
  [Clang] fix generic lambda inside requires-clause of friend function template (#99813)

fixes https://github.com/llvm/llvm-project/issues/98258

The cause is that the assertion "Nothing should reference a value below
the actual template depth" is incorrect since we can have a generic
lambda inside requires-clause of friend function template, and the
generic lambda can reference to values with greater template depth.

---------

Co-authored-by: cor3ntin <corentinjabot at gmail.com>


  Commit: 1e5f275f36a3758c7c3b06d0b9e975c4eea3d0af
      https://github.com/llvm/llvm-project/commit/1e5f275f36a3758c7c3b06d0b9e975c4eea3d0af
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/assign.compile.fail.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/assign.compile.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/copy.compile.fail.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/ctor.copy.compile.pass.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/ctor.default.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/default.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/lock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/try_lock.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/assign.compile.fail.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/assign.compile.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/copy.compile.fail.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/ctor.copy.compile.pass.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/ctor.default.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/default.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/lock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/try_lock.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/assign.compile.fail.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/assign.compile.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/copy.compile.fail.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/ctor.copy.compile.pass.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/ctor.default.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/default.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/lock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/try_lock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/try_lock_for.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/try_lock_until.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/assign.compile.fail.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/assign.compile.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/copy.compile.fail.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/ctor.copy.compile.pass.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/ctor.default.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/default.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/lock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock_for.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock_until.pass.cpp

  Log Message:
  -----------
  [libc++] Refactor the tests for mutex, recursive mutex and their timed counterparts (#104852)

This refactoring is done to remove flakyness as described in
https://github.com/llvm/llvm-project/pull/89083.


  Commit: 4f14bfeddedcf21e0eaf0ff3ddf7b62938f66df5
      https://github.com/llvm/llvm-project/commit/4f14bfeddedcf21e0eaf0ff3ddf7b62938f66df5
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/tools/llvm-reduce/deltas/RunIRPasses.cpp

  Log Message:
  -----------
  [llvm-reduce] Disable fixpoint verification in InstCombine

We don't want to get fixpoint verification errors while reducing.


  Commit: aa088438784dd76a859eee229ddaec17e0cb0651
      https://github.com/llvm/llvm-project/commit/aa088438784dd76a859eee229ddaec17e0cb0651
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M libcxx/include/__compare/ordering.h
    A libcxx/test/std/language.support/cmp/cmp.categories.pre/reject-other-than-literal-zero.verify.cpp
    R libcxx/test/std/language.support/cmp/cmp.categories.pre/zero_type.verify.cpp

  Log Message:
  -----------
  [libc++] Avoid -Wzero-as-null-pointer-constant in operator<=> (#79465)

Issue #43670 describes a situation where the following comparison will
issue a warning when -Wzero-as-null-pointer-constant is enabled:

    #include <compare>
    auto b = (1 <=> 2) < 0;

This code uses operator<(strong_ordering, Unspecified), which is
specified by the Standard to only work with a literal 0. In the library,
this is achieved by constructing Unspecified from a pointer, which works
but has the downside of triggering the warning.

This patch uses an alternative implementation where we require that the
operator is used exactly with an int of value 0 (known at compile-time),
however that value can technically be an expression like `1 - 1`, which
makes us a bit less strict than what's specified in the Standard.

Fixes #43670


  Commit: 65281570afd7e35e01533b07c6c2937de410fc52
      https://github.com/llvm/llvm-project/commit/65281570afd7e35e01533b07c6c2937de410fc52
  Author: Dmitri Gribenko <gribozavr at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M lldb/bindings/python/python-wrapper.swig

  Log Message:
  -----------
  [lldb][swig] Use the correct variable in the return statement

The issue was introduced in
https://github.com/llvm/llvm-project/pull/104523.

The code introduces the `ret_val` variable but does not use it. Instead
it returns a pointer, which gets implicitly converted to bool.


  Commit: 76c07984257b49dcc4786fa9fb3918a2c1342e23
      https://github.com/llvm/llvm-project/commit/76c07984257b49dcc4786fa9fb3918a2c1342e23
  Author: Aviad Cohen <aviadcohen7 at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
    M mlir/test/Dialect/MemRef/ops.mlir

  Log Message:
  -----------
  [mlir][memref]: Allow collapse dummy strided unit dim (#103719)

Dimensions of size 1 should be skipped, because their strides are meaningless and could have any arbitrary value.


  Commit: 281d17840c35a1d80303bb6170c253fe2411f95f
      https://github.com/llvm/llvm-project/commit/281d17840c35a1d80303bb6170c253fe2411f95f
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/Type.h
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/lib/Parse/ParseDecl.cpp
    A clang/test/Parser/function-parameter-limit.cpp

  Log Message:
  -----------
  [clang] Diagnose functions with too many parameters (#104833)

This patch adds a parser check when a function declaration or function
type declaration (in a function pointer declaration, for example) has
too many parameters for `FunctionTypeBits::NumParams` to hold. At the
moment of writing it's a 16-bit-wide bit-field, limiting the number of
parameters at 65536.

The check is added in the parser loop that goes over comma-separated
list of function parameters. This is not the solution Aaron suggested in
https://github.com/llvm/llvm-project/issues/35741#issuecomment-1638086571,
because it was found out that it's quite hard to recover from this
particular error in `GetFullTypeForDeclarator()`. Multiple options were
tried, but all of them led to crashes down the line.

I used LLVM Compile Time Tracker to ensure this does not introduce a
performance regression. I believe changes are in the noise:
https://llvm-compile-time-tracker.com/compare.php?from=de5ea2d122c31e1551654ff506c33df299f351b8&to=424818620766cedb2770e076ee359afeb0cc14ec&stat=instructions:u

Fixes #35741


  Commit: 7ad7f8f7a3d443f4c17264d7e14cccdc020976b9
      https://github.com/llvm/llvm-project/commit/7ad7f8f7a3d443f4c17264d7e14cccdc020976b9
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M .github/workflows/libcxx-build-and-test.yaml
    M libcxx/CMakeLists.txt
    A libcxx/cmake/caches/Generic-no-terminal.cmake
    M libcxx/include/__config_site.in
    M libcxx/include/print
    M libcxx/utils/ci/run-buildbot
    M libcxx/utils/libcxx/test/features.py

  Log Message:
  -----------
  [libcxx] Add `LIBCXX_HAS_TERMINAL_AVAILABLE` CMake option to disable `print` terminal checks (#99259)

Adds a new CMake option called `LIBCXX_HAS_TERMINAL_AVAILABLE` that
prevents us from checking for `isatty`.


  Commit: 87eeed1f0ebe57abffde560c25dd9829dc6038f3
      https://github.com/llvm/llvm-project/commit/87eeed1f0ebe57abffde560c25dd9829dc6038f3
  Author: Ivan R. Ivanov <ivanov.i.aa at m.titech.ac.jp>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M flang/docs/OpenMP-declare-target.md
    M flang/docs/OpenMP-descriptor-management.md
    M flang/include/flang/Optimizer/CMakeLists.txt
    A flang/include/flang/Optimizer/OpenMP/CMakeLists.txt
    A flang/include/flang/Optimizer/OpenMP/Passes.h
    A flang/include/flang/Optimizer/OpenMP/Passes.td
    M flang/include/flang/Optimizer/Transforms/Passes.td
    M flang/include/flang/Tools/CLOptions.inc
    M flang/lib/Frontend/CMakeLists.txt
    M flang/lib/Optimizer/CMakeLists.txt
    A flang/lib/Optimizer/OpenMP/CMakeLists.txt
    A flang/lib/Optimizer/OpenMP/FunctionFiltering.cpp
    A flang/lib/Optimizer/OpenMP/MapInfoFinalization.cpp
    A flang/lib/Optimizer/OpenMP/MarkDeclareTarget.cpp
    M flang/lib/Optimizer/Transforms/CMakeLists.txt
    R flang/lib/Optimizer/Transforms/OMPFunctionFiltering.cpp
    R flang/lib/Optimizer/Transforms/OMPMapInfoFinalization.cpp
    R flang/lib/Optimizer/Transforms/OMPMarkDeclareTarget.cpp
    M flang/tools/bbc/CMakeLists.txt
    M flang/tools/fir-opt/CMakeLists.txt
    M flang/tools/fir-opt/fir-opt.cpp
    M flang/tools/tco/CMakeLists.txt

  Log Message:
  -----------
  [flang][NFC] Move OpenMP related passes into a separate directory (#104732)


  Commit: e1912a15b6b05aab36b7bcbe617980e8d808bd80
      https://github.com/llvm/llvm-project/commit/e1912a15b6b05aab36b7bcbe617980e8d808bd80
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/unittests/ADT/StringRefTest.cpp

  Log Message:
  -----------
  [NFC][ADT] Format StringRefTest.cpp to fit in 80 columns. (#105502)


  Commit: 3c8f139fb73a8610680b184afc88fe4b1485add0
      https://github.com/llvm/llvm-project/commit/3c8f139fb73a8610680b184afc88fe4b1485add0
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/test/Transforms/InstCombine/select-cmp.ll

  Log Message:
  -----------
  [InstCombine] Add tests for icmp of select of cmp (NFC)


  Commit: 68e21e16d21deee0f0226b4c771ff8b4731b7370
      https://github.com/llvm/llvm-project/commit/68e21e16d21deee0f0226b4c771ff8b4731b7370
  Author: Tomas Matheson <Tomas.Matheson at arm.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64SystemOperands.td
    M llvm/test/MC/AArch64/arm64-system-encoding.s
    M llvm/test/MC/Disassembler/AArch64/basic-a64-instructions.txt

  Log Message:
  -----------
  [AArch64] Add support for ACTLR_EL12 system register (#105497)

Documentation can be found here:

https://developer.arm.com/documentation/ddi0601/2024-06/AArch64-Registers/ACTLR-EL1--Auxiliary-Control-Register--EL1-


  Commit: bccb22709324ae329e3d80cf8af9dd225799bc17
      https://github.com/llvm/llvm-project/commit/bccb22709324ae329e3d80cf8af9dd225799bc17
  Author: Ivan Radanov Ivanov <ivanov.i.aa at m.titech.ac.jp>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M flang/docs/OpenMP-declare-target.md
    M flang/docs/OpenMP-descriptor-management.md
    M flang/include/flang/Optimizer/CMakeLists.txt
    R flang/include/flang/Optimizer/OpenMP/CMakeLists.txt
    R flang/include/flang/Optimizer/OpenMP/Passes.h
    R flang/include/flang/Optimizer/OpenMP/Passes.td
    M flang/include/flang/Optimizer/Transforms/Passes.td
    M flang/include/flang/Tools/CLOptions.inc
    M flang/lib/Frontend/CMakeLists.txt
    M flang/lib/Optimizer/CMakeLists.txt
    R flang/lib/Optimizer/OpenMP/CMakeLists.txt
    R flang/lib/Optimizer/OpenMP/FunctionFiltering.cpp
    R flang/lib/Optimizer/OpenMP/MapInfoFinalization.cpp
    R flang/lib/Optimizer/OpenMP/MarkDeclareTarget.cpp
    M flang/lib/Optimizer/Transforms/CMakeLists.txt
    A flang/lib/Optimizer/Transforms/OMPFunctionFiltering.cpp
    A flang/lib/Optimizer/Transforms/OMPMapInfoFinalization.cpp
    A flang/lib/Optimizer/Transforms/OMPMarkDeclareTarget.cpp
    M flang/tools/bbc/CMakeLists.txt
    M flang/tools/fir-opt/CMakeLists.txt
    M flang/tools/fir-opt/fir-opt.cpp
    M flang/tools/tco/CMakeLists.txt

  Log Message:
  -----------
  Revert "[flang][NFC] Move OpenMP related passes into a separate directory (#104732)"

This reverts commit 87eeed1f0ebe57abffde560c25dd9829dc6038f3.


  Commit: d6d8243dcd4ea768549904036ed31b8e59e14c73
      https://github.com/llvm/llvm-project/commit/d6d8243dcd4ea768549904036ed31b8e59e14c73
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/include/llvm/LTO/LTO.h
    M llvm/lib/LTO/LTO.cpp

  Log Message:
  -----------
  [LTO] Use DenseSet in computeLTOCacheKey (NFC) (#105466)

The two instances of std::set are used only for membership checking
purposes in computeLTOCacheKey.  We do not need std::set's strengths
like iterators staying valid or the ability to traverse in a sorted
order.  This patch changes them to DenseSet.

While I am at it, this patch replaces count with contains for slightly
increased readability.


  Commit: 5ddc79b093f2afaaf2c69d20d7d44448da04458a
      https://github.com/llvm/llvm-project/commit/5ddc79b093f2afaaf2c69d20d7d44448da04458a
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/lib/LTO/LTO.cpp

  Log Message:
  -----------
  [LTO] Use a range-based for loop (NFC) (#105467)


  Commit: 70e8c982d0589b1a56faf0768b45596c2da3a510
      https://github.com/llvm/llvm-project/commit/70e8c982d0589b1a56faf0768b45596c2da3a510
  Author: Sjoerd Meijer <smeijer at nvidia.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/Transforms/CodeGenPrepare/AArch64/sink-free-instructions.ll

  Log Message:
  -----------
  [AArch64] Bail out for scalable vecs in areExtractShuffleVectors (#105484)

The added test triggers the following assert in `areExtractShuffleVectors`
that is called from `shouldSinkOperands`:

Assertion `(!isScalable() || isZero()) && "Request for a fixed element count on a scalable object"' failed.

I don't think scalable types can be extract shuffles, so bail early if
this is the case.


  Commit: 32c38dd85ee27fc7c2dd6a749fc1f7af4abdbea1
      https://github.com/llvm/llvm-project/commit/32c38dd85ee27fc7c2dd6a749fc1f7af4abdbea1
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    R libcxx/docs/Status/Cxx14.rst
    R libcxx/docs/Status/Cxx14Issues.csv
    R libcxx/docs/Status/Cxx14Papers.csv
    M libcxx/docs/index.rst
    M libcxx/utils/synchronize_csv_status_files.py

  Log Message:
  -----------
  [libc++] Mark C++14 as complete and remove the status pages (#105514)

We already documented that libc++ was C++14 complete, but we still
documented the status of C++14. Since that is redundant (and I suspect
the C++14 status page was missing some stuff), simply remove them.


  Commit: bf71c64839c0082e761a4f070ed92e01ced0187c
      https://github.com/llvm/llvm-project/commit/bf71c64839c0082e761a4f070ed92e01ced0187c
  Author: Hans Wennborg <hans at chromium.org>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M compiler-rt/test/asan/TestCases/Darwin/cstring_section.c

  Log Message:
  -----------
  Speculative fix for asan/TestCases/Darwin/cstring_section.c

It's been failing since https://green.lab.llvm.org/job/llvm.org/job/clang-stage1-RA/1812

It seems __TEXT,__cstring now comes before __TEXT,__const.


  Commit: 8d4891591fb41780c2af6e18abd590faf1f5626c
      https://github.com/llvm/llvm-project/commit/8d4891591fb41780c2af6e18abd590faf1f5626c
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn

  Log Message:
  -----------
  [gn] port 7ad7f8f7a3d4


  Commit: f0a3f8a370e3c85ee00cbc5e5d1c29e8ad3c51da
      https://github.com/llvm/llvm-project/commit/f0a3f8a370e3c85ee00cbc5e5d1c29e8ad3c51da
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M libcxx/utils/synchronize_csv_status_files.py

  Log Message:
  -----------
  [libc++] Enable C++23 and C++26 issues to be synchronized

As a drive-by, also switch to printing dangling issues instead of
killing the script, since those can be fairly common.


  Commit: ddb5480e6799d0de72c2cd34c1e7f9ffd154e660
      https://github.com/llvm/llvm-project/commit/ddb5480e6799d0de72c2cd34c1e7f9ffd154e660
  Author: Brox Chen <guochen2 at amd.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/VOPCInstructions.td
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fcmp.s16.mir

  Log Message:
  -----------
  [AMDGPU][True16][MC] added VOPC realtrue/faketrue flag and fake16 instructions (#104739)

VOPC instructions were defined with HasTrue16BitInst flag while these
true16 instructions are actually implemented with fake16 profile.
Seperate them to true16 version and fake16 version by adding
UseRealTrue16 and UseFakeTrue16 flag and fake16 instructions.

The code default to use fake16. This is preparing for the upcoming
changes in MC to support realtrue 16bit operands and vdst. The true16
and fake16 profile will be modified in the later patches.


  Commit: c9ba6d35c19022a582516e9455af3f0d79101adf
      https://github.com/llvm/llvm-project/commit/c9ba6d35c19022a582516e9455af3f0d79101adf
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-fp.ll

  Log Message:
  -----------
  [RISCV] Add coverage for fp reductions of <2^N-1 x FP> vectors


  Commit: c0d222219a8d01d3945100114256d26cfe833a1c
      https://github.com/llvm/llvm-project/commit/c0d222219a8d01d3945100114256d26cfe833a1c
  Author: Andy Kaylor <andrew.kaylor at intel.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaAttr.cpp
    A clang/test/CodeGen/ffp-contract-fast-honor-pramga-option.cpp
    A clang/test/CodeGen/ffp-contract-fhp-pragma-override.cpp

  Log Message:
  -----------
  Fix bug with -ffp-contract=fast-honor-pragmas (#104857)

This fixes a problem which caused clang to assert in the Sema pragma
handling if it encountered "#pragma STDC FP_CONTRACT DEFAULT" when
compiling with the -ffp-contract=fast-honor-pragmas option.

This fixes https://github.com/llvm/llvm-project/issues/104830


  Commit: 278fc8efdf004a1959a31bb4c208df5ee733d5c8
      https://github.com/llvm/llvm-project/commit/278fc8efdf004a1959a31bb4c208df5ee733d5c8
  Author: Björn Pettersson <bjorn.a.pettersson at ericsson.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    A llvm/test/CodeGen/AArch64/dag-combine-freeze.ll

  Log Message:
  -----------
  [DAGCombiner] Fix ReplaceAllUsesOfValueWith mutation bug in visitFREEZE (#104924)

In visitFREEZE we have been collecting a set/vector of
MaybePoisonOperands that later was iterated over, applying a freeze to
those operands. However, C-level fuzzy testing has discovered that the
recursiveness of ReplaceAllUsesOfValueWith may cause later operands in
the MaybePoisonOperands vector to be replaced when replacing an earlier
operand. That would then turn up as
   Assertion `N1.getOpcode() != ISD::DELETED_NODE &&
              "Operand is DELETED_NODE!"' failed.
failures when trying to freeze those later operands.

So we need to make sure that the vector with MaybePoisonOperands is
mutated as well when needed. Or as the solution used in this patch, make
sure to keep track of operand numbers that should be frozen instead of
having a vector of SDValues. And then we can refetch the operands while
iterating over operand numbers.

The problem was seen after adding SELECT_CC to the set of operations
including in "AllowMultipleMaybePoisonOperands". I'm not sure, but I
guess that this could happen for other operations as well for which we
allow multiple maybe poison operands.


  Commit: 6fd46089c9fbd5b22bb67ac3d6196fe70ba684c6
      https://github.com/llvm/llvm-project/commit/6fd46089c9fbd5b22bb67ac3d6196fe70ba684c6
  Author: Abid Qadeer <haqadeer at amd.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
    M flang/lib/Optimizer/Transforms/DebugTypeGenerator.h
    M flang/test/Integration/debug-fixed-array-type-2.f90
    M flang/test/Transforms/debug-fixed-array-type.fir

  Log Message:
  -----------
  [flang][debug] Allow non default array lower bounds. (#104467)

As mentioned in #98877, we currently always use 1 as lower bound for
fixed size arrays. This PR removes this restriction. It passes along
`DeclareOp` to type conversion functions and uses the shift information
(if present) to get the lower bound value. This was suggested by
@jeanPerier in
https://github.com/llvm/llvm-project/pull/96746#issuecomment-2195164553
    
This PR also adds a small cleanup that type conversion functions don't
take Location now. It was initially added so that location of derived
types can be passed. But that information can be extracted from typeInfo
objects and we don't need to pass it along.

This PR will handle the problem for local and global variable. We may
need a bit more work for derived type once the support for derived types
lands.
    
Fixes #98877.


  Commit: 839275d0536f992591f4c5d81e13a26e6095dda6
      https://github.com/llvm/llvm-project/commit/839275d0536f992591f4c5d81e13a26e6095dda6
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M mlir/lib/Conversion/OpenMPToLLVM/OpenMPToLLVM.cpp
    M mlir/test/Conversion/OpenMPToLLVM/convert-to-llvmir.mlir

  Log Message:
  -----------
  [MLIR][OpenMP] Add missing OpenMP to LLVM conversion patterns (#104440)

This patch adds conversion patterns to LLVM for the following OpenMP
dialect operations:
  - `omp.critical.declare`
  - `omp.cancel`
  - `omp.cancellation_point`
  - `omp.distribute`
  - `omp.teams`
  - `omp.ordered`
  - `omp.taskloop`

Also, arbitrary sorting of operations when passing them as template
argument lists when configuring that pass is replaced by alphabetical
sorting.


  Commit: 6816a137985bfa38cda20b9cd4e23c361c3bd0de
      https://github.com/llvm/llvm-project/commit/6816a137985bfa38cda20b9cd4e23c361c3bd0de
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M flang/test/Driver/fveclib-codegen.f90

  Log Message:
  -----------
  [flang][Driver] Remove misleading test comment (#105528)

The test initially worked on ArmPL but this was changed during code
review and I neglected to fix this comment.

Thanks for pointing this out @banach-space


  Commit: e49068624c48f4d906707b32b31f6a1d561605be
      https://github.com/llvm/llvm-project/commit/e49068624c48f4d906707b32b31f6a1d561605be
  Author: Alex Rice <alexrice999 at hotmail.co.uk>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M mlir/lib/TableGen/Operator.cpp

  Log Message:
  -----------
  [mlir] [tablegen] Make `hasSummary` and `hasDescription` useful (#105531)

The `hasSummary` and `hasDescription` functions are currently useless as
they check if the corresponding `summary` and `description` are present.
However, these values are set to a default value of `""`, and so these
functions always return true.

This PR changes these functions to check if the summary and description
are just whitespace, which is presumably closer to their original
intent.

@math-fehr 
@zero9178


  Commit: 625841c3be4dbaab089c01217726a2906f3a8103
      https://github.com/llvm/llvm-project/commit/625841c3be4dbaab089c01217726a2906f3a8103
  Author: magic-akari <akari.ccino at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M clang/tools/clang-format/clang-format-diff.py
    M clang/tools/clang-format/clang-format-sublime.py
    M clang/tools/clang-format/clang-format.el
    M clang/tools/clang-format/clang-format.py
    M clang/tools/clang-format/git-clang-format

  Log Message:
  -----------
  [clang-format] Use double hyphen for multiple-letter flags (#100978)

- Closes: #100974


  Commit: f7bbc40b0736cc417f57cd039b098b504cf6a71f
      https://github.com/llvm/llvm-project/commit/f7bbc40b0736cc417f57cd039b098b504cf6a71f
  Author: Siu Chi Chan <siuchi.chan at amd.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M lld/test/ELF/hip-section-layout.s

  Log Message:
  -----------
  [ELF,test] Enhance hip-section-layout.s

Check different object file order

Change-Id: I6096c12e29e9ddb6b3053f977e4cbb24eea9b7d3


  Commit: f03b7830902225a8910d2972c39143355795efa9
      https://github.com/llvm/llvm-project/commit/f03b7830902225a8910d2972c39143355795efa9
  Author: Kyungwoo Lee <kyulee at meta.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/unittests/CGData/CMakeLists.txt

  Log Message:
  -----------
  [CGData] Rename CodeGenDataTests to CGDataTests (#105463)

This addresses the comment for
https://github.com/llvm/llvm-project/pull/101461.


  Commit: 216d6a06524e4a8ebd6de2806c473b92d3349c4e
      https://github.com/llvm/llvm-project/commit/216d6a06524e4a8ebd6de2806c473b92d3349c4e
  Author: Chenguang Wang <w3cing at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

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

  Log Message:
  -----------
  [bazel] Fix mlir build broken by 681ae097. (#105552)

The cmake config creates two targets, `MLIRTensorMeshShardingExtensions`
and `MLIRTensorAllExtensions`; but for bazel, with the `Func` dialect we
only have a single `FuncExtensions`. Here I am following the `Func`
dialect convension to only create a single `TensorExtensions`.


  Commit: 3b7611594f010ecd5233ab9580b2feb88837f9ef
      https://github.com/llvm/llvm-project/commit/3b7611594f010ecd5233ab9580b2feb88837f9ef
  Author: Johannes Doerfert <johannes at jdoerfert.de>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M offload/plugins-nextgen/amdgpu/src/rtl.cpp
    M offload/plugins-nextgen/common/include/ErrorReporting.h
    M offload/plugins-nextgen/common/include/PluginInterface.h
    M offload/test/sanitizer/double_free.c
    M offload/test/sanitizer/double_free_racy.c
    M offload/test/sanitizer/free_wrong_ptr_kind.c
    M offload/test/sanitizer/free_wrong_ptr_kind.cpp
    A offload/test/sanitizer/ptr_outside_alloc_1.c
    A offload/test/sanitizer/ptr_outside_alloc_2.c
    A offload/test/sanitizer/use_after_free_1.c
    A offload/test/sanitizer/use_after_free_2.c

  Log Message:
  -----------
  [Offload] Improve error reporting on memory faults (#104254)

Since we can already track allocations, we can diagnose memory faults to
some degree. If the fault happens in a prior allocation (use after free)
or "close but outside" one, we can provide that information to the user.
Note that the fault address might be page aligned, and not all accesses
trigger a fault, especially for allocations that are backed by a
MemoryManager. Still, if people disable the MemoryManager or the
allocation is big enough, we can sometimes provide valueable feedback.


  Commit: 1c9d8a62cb208afe1bc87669c7dd5d9590e615b2
      https://github.com/llvm/llvm-project/commit/1c9d8a62cb208afe1bc87669c7dd5d9590e615b2
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    A libcxx/cmake/caches/AMDGPU.cmake
    A libcxx/cmake/caches/NVPTX.cmake

  Log Message:
  -----------
  [libcxx] Add cache file for the GPU build (#99348)

Summary:
This patch adds a CMake cache config file for the GPU build. This cache
will set the default required options when used from the LLVM runtime
interface or directly. These options pretty much disable everything the
GPU can't handle.

With this and the following patches: #99259, #99243, #99287, and #99333,
we will be able to build `libc++` targeting the GPU with an invocation
like this.

```
$ cmake ../llvm
-DRUNTIMES_nvptx64-nvidia-cuda_CACHE_FILES=${LLVM_SRC}/../libcxx/cmake/caches/NVPTX.cmake \
-DRUNTIMES_amdgcn-amd-amdhsa_CACHE_FILES=${LLVM_SRC}/../libcxx/cmake/caches/AMDGPU.cmake \                            
-DRUNTIMES_nvptx64-nvidia-cuda_LLVM_ENABLE_RUNTIMES=compiler-rt;libc;libcxx \
-DRUNTIMES_amdgcn-amd-amdhsa_LLVM_ENABLE_RUNTIMES=compiler-rt;libc;libcxx   \
-DLLVM_RUNTIME_TARGETS=amdgcn-amd-amdhsa;nvptx64-nvidia-cuda                \
```

This will then install the libraries and headers into the appropriate
locations for use with `clang`.


  Commit: c61d565721d0cf03e2658ec65a3526dd89142e52
      https://github.com/llvm/llvm-project/commit/c61d565721d0cf03e2658ec65a3526dd89142e52
  Author: David Green <david.green at arm.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/AArch64/arith-fp.ll

  Log Message:
  -----------
  [AArch64] Set scalar fneg to free for fnmul (#104814)

A fneg(fmul(..)) or fmul(fneg(..)) can be folded into a fnmul under
AArch64. https://clang.godbolt.org/z/znPj34Mae

This discounts the cost of the fneg in such patterns to be free.


  Commit: e78156a0e225673e592920410c8cadc94f19aa66
      https://github.com/llvm/llvm-project/commit/e78156a0e225673e592920410c8cadc94f19aa66
  Author: Sumanth Gundapaneni <sumanth.gundapaneni at amd.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/test/CodeGen/AMDGPU/lround.ll

  Log Message:
  -----------
  Scalarize the vector inputs to llvm.lround intrinsic by default. (#101054)

Verifier is updated in a different patch to let the vector types for
llvm.lround and llvm.llround intrinsics.


  Commit: 6cb14599ade843be3171fa7e4dd5f3601a3bb0de
      https://github.com/llvm/llvm-project/commit/6cb14599ade843be3171fa7e4dd5f3601a3bb0de
  Author: Jacob Lalonde <jalalonde at fb.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.cpp
    M lldb/source/Plugins/Process/minidump/MinidumpParser.cpp
    M lldb/source/Plugins/Process/minidump/MinidumpParser.h
    M lldb/source/Plugins/Process/minidump/MinidumpTypes.cpp
    M lldb/source/Plugins/Process/minidump/MinidumpTypes.h
    M lldb/test/API/functionalities/postmortem/minidump-new/TestMiniDumpNew.py
    A lldb/test/API/functionalities/postmortem/minidump-new/linux-x86_64_mem64.yaml

  Log Message:
  -----------
  [LLDB][Minidump] Fix ProcessMinidump::GetMemoryRegions to include 64b regions when /proc/pid maps are missing. (#101086)

This PR is in response to a bug my coworker @mbucko discovered where on
MacOS Minidumps were being created where the 64b memory regions were
readable, but were not being listed in
`SBProcess.GetMemoryRegionList()`. This went unnoticed in #95312 due to
all the linux testing including /proc/pid maps. On MacOS generated dumps
(or any dump without access to /proc/pid) we would fail to properly map
Memory Regions due to there being two independent methods for 32b and
64b mapping.

In this PR I addressed this minor bug and merged the methods, but in
order to add test coverage required additions to `obj2yaml` and
`yaml2obj` which make up the bulk of this patch.

Lastly, there are some non-required changes such as the addition of the
`Memory64ListHeader` type, to make writing/reading the header section of
the Memory64List easier.


  Commit: ec866638ff36b4a01b38a3ab8ef604596cb37178
      https://github.com/llvm/llvm-project/commit/ec866638ff36b4a01b38a3ab8ef604596cb37178
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx17Issues.csv
    M libcxx/docs/Status/Cxx17Papers.csv
    M libcxx/docs/Status/Cxx20Issues.csv
    M libcxx/docs/Status/Cxx23Issues.csv
    M libcxx/docs/Status/Cxx23Papers.csv

  Log Message:
  -----------
  [libc++][NFC] A few mechanical adjustments to capitalization in status files

Make sure that we consistently use `Nothing To Do`, and that we use the
RST tags properly (e.g. '|Complete|' instead of 'Complete').


  Commit: 7a28192ce1c1d9d0398348eabc46c94eadb317d8
      https://github.com/llvm/llvm-project/commit/7a28192ce1c1d9d0398348eabc46c94eadb317d8
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx17.rst
    M libcxx/docs/Status/Cxx17Issues.csv
    M libcxx/docs/Status/Cxx17Papers.csv
    M libcxx/docs/Status/Cxx20.rst
    M libcxx/docs/Status/Cxx20Issues.csv
    M libcxx/docs/Status/Cxx20Papers.csv
    M libcxx/docs/Status/Cxx23.rst
    M libcxx/docs/Status/Cxx23Issues.csv

  Log Message:
  -----------
  [libc++] Standardize how we track removed and superseded papers

Instead of having various status entries like 'Superseded by XXX',
we use '|Nothing To Do|' but we add a note explaining that the paper
was pulled at another meeting.


  Commit: ae48affd25ac8e211a5bc1c72ef208615fc7eb7d
      https://github.com/llvm/llvm-project/commit/ae48affd25ac8e211a5bc1c72ef208615fc7eb7d
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp

  Log Message:
  -----------
  [RISCV] Minor style fixes in lowerVectorMaskVecReduction [nfc]

Reuse existing routine to avoid duplication, and reduce variable scopes.


  Commit: c975dc1da03d684604ddf787b07b63fb8e903648
      https://github.com/llvm/llvm-project/commit/c975dc1da03d684604ddf787b07b63fb8e903648
  Author: Harini0924 <79345568+Harini0924 at users.noreply.github.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M clang/test/ClangScanDeps/pr61006.cppm
    M clang/test/Driver/coverage.c
    M clang/test/Driver/program-path-priority.c

  Log Message:
  -----------
  [clang] [test] Use lit Syntax for Environment Variables in Clang subproject (#102647)

This patch updates the clang tests by replacing shell command
substitutions with lit-compatible syntax for setting and referencing
environment variables. Specifically, the use of shell-style variable
substitution (e.g., `DEFAULT_TRIPLE=`and `EXPECTED_RESOURCE_DIR=`) has
been replaced with `env` and `%{env}` to align with lit's internal shell
requirements. These changes ensure that environment variables are
properly set and accessed within the lit environment.

When using the lit internal shell with the command
`LIT_USE_INTERNAL_SHELL=1 ninja check-clang`, one common error
encountered is:
```
FAIL: Clang :: Driver/program-path-priority.c (19 of 20640)
******************** TEST 'Clang :: Driver/program-path-priority.c' FAILED ********************
Exit Code: 127

Command Output (stdout):
--
# RUN: at line 90
DEFAULT_TRIPLE=`/usr/local/google/home/harinidonthula/llvm-project/build/tools/clang/test/Driver/Output/program-path-priority.c.tmp/clang --version | grep "Target:" | cut -d ' ' -f2`
# executed command: 'DEFAULT_TRIPLE=`/usr/local/google/home/harinidonthula/llvm-project/build/tools/clang/test/Driver/Output/program-path-priority.c.tmp/clang' --version
# .---command stderr------------
# | 'DEFAULT_TRIPLE=`/usr/local/google/home/harinidonthula/llvm-project/build/tools/clang/test/Driver/Output/program-path-priority.c.tmp/clang': command not found
# `-----------------------------
# error: command failed with exit status: 127
```
To fix this issue, the patch replaces traditional shell substitutions
with lit's environment variable handling, ensuring compatibility with
the lit internal shell framework. This update applies to both the
handling of the `DEFAULT_TRIPLE` and `EXPECTED_RESOURCE_DIR` variables,
allowing the tests to pass when using the lit internal shell.
The patch also adds `env` to the `PWD` variable setting in the following
command to ensure the environment variable is correctly set within the
lit internal shell:
```
// RUN: %if system-linux %{ env PWD=/proc/self/cwd %clang -### -c --coverage %s -o foo/bar.o 2>&1 | FileCheck --check-prefix=PWD %s %}
```
fixes: #102395
[link to
RFC](https://discourse.llvm.org/t/rfc-enabling-the-lit-internal-shell-by-default/80179)


  Commit: b89fef8f67974ebcd4114fa75ac2e53fd687870c
      https://github.com/llvm/llvm-project/commit/b89fef8f67974ebcd4114fa75ac2e53fd687870c
  Author: Michael Jones <michaelrj at google.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M libc/docs/build_and_test.rst
    M libc/docs/contributing.rst
    R libc/docs/dev/api_test.rst
    R libc/docs/dev/ground_truth_specification.rst
    M libc/docs/dev/header_generation.rst
    M libc/docs/dev/index.rst
    R libc/docs/dev/mechanics_of_public_api.rst
    M libc/docs/dev/source_tree_layout.rst
    M libc/docs/full_cross_build.rst
    M libc/docs/full_host_build.rst
    M libc/docs/fullbuild_mode.rst
    M libc/docs/gpu/building.rst
    M libc/docs/index.rst
    M libc/docs/overlay_mode.rst
    M libc/docs/porting.rst

  Log Message:
  -----------
  [libc][docs] Update docs to reflect new headergen (#102381)

Since new headergen is now the default for building LLVM-libc, the docs
need to be updated to reflect that. While I was editing those docs, I
took a quick pass at updating other out-of-date pages.


  Commit: 22d3fb182c9199ac3d51e5577c6647508a7a37f0
      https://github.com/llvm/llvm-project/commit/22d3fb182c9199ac3d51e5577c6647508a7a37f0
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/CtxProfAnalysis.h
    M llvm/lib/Analysis/CtxProfAnalysis.cpp
    M llvm/test/Analysis/CtxProfAnalysis/full-cycle.ll
    M llvm/test/Analysis/CtxProfAnalysis/load.ll

  Log Message:
  -----------
  [ctx_prof] Profile flatterner (#104539)

Eventually we'll need to flatten the profile (at the end of all IPO) and lower to "vanilla" `MD_prof`. This is the first part of that.

Issue #89287


  Commit: a6bae5cb37919bb0b855dd468d4982340a5740d2
      https://github.com/llvm/llvm-project/commit/a6bae5cb37919bb0b855dd468d4982340a5740d2
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
    M llvm/lib/Target/AMDGPU/CMakeLists.txt
    A llvm/lib/Target/AMDGPU/GCNSubtarget.cpp
    M llvm/test/CodeGen/AMDGPU/sramecc-subtarget-feature-any.ll
    M llvm/test/CodeGen/AMDGPU/sramecc-subtarget-feature-disabled.ll
    M llvm/test/CodeGen/AMDGPU/sramecc-subtarget-feature-enabled.ll
    M llvm/test/CodeGen/AMDGPU/xnack-subtarget-feature-any.ll
    M llvm/test/CodeGen/AMDGPU/xnack-subtarget-feature-disabled.ll
    M llvm/test/CodeGen/AMDGPU/xnack-subtarget-feature-enabled.ll

  Log Message:
  -----------
  [AMDGPU] Split GCNSubtarget into its own file. NFC. (#105525)


  Commit: 47e0212f00f707a4bb92714afe9c748116887d62
      https://github.com/llvm/llvm-project/commit/47e0212f00f707a4bb92714afe9c748116887d62
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

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

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


  Commit: c09fdac0b577ca0bfef141765d0a9ae1b6040893
      https://github.com/llvm/llvm-project/commit/c09fdac0b577ca0bfef141765d0a9ae1b6040893
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/docs/GettingInvolved.rst
    M llvm/docs/_static/LoopOptWG_invite.ics

  Log Message:
  -----------
  [Docs] Update Loop Optimization WG call.

The WebEx link will become invalid soon, we are switching to Google
Meet. Also, changing the cadence from biweekly to monthly.


  Commit: 6257a98b258a3f17b78af31bf43009a559c5dd1d
      https://github.com/llvm/llvm-project/commit/6257a98b258a3f17b78af31bf43009a559c5dd1d
  Author: Adrian Vogelsgesang <avogelsgesang at salesforce.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
    M lldb/test/API/tools/lldb-dap/step/TestDAP_step.py
    M lldb/tools/lldb-dap/lldb-dap.cpp

  Log Message:
  -----------
  [lldb-dap] Implement `StepGranularity` for "next" and "step-in" (#105464)

VS Code requests the `instruction` stepping granularity if the assembly
view is currently focused. By implementing `StepGranularity`, we can
hence properly single-step through assembly code.


  Commit: 8b4d4bee2a45f637fb4dcda49b592374e93a6480
      https://github.com/llvm/llvm-project/commit/8b4d4bee2a45f637fb4dcda49b592374e93a6480
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/unittests/ADT/StringRefTest.cpp

  Log Message:
  -----------
  [NFC][ADT] Remove << operators from StringRefTest (#105500)

- Remove ostream << operators for StringRef and StringRef pair from
StringTest.
  Both of these are natively supported by googletest framework.


  Commit: 89c556cfda4de346774c9fe547da6af9121dfa97
      https://github.com/llvm/llvm-project/commit/89c556cfda4de346774c9fe547da6af9121dfa97
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M flang/lib/Lower/OpenMP/Clauses.h

  Log Message:
  -----------
  [flang][OpenMP] Follow-up to build-breakage fix (#102028)

Adjust the handling of a few of the new clauses.


  Commit: 6ec3130a38e6982a61e7fa74bd5223c95c0bb918
      https://github.com/llvm/llvm-project/commit/6ec3130a38e6982a61e7fa74bd5223c95c0bb918
  Author: Kyungwoo Lee <kyulee at meta.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/test/tools/llvm-cgdata/merge-archive.test
    M llvm/test/tools/llvm-cgdata/merge-concat.test
    M llvm/test/tools/llvm-cgdata/merge-double.test
    M llvm/test/tools/llvm-cgdata/merge-single.test

  Log Message:
  -----------
  [CGData] Fix tests for sed without using options (#105546)

This fixes a build issue for AIX --
https://github.com/llvm/llvm-project/pull/101461.


  Commit: e31252bf54dedadfe78b36d07ea6084156faa38a
      https://github.com/llvm/llvm-project/commit/e31252bf54dedadfe78b36d07ea6084156faa38a
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/phi-nodes-as-operand-reorder.ll

  Log Message:
  -----------
  [SLP]Fix PR105120: fix the order of phi nodes vectorization.

The operands of the phi nodes should be vectorized in the same order, in
which they were created, otherwise the compiler may crash when trying
to correctly build dependency for nodes with non-schedulable
instructions for gather/buildvector nodes.

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


  Commit: b765fdd997be9ff0afb6de87077cd53d5f3d349c
      https://github.com/llvm/llvm-project/commit/b765fdd997be9ff0afb6de87077cd53d5f3d349c
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/phi.ll

  Log Message:
  -----------
  [SLP]Try to keep scalars, used in phi nodes, if phi nodes from same block are vectorized.

Before doing the vectorization of the PHI nodes, the compiler sorts them
by the opcodes of the operands. If the scalar is replaced during the
vectorization by extractelement, it breaks this sorting and prevent some
further vectorization attempts. Patch tries to improve this by doing
extra analysis of the scalars and tries to keep them, if it is found that
this scalar is used in other (external) PHI node in the same block.

Reviewers: RKSimon

Reviewed By: RKSimon

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


  Commit: 4b35624ce0ac5b487d39880e75b5d85f4d49eec0
      https://github.com/llvm/llvm-project/commit/4b35624ce0ac5b487d39880e75b5d85f4d49eec0
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    A llvm/test/CodeGen/AArch64/sve-fixed-length-int-abd.ll
    A llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-abd.ll

  Log Message:
  -----------
  [AArch64] Add SVE lowering of fixed-length UABD/SABD (#104991)


  Commit: 716594da176b4cbc956e7c7ab90988db6f907686
      https://github.com/llvm/llvm-project/commit/716594da176b4cbc956e7c7ab90988db6f907686
  Author: Jorge Gorbe Moya <jgorbe at google.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

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

  Log Message:
  -----------
  [SandboxIR] Add ShuffleVectorInst (#104891)

This is missing tracking for `setShuffleMask`. I'll add it in a follow-up.


  Commit: b03b170dd39799b4fb25ffe70b81d0cf0c7d7346
      https://github.com/llvm/llvm-project/commit/b03b170dd39799b4fb25ffe70b81d0cf0c7d7346
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/include/llvm/ADT/StringExtras.h
    M llvm/unittests/ADT/StringExtrasTest.cpp

  Log Message:
  -----------
  [ADT] Add `isPunct` to StringExtras (#105461)

- Add `isPunct` to StringExtras.h.
- Add unit test for `isPunct` to StringExtrasTest.


  Commit: 84fa7b438e1fba0c88b21784e716926017b9fe49
      https://github.com/llvm/llvm-project/commit/84fa7b438e1fba0c88b21784e716926017b9fe49
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M libcxx/utils/synchronize_csv_status_files.py

  Log Message:
  -----------
  [libc++] Improve the granularity of status tracking from Github issues

This enhances the Github - CSV synchronization script to understand
some of the idioms we use in the CSV status files, like |Nothing To Do|
and others.


  Commit: cfd4c1805ead139f84a4465719c49cca53f07f27
      https://github.com/llvm/llvm-project/commit/cfd4c1805ead139f84a4465719c49cca53f07f27
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M flang/include/flang/Optimizer/CodeGen/CGPasses.td
    M flang/include/flang/Optimizer/CodeGen/CodeGen.h
    M flang/include/flang/Optimizer/Support/InternalNames.h
    M flang/include/flang/Optimizer/Transforms/Passes.h
    M flang/include/flang/Optimizer/Transforms/Passes.td
    M flang/include/flang/Tools/CLOptions.inc
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/Support/InternalNames.cpp
    M flang/lib/Optimizer/Transforms/CMakeLists.txt
    A flang/lib/Optimizer/Transforms/CompilerGeneratedNames.cpp
    M flang/lib/Semantics/runtime-type-info.cpp
    M flang/test/Driver/mlir-debug-pass-pipeline.f90
    M flang/test/Driver/mlir-pass-pipeline.f90
    M flang/test/Fir/basic-program.fir
    M flang/test/Fir/convert-to-llvm.fir
    A flang/test/Fir/convert-type-desc-to-llvm.fir
    M flang/test/Fir/polymorphic.fir
    M flang/test/Fir/type-descriptor.fir
    M flang/test/Lower/allocatable-polymorphic.f90
    M flang/test/Lower/dense-array-any-rank.f90

  Log Message:
  -----------
  [RFC][flang] Replace special symbols in uniqued global names. (#104859)

This change addresses more "issues" as the one resolved in #71338.
Some targets (e.g. NVPTX) do not accept global names containing
`.`. In particular, the global variables created to represent
the runtime information of derived types use `.` in their names.
A derived type's descriptor object may be used in the device code,
e.g. to initialize a descriptor of a variable of this type.
Thus, the runtime type info objects may need to be compiled
for the device.

Moreover, at least the derived types' descriptor objects
may need to be registered (think of `omp declare target`)
for the host-device association so that the addendum pointer
can be properly mapped to the device for descriptors using
a derived type's descriptor as their addendum pointer.
The registration implies knowing the name of the global variable
in the device image so that proper host code can be created.
So it is better to name the globals the same way for the host
and the device.

CompilerGeneratedNamesConversion pass renames all uniqued globals
such that the special symbols (currently `.`) are replaced
with `X`. The pass is supposed to be run for the host and the device.

An option is added to FIR-to-LLVM conversion pass to indicate
whether the new pass has been run before or not. This setting
affects how the codegen computes the names of the derived types'
descriptors for FIR derived types.

fir::NameUniquer now allows `X` to be part of a name, because
the name deconstruction may be applied to the mangled names
after CompilerGeneratedNamesConversion pass.


  Commit: 30ca06c4d0d06f67f10a9e19d4333acc2074811b
      https://github.com/llvm/llvm-project/commit/30ca06c4d0d06f67f10a9e19d4333acc2074811b
  Author: John Harrison <harjohn at google.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
    A lldb/test/API/tools/lldb-dap/output/Makefile
    A lldb/test/API/tools/lldb-dap/output/TestDAP_output.py
    A lldb/test/API/tools/lldb-dap/output/main.c
    M lldb/tools/lldb-dap/DAP.cpp
    M lldb/tools/lldb-dap/DAP.h
    M lldb/tools/lldb-dap/OutputRedirector.cpp
    M lldb/tools/lldb-dap/lldb-dap.cpp

  Log Message:
  -----------
  [lldb-dap] When sending a DAP Output Event break each message into separate lines. (#105456)

Previously, when output like `"hello\nworld\n"` was produced by lldb (or
the process) the message would be sent as a single Output event. By
being a single event this causes VS Code to treat this as a single
message in the console when handling displaying and filtering in the
Debug Console.

Instead, with these changes we send each line as its own event. This
results in VS Code representing each line of output from lldb-dap as an
individual output message.

Resolves #105444


  Commit: 46c94bed5af48f3785c3370a9297ea29d7918cd5
      https://github.com/llvm/llvm-project/commit/46c94bed5af48f3785c3370a9297ea29d7918cd5
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx20Issues.csv
    M libcxx/docs/Status/Cxx23Issues.csv

  Log Message:
  -----------
  [libc++] Mark LWG3404 as implemented

LWG3404 was implemented along with subrange.

Closes #104282


  Commit: ab86fc74c04ff508f909b7b6131df1551dd833fc
      https://github.com/llvm/llvm-project/commit/ab86fc74c04ff508f909b7b6131df1551dd833fc
  Author: Jonas Rickert <Jonas.Rickert at amd.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M mlir/include/mlir/IR/MLIRContext.h

  Log Message:
  -----------
  [mlir] Add nodiscard attribute to allowsUnregisteredDialects (#105530)

This getter can easily be confused with the similar named
allowUnregisteredDialects setter


  Commit: f709cd5add0ea36bb14259e9716bd74e5c762128
      https://github.com/llvm/llvm-project/commit/f709cd5add0ea36bb14259e9716bd74e5c762128
  Author: Dmitri Gribenko <gribozavr at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    R clang/test/CodeGenCoroutines/coro-dwarf-O2.cpp
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
    M llvm/lib/Transforms/Coroutines/CoroInternal.h
    M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
    M llvm/test/Transforms/Coroutines/coro-debug-O2.ll

  Log Message:
  -----------
  Revert "[Coroutines] Salvage the debug information for coroutine frames within optimizations"

This reverts commit 522c253f47ea27d8eeb759e06f8749092b1de71e.

This series of commits causes Clang crashes. The reproducer is posted on
https://github.com/llvm/llvm-project/commit/08a0dece2b2431db8abe650bb43cba01e781e1ce.


  Commit: dc12ccd13f98a3f3ec4af07e60f6fe1344965e17
      https://github.com/llvm/llvm-project/commit/dc12ccd13f98a3f3ec4af07e60f6fe1344965e17
  Author: Dmitri Gribenko <gribozavr at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp

  Log Message:
  -----------
  Revert "[Coroutines] Fix -Wunused-variable in CoroFrame.cpp (NFC)"

This reverts commit d48b807aa8abd1cbfe8ac5d1ba27b8b3617fc5e6.

This series of commits causes Clang crashes. The reproducer is posted on
https://github.com/llvm/llvm-project/commit/08a0dece2b2431db8abe650bb43cba01e781e1ce


  Commit: 5c7ae42c526b21acf65ab4b017d0a5fd4ac654a1
      https://github.com/llvm/llvm-project/commit/5c7ae42c526b21acf65ab4b017d0a5fd4ac654a1
  Author: Dmitri Gribenko <gribozavr at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
    M llvm/test/Transforms/Coroutines/coro-debug-coro-frame.ll
    M llvm/test/Transforms/Coroutines/coro-debug-dbg.values.ll
    M llvm/test/Transforms/Coroutines/coro-debug-frame-variable.ll

  Log Message:
  -----------
  Revert "[Coroutines] [NFCI] Don't search the DILocalVariable for __promise when constructing the debug varaible for __coro_frame"

This reverts commit 08a0dece2b2431db8abe650bb43cba01e781e1ce.

This series of commits causes Clang crashes. The reproducer is posted on
https://github.com/llvm/llvm-project/commit/08a0dece2b2431db8abe650bb43cba01e781e1ce.


  Commit: be7d08cd59b0f23eea88e791b2413b44301949d3
      https://github.com/llvm/llvm-project/commit/be7d08cd59b0f23eea88e791b2413b44301949d3
  Author: Volodymyr Vasylkun <vvmposeydon at gmail.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
    M llvm/test/Transforms/InstCombine/add.ll
    A llvm/test/Transforms/InstCombine/sext-a-lt-b-plus-zext-a-gt-b-to-uscmp.ll

  Log Message:
  -----------
  [InstCombine] Fold `sext(A < B) + zext(A > B)` into `ucmp/scmp(A, B)` (#103833)

This change also covers the fold of `zext(A > B) - zext(A < B)` since it
is already being canonicalized into the aforementioned pattern.

Proof: https://alive2.llvm.org/ce/z/AgnfMn


  Commit: aa4c6557a1281df627cdf06684bdb08da2707200
      https://github.com/llvm/llvm-project/commit/aa4c6557a1281df627cdf06684bdb08da2707200
  Author: Jorge Gorbe Moya <jgorbe at google.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp

  Log Message:
  -----------
  [SandboxIR] Fix use-of-uninitialized in ShuffleVectorInst unit test. (#105592)

I accidentally created a dangling ArrayRef local variable. Use a
SmallVector instead.


  Commit: 9ebe8b9abde02340494883d1ed1897ef5837473b
      https://github.com/llvm/llvm-project/commit/9ebe8b9abde02340494883d1ed1897ef5837473b
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/utils/TableGen/TableGen.cpp

  Log Message:
  -----------
  [NFC][TableGen] Change global variables from anonymous NS to static (#105504)

- Move global variables in TableGen.cpp out of anonymous namespace and
make them static, per LLVM coding standards.


  Commit: b5ba726577f7e7af880b62a6352c6208bda4cd0b
      https://github.com/llvm/llvm-project/commit/b5ba726577f7e7af880b62a6352c6208bda4cd0b
  Author: Jorge Gorbe Moya <jgorbe at google.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

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

  Log Message:
  -----------
  [SandboxIR] Add tracking for `ShuffleVectorInst::setShuffleMask`. (#105590)


  Commit: 6b98a723653214a6cde05ae3cb5233af328ff101
      https://github.com/llvm/llvm-project/commit/6b98a723653214a6cde05ae3cb5233af328ff101
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M libc/config/gpu/entrypoints.txt
    M libc/docs/gpu/support.rst
    M libc/src/stdio/CMakeLists.txt
    M libc/src/stdio/scanf_core/CMakeLists.txt
    M libc/src/stdio/scanf_core/vfscanf_internal.h

  Log Message:
  -----------
  [libc] Add `scanf` support to the GPU build (#104812)

Summary:
The `scanf` function has a "system file" configuration, which is pretty
much what the GPU implementation does at this point. So we should be
able to use it in much the same way.


  Commit: c557d8520413476221a4f3bf2b7b3fed17681691
      https://github.com/llvm/llvm-project/commit/c557d8520413476221a4f3bf2b7b3fed17681691
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M flang/runtime/numeric.cpp

  Log Message:
  -----------
  [flang][runtime] Add build-time flags to runtime to adjust SELECTED_x_KIND() (#105575)

Add FLANG_RUNTIME_NO_INTEGER_16 and FLANG_RUNTIME_NO_REAL_{2,10,16} to
allow one to disable those kinds from being returned from
SELECTED_INT_KIND and SELECTED_REAL_KIND even if they are actually
available in the C++ build compiler.


  Commit: ec8fe7ad81af6c211fb26c34824092e5bca08f5e
      https://github.com/llvm/llvm-project/commit/ec8fe7ad81af6c211fb26c34824092e5bca08f5e
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/IPO/FunctionImport.h

  Log Message:
  -----------
  [LTO] Use enum class for ImportFailureReason (NFC) (#105564)

It turns out that all uses of the enum values here are already
qualified like FunctionImporter::ImportFailureReason::None, so we can
switch to enum class without touching the rest of the codebase.


  Commit: fdbc4089e7a6eafa4002a7981bcde94fc378bc18
      https://github.com/llvm/llvm-project/commit/fdbc4089e7a6eafa4002a7981bcde94fc378bc18
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/lib/Transforms/IPO/FunctionImport.cpp

  Log Message:
  -----------
  [LTO] Compare std::optional<ImportKind> directly with ImportKind (NFC) (#105561)

Note that:

  Opt == Val if and only (Opt && *Opt == Val)

where:

  std::optional<T> Opt;
  T Val;


  Commit: 19d3f3417100dc99caa4394fbd26fc0c4702264e
      https://github.com/llvm/llvm-project/commit/19d3f3417100dc99caa4394fbd26fc0c4702264e
  Author: Adrian Prantl <aprantl at apple.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M lldb/test/Shell/Unwind/trap_frame_sym_ctx.test

  Log Message:
  -----------
  [lldb] Speculative fix for trap_frame_sym_ctx.test

Unfortunately I can't actually reproduce this locally.


  Commit: 1e70122cbc187c08de91a3fb42843efb1221e0e9
      https://github.com/llvm/llvm-project/commit/1e70122cbc187c08de91a3fb42843efb1221e0e9
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/CtxProfAnalysis.h
    M llvm/lib/Analysis/CtxProfAnalysis.cpp
    M llvm/unittests/Analysis/CtxProfAnalysisTest.cpp

  Log Message:
  -----------
  [ctx_prof] API to get the instrumentation of a BB (#105468)

Analogous to PR #104491 

Issue #89287


  Commit: f25e6515aa04e53a642bc79eb09a96e418cbbb03
      https://github.com/llvm/llvm-project/commit/f25e6515aa04e53a642bc79eb09a96e418cbbb03
  Author: Connie Zhu <60797237+connieyzhu at users.noreply.github.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M compiler-rt/test/fuzzer/features_dir.test

  Log Message:
  -----------
  [compiler-rt][test] Added REQUIRES:shell to fuzzer test with for-loop (#105557)

This patch makes the features_dir.test file require a shell when
running. This will make the test file unsupported when running llvm-lit
with its internal shell implementation, which is enabled by turning on
the LIT_USE_INTERNAL_SHELL environment variable. Lit's internal shell
currently does not support for-loop syntax.


  Commit: 04c827d0b5e629ba53e8ede94811a13a96db36a4
      https://github.com/llvm/llvm-project/commit/04c827d0b5e629ba53e8ede94811a13a96db36a4
  Author: Jorge Gorbe Moya <jgorbe at google.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp

  Log Message:
  -----------
  [SandboxIR] Simplify matchers in ShuffleVectorInst unit test (NFC) (#105596)

Replace instances of `testing::ContainerEq(ArrayRef<int>({1, 2, 3, 4}))`
with `testing::ElementsAre(1, 2, 3, 4)` which is simpler and more
readable.


  Commit: 64e464349bfca0d90e07f6db2f710d4d53cdacd4
      https://github.com/llvm/llvm-project/commit/64e464349bfca0d90e07f6db2f710d4d53cdacd4
  Author: eddyz87 <eddyz87 at gmail.com>
  Date:   2024-08-22 (Thu, 22 Aug 2024)

  Changed paths:
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/lib/CodeGen/CGCall.cpp
    A clang/test/CodeGen/bpf-attr-bpf-fastcall-1.c
    M clang/test/Misc/pragma-attribute-supported-attributes-list.test
    A clang/test/Sema/bpf-attr-bpf-fastcall.c
    M llvm/lib/Target/BPF/BPFCallingConv.td
    M llvm/lib/Target/BPF/BPFISelLowering.cpp
    M llvm/lib/Target/BPF/BPFInstrInfo.td
    M llvm/lib/Target/BPF/BPFMIPeephole.cpp
    M llvm/lib/Target/BPF/BPFRegisterInfo.cpp
    M llvm/lib/Target/BPF/BPFRegisterInfo.h
    A llvm/test/CodeGen/BPF/bpf-fastcall-1.ll
    A llvm/test/CodeGen/BPF/bpf-fastcall-2.ll
    A llvm/test/CodeGen/BPF/bpf-fastcall-3.ll
    A llvm/test/CodeGen/BPF/bpf-fastcall-regmask-1.ll

  Log Message:
  -----------
  [BPF] introduce __attribute__((bpf_fastcall)) (#105417)

This commit introduces attribute bpf_fastcall to declare BPF functions
that do not clobber some of the caller saved registers (R0-R5).

The idea is to generate the code complying with generic BPF ABI,
but allow compatible Linux Kernel to remove unnecessary spills and
fills of non-scratched registers (given some compiler assistance).

For such functions do register allocation as-if caller saved registers
are not clobbered, but later wrap the calls with spill and fill
patterns that are simple to recognize in kernel.

For example for the following C code:

    #define __bpf_fastcall __attribute__((bpf_fastcall))

    void bar(void) __bpf_fastcall;
    void buz(long i, long j, long k);

    void foo(long i, long j, long k) {
      bar();
      buz(i, j, k);
    }

First allocate registers as if:

    foo:
      call bar    # note: no spills for i,j,k (r1,r2,r3)
      call buz
      exit

And later insert spills fills on the peephole phase:

    foo:
      *(u64 *)(r10 - 8) = r1;  # Such call pattern is
      *(u64 *)(r10 - 16) = r2; # correct when used with
      *(u64 *)(r10 - 24) = r3; # old kernels.
      call bar
      r3 = *(u64 *)(r10 - 24); # But also allows new
      r2 = *(u64 *)(r10 - 16); # kernels to recognize the
      r1 = *(u64 *)(r10 - 8);  # pattern and remove spills/fills.
      call buz
      exit

The offsets for generated spills/fills are picked as minimal stack
offsets for the function. Allocated stack slots are not used for any
other purposes, in order to simplify in-kernel analysis.


  Commit: 54081b7e4a315cdbe1017eeded9e2cf861ecc0b4
      https://github.com/llvm/llvm-project/commit/54081b7e4a315cdbe1017eeded9e2cf861ecc0b4
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M .github/workflows/libcxx-build-and-test.yaml
    M bolt/lib/Core/BinaryFunction.cpp
    M bolt/lib/Core/BinaryFunctionProfile.cpp
    A bolt/test/X86/infer-fall-throughs.s
    M clang/cmake/caches/CrossWinToARMLinux.cmake
    M clang/docs/InternalsManual.rst
    M clang/docs/LanguageExtensions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/docs/UndefinedBehaviorSanitizer.rst
    M clang/docs/UsersManual.rst
    M clang/include/clang/AST/Expr.h
    M clang/include/clang/AST/ExprCXX.h
    M clang/include/clang/AST/OpenMPClause.h
    M clang/include/clang/AST/Stmt.h
    M clang/include/clang/AST/Type.h
    M clang/include/clang/ASTMatchers/ASTMatchers.h
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/BuiltinsX86.def
    M clang/include/clang/Basic/CodeGenOptions.def
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/LangOptions.h
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Driver/SanitizerArgs.h
    M clang/include/clang/ExtractAPI/API.h
    M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/EvalEmitter.cpp
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/Expr.cpp
    M clang/lib/AST/FormatString.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenModule.h
    M clang/lib/CodeGen/CodeGenTBAA.cpp
    M clang/lib/CodeGen/CodeGenTBAA.h
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/lib/CodeGen/CodeGenTypes.h
    M clang/lib/CodeGen/MicrosoftCXXABI.cpp
    M clang/lib/CodeGen/Targets/SPIR.cpp
    M clang/lib/Driver/SanitizerArgs.cpp
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/PS4CPU.cpp
    M clang/lib/ExtractAPI/API.cpp
    M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Frontend/PrintPreprocessedOutput.cpp
    M clang/lib/Headers/CMakeLists.txt
    A clang/lib/Headers/avx10_2_512convertintrin.h
    A clang/lib/Headers/avx10_2convertintrin.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Headers/immintrin.h
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Sema/SemaAttr.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/lib/Sema/SemaInit.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Sema/SemaX86.cpp
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    M clang/lib/StaticAnalyzer/Checkers/Taint.cpp
    M clang/test/Analysis/analyzer-config.c
    M clang/test/Analysis/taint-generic.c
    M clang/test/CXX/drs/cwg23xx.cpp
    A clang/test/CXX/drs/cwg722.cpp
    M clang/test/CXX/drs/cwg7xx.cpp
    M clang/test/CXX/temp/temp.arg/temp.arg.nontype/p1-11.cpp
    M clang/test/ClangScanDeps/pr61006.cppm
    A clang/test/CodeGen/X86/avx10_2_512convert-builtins.c
    A clang/test/CodeGen/X86/avx10_2convert-builtins.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld1-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld1.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld1sb.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld1sh.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld1sw.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld1ub.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld1uh.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld1uw.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st1-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st1.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st1b.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st1h.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st1w.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_loads.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_store.c
    M clang/test/CodeGen/attr-counted-by.c
    A clang/test/CodeGen/bpf-attr-bpf-fastcall-1.c
    M clang/test/CodeGen/builtin-cpu-supports.c
    A clang/test/CodeGen/ffp-contract-fast-honor-pramga-option.cpp
    A clang/test/CodeGen/ffp-contract-fhp-pragma-override.cpp
    M clang/test/CodeGen/ffp-model.c
    M clang/test/CodeGen/fp-reassoc-pragma.cpp
    M clang/test/CodeGen/fp-reciprocal-pragma.cpp
    A clang/test/CodeGen/ignore-overflow-pattern-false-pos.c
    A clang/test/CodeGen/ignore-overflow-pattern.c
    M clang/test/CodeGen/kcfi-normalize.c
    M clang/test/CodeGen/ms-mixed-ptr-sizes.c
    M clang/test/CodeGenCUDA/amdgpu-kernel-arg-pointer-type.cu
    M clang/test/CodeGenCUDA/kernel-args.cu
    R clang/test/CodeGenCoroutines/coro-dwarf-O2.cpp
    A clang/test/CodeGenHLSL/builtins/saturate.hlsl
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx12.cl
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx90a.cl
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx940.cl
    M clang/test/Driver/coverage.c
    M clang/test/Driver/fp-model.c
    A clang/test/Driver/mips-msa.c
    M clang/test/Driver/print-supported-extensions-riscv.c
    M clang/test/Driver/program-path-priority.c
    M clang/test/Driver/ps5-linker.c
    M clang/test/Driver/riscv-cpus.c
    M clang/test/ExtractAPI/anonymous_record_no_typedef.c
    M clang/test/Headers/wasm.c
    A clang/test/Interpreter/assigment-with-implicit-ctor.cpp
    A clang/test/Interpreter/preprocessor.cpp
    M clang/test/Misc/pragma-attribute-supported-attributes-list.test
    M clang/test/Misc/target-invalid-cpu-note/riscv.c
    M clang/test/OpenMP/nvptx_allocate_codegen.cpp
    A clang/test/Parser/function-parameter-limit.cpp
    M clang/test/Preprocessor/riscv-target-features.c
    A clang/test/Sema/bpf-attr-bpf-fastcall.c
    A clang/test/Sema/format-pointer.c
    M clang/test/Sema/format-strings-pedantic.c
    M clang/test/SemaCXX/attr-annotate.cpp
    M clang/test/SemaCXX/cxx2a-explicit-bool.cpp
    M clang/test/SemaCXX/sugared-auto.cpp
    A clang/test/SemaHLSL/BuiltIns/saturate-errors.hlsl
    M clang/test/SemaTemplate/concepts-friends.cpp
    M clang/tools/clang-format/clang-format-diff.py
    M clang/tools/clang-format/clang-format-sublime.py
    M clang/tools/clang-format/clang-format.el
    M clang/tools/clang-format/clang-format.py
    M clang/tools/clang-format/git-clang-format
    M clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
    M clang/www/cxx_dr_status.html
    M compiler-rt/lib/asan/asan_flags.inc
    M compiler-rt/lib/asan/asan_globals.cpp
    M compiler-rt/lib/fuzzer/FuzzerUtilFuchsia.cpp
    M compiler-rt/test/asan/TestCases/Linux/initialization-nobug-lld.cpp
    M compiler-rt/test/asan/TestCases/Linux/odr_indicator_unregister.cpp
    M compiler-rt/test/asan/TestCases/Linux/odr_indicators.cpp
    M compiler-rt/test/asan/TestCases/Windows/dll_global_dead_strip.c
    M compiler-rt/test/asan/TestCases/Windows/dll_report_globals_symbolization_at_startup.cpp
    M compiler-rt/test/asan/TestCases/Windows/global_dead_strip.c
    M compiler-rt/test/asan/TestCases/Windows/report_globals_vs_freelibrary.cpp
    M compiler-rt/test/asan/TestCases/initialization-nobug.cpp
    M compiler-rt/test/fuzzer/features_dir.test
    M flang/include/flang/Evaluate/real.h
    M flang/include/flang/Optimizer/CodeGen/CGPasses.td
    M flang/include/flang/Optimizer/CodeGen/CodeGen.h
    M flang/include/flang/Optimizer/Support/InternalNames.h
    M flang/include/flang/Optimizer/Transforms/Passes.h
    M flang/include/flang/Optimizer/Transforms/Passes.td
    M flang/include/flang/Tools/CLOptions.inc
    M flang/lib/Evaluate/fold-real.cpp
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M flang/lib/Lower/OpenMP/Clauses.h
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/Support/InternalNames.cpp
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    M flang/lib/Optimizer/Transforms/CMakeLists.txt
    A flang/lib/Optimizer/Transforms/CompilerGeneratedNames.cpp
    M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
    M flang/lib/Optimizer/Transforms/DebugTypeGenerator.h
    M flang/lib/Semantics/definable.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/runtime-type-info.cpp
    M flang/lib/Semantics/tools.cpp
    M flang/runtime/edit-input.cpp
    M flang/runtime/exceptions.cpp
    M flang/runtime/numeric.cpp
    M flang/runtime/stop.cpp
    M flang/test/Driver/fveclib-codegen.f90
    M flang/test/Driver/mlir-debug-pass-pipeline.f90
    M flang/test/Driver/mlir-pass-pipeline.f90
    M flang/test/Evaluate/fold-nearest.f90
    M flang/test/Fir/basic-program.fir
    M flang/test/Fir/convert-to-llvm.fir
    A flang/test/Fir/convert-type-desc-to-llvm.fir
    M flang/test/Fir/polymorphic.fir
    M flang/test/Fir/type-descriptor.fir
    M flang/test/Integration/debug-fixed-array-type-2.f90
    M flang/test/Lower/allocatable-polymorphic.f90
    M flang/test/Lower/dense-array-any-rank.f90
    M flang/test/Semantics/declarations05.f90
    A flang/test/Semantics/implicit15.f90
    A flang/test/Semantics/structconst10.f90
    M flang/test/Semantics/undef-result01.f90
    M flang/test/Transforms/debug-fixed-array-type.fir
    M flang/unittests/Runtime/Time.cpp
    M libc/config/gpu/entrypoints.txt
    M libc/docs/build_and_test.rst
    M libc/docs/contributing.rst
    R libc/docs/dev/api_test.rst
    R libc/docs/dev/ground_truth_specification.rst
    M libc/docs/dev/header_generation.rst
    M libc/docs/dev/index.rst
    R libc/docs/dev/mechanics_of_public_api.rst
    M libc/docs/dev/source_tree_layout.rst
    M libc/docs/full_cross_build.rst
    M libc/docs/full_host_build.rst
    M libc/docs/fullbuild_mode.rst
    M libc/docs/gpu/building.rst
    M libc/docs/gpu/support.rst
    M libc/docs/index.rst
    M libc/docs/overlay_mode.rst
    M libc/docs/porting.rst
    M libc/newhdrgen/yaml_to_classes.py
    M libc/src/stdio/CMakeLists.txt
    M libc/src/stdio/scanf_core/CMakeLists.txt
    M libc/src/stdio/scanf_core/vfscanf_internal.h
    M libc/startup/linux/CMakeLists.txt
    M libcxx/CMakeLists.txt
    A libcxx/cmake/caches/AMDGPU.cmake
    A libcxx/cmake/caches/Generic-no-terminal.cmake
    A libcxx/cmake/caches/NVPTX.cmake
    R libcxx/docs/Status/Cxx14.rst
    R libcxx/docs/Status/Cxx14Issues.csv
    R libcxx/docs/Status/Cxx14Papers.csv
    M libcxx/docs/Status/Cxx17.rst
    M libcxx/docs/Status/Cxx17Issues.csv
    M libcxx/docs/Status/Cxx17Papers.csv
    M libcxx/docs/Status/Cxx20.rst
    M libcxx/docs/Status/Cxx20Issues.csv
    M libcxx/docs/Status/Cxx20Papers.csv
    M libcxx/docs/Status/Cxx23.rst
    M libcxx/docs/Status/Cxx23Issues.csv
    M libcxx/docs/Status/Cxx23Papers.csv
    M libcxx/docs/Status/Cxx2cIssues.csv
    M libcxx/docs/index.rst
    M libcxx/include/__algorithm/partition.h
    M libcxx/include/__chrono/leap_second.h
    M libcxx/include/__compare/ordering.h
    M libcxx/include/__config_site.in
    M libcxx/include/__pstl/backends/default.h
    M libcxx/include/print
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/partition.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.contains/ranges.contains.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.ends_with/ranges.ends_with.pass.cpp
    M libcxx/test/std/containers/associative/from_range_associative_containers.h
    M libcxx/test/std/containers/container.adaptors/from_range_container_adaptors.h
    M libcxx/test/std/containers/sequences/from_range_sequence_containers.h
    M libcxx/test/std/containers/unord/from_range_unordered_containers.h
    M libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.distance/iterator_sentinel.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.distance/range.pass.cpp
    A libcxx/test/std/language.support/cmp/cmp.categories.pre/reject-other-than-literal-zero.verify.cpp
    R libcxx/test/std/language.support/cmp/cmp.categories.pre/zero_type.verify.cpp
    M libcxx/test/std/ranges/range.adaptors/range.counted/counted.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.elements/iterator/increment.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.split/begin.pass.cpp
    A libcxx/test/std/ranges/range.utility/range.subrange/begin_end.pass.cpp
    M libcxx/test/std/strings/basic.string/string.cons/from_range.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/assign.compile.fail.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/assign.compile.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/copy.compile.fail.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/ctor.copy.compile.pass.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/ctor.default.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/default.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/lock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/try_lock.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/assign.compile.fail.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/assign.compile.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/copy.compile.fail.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/ctor.copy.compile.pass.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/ctor.default.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/default.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/lock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/try_lock.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/assign.compile.fail.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/assign.compile.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/copy.compile.fail.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/ctor.copy.compile.pass.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/ctor.default.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/default.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/lock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/try_lock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/try_lock_for.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/try_lock_until.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/assign.compile.fail.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/assign.compile.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/copy.compile.fail.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/ctor.copy.compile.pass.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/ctor.default.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/default.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/lock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock_for.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock_until.pass.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.formatter/format.functions.tests.h
    M libcxx/test/std/utilities/memory/specialized.algorithms/specialized.construct/construct_at.pass.cpp
    A libcxx/test/support/double_move_tracker.h
    M libcxx/test/support/test_iterators.h
    M libcxx/utils/ci/run-buildbot
    M libcxx/utils/libcxx/test/features.py
    M libcxx/utils/synchronize_csv_status_files.py
    M lld/ELF/Arch/PPC64.cpp
    M lld/ELF/Config.h
    M lld/ELF/Driver.cpp
    M lld/ELF/InputSection.cpp
    M lld/ELF/InputSection.h
    M lld/ELF/Relocations.cpp
    M lld/ELF/Writer.cpp
    M lld/test/ELF/error-handling-script-linux.test
    M lld/test/ELF/error-handling-script-windows.bat
    M lld/test/ELF/hip-section-layout.s
    M lldb/bindings/python/python-wrapper.swig
    M lldb/include/lldb/API/SBFrame.h
    M lldb/include/lldb/Interpreter/ScriptInterpreter.h
    M lldb/include/lldb/Target/StackFrame.h
    M lldb/include/lldb/Target/StackFrameList.h
    M lldb/include/lldb/Target/StackFrameRecognizer.h
    M lldb/include/lldb/Target/Thread.h
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
    M lldb/source/API/SBFrame.cpp
    M lldb/source/API/SBThread.cpp
    M lldb/source/Commands/CommandCompletions.cpp
    M lldb/source/Commands/CommandObjectFrame.cpp
    M lldb/source/Commands/CommandObjectMemory.cpp
    M lldb/source/Commands/CommandObjectThread.cpp
    M lldb/source/Commands/Options.td
    M lldb/source/Core/Debugger.cpp
    M lldb/source/Interpreter/CommandInterpreter.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ASTUtils.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ASTUtils.h
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
    M lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.cpp
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.cpp
    M lldb/source/Plugins/Process/minidump/MinidumpParser.cpp
    M lldb/source/Plugins/Process/minidump/MinidumpParser.h
    M lldb/source/Plugins/Process/minidump/MinidumpTypes.cpp
    M lldb/source/Plugins/Process/minidump/MinidumpTypes.h
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/OperatingSystemPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/OperatingSystemPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptInterpreterPythonInterfaces.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptInterpreterPythonInterfaces.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/ScriptedPlatformPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/ScriptedPlatformPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface/ScriptedThreadPlanPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface/ScriptedThreadPlanPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/SWIGPythonBridge.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPythonImpl.h
    M lldb/source/Target/Process.cpp
    M lldb/source/Target/StackFrame.cpp
    M lldb/source/Target/StackFrameList.cpp
    M lldb/source/Target/StackFrameRecognizer.cpp
    M lldb/source/Target/Thread.cpp
    M lldb/source/Target/ThreadPlanStepOut.cpp
    M lldb/test/API/commands/frame/recognizer/TestFrameRecognizer.py
    M lldb/test/API/commands/frame/recognizer/main.m
    M lldb/test/API/commands/frame/recognizer/recognizer.py
    M lldb/test/API/functionalities/postmortem/minidump-new/TestMiniDumpNew.py
    A lldb/test/API/functionalities/postmortem/minidump-new/linux-x86_64_mem64.yaml
    M lldb/test/API/lang/cpp/bitfields/TestCppBitfields.py
    A lldb/test/API/lang/cpp/std-function-recognizer/Makefile
    A lldb/test/API/lang/cpp/std-function-recognizer/TestStdFunctionRecognizer.py
    A lldb/test/API/lang/cpp/std-function-recognizer/main.cpp
    A lldb/test/API/tools/lldb-dap/output/Makefile
    A lldb/test/API/tools/lldb-dap/output/TestDAP_output.py
    A lldb/test/API/tools/lldb-dap/output/main.c
    A lldb/test/API/tools/lldb-dap/stackTrace/subtleFrames/Makefile
    A lldb/test/API/tools/lldb-dap/stackTrace/subtleFrames/TestDAP_subtleFrames.py
    A lldb/test/API/tools/lldb-dap/stackTrace/subtleFrames/main.cpp
    M lldb/test/API/tools/lldb-dap/step/TestDAP_step.py
    M lldb/test/Shell/Driver/TestUseColor.test
    A lldb/test/Shell/Expr/TestAnonNamespaceParamFunc.cpp
    M lldb/test/Shell/Unwind/trap_frame_sym_ctx.test
    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/OutputRedirector.cpp
    M lldb/tools/lldb-dap/lldb-dap.cpp
    M lldb/unittests/Process/elf-core/CMakeLists.txt
    M lldb/unittests/Process/elf-core/ThreadElfCoreTest.cpp
    M llvm/benchmarks/CMakeLists.txt
    A llvm/benchmarks/GetIntrinsicForClangBuiltin.cpp
    M llvm/cmake/config-ix.cmake
    M llvm/cmake/platforms/WinMsvc.cmake
    M llvm/docs/BitCodeFormat.rst
    M llvm/docs/GettingInvolved.rst
    M llvm/docs/LangRef.rst
    M llvm/docs/NVPTXUsage.rst
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/ReleaseNotes.rst
    M llvm/docs/_static/LoopOptWG_invite.ics
    M llvm/include/llvm/ADT/GenericCycleImpl.h
    M llvm/include/llvm/ADT/GenericCycleInfo.h
    M llvm/include/llvm/ADT/StringExtras.h
    M llvm/include/llvm/Analysis/CtxProfAnalysis.h
    M llvm/include/llvm/Analysis/CycleAnalysis.h
    M llvm/include/llvm/Analysis/DXILMetadataAnalysis.h
    M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
    M llvm/include/llvm/BinaryFormat/MachO.h
    A llvm/include/llvm/CGData/CodeGenData.h
    A llvm/include/llvm/CGData/CodeGenData.inc
    A llvm/include/llvm/CGData/CodeGenDataReader.h
    A llvm/include/llvm/CGData/CodeGenDataWriter.h
    A llvm/include/llvm/CGData/OutlinedHashTree.h
    A llvm/include/llvm/CGData/OutlinedHashTreeRecord.h
    M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    R llvm/include/llvm/CodeGenData/OutlinedHashTree.h
    R llvm/include/llvm/CodeGenData/OutlinedHashTreeRecord.h
    M llvm/include/llvm/Config/config.h.cmake
    M llvm/include/llvm/IR/Intrinsics.h
    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/IntrinsicsSPIRV.td
    M llvm/include/llvm/IR/IntrinsicsX86.td
    M llvm/include/llvm/LTO/LTO.h
    M llvm/include/llvm/SandboxIR/SandboxIR.h
    M llvm/include/llvm/SandboxIR/SandboxIRValues.def
    M llvm/include/llvm/SandboxIR/Tracker.h
    M llvm/include/llvm/Support/Compiler.h
    M llvm/include/llvm/Support/ModRef.h
    M llvm/include/llvm/TableGen/StringToOffsetTable.h
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/include/llvm/TargetParser/RISCVISAInfo.h
    M llvm/include/llvm/Transforms/IPO/FunctionImport.h
    M llvm/include/llvm/Transforms/InstCombine/InstCombiner.h
    M llvm/lib/Analysis/AliasAnalysis.cpp
    M llvm/lib/Analysis/CtxProfAnalysis.cpp
    M llvm/lib/Analysis/CycleAnalysis.cpp
    M llvm/lib/Analysis/DXILMetadataAnalysis.cpp
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    M llvm/lib/BinaryFormat/MachO.cpp
    A llvm/lib/CGData/CMakeLists.txt
    A llvm/lib/CGData/CodeGenData.cpp
    A llvm/lib/CGData/CodeGenDataReader.cpp
    A llvm/lib/CGData/CodeGenDataWriter.cpp
    A llvm/lib/CGData/OutlinedHashTree.cpp
    A llvm/lib/CGData/OutlinedHashTreeRecord.cpp
    M llvm/lib/CMakeLists.txt
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/lib/CodeGen/GlobalISel/CombinerHelperCasts.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/CodeGen/MachineVerifier.cpp
    M llvm/lib/CodeGen/PrologEpilogInserter.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/MatchContext.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    R llvm/lib/CodeGenData/CMakeLists.txt
    R llvm/lib/CodeGenData/OutlinedHashTree.cpp
    R llvm/lib/CodeGenData/OutlinedHashTreeRecord.cpp
    M llvm/lib/DWARFLinker/Classic/DWARFLinker.cpp
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/LTO/ThinLTOCodeGenerator.cpp
    M llvm/lib/MC/MachObjectWriter.cpp
    M llvm/lib/Object/MachOObjectFile.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/SandboxIR/SandboxIR.cpp
    M llvm/lib/SandboxIR/Tracker.cpp
    M llvm/lib/Support/CMakeLists.txt
    A llvm/lib/Support/ModRef.cpp
    M llvm/lib/Support/Unix/Signals.inc
    M llvm/lib/TableGen/TGLexer.cpp
    M llvm/lib/Target/AArch64/AArch64.h
    M llvm/lib/Target/AArch64/AArch64CallingConvention.td
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    M llvm/lib/Target/AArch64/AArch64MIPeepholeOpt.cpp
    M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
    M llvm/lib/Target/AArch64/AArch64SystemOperands.td
    M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/CMakeLists.txt
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    A llvm/lib/Target/AArch64/SMEPeepholeOpt.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAnnotateUniformValues.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAsanInstrumentation.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAsanInstrumentation.h
    M llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
    M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
    A llvm/lib/Target/AMDGPU/AMDGPUMemoryUtils.cpp
    A llvm/lib/Target/AMDGPU/AMDGPUMemoryUtils.h
    M llvm/lib/Target/AMDGPU/AMDGPUPromoteKernelArguments.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
    M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
    M llvm/lib/Target/AMDGPU/CMakeLists.txt
    M llvm/lib/Target/AMDGPU/FLATInstructions.td
    A llvm/lib/Target/AMDGPU/GCNSubtarget.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    R llvm/lib/Target/AMDGPU/Utils/AMDGPUMemoryUtils.cpp
    R llvm/lib/Target/AMDGPU/Utils/AMDGPUMemoryUtils.h
    M llvm/lib/Target/AMDGPU/Utils/CMakeLists.txt
    M llvm/lib/Target/AMDGPU/VOPCInstructions.td
    M llvm/lib/Target/BPF/BPFCallingConv.td
    M llvm/lib/Target/BPF/BPFISelLowering.cpp
    M llvm/lib/Target/BPF/BPFInstrInfo.td
    M llvm/lib/Target/BPF/BPFMIPeephole.cpp
    M llvm/lib/Target/BPF/BPFRegisterInfo.cpp
    M llvm/lib/Target/BPF/BPFRegisterInfo.h
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILOpBuilder.cpp
    M llvm/lib/Target/DirectX/DXILOpBuilder.h
    M llvm/lib/Target/DirectX/DXILOpLowering.cpp
    A llvm/lib/Target/DirectX/DXILOpLowering.h
    M llvm/lib/Target/DirectX/DXILPrettyPrinter.cpp
    A llvm/lib/Target/DirectX/DXILPrettyPrinter.h
    M llvm/lib/Target/DirectX/DXILResourceAnalysis.cpp
    M llvm/lib/Target/DirectX/DXILResourceAnalysis.h
    M llvm/lib/Target/DirectX/DXILTranslateMetadata.cpp
    A llvm/lib/Target/DirectX/DXILTranslateMetadata.h
    M llvm/lib/Target/DirectX/DirectX.h
    M llvm/lib/Target/DirectX/DirectXPassRegistry.def
    M llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/lib/Target/RISCV/GISel/RISCVCallLowering.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVCallLowering.h
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoD.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoF.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td
    M llvm/lib/Target/RISCV/RISCVProcessors.td
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVPostLegalizer.cpp
    M llvm/lib/Target/X86/X86FrameLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/lib/Target/X86/X86InstrAVX10.td
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Target/X86/X86InstrFragmentsSIMD.td
    M llvm/lib/Target/X86/X86IntrinsicsInfo.h
    M llvm/lib/Target/X86/X86RegisterInfo.cpp
    M llvm/lib/Target/X86/X86RegisterInfo.h
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
    M llvm/lib/Transforms/Coroutines/CoroInternal.h
    M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/IPO/FunctionImport.cpp
    M llvm/lib/Transforms/IPO/OpenMPOpt.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
    M llvm/lib/Transforms/Utils/ModuleUtils.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Analysis/CostModel/AArch64/arith-fp.ll
    M llvm/test/Analysis/CostModel/X86/ctlz-codesize.ll
    M llvm/test/Analysis/CostModel/X86/ctlz-latency.ll
    M llvm/test/Analysis/CostModel/X86/ctlz-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/ctlz.ll
    M llvm/test/Analysis/CostModel/X86/cttz-codesize.ll
    M llvm/test/Analysis/CostModel/X86/cttz-latency.ll
    M llvm/test/Analysis/CostModel/X86/cttz-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/cttz.ll
    M llvm/test/Analysis/CostModel/X86/intrinsic-cost-kinds.ll
    M llvm/test/Analysis/CtxProfAnalysis/full-cycle.ll
    M llvm/test/Analysis/CtxProfAnalysis/load.ll
    M llvm/test/Analysis/CycleInfo/basic.ll
    M llvm/test/Analysis/CycleInfo/unreachable-predecessor.ll
    M llvm/test/Analysis/DXILResource/buffer-frombinding.ll
    M llvm/test/Analysis/LoopAccessAnalysis/symbolic-stride.ll
    M llvm/test/Analysis/ValueTracking/known-power-of-two-urem.ll
    M llvm/test/Analysis/ValueTracking/known-power-of-two.ll
    M llvm/test/Analysis/ValueTracking/knownbits-and-or-xor-lowbit.ll
    M llvm/test/Analysis/ValueTracking/knownbits-bmi-pattern.ll
    M llvm/test/Analysis/ValueTracking/phi-known-bits.ll
    A llvm/test/Assembler/lround.ll
    M llvm/test/Bitcode/amdgcn-atomic.ll
    M llvm/test/CMakeLists.txt
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-cast.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-extract-vec-elt.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-with-flags.mir
    M llvm/test/CodeGen/AArch64/O3-pipeline.ll
    M llvm/test/CodeGen/AArch64/aarch64-mull-masks.ll
    M llvm/test/CodeGen/AArch64/abds-neg.ll
    M llvm/test/CodeGen/AArch64/abds.ll
    M llvm/test/CodeGen/AArch64/abdu-neg.ll
    M llvm/test/CodeGen/AArch64/abdu.ll
    M llvm/test/CodeGen/AArch64/arm64-subvector-extend.ll
    A llvm/test/CodeGen/AArch64/dag-combine-freeze.ll
    M llvm/test/CodeGen/AArch64/movimm-expand-ldst.ll
    M llvm/test/CodeGen/AArch64/movimm-expand-ldst.mir
    M llvm/test/CodeGen/AArch64/neon-extadd.ll
    M llvm/test/CodeGen/AArch64/peephole-sxtw.mir
    M llvm/test/CodeGen/AArch64/sext.ll
    M llvm/test/CodeGen/AArch64/sme-darwin-sve-vg.ll
    A llvm/test/CodeGen/AArch64/sme-peephole-opts.ll
    M llvm/test/CodeGen/AArch64/sme-streaming-body.ll
    M llvm/test/CodeGen/AArch64/sme-streaming-interface.ll
    M llvm/test/CodeGen/AArch64/sme-toggle-pstateza.ll
    M llvm/test/CodeGen/AArch64/sme-vg-to-stack.ll
    M llvm/test/CodeGen/AArch64/streaming-compatible-memory-ops.ll
    M llvm/test/CodeGen/AArch64/sve-calling-convention-byref.ll
    M llvm/test/CodeGen/AArch64/sve-calling-convention.ll
    A llvm/test/CodeGen/AArch64/sve-fixed-length-int-abd.ll
    A llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-abd.ll
    M llvm/test/CodeGen/AArch64/vecreduce-add.ll
    M llvm/test/CodeGen/AArch64/xtn.ll
    M llvm/test/CodeGen/AArch64/zext.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fp-atomics-gfx940.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fcmp.s16.mir
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow-codegen.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pown.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-powr.ll
    M llvm/test/CodeGen/AMDGPU/fp-atomics-gfx1200.ll
    M llvm/test/CodeGen/AMDGPU/fp-atomics-gfx940.ll
    M llvm/test/CodeGen/AMDGPU/lround.ll
    M llvm/test/CodeGen/AMDGPU/sad.ll
    M llvm/test/CodeGen/AMDGPU/sramecc-subtarget-feature-any.ll
    M llvm/test/CodeGen/AMDGPU/sramecc-subtarget-feature-disabled.ll
    M llvm/test/CodeGen/AMDGPU/sramecc-subtarget-feature-enabled.ll
    M llvm/test/CodeGen/AMDGPU/xnack-subtarget-feature-any.ll
    M llvm/test/CodeGen/AMDGPU/xnack-subtarget-feature-disabled.ll
    M llvm/test/CodeGen/AMDGPU/xnack-subtarget-feature-enabled.ll
    A llvm/test/CodeGen/BPF/bpf-fastcall-1.ll
    A llvm/test/CodeGen/BPF/bpf-fastcall-2.ll
    A llvm/test/CodeGen/BPF/bpf-fastcall-3.ll
    A llvm/test/CodeGen/BPF/bpf-fastcall-regmask-1.ll
    M llvm/test/CodeGen/DirectX/Metadata/dxilVer-1.0.ll
    M llvm/test/CodeGen/DirectX/Metadata/dxilVer-1.8.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-as.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-cs-val-ver-0.0.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-cs.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-gs.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-hs.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-lib.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-ms.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-ps.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-vs.ll
    M llvm/test/CodeGen/DirectX/UAVMetadata.ll
    M llvm/test/CodeGen/DirectX/any.ll
    M llvm/test/CodeGen/DirectX/cbuf.ll
    M llvm/test/CodeGen/DirectX/floor.ll
    A llvm/test/CodeGen/DirectX/saturate.ll
    A llvm/test/CodeGen/DirectX/saturate_errors.ll
    A llvm/test/CodeGen/NVPTX/elect.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/alu-roundtrip.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/iabs.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/alu_m-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-abs-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-div-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-rem-rv64.mir
    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/attributes.ll
    M llvm/test/CodeGen/RISCV/double-intrinsics.ll
    M llvm/test/CodeGen/RISCV/float-intrinsics.ll
    M llvm/test/CodeGen/RISCV/half-intrinsics.ll
    M llvm/test/CodeGen/RISCV/rv64zba.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-int.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vdiv-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vdivu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vrem-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vremu-vp.ll
    A llvm/test/CodeGen/SPIRV/block-ordering.ll
    M llvm/test/CodeGen/SPIRV/branching/OpSwitchBranches.ll
    M llvm/test/CodeGen/SPIRV/branching/Two_OpSwitch_same_register.ll
    M llvm/test/CodeGen/SPIRV/branching/if-merging.ll
    M llvm/test/CodeGen/SPIRV/branching/if-non-merging.ll
    M llvm/test/CodeGen/SPIRV/branching/switch-range-check.ll
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/saturate.ll
    M llvm/test/CodeGen/SPIRV/phi-ptrcast-dominate.ll
    M llvm/test/CodeGen/SPIRV/scfg-add-pre-headers.ll
    M llvm/test/CodeGen/SPIRV/structurizer/merge-exit-break.ll
    M llvm/test/CodeGen/SPIRV/structurizer/merge-exit-convergence-in-break.ll
    M llvm/test/CodeGen/SPIRV/structurizer/merge-exit-multiple-break.ll
    A llvm/test/CodeGen/SPIRV/structurizer/merge-exit-simple-while-identity.ll
    R llvm/test/CodeGen/SPIRV/structurizer/merge-exit-simple-white-identity.ll
    M llvm/test/CodeGen/X86/abds-neg.ll
    M llvm/test/CodeGen/X86/abds.ll
    M llvm/test/CodeGen/X86/abdu.ll
    A llvm/test/CodeGen/X86/avx10_2_512convert-intrinsics.ll
    A llvm/test/CodeGen/X86/avx10_2convert-intrinsics.ll
    R llvm/test/CodeGen/X86/avx512f-large-stack.ll
    M llvm/test/CodeGen/X86/fold-loop-of-urem.ll
    M llvm/test/CodeGen/X86/huge-stack.ll
    M llvm/test/CodeGen/X86/win64-stackprobe-overflow.ll
    M llvm/test/MC/AArch64/arm64-system-encoding.s
    M llvm/test/MC/AArch64/arm64e-subtype.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s
    M llvm/test/MC/Disassembler/AArch64/basic-a64-instructions.txt
    A llvm/test/MC/Disassembler/X86/avx10.2convert-32.txt
    A llvm/test/MC/Disassembler/X86/avx10.2convert-64.txt
    A llvm/test/MC/X86/avx10.2convert-32-att.s
    A llvm/test/MC/X86/avx10.2convert-32-intel.s
    A llvm/test/MC/X86/avx10.2convert-64-att.s
    A llvm/test/MC/X86/avx10.2convert-64-intel.s
    M llvm/test/MachineVerifier/test_g_llround.mir
    M llvm/test/MachineVerifier/test_g_lround.mir
    M llvm/test/TableGen/x86-fold-tables.inc
    M llvm/test/Transforms/Attributor/call-simplify-pointer-info.ll
    M llvm/test/Transforms/Attributor/multiple-offsets-pointer-info.ll
    M llvm/test/Transforms/Attributor/value-simplify-pointer-info.ll
    M llvm/test/Transforms/CodeGenPrepare/AArch64/sink-free-instructions.ll
    M llvm/test/Transforms/CodeGenPrepare/X86/fold-loop-of-urem.ll
    M llvm/test/Transforms/Coroutines/coro-debug-O2.ll
    M llvm/test/Transforms/Coroutines/coro-debug-coro-frame.ll
    M llvm/test/Transforms/Coroutines/coro-debug-dbg.values.ll
    M llvm/test/Transforms/Coroutines/coro-debug-frame-variable.ll
    A llvm/test/Transforms/FunctionAttrs/cold.ll
    A llvm/test/Transforms/GCOVProfiling/kcfi-normalize.ll
    M llvm/test/Transforms/GCOVProfiling/kcfi.ll
    M llvm/test/Transforms/IndVarSimplify/rewrite-loop-exit-value.ll
    M llvm/test/Transforms/InstCombine/2004-11-27-SetCCForCastLargerAndConstant.ll
    M llvm/test/Transforms/InstCombine/2010-11-23-Distributed.ll
    M llvm/test/Transforms/InstCombine/abs-1.ll
    M llvm/test/Transforms/InstCombine/add-mask-neg.ll
    M llvm/test/Transforms/InstCombine/add.ll
    M llvm/test/Transforms/InstCombine/add2.ll
    M llvm/test/Transforms/InstCombine/add_or_sub.ll
    M llvm/test/Transforms/InstCombine/and-or-icmp-const-icmp.ll
    M llvm/test/Transforms/InstCombine/and-or-icmps.ll
    M llvm/test/Transforms/InstCombine/and-or-not.ll
    M llvm/test/Transforms/InstCombine/and-or.ll
    M llvm/test/Transforms/InstCombine/and-xor-merge.ll
    M llvm/test/Transforms/InstCombine/and-xor-or.ll
    M llvm/test/Transforms/InstCombine/and.ll
    M llvm/test/Transforms/InstCombine/apint-and-xor-merge.ll
    M llvm/test/Transforms/InstCombine/apint-or.ll
    M llvm/test/Transforms/InstCombine/apint-shift.ll
    M llvm/test/Transforms/InstCombine/apint-sub.ll
    M llvm/test/Transforms/InstCombine/ashr-lshr.ll
    M llvm/test/Transforms/InstCombine/assume-align.ll
    M llvm/test/Transforms/InstCombine/assume-separate_storage.ll
    M llvm/test/Transforms/InstCombine/avg-lsb.ll
    M llvm/test/Transforms/InstCombine/binop-and-shifts.ll
    M llvm/test/Transforms/InstCombine/binop-cast.ll
    M llvm/test/Transforms/InstCombine/bit-checks.ll
    M llvm/test/Transforms/InstCombine/bitcast-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/bitcast.ll
    M llvm/test/Transforms/InstCombine/bitreverse.ll
    M llvm/test/Transforms/InstCombine/bswap-fold.ll
    M llvm/test/Transforms/InstCombine/call-guard.ll
    M llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-eq-to-icmp-ule.ll
    M llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-ne-to-icmp-ugt.ll
    M llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-uge-to-icmp-ule.ll
    M llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-ult-to-icmp-ugt.ll
    M llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-and-icmp-eq-to-icmp-ule.ll
    M llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-and-icmp-ne-to-icmp-ugt.ll
    M llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-v2-and-icmp-eq-to-icmp-ule.ll
    M llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-v2-and-icmp-ne-to-icmp-ugt.ll
    M llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-v3-and-icmp-eq-to-icmp-ule.ll
    M llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-v3-and-icmp-ne-to-icmp-ugt.ll
    M llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-v4-and-icmp-eq-to-icmp-ule.ll
    M llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-v4-and-icmp-ne-to-icmp-ugt.ll
    M llvm/test/Transforms/InstCombine/cast-mul-select.ll
    M llvm/test/Transforms/InstCombine/cast.ll
    M llvm/test/Transforms/InstCombine/cast_phi.ll
    M llvm/test/Transforms/InstCombine/cast_ptr.ll
    M llvm/test/Transforms/InstCombine/cmp-x-vs-neg-x.ll
    M llvm/test/Transforms/InstCombine/conditional-negation.ll
    M llvm/test/Transforms/InstCombine/ctpop-cttz.ll
    M llvm/test/Transforms/InstCombine/ctpop-pow2.ll
    M llvm/test/Transforms/InstCombine/cttz.ll
    M llvm/test/Transforms/InstCombine/demorgan.ll
    M llvm/test/Transforms/InstCombine/dependent-ivs.ll
    M llvm/test/Transforms/InstCombine/fadd-fsub-factor.ll
    M llvm/test/Transforms/InstCombine/fadd.ll
    M llvm/test/Transforms/InstCombine/fast-basictest.ll
    M llvm/test/Transforms/InstCombine/fast-math.ll
    M llvm/test/Transforms/InstCombine/fcmp.ll
    M llvm/test/Transforms/InstCombine/fdiv-sqrt.ll
    M llvm/test/Transforms/InstCombine/fdiv.ll
    M llvm/test/Transforms/InstCombine/float-shrink-compare.ll
    M llvm/test/Transforms/InstCombine/fmul.ll
    M llvm/test/Transforms/InstCombine/fold-ext-eq-c-with-op.ll
    M llvm/test/Transforms/InstCombine/fold-inc-of-add-of-not-x-and-y-to-sub-x-from-y.ll
    M llvm/test/Transforms/InstCombine/fold-select-fmul-if-zero.ll
    M llvm/test/Transforms/InstCombine/fold-signbit-test-power2.ll
    M llvm/test/Transforms/InstCombine/fpextend.ll
    M llvm/test/Transforms/InstCombine/fptrunc.ll
    M llvm/test/Transforms/InstCombine/free-inversion.ll
    M llvm/test/Transforms/InstCombine/fsh.ll
    M llvm/test/Transforms/InstCombine/fsub.ll
    M llvm/test/Transforms/InstCombine/funnel.ll
    M llvm/test/Transforms/InstCombine/getelementptr.ll
    M llvm/test/Transforms/InstCombine/hoist-negation-out-of-bias-calculation.ll
    M llvm/test/Transforms/InstCombine/hoist-xor-by-constant-from-xor-by-value.ll
    M llvm/test/Transforms/InstCombine/icmp-add.ll
    M llvm/test/Transforms/InstCombine/icmp-and-add-sub-xor-p2.ll
    M llvm/test/Transforms/InstCombine/icmp-and-lowbit-mask.ll
    M llvm/test/Transforms/InstCombine/icmp-and-shift.ll
    M llvm/test/Transforms/InstCombine/icmp-custom-dl.ll
    M llvm/test/Transforms/InstCombine/icmp-equality-rotate.ll
    M llvm/test/Transforms/InstCombine/icmp-equality-xor.ll
    M llvm/test/Transforms/InstCombine/icmp-ext-ext.ll
    M llvm/test/Transforms/InstCombine/icmp-gep.ll
    M llvm/test/Transforms/InstCombine/icmp-mul-zext.ll
    M llvm/test/Transforms/InstCombine/icmp-mul.ll
    M llvm/test/Transforms/InstCombine/icmp-of-and-x.ll
    M llvm/test/Transforms/InstCombine/icmp-of-or-x.ll
    M llvm/test/Transforms/InstCombine/icmp-of-trunc-ext.ll
    M llvm/test/Transforms/InstCombine/icmp-of-xor-x.ll
    M llvm/test/Transforms/InstCombine/icmp-or-of-select-with-zero.ll
    M llvm/test/Transforms/InstCombine/icmp-or.ll
    M llvm/test/Transforms/InstCombine/icmp-range.ll
    M llvm/test/Transforms/InstCombine/icmp-rotate.ll
    M llvm/test/Transforms/InstCombine/icmp-select-implies-common-op.ll
    M llvm/test/Transforms/InstCombine/icmp-select.ll
    M llvm/test/Transforms/InstCombine/icmp-sub.ll
    M llvm/test/Transforms/InstCombine/icmp-uge-of-not-of-shl-allones-by-bits-and-val-to-icmp-eq-of-lshr-val-by-bits-and-0.ll
    M llvm/test/Transforms/InstCombine/icmp-ult-of-not-of-shl-allones-by-bits-and-val-to-icmp-ne-of-lshr-val-by-bits-and-0.ll
    M llvm/test/Transforms/InstCombine/icmp.ll
    M llvm/test/Transforms/InstCombine/implies.ll
    M llvm/test/Transforms/InstCombine/invert-variable-mask-in-masked-merge-scalar.ll
    M llvm/test/Transforms/InstCombine/invert-variable-mask-in-masked-merge-vector.ll
    M llvm/test/Transforms/InstCombine/ispow2.ll
    M llvm/test/Transforms/InstCombine/known-bits.ll
    M llvm/test/Transforms/InstCombine/known-never-nan.ll
    M llvm/test/Transforms/InstCombine/ldexp-ext.ll
    M llvm/test/Transforms/InstCombine/log-pow.ll
    M llvm/test/Transforms/InstCombine/logical-select-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/logical-select.ll
    M llvm/test/Transforms/InstCombine/lshr-and-negC-icmpeq-zero.ll
    M llvm/test/Transforms/InstCombine/lshr.ll
    M llvm/test/Transforms/InstCombine/masked-merge-add.ll
    M llvm/test/Transforms/InstCombine/masked-merge-and-of-ors.ll
    M llvm/test/Transforms/InstCombine/masked-merge-or.ll
    M llvm/test/Transforms/InstCombine/masked-merge-xor.ll
    M llvm/test/Transforms/InstCombine/minmax-fold.ll
    M llvm/test/Transforms/InstCombine/minmax-of-xor-x.ll
    M llvm/test/Transforms/InstCombine/mul-masked-bits.ll
    M llvm/test/Transforms/InstCombine/mul-pow2.ll
    M llvm/test/Transforms/InstCombine/mul.ll
    M llvm/test/Transforms/InstCombine/mul_fold.ll
    M llvm/test/Transforms/InstCombine/mul_full_64.ll
    M llvm/test/Transforms/InstCombine/not-add.ll
    M llvm/test/Transforms/InstCombine/not.ll
    M llvm/test/Transforms/InstCombine/onehot_merge.ll
    M llvm/test/Transforms/InstCombine/or-xor-xor.ll
    M llvm/test/Transforms/InstCombine/or-xor.ll
    M llvm/test/Transforms/InstCombine/or.ll
    M llvm/test/Transforms/InstCombine/partally-redundant-left-shift-input-masking-after-truncation-variant-b.ll
    M llvm/test/Transforms/InstCombine/partally-redundant-left-shift-input-masking-variant-b.ll
    M llvm/test/Transforms/InstCombine/phi.ll
    M llvm/test/Transforms/InstCombine/pr44242.ll
    M llvm/test/Transforms/InstCombine/pr49688.ll
    M llvm/test/Transforms/InstCombine/pr75369.ll
    M llvm/test/Transforms/InstCombine/ptr-int-ptr-icmp.ll
    M llvm/test/Transforms/InstCombine/ptrmask.ll
    M llvm/test/Transforms/InstCombine/range-check.ll
    M llvm/test/Transforms/InstCombine/reassociate-nuw.ll
    M llvm/test/Transforms/InstCombine/redundant-left-shift-input-masking-after-truncation-variant-b.ll
    M llvm/test/Transforms/InstCombine/redundant-left-shift-input-masking-variant-b.ll
    M llvm/test/Transforms/InstCombine/rem.ll
    M llvm/test/Transforms/InstCombine/result-of-add-of-negative-is-non-zero-and-no-underflow.ll
    M llvm/test/Transforms/InstCombine/result-of-add-of-negative-or-zero-is-non-zero-and-no-underflow.ll
    M llvm/test/Transforms/InstCombine/result-of-usub-is-non-zero-and-no-overflow.ll
    M llvm/test/Transforms/InstCombine/saturating-add-sub.ll
    M llvm/test/Transforms/InstCombine/scalarization-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/scalarization.ll
    M llvm/test/Transforms/InstCombine/select-and-or.ll
    M llvm/test/Transforms/InstCombine/select-binop-cmp.ll
    M llvm/test/Transforms/InstCombine/select-binop-foldable-floating-point.ll
    M llvm/test/Transforms/InstCombine/select-cmp-eq-op-fold.ll
    M llvm/test/Transforms/InstCombine/select-cmp.ll
    M llvm/test/Transforms/InstCombine/select-ctlz-to-cttz.ll
    M llvm/test/Transforms/InstCombine/select-divrem.ll
    M llvm/test/Transforms/InstCombine/select-factorize.ll
    M llvm/test/Transforms/InstCombine/select-masked_gather.ll
    M llvm/test/Transforms/InstCombine/select-masked_load.ll
    M llvm/test/Transforms/InstCombine/select-of-bittest.ll
    M llvm/test/Transforms/InstCombine/select-safe-transforms.ll
    M llvm/test/Transforms/InstCombine/select-with-bitwise-ops.ll
    M llvm/test/Transforms/InstCombine/select.ll
    M llvm/test/Transforms/InstCombine/select_meta.ll
    M llvm/test/Transforms/InstCombine/set.ll
    A llvm/test/Transforms/InstCombine/sext-a-lt-b-plus-zext-a-gt-b-to-uscmp.ll
    M llvm/test/Transforms/InstCombine/shift-add.ll
    M llvm/test/Transforms/InstCombine/shift-amount-reassociation-in-bittest-with-truncation-lshr.ll
    M llvm/test/Transforms/InstCombine/shift-amount-reassociation-in-bittest-with-truncation-shl.ll
    M llvm/test/Transforms/InstCombine/shift-direction-in-bit-test.ll
    M llvm/test/Transforms/InstCombine/shift-logic.ll
    M llvm/test/Transforms/InstCombine/shift.ll
    M llvm/test/Transforms/InstCombine/shl-bo.ll
    M llvm/test/Transforms/InstCombine/shuffle-binop.ll
    M llvm/test/Transforms/InstCombine/signed-truncation-check.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll
    M llvm/test/Transforms/InstCombine/sink-not-into-and.ll
    M llvm/test/Transforms/InstCombine/sink-not-into-or.ll
    M llvm/test/Transforms/InstCombine/smax-icmp.ll
    M llvm/test/Transforms/InstCombine/smin-icmp.ll
    M llvm/test/Transforms/InstCombine/sub-ashr-or-to-icmp-select.ll
    M llvm/test/Transforms/InstCombine/sub-gep.ll
    M llvm/test/Transforms/InstCombine/sub-lshr-or-to-icmp-select.ll
    M llvm/test/Transforms/InstCombine/sub-minmax.ll
    M llvm/test/Transforms/InstCombine/sub-not.ll
    M llvm/test/Transforms/InstCombine/sub-of-negatible-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/sub-of-negatible.ll
    M llvm/test/Transforms/InstCombine/sub-xor-cmp.ll
    M llvm/test/Transforms/InstCombine/sub.ll
    M llvm/test/Transforms/InstCombine/trunc-binop-ext.ll
    M llvm/test/Transforms/InstCombine/uaddo.ll
    M llvm/test/Transforms/InstCombine/umax-icmp.ll
    M llvm/test/Transforms/InstCombine/umin-icmp.ll
    M llvm/test/Transforms/InstCombine/unordered-compare-and-ordered.ll
    M llvm/test/Transforms/InstCombine/unsigned-add-lack-of-overflow-check-via-add.ll
    M llvm/test/Transforms/InstCombine/unsigned-add-lack-of-overflow-check-via-xor.ll
    M llvm/test/Transforms/InstCombine/unsigned-add-lack-of-overflow-check.ll
    M llvm/test/Transforms/InstCombine/unsigned-add-overflow-check-via-add.ll
    M llvm/test/Transforms/InstCombine/unsigned-add-overflow-check-via-xor.ll
    M llvm/test/Transforms/InstCombine/unsigned-add-overflow-check.ll
    M llvm/test/Transforms/InstCombine/unsigned-sub-lack-of-overflow-check.ll
    M llvm/test/Transforms/InstCombine/unsigned-sub-overflow-check.ll
    M llvm/test/Transforms/InstCombine/vec_demanded_elts.ll
    M llvm/test/Transforms/InstCombine/vec_shuffle-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/vec_shuffle.ll
    M llvm/test/Transforms/InstCombine/vector-reverse.ll
    M llvm/test/Transforms/InstCombine/vector-xor.ll
    M llvm/test/Transforms/InstCombine/widenable-conditions.ll
    M llvm/test/Transforms/InstCombine/xor.ll
    M llvm/test/Transforms/InstCombine/xor2.ll
    M llvm/test/Transforms/InstCombine/zext-bool-add-sub.ll
    M llvm/test/Transforms/InstCombine/zext-or-icmp.ll
    M llvm/test/Transforms/InstCombine/zext.ll
    M llvm/test/Transforms/LoopIdiom/X86/ctlz.ll
    M llvm/test/Transforms/LoopIdiom/X86/left-shift-until-bittest.ll
    M llvm/test/Transforms/LoopIdiom/X86/left-shift-until-zero.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/deterministic-type-shrinkage.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-cond-inv-loads.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-gather-scatter.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-inductions.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-accesses.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-widen-phi.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/vector-reverse-mask4.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-qabs.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-reductions.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-selectandorcost.ll
    M llvm/test/Transforms/LoopVectorize/ARM/pointer_iv.ll
    M llvm/test/Transforms/LoopVectorize/ARM/tail-fold-multiple-icmps.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-intrinsics-reduction.ll
    M llvm/test/Transforms/LoopVectorize/X86/invariant-load-gather.ll
    M llvm/test/Transforms/LoopVectorize/X86/invariant-store-vectorization.ll
    M llvm/test/Transforms/LoopVectorize/X86/pr23997.ll
    M llvm/test/Transforms/LoopVectorize/extract-last-veclane.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-chains-vplan.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-chains.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-complex.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-sink-replicate-region.ll
    M llvm/test/Transforms/LoopVectorize/float-induction.ll
    M llvm/test/Transforms/LoopVectorize/if-conversion-nest.ll
    M llvm/test/Transforms/LoopVectorize/induction.ll
    M llvm/test/Transforms/LoopVectorize/instruction-only-used-outside-of-loop.ll
    M llvm/test/Transforms/LoopVectorize/interleaved-accesses.ll
    M llvm/test/Transforms/LoopVectorize/invariant-store-vectorization-2.ll
    M llvm/test/Transforms/LoopVectorize/invariant-store-vectorization.ll
    M llvm/test/Transforms/LoopVectorize/pr36983.ll
    M llvm/test/Transforms/LoopVectorize/pr55167-fold-tail-live-out.ll
    M llvm/test/Transforms/LoopVectorize/reduction-inloop-cond.ll
    M llvm/test/Transforms/LoopVectorize/reduction-inloop.ll
    M llvm/test/Transforms/LoopVectorize/reduction.ll
    M llvm/test/Transforms/LoopVectorize/runtime-check.ll
    M llvm/test/Transforms/LoopVectorize/scalable-inductions.ll
    M llvm/test/Transforms/LoopVectorize/select-cmp-multiuse.ll
    M llvm/test/Transforms/LoopVectorize/uniform-args-call-variants.ll
    M llvm/test/Transforms/LoopVectorize/vplan-printing.ll
    M llvm/test/Transforms/OpenMP/spmdization.ll
    M llvm/test/Transforms/PGOProfile/chr.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/hoist-runtime-checks.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/hoisting-sinking-required-for-vectorization.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/matrix-extract-insert.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/peel-multiple-unreachable-exits-for-vectorization.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/quant_4x4.ll
    M llvm/test/Transforms/PhaseOrdering/ARM/arm_mult_q15.ll
    M llvm/test/Transforms/PhaseOrdering/X86/hoist-load-of-baseptr.ll
    M llvm/test/Transforms/PhaseOrdering/X86/speculation-vs-tbaa.ll
    M llvm/test/Transforms/PhaseOrdering/X86/vector-reductions-logical.ll
    M llvm/test/Transforms/PhaseOrdering/fast-basictest.ll
    M llvm/test/Transforms/PhaseOrdering/reassociate-instcombine.ll
    M llvm/test/Transforms/PhaseOrdering/runtime-check-removal.ll
    M llvm/test/Transforms/Reassociate/fast-ArrayOutOfBounds.ll
    M llvm/test/Transforms/Reassociate/fast-SubReassociate.ll
    M llvm/test/Transforms/SLPVectorizer/X86/cmp_commute-inseltpoison.ll
    M llvm/test/Transforms/SLPVectorizer/X86/cmp_commute.ll
    A llvm/test/Transforms/SLPVectorizer/X86/phi-nodes-as-operand-reorder.ll
    M llvm/test/Transforms/SLPVectorizer/X86/phi.ll
    M llvm/test/lit.cfg.py
    M llvm/test/tools/UpdateTestChecks/update_analyze_test_checks/Inputs/x86-loopvectorize-costmodel.ll.expected
    M llvm/test/tools/dsymutil/X86/modules.m
    A llvm/test/tools/llvm-cgdata/convert.test
    A llvm/test/tools/llvm-cgdata/empty.test
    A llvm/test/tools/llvm-cgdata/error.test
    A llvm/test/tools/llvm-cgdata/merge-archive.test
    A llvm/test/tools/llvm-cgdata/merge-concat.test
    A llvm/test/tools/llvm-cgdata/merge-double.test
    A llvm/test/tools/llvm-cgdata/merge-single.test
    A llvm/test/tools/llvm-cgdata/show.test
    A llvm/test/tools/llvm-objdump/AArch64/Inputs/fat.macho-arm64e-kernel-ptrauth-abi
    A llvm/test/tools/llvm-objdump/AArch64/Inputs/fat.macho-arm64e-ptrauth-abi
    A llvm/test/tools/llvm-objdump/AArch64/macho-universal-arm64e-kernel-ptrauth-abi.test
    A llvm/test/tools/llvm-objdump/AArch64/macho-universal-arm64e-ptrauth-abi.test
    A llvm/test/tools/llvm-objdump/macho-ptrauth-cpusubtype.test
    M llvm/tools/dsymutil/MachOUtils.cpp
    A llvm/tools/llvm-cgdata/CMakeLists.txt
    A llvm/tools/llvm-cgdata/Opts.td
    A llvm/tools/llvm-cgdata/llvm-cgdata.cpp
    M llvm/tools/llvm-objdump/MachODump.cpp
    M llvm/tools/llvm-reduce/deltas/RunIRPasses.cpp
    M llvm/unittests/ADT/STLExtrasTest.cpp
    M llvm/unittests/ADT/StringExtrasTest.cpp
    M llvm/unittests/ADT/StringRefTest.cpp
    M llvm/unittests/Analysis/CMakeLists.txt
    A llvm/unittests/Analysis/CtxProfAnalysisTest.cpp
    M llvm/unittests/Analysis/GraphWriterTest.cpp
    M llvm/unittests/BinaryFormat/MachOTest.cpp
    A llvm/unittests/CGData/CMakeLists.txt
    A llvm/unittests/CGData/OutlinedHashTreeRecordTest.cpp
    A llvm/unittests/CGData/OutlinedHashTreeTest.cpp
    M llvm/unittests/CMakeLists.txt
    R llvm/unittests/CodeGenData/CMakeLists.txt
    R llvm/unittests/CodeGenData/OutlinedHashTreeRecordTest.cpp
    R llvm/unittests/CodeGenData/OutlinedHashTreeTest.cpp
    M llvm/unittests/IR/IntrinsicsTest.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp
    M llvm/unittests/SandboxIR/TrackerTest.cpp
    M llvm/unittests/Support/SignalsTest.cpp
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
    M llvm/unittests/TargetParser/TargetParserTest.cpp
    M llvm/utils/TableGen/IntrinsicEmitter.cpp
    M llvm/utils/TableGen/TableGen.cpp
    M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
    M llvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn
    A llvm/utils/gn/secondary/llvm/lib/CGData/BUILD.gn
    R llvm/utils/gn/secondary/llvm/lib/CodeGenData/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Support/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/Utils/BUILD.gn
    M llvm/utils/gn/secondary/llvm/test/BUILD.gn
    A llvm/utils/gn/secondary/llvm/tools/llvm-cgdata/BUILD.gn
    M llvm/utils/gn/secondary/llvm/unittests/Analysis/BUILD.gn
    M llvm/utils/gn/secondary/llvm/unittests/BUILD.gn
    A llvm/utils/gn/secondary/llvm/unittests/CGData/BUILD.gn
    R llvm/utils/gn/secondary/llvm/unittests/CodeGenData/BUILD.gn
    M llvm/utils/lit/tests/Inputs/shtest-cat/cat-error-0.txt
    M llvm/utils/lit/tests/Inputs/shtest-cat/cat-error-1.txt
    M llvm/utils/lit/tests/Inputs/shtest-cat/cat.txt
    A mlir/docs/DefiningDialects/Constraints.md
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
    M mlir/include/mlir/Dialect/Func/Extensions/MeshShardingExtensions.h
    M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
    M mlir/include/mlir/Dialect/IRDL/IR/IRDL.td
    M mlir/include/mlir/Dialect/IRDL/IR/IRDLOps.td
    M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
    R mlir/include/mlir/Dialect/Mesh/IR/TensorShardingInterfaceImpl.h
    M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorOps.td
    A mlir/include/mlir/Dialect/Tensor/Extensions/AllExtensions.h
    A mlir/include/mlir/Dialect/Tensor/Extensions/MeshShardingExtensions.h
    A mlir/include/mlir/Dialect/Tensor/IR/ShardingInterfaceImpl.h
    M mlir/include/mlir/IR/BuiltinTypes.h
    M mlir/include/mlir/IR/BuiltinTypes.td
    M mlir/include/mlir/IR/CMakeLists.txt
    M mlir/include/mlir/IR/CommonTypeConstraints.td
    M mlir/include/mlir/IR/Constraints.td
    M mlir/include/mlir/IR/MLIRContext.h
    M mlir/include/mlir/InitAllDialects.h
    M mlir/include/mlir/InitAllExtensions.h
    M mlir/include/mlir/TableGen/Constraint.h
    M mlir/lib/Conversion/ConvertToSPIRV/CMakeLists.txt
    M mlir/lib/Conversion/ConvertToSPIRV/ConvertToSPIRVPass.cpp
    M mlir/lib/Conversion/GPUToLLVMSPV/GPUToLLVMSPV.cpp
    M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
    M mlir/lib/Conversion/GPUToSPIRV/GPUToSPIRV.cpp
    M mlir/lib/Conversion/MathToLibm/MathToLibm.cpp
    M mlir/lib/Conversion/OpenMPToLLVM/OpenMPToLLVM.cpp
    M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
    M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
    M mlir/lib/Dialect/GPU/Transforms/SubgroupReduceLowering.cpp
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp
    M mlir/lib/Dialect/Math/Transforms/LegalizeToF32.cpp
    M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
    M mlir/lib/Dialect/Mesh/Interfaces/CMakeLists.txt
    R mlir/lib/Dialect/Mesh/Interfaces/TensorShardingInterfaceImpl.cpp
    M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Sparsification.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/CodegenEnv.h
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/LoopEmitter.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/LoopEmitter.h
    M mlir/lib/Dialect/Tensor/CMakeLists.txt
    A mlir/lib/Dialect/Tensor/Extensions/AllExtensions.cpp
    A mlir/lib/Dialect/Tensor/Extensions/CMakeLists.txt
    A mlir/lib/Dialect/Tensor/Extensions/MeshShardingExtensions.cpp
    M mlir/lib/IR/BuiltinTypes.cpp
    M mlir/lib/IR/CMakeLists.txt
    M mlir/lib/TableGen/Constraint.cpp
    M mlir/lib/TableGen/Operator.cpp
    A mlir/test/Conversion/ConvertToSPIRV/argmax-kernel.mlir
    A mlir/test/Conversion/ConvertToSPIRV/gpu.mlir
    M mlir/test/Conversion/GPUToLLVMSPV/gpu-to-llvm-spv.mlir
    M mlir/test/Conversion/MathToLibm/convert-to-libm.mlir
    M mlir/test/Conversion/OpenMPToLLVM/convert-to-llvmir.mlir
    M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
    M mlir/test/Dialect/EmitC/invalid_ops.mlir
    M mlir/test/Dialect/EmitC/ops.mlir
    M mlir/test/Dialect/GPU/canonicalize.mlir
    M mlir/test/Dialect/GPU/invalid.mlir
    M mlir/test/Dialect/GPU/subgroup-reduce-lowering.mlir
    M mlir/test/Dialect/Linalg/canonicalize.mlir
    M mlir/test/Dialect/Linalg/loops.mlir
    M mlir/test/Dialect/Math/legalize-to-f32.mlir
    M mlir/test/Dialect/MemRef/ops.mlir
    M mlir/test/Dialect/SparseTensor/sparse_kernels_to_iterator.mlir
    A mlir/test/mlir-tblgen/type-constraints.td
    M mlir/tools/mlir-lsp-server/CMakeLists.txt
    M mlir/tools/mlir-tblgen/AttrOrTypeDefGen.cpp
    M offload/plugins-nextgen/amdgpu/src/rtl.cpp
    M offload/plugins-nextgen/common/include/ErrorReporting.h
    M offload/plugins-nextgen/common/include/PluginInterface.h
    M offload/test/api/omp_device_alloc.c
    M offload/test/sanitizer/double_free.c
    M offload/test/sanitizer/double_free_racy.c
    M offload/test/sanitizer/free_wrong_ptr_kind.c
    M offload/test/sanitizer/free_wrong_ptr_kind.cpp
    A offload/test/sanitizer/ptr_outside_alloc_1.c
    A offload/test/sanitizer/ptr_outside_alloc_2.c
    A offload/test/sanitizer/use_after_free_1.c
    A offload/test/sanitizer/use_after_free_2.c
    M utils/bazel/llvm-project-overlay/llvm/config.bzl
    M utils/bazel/llvm-project-overlay/llvm/include/llvm/Config/config.h
    M utils/bazel/llvm-project-overlay/llvm/unittests/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
    M utils/bazel/llvm_configs/config.h.cmake

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

Created using spr 1.3.4

[skip ci]


  Commit: d4436590c8a7ebf2d09f078ab753305e6f79d616
      https://github.com/llvm/llvm-project/commit/d4436590c8a7ebf2d09f078ab753305e6f79d616
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-08-21 (Wed, 21 Aug 2024)

  Changed paths:
    M .github/workflows/libcxx-build-and-test.yaml
    M bolt/lib/Core/BinaryFunction.cpp
    M bolt/lib/Core/BinaryFunctionProfile.cpp
    A bolt/test/X86/infer-fall-throughs.s
    M clang/cmake/caches/CrossWinToARMLinux.cmake
    M clang/docs/InternalsManual.rst
    M clang/docs/LanguageExtensions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/docs/UndefinedBehaviorSanitizer.rst
    M clang/docs/UsersManual.rst
    M clang/include/clang/AST/Expr.h
    M clang/include/clang/AST/ExprCXX.h
    M clang/include/clang/AST/OpenMPClause.h
    M clang/include/clang/AST/Stmt.h
    M clang/include/clang/AST/Type.h
    M clang/include/clang/ASTMatchers/ASTMatchers.h
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/BuiltinsX86.def
    M clang/include/clang/Basic/CodeGenOptions.def
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/LangOptions.h
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Driver/SanitizerArgs.h
    M clang/include/clang/ExtractAPI/API.h
    M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/EvalEmitter.cpp
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/Expr.cpp
    M clang/lib/AST/FormatString.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenModule.h
    M clang/lib/CodeGen/CodeGenTBAA.cpp
    M clang/lib/CodeGen/CodeGenTBAA.h
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/lib/CodeGen/CodeGenTypes.h
    M clang/lib/CodeGen/MicrosoftCXXABI.cpp
    M clang/lib/CodeGen/Targets/SPIR.cpp
    M clang/lib/Driver/SanitizerArgs.cpp
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/PS4CPU.cpp
    M clang/lib/ExtractAPI/API.cpp
    M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Frontend/PrintPreprocessedOutput.cpp
    M clang/lib/Headers/CMakeLists.txt
    A clang/lib/Headers/avx10_2_512convertintrin.h
    A clang/lib/Headers/avx10_2convertintrin.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Headers/immintrin.h
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Sema/SemaAttr.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/lib/Sema/SemaInit.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Sema/SemaX86.cpp
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    M clang/lib/StaticAnalyzer/Checkers/Taint.cpp
    M clang/test/Analysis/analyzer-config.c
    M clang/test/Analysis/taint-generic.c
    M clang/test/CXX/drs/cwg23xx.cpp
    A clang/test/CXX/drs/cwg722.cpp
    M clang/test/CXX/drs/cwg7xx.cpp
    M clang/test/CXX/temp/temp.arg/temp.arg.nontype/p1-11.cpp
    M clang/test/ClangScanDeps/pr61006.cppm
    A clang/test/CodeGen/X86/avx10_2_512convert-builtins.c
    A clang/test/CodeGen/X86/avx10_2convert-builtins.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld1-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld1.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld1sb.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld1sh.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld1sw.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld1ub.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld1uh.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld1uw.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st1-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st1.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st1b.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st1h.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st1w.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_loads.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_store.c
    M clang/test/CodeGen/attr-counted-by.c
    A clang/test/CodeGen/bpf-attr-bpf-fastcall-1.c
    M clang/test/CodeGen/builtin-cpu-supports.c
    A clang/test/CodeGen/ffp-contract-fast-honor-pramga-option.cpp
    A clang/test/CodeGen/ffp-contract-fhp-pragma-override.cpp
    M clang/test/CodeGen/ffp-model.c
    M clang/test/CodeGen/fp-reassoc-pragma.cpp
    M clang/test/CodeGen/fp-reciprocal-pragma.cpp
    A clang/test/CodeGen/ignore-overflow-pattern-false-pos.c
    A clang/test/CodeGen/ignore-overflow-pattern.c
    M clang/test/CodeGen/kcfi-normalize.c
    M clang/test/CodeGen/ms-mixed-ptr-sizes.c
    M clang/test/CodeGenCUDA/amdgpu-kernel-arg-pointer-type.cu
    M clang/test/CodeGenCUDA/kernel-args.cu
    R clang/test/CodeGenCoroutines/coro-dwarf-O2.cpp
    A clang/test/CodeGenHLSL/builtins/saturate.hlsl
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx12.cl
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx90a.cl
    M clang/test/CodeGenOpenCL/builtins-fp-atomics-gfx940.cl
    M clang/test/Driver/coverage.c
    M clang/test/Driver/fp-model.c
    A clang/test/Driver/mips-msa.c
    M clang/test/Driver/print-supported-extensions-riscv.c
    M clang/test/Driver/program-path-priority.c
    M clang/test/Driver/ps5-linker.c
    M clang/test/Driver/riscv-cpus.c
    M clang/test/ExtractAPI/anonymous_record_no_typedef.c
    M clang/test/Headers/wasm.c
    A clang/test/Interpreter/assigment-with-implicit-ctor.cpp
    A clang/test/Interpreter/preprocessor.cpp
    M clang/test/Misc/pragma-attribute-supported-attributes-list.test
    M clang/test/Misc/target-invalid-cpu-note/riscv.c
    M clang/test/OpenMP/nvptx_allocate_codegen.cpp
    A clang/test/Parser/function-parameter-limit.cpp
    M clang/test/Preprocessor/riscv-target-features.c
    A clang/test/Sema/bpf-attr-bpf-fastcall.c
    A clang/test/Sema/format-pointer.c
    M clang/test/Sema/format-strings-pedantic.c
    M clang/test/SemaCXX/attr-annotate.cpp
    M clang/test/SemaCXX/cxx2a-explicit-bool.cpp
    M clang/test/SemaCXX/sugared-auto.cpp
    A clang/test/SemaHLSL/BuiltIns/saturate-errors.hlsl
    M clang/test/SemaTemplate/concepts-friends.cpp
    M clang/tools/clang-format/clang-format-diff.py
    M clang/tools/clang-format/clang-format-sublime.py
    M clang/tools/clang-format/clang-format.el
    M clang/tools/clang-format/clang-format.py
    M clang/tools/clang-format/git-clang-format
    M clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
    M clang/www/cxx_dr_status.html
    M compiler-rt/lib/asan/asan_flags.inc
    M compiler-rt/lib/asan/asan_globals.cpp
    M compiler-rt/lib/fuzzer/FuzzerUtilFuchsia.cpp
    M compiler-rt/test/asan/TestCases/Linux/initialization-nobug-lld.cpp
    M compiler-rt/test/asan/TestCases/Linux/odr_indicator_unregister.cpp
    M compiler-rt/test/asan/TestCases/Linux/odr_indicators.cpp
    M compiler-rt/test/asan/TestCases/Windows/dll_global_dead_strip.c
    M compiler-rt/test/asan/TestCases/Windows/dll_report_globals_symbolization_at_startup.cpp
    M compiler-rt/test/asan/TestCases/Windows/global_dead_strip.c
    M compiler-rt/test/asan/TestCases/Windows/report_globals_vs_freelibrary.cpp
    M compiler-rt/test/asan/TestCases/initialization-nobug.cpp
    M compiler-rt/test/fuzzer/features_dir.test
    M flang/include/flang/Evaluate/real.h
    M flang/include/flang/Optimizer/CodeGen/CGPasses.td
    M flang/include/flang/Optimizer/CodeGen/CodeGen.h
    M flang/include/flang/Optimizer/Support/InternalNames.h
    M flang/include/flang/Optimizer/Transforms/Passes.h
    M flang/include/flang/Optimizer/Transforms/Passes.td
    M flang/include/flang/Tools/CLOptions.inc
    M flang/lib/Evaluate/fold-real.cpp
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M flang/lib/Lower/OpenMP/Clauses.h
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/Support/InternalNames.cpp
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    M flang/lib/Optimizer/Transforms/CMakeLists.txt
    A flang/lib/Optimizer/Transforms/CompilerGeneratedNames.cpp
    M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
    M flang/lib/Optimizer/Transforms/DebugTypeGenerator.h
    M flang/lib/Semantics/definable.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/runtime-type-info.cpp
    M flang/lib/Semantics/tools.cpp
    M flang/runtime/edit-input.cpp
    M flang/runtime/exceptions.cpp
    M flang/runtime/numeric.cpp
    M flang/runtime/stop.cpp
    M flang/test/Driver/fveclib-codegen.f90
    M flang/test/Driver/mlir-debug-pass-pipeline.f90
    M flang/test/Driver/mlir-pass-pipeline.f90
    M flang/test/Evaluate/fold-nearest.f90
    M flang/test/Fir/basic-program.fir
    M flang/test/Fir/convert-to-llvm.fir
    A flang/test/Fir/convert-type-desc-to-llvm.fir
    M flang/test/Fir/polymorphic.fir
    M flang/test/Fir/type-descriptor.fir
    M flang/test/Integration/debug-fixed-array-type-2.f90
    M flang/test/Lower/allocatable-polymorphic.f90
    M flang/test/Lower/dense-array-any-rank.f90
    M flang/test/Semantics/declarations05.f90
    A flang/test/Semantics/implicit15.f90
    A flang/test/Semantics/structconst10.f90
    M flang/test/Semantics/undef-result01.f90
    M flang/test/Transforms/debug-fixed-array-type.fir
    M flang/unittests/Runtime/Time.cpp
    M libc/config/gpu/entrypoints.txt
    M libc/docs/build_and_test.rst
    M libc/docs/contributing.rst
    R libc/docs/dev/api_test.rst
    R libc/docs/dev/ground_truth_specification.rst
    M libc/docs/dev/header_generation.rst
    M libc/docs/dev/index.rst
    R libc/docs/dev/mechanics_of_public_api.rst
    M libc/docs/dev/source_tree_layout.rst
    M libc/docs/full_cross_build.rst
    M libc/docs/full_host_build.rst
    M libc/docs/fullbuild_mode.rst
    M libc/docs/gpu/building.rst
    M libc/docs/gpu/support.rst
    M libc/docs/index.rst
    M libc/docs/overlay_mode.rst
    M libc/docs/porting.rst
    M libc/newhdrgen/yaml_to_classes.py
    M libc/src/stdio/CMakeLists.txt
    M libc/src/stdio/scanf_core/CMakeLists.txt
    M libc/src/stdio/scanf_core/vfscanf_internal.h
    M libc/startup/linux/CMakeLists.txt
    M libcxx/CMakeLists.txt
    A libcxx/cmake/caches/AMDGPU.cmake
    A libcxx/cmake/caches/Generic-no-terminal.cmake
    A libcxx/cmake/caches/NVPTX.cmake
    R libcxx/docs/Status/Cxx14.rst
    R libcxx/docs/Status/Cxx14Issues.csv
    R libcxx/docs/Status/Cxx14Papers.csv
    M libcxx/docs/Status/Cxx17.rst
    M libcxx/docs/Status/Cxx17Issues.csv
    M libcxx/docs/Status/Cxx17Papers.csv
    M libcxx/docs/Status/Cxx20.rst
    M libcxx/docs/Status/Cxx20Issues.csv
    M libcxx/docs/Status/Cxx20Papers.csv
    M libcxx/docs/Status/Cxx23.rst
    M libcxx/docs/Status/Cxx23Issues.csv
    M libcxx/docs/Status/Cxx23Papers.csv
    M libcxx/docs/Status/Cxx2cIssues.csv
    M libcxx/docs/index.rst
    M libcxx/include/__algorithm/partition.h
    M libcxx/include/__chrono/leap_second.h
    M libcxx/include/__compare/ordering.h
    M libcxx/include/__config_site.in
    M libcxx/include/__pstl/backends/default.h
    M libcxx/include/print
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/partition.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.contains/ranges.contains.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.ends_with/ranges.ends_with.pass.cpp
    M libcxx/test/std/containers/associative/from_range_associative_containers.h
    M libcxx/test/std/containers/container.adaptors/from_range_container_adaptors.h
    M libcxx/test/std/containers/sequences/from_range_sequence_containers.h
    M libcxx/test/std/containers/unord/from_range_unordered_containers.h
    M libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.distance/iterator_sentinel.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.distance/range.pass.cpp
    A libcxx/test/std/language.support/cmp/cmp.categories.pre/reject-other-than-literal-zero.verify.cpp
    R libcxx/test/std/language.support/cmp/cmp.categories.pre/zero_type.verify.cpp
    M libcxx/test/std/ranges/range.adaptors/range.counted/counted.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.elements/iterator/increment.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.split/begin.pass.cpp
    A libcxx/test/std/ranges/range.utility/range.subrange/begin_end.pass.cpp
    M libcxx/test/std/strings/basic.string/string.cons/from_range.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/assign.compile.fail.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/assign.compile.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/copy.compile.fail.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/ctor.copy.compile.pass.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/ctor.default.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/default.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/lock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.class/try_lock.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/assign.compile.fail.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/assign.compile.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/copy.compile.fail.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/ctor.copy.compile.pass.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/ctor.default.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/default.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/lock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/try_lock.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/assign.compile.fail.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/assign.compile.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/copy.compile.fail.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/ctor.copy.compile.pass.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/ctor.default.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/default.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/lock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/try_lock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/try_lock_for.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/try_lock_until.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/assign.compile.fail.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/assign.compile.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/copy.compile.fail.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/ctor.copy.compile.pass.cpp
    A libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/ctor.default.pass.cpp
    R libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/default.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/lock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock_for.pass.cpp
    M libcxx/test/std/thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.recursive/try_lock_until.pass.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.formatter/format.functions.tests.h
    M libcxx/test/std/utilities/memory/specialized.algorithms/specialized.construct/construct_at.pass.cpp
    A libcxx/test/support/double_move_tracker.h
    M libcxx/test/support/test_iterators.h
    M libcxx/utils/ci/run-buildbot
    M libcxx/utils/libcxx/test/features.py
    M libcxx/utils/synchronize_csv_status_files.py
    M lld/ELF/Arch/PPC64.cpp
    M lld/ELF/Config.h
    M lld/ELF/Driver.cpp
    M lld/ELF/InputSection.cpp
    M lld/ELF/InputSection.h
    M lld/ELF/Relocations.cpp
    M lld/ELF/Writer.cpp
    M lld/test/ELF/error-handling-script-linux.test
    M lld/test/ELF/error-handling-script-windows.bat
    M lld/test/ELF/hip-section-layout.s
    M lldb/bindings/python/python-wrapper.swig
    M lldb/include/lldb/API/SBFrame.h
    M lldb/include/lldb/Interpreter/ScriptInterpreter.h
    M lldb/include/lldb/Target/StackFrame.h
    M lldb/include/lldb/Target/StackFrameList.h
    M lldb/include/lldb/Target/StackFrameRecognizer.h
    M lldb/include/lldb/Target/Thread.h
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
    M lldb/source/API/SBFrame.cpp
    M lldb/source/API/SBThread.cpp
    M lldb/source/Commands/CommandCompletions.cpp
    M lldb/source/Commands/CommandObjectFrame.cpp
    M lldb/source/Commands/CommandObjectMemory.cpp
    M lldb/source/Commands/CommandObjectThread.cpp
    M lldb/source/Commands/Options.td
    M lldb/source/Core/Debugger.cpp
    M lldb/source/Interpreter/CommandInterpreter.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ASTUtils.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ASTUtils.h
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
    M lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.cpp
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.cpp
    M lldb/source/Plugins/Process/minidump/MinidumpParser.cpp
    M lldb/source/Plugins/Process/minidump/MinidumpParser.h
    M lldb/source/Plugins/Process/minidump/MinidumpTypes.cpp
    M lldb/source/Plugins/Process/minidump/MinidumpTypes.h
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/CMakeLists.txt
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/OperatingSystemPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/OperatingSystemPythonInterface/OperatingSystemPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptInterpreterPythonInterfaces.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptInterpreterPythonInterfaces.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/ScriptedPlatformPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPlatformPythonInterface/ScriptedPlatformPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedProcessPythonInterface/ScriptedProcessPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface.h
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface/CMakeLists.txt
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface/ScriptedThreadPlanPythonInterface.cpp
    R lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedThreadPlanPythonInterface/ScriptedThreadPlanPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/SWIGPythonBridge.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPythonImpl.h
    M lldb/source/Target/Process.cpp
    M lldb/source/Target/StackFrame.cpp
    M lldb/source/Target/StackFrameList.cpp
    M lldb/source/Target/StackFrameRecognizer.cpp
    M lldb/source/Target/Thread.cpp
    M lldb/source/Target/ThreadPlanStepOut.cpp
    M lldb/test/API/commands/frame/recognizer/TestFrameRecognizer.py
    M lldb/test/API/commands/frame/recognizer/main.m
    M lldb/test/API/commands/frame/recognizer/recognizer.py
    M lldb/test/API/functionalities/postmortem/minidump-new/TestMiniDumpNew.py
    A lldb/test/API/functionalities/postmortem/minidump-new/linux-x86_64_mem64.yaml
    M lldb/test/API/lang/cpp/bitfields/TestCppBitfields.py
    A lldb/test/API/lang/cpp/std-function-recognizer/Makefile
    A lldb/test/API/lang/cpp/std-function-recognizer/TestStdFunctionRecognizer.py
    A lldb/test/API/lang/cpp/std-function-recognizer/main.cpp
    A lldb/test/API/tools/lldb-dap/output/Makefile
    A lldb/test/API/tools/lldb-dap/output/TestDAP_output.py
    A lldb/test/API/tools/lldb-dap/output/main.c
    A lldb/test/API/tools/lldb-dap/stackTrace/subtleFrames/Makefile
    A lldb/test/API/tools/lldb-dap/stackTrace/subtleFrames/TestDAP_subtleFrames.py
    A lldb/test/API/tools/lldb-dap/stackTrace/subtleFrames/main.cpp
    M lldb/test/API/tools/lldb-dap/step/TestDAP_step.py
    M lldb/test/Shell/Driver/TestUseColor.test
    A lldb/test/Shell/Expr/TestAnonNamespaceParamFunc.cpp
    M lldb/test/Shell/Unwind/trap_frame_sym_ctx.test
    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/OutputRedirector.cpp
    M lldb/tools/lldb-dap/lldb-dap.cpp
    M lldb/unittests/Process/elf-core/CMakeLists.txt
    M lldb/unittests/Process/elf-core/ThreadElfCoreTest.cpp
    M llvm/benchmarks/CMakeLists.txt
    A llvm/benchmarks/GetIntrinsicForClangBuiltin.cpp
    M llvm/cmake/config-ix.cmake
    M llvm/cmake/platforms/WinMsvc.cmake
    M llvm/docs/BitCodeFormat.rst
    M llvm/docs/GettingInvolved.rst
    M llvm/docs/LangRef.rst
    M llvm/docs/NVPTXUsage.rst
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/ReleaseNotes.rst
    M llvm/docs/_static/LoopOptWG_invite.ics
    M llvm/include/llvm/ADT/GenericCycleImpl.h
    M llvm/include/llvm/ADT/GenericCycleInfo.h
    M llvm/include/llvm/ADT/StringExtras.h
    M llvm/include/llvm/Analysis/CtxProfAnalysis.h
    M llvm/include/llvm/Analysis/CycleAnalysis.h
    M llvm/include/llvm/Analysis/DXILMetadataAnalysis.h
    M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
    M llvm/include/llvm/BinaryFormat/MachO.h
    A llvm/include/llvm/CGData/CodeGenData.h
    A llvm/include/llvm/CGData/CodeGenData.inc
    A llvm/include/llvm/CGData/CodeGenDataReader.h
    A llvm/include/llvm/CGData/CodeGenDataWriter.h
    A llvm/include/llvm/CGData/OutlinedHashTree.h
    A llvm/include/llvm/CGData/OutlinedHashTreeRecord.h
    M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    R llvm/include/llvm/CodeGenData/OutlinedHashTree.h
    R llvm/include/llvm/CodeGenData/OutlinedHashTreeRecord.h
    M llvm/include/llvm/Config/config.h.cmake
    M llvm/include/llvm/IR/Intrinsics.h
    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/IntrinsicsSPIRV.td
    M llvm/include/llvm/IR/IntrinsicsX86.td
    M llvm/include/llvm/LTO/LTO.h
    M llvm/include/llvm/SandboxIR/SandboxIR.h
    M llvm/include/llvm/SandboxIR/SandboxIRValues.def
    M llvm/include/llvm/SandboxIR/Tracker.h
    M llvm/include/llvm/Support/Compiler.h
    M llvm/include/llvm/Support/ModRef.h
    M llvm/include/llvm/TableGen/StringToOffsetTable.h
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/include/llvm/TargetParser/RISCVISAInfo.h
    M llvm/include/llvm/Transforms/IPO/FunctionImport.h
    M llvm/include/llvm/Transforms/InstCombine/InstCombiner.h
    M llvm/lib/Analysis/AliasAnalysis.cpp
    M llvm/lib/Analysis/CtxProfAnalysis.cpp
    M llvm/lib/Analysis/CycleAnalysis.cpp
    M llvm/lib/Analysis/DXILMetadataAnalysis.cpp
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    M llvm/lib/BinaryFormat/MachO.cpp
    A llvm/lib/CGData/CMakeLists.txt
    A llvm/lib/CGData/CodeGenData.cpp
    A llvm/lib/CGData/CodeGenDataReader.cpp
    A llvm/lib/CGData/CodeGenDataWriter.cpp
    A llvm/lib/CGData/OutlinedHashTree.cpp
    A llvm/lib/CGData/OutlinedHashTreeRecord.cpp
    M llvm/lib/CMakeLists.txt
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/lib/CodeGen/GlobalISel/CombinerHelperCasts.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/CodeGen/MachineVerifier.cpp
    M llvm/lib/CodeGen/PrologEpilogInserter.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/MatchContext.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    R llvm/lib/CodeGenData/CMakeLists.txt
    R llvm/lib/CodeGenData/OutlinedHashTree.cpp
    R llvm/lib/CodeGenData/OutlinedHashTreeRecord.cpp
    M llvm/lib/DWARFLinker/Classic/DWARFLinker.cpp
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/LTO/ThinLTOCodeGenerator.cpp
    M llvm/lib/MC/MachObjectWriter.cpp
    M llvm/lib/Object/MachOObjectFile.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/SandboxIR/SandboxIR.cpp
    M llvm/lib/SandboxIR/Tracker.cpp
    M llvm/lib/Support/CMakeLists.txt
    A llvm/lib/Support/ModRef.cpp
    M llvm/lib/Support/Unix/Signals.inc
    M llvm/lib/TableGen/TGLexer.cpp
    M llvm/lib/Target/AArch64/AArch64.h
    M llvm/lib/Target/AArch64/AArch64CallingConvention.td
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    M llvm/lib/Target/AArch64/AArch64MIPeepholeOpt.cpp
    M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
    M llvm/lib/Target/AArch64/AArch64SystemOperands.td
    M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/CMakeLists.txt
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    A llvm/lib/Target/AArch64/SMEPeepholeOpt.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAnnotateUniformValues.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAsanInstrumentation.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAsanInstrumentation.h
    M llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
    M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
    A llvm/lib/Target/AMDGPU/AMDGPUMemoryUtils.cpp
    A llvm/lib/Target/AMDGPU/AMDGPUMemoryUtils.h
    M llvm/lib/Target/AMDGPU/AMDGPUPromoteKernelArguments.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
    M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
    M llvm/lib/Target/AMDGPU/CMakeLists.txt
    M llvm/lib/Target/AMDGPU/FLATInstructions.td
    A llvm/lib/Target/AMDGPU/GCNSubtarget.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    R llvm/lib/Target/AMDGPU/Utils/AMDGPUMemoryUtils.cpp
    R llvm/lib/Target/AMDGPU/Utils/AMDGPUMemoryUtils.h
    M llvm/lib/Target/AMDGPU/Utils/CMakeLists.txt
    M llvm/lib/Target/AMDGPU/VOPCInstructions.td
    M llvm/lib/Target/BPF/BPFCallingConv.td
    M llvm/lib/Target/BPF/BPFISelLowering.cpp
    M llvm/lib/Target/BPF/BPFInstrInfo.td
    M llvm/lib/Target/BPF/BPFMIPeephole.cpp
    M llvm/lib/Target/BPF/BPFRegisterInfo.cpp
    M llvm/lib/Target/BPF/BPFRegisterInfo.h
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILOpBuilder.cpp
    M llvm/lib/Target/DirectX/DXILOpBuilder.h
    M llvm/lib/Target/DirectX/DXILOpLowering.cpp
    A llvm/lib/Target/DirectX/DXILOpLowering.h
    M llvm/lib/Target/DirectX/DXILPrettyPrinter.cpp
    A llvm/lib/Target/DirectX/DXILPrettyPrinter.h
    M llvm/lib/Target/DirectX/DXILResourceAnalysis.cpp
    M llvm/lib/Target/DirectX/DXILResourceAnalysis.h
    M llvm/lib/Target/DirectX/DXILTranslateMetadata.cpp
    A llvm/lib/Target/DirectX/DXILTranslateMetadata.h
    M llvm/lib/Target/DirectX/DirectX.h
    M llvm/lib/Target/DirectX/DirectXPassRegistry.def
    M llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/lib/Target/RISCV/GISel/RISCVCallLowering.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVCallLowering.h
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoD.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoF.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td
    M llvm/lib/Target/RISCV/RISCVProcessors.td
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVPostLegalizer.cpp
    M llvm/lib/Target/X86/X86FrameLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/lib/Target/X86/X86InstrAVX10.td
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Target/X86/X86InstrFragmentsSIMD.td
    M llvm/lib/Target/X86/X86IntrinsicsInfo.h
    M llvm/lib/Target/X86/X86RegisterInfo.cpp
    M llvm/lib/Target/X86/X86RegisterInfo.h
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
    M llvm/lib/Transforms/Coroutines/CoroInternal.h
    M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/IPO/FunctionImport.cpp
    M llvm/lib/Transforms/IPO/OpenMPOpt.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
    M llvm/lib/Transforms/Utils/ModuleUtils.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Analysis/CostModel/AArch64/arith-fp.ll
    M llvm/test/Analysis/CostModel/X86/ctlz-codesize.ll
    M llvm/test/Analysis/CostModel/X86/ctlz-latency.ll
    M llvm/test/Analysis/CostModel/X86/ctlz-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/ctlz.ll
    M llvm/test/Analysis/CostModel/X86/cttz-codesize.ll
    M llvm/test/Analysis/CostModel/X86/cttz-latency.ll
    M llvm/test/Analysis/CostModel/X86/cttz-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/cttz.ll
    M llvm/test/Analysis/CostModel/X86/intrinsic-cost-kinds.ll
    M llvm/test/Analysis/CtxProfAnalysis/full-cycle.ll
    M llvm/test/Analysis/CtxProfAnalysis/load.ll
    M llvm/test/Analysis/CycleInfo/basic.ll
    M llvm/test/Analysis/CycleInfo/unreachable-predecessor.ll
    M llvm/test/Analysis/DXILResource/buffer-frombinding.ll
    M llvm/test/Analysis/LoopAccessAnalysis/symbolic-stride.ll
    M llvm/test/Analysis/ValueTracking/known-power-of-two-urem.ll
    M llvm/test/Analysis/ValueTracking/known-power-of-two.ll
    M llvm/test/Analysis/ValueTracking/knownbits-and-or-xor-lowbit.ll
    M llvm/test/Analysis/ValueTracking/knownbits-bmi-pattern.ll
    M llvm/test/Analysis/ValueTracking/phi-known-bits.ll
    A llvm/test/Assembler/lround.ll
    M llvm/test/Bitcode/amdgcn-atomic.ll
    M llvm/test/CMakeLists.txt
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-cast.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-extract-vec-elt.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-with-flags.mir
    M llvm/test/CodeGen/AArch64/O3-pipeline.ll
    M llvm/test/CodeGen/AArch64/aarch64-mull-masks.ll
    M llvm/test/CodeGen/AArch64/abds-neg.ll
    M llvm/test/CodeGen/AArch64/abds.ll
    M llvm/test/CodeGen/AArch64/abdu-neg.ll
    M llvm/test/CodeGen/AArch64/abdu.ll
    M llvm/test/CodeGen/AArch64/arm64-subvector-extend.ll
    A llvm/test/CodeGen/AArch64/dag-combine-freeze.ll
    M llvm/test/CodeGen/AArch64/movimm-expand-ldst.ll
    M llvm/test/CodeGen/AArch64/movimm-expand-ldst.mir
    M llvm/test/CodeGen/AArch64/neon-extadd.ll
    M llvm/test/CodeGen/AArch64/peephole-sxtw.mir
    M llvm/test/CodeGen/AArch64/sext.ll
    M llvm/test/CodeGen/AArch64/sme-darwin-sve-vg.ll
    A llvm/test/CodeGen/AArch64/sme-peephole-opts.ll
    M llvm/test/CodeGen/AArch64/sme-streaming-body.ll
    M llvm/test/CodeGen/AArch64/sme-streaming-interface.ll
    M llvm/test/CodeGen/AArch64/sme-toggle-pstateza.ll
    M llvm/test/CodeGen/AArch64/sme-vg-to-stack.ll
    M llvm/test/CodeGen/AArch64/streaming-compatible-memory-ops.ll
    M llvm/test/CodeGen/AArch64/sve-calling-convention-byref.ll
    M llvm/test/CodeGen/AArch64/sve-calling-convention.ll
    A llvm/test/CodeGen/AArch64/sve-fixed-length-int-abd.ll
    A llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-abd.ll
    M llvm/test/CodeGen/AArch64/vecreduce-add.ll
    M llvm/test/CodeGen/AArch64/xtn.ll
    M llvm/test/CodeGen/AArch64/zext.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fp-atomics-gfx940.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fcmp.s16.mir
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow-codegen.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pown.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-powr.ll
    M llvm/test/CodeGen/AMDGPU/fp-atomics-gfx1200.ll
    M llvm/test/CodeGen/AMDGPU/fp-atomics-gfx940.ll
    M llvm/test/CodeGen/AMDGPU/lround.ll
    M llvm/test/CodeGen/AMDGPU/sad.ll
    M llvm/test/CodeGen/AMDGPU/sramecc-subtarget-feature-any.ll
    M llvm/test/CodeGen/AMDGPU/sramecc-subtarget-feature-disabled.ll
    M llvm/test/CodeGen/AMDGPU/sramecc-subtarget-feature-enabled.ll
    M llvm/test/CodeGen/AMDGPU/xnack-subtarget-feature-any.ll
    M llvm/test/CodeGen/AMDGPU/xnack-subtarget-feature-disabled.ll
    M llvm/test/CodeGen/AMDGPU/xnack-subtarget-feature-enabled.ll
    A llvm/test/CodeGen/BPF/bpf-fastcall-1.ll
    A llvm/test/CodeGen/BPF/bpf-fastcall-2.ll
    A llvm/test/CodeGen/BPF/bpf-fastcall-3.ll
    A llvm/test/CodeGen/BPF/bpf-fastcall-regmask-1.ll
    M llvm/test/CodeGen/DirectX/Metadata/dxilVer-1.0.ll
    M llvm/test/CodeGen/DirectX/Metadata/dxilVer-1.8.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-as.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-cs-val-ver-0.0.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-cs.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-gs.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-hs.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-lib.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-ms.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-ps.ll
    M llvm/test/CodeGen/DirectX/Metadata/shaderModel-vs.ll
    M llvm/test/CodeGen/DirectX/UAVMetadata.ll
    M llvm/test/CodeGen/DirectX/any.ll
    M llvm/test/CodeGen/DirectX/cbuf.ll
    M llvm/test/CodeGen/DirectX/floor.ll
    A llvm/test/CodeGen/DirectX/saturate.ll
    A llvm/test/CodeGen/DirectX/saturate_errors.ll
    A llvm/test/CodeGen/NVPTX/elect.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/alu-roundtrip.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/iabs.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/alu_m-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-abs-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-div-rv64.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-rem-rv64.mir
    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/attributes.ll
    M llvm/test/CodeGen/RISCV/double-intrinsics.ll
    M llvm/test/CodeGen/RISCV/float-intrinsics.ll
    M llvm/test/CodeGen/RISCV/half-intrinsics.ll
    M llvm/test/CodeGen/RISCV/rv64zba.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-int.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vdiv-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vdivu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vrem-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vremu-vp.ll
    A llvm/test/CodeGen/SPIRV/block-ordering.ll
    M llvm/test/CodeGen/SPIRV/branching/OpSwitchBranches.ll
    M llvm/test/CodeGen/SPIRV/branching/Two_OpSwitch_same_register.ll
    M llvm/test/CodeGen/SPIRV/branching/if-merging.ll
    M llvm/test/CodeGen/SPIRV/branching/if-non-merging.ll
    M llvm/test/CodeGen/SPIRV/branching/switch-range-check.ll
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/saturate.ll
    M llvm/test/CodeGen/SPIRV/phi-ptrcast-dominate.ll
    M llvm/test/CodeGen/SPIRV/scfg-add-pre-headers.ll
    M llvm/test/CodeGen/SPIRV/structurizer/merge-exit-break.ll
    M llvm/test/CodeGen/SPIRV/structurizer/merge-exit-convergence-in-break.ll
    M llvm/test/CodeGen/SPIRV/structurizer/merge-exit-multiple-break.ll
    A llvm/test/CodeGen/SPIRV/structurizer/merge-exit-simple-while-identity.ll
    R llvm/test/CodeGen/SPIRV/structurizer/merge-exit-simple-white-identity.ll
    M llvm/test/CodeGen/X86/abds-neg.ll
    M llvm/test/CodeGen/X86/abds.ll
    M llvm/test/CodeGen/X86/abdu.ll
    A llvm/test/CodeGen/X86/avx10_2_512convert-intrinsics.ll
    A llvm/test/CodeGen/X86/avx10_2convert-intrinsics.ll
    R llvm/test/CodeGen/X86/avx512f-large-stack.ll
    M llvm/test/CodeGen/X86/fold-loop-of-urem.ll
    M llvm/test/CodeGen/X86/huge-stack.ll
    M llvm/test/CodeGen/X86/win64-stackprobe-overflow.ll
    M llvm/test/MC/AArch64/arm64-system-encoding.s
    M llvm/test/MC/AArch64/arm64e-subtype.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s
    M llvm/test/MC/Disassembler/AArch64/basic-a64-instructions.txt
    A llvm/test/MC/Disassembler/X86/avx10.2convert-32.txt
    A llvm/test/MC/Disassembler/X86/avx10.2convert-64.txt
    A llvm/test/MC/X86/avx10.2convert-32-att.s
    A llvm/test/MC/X86/avx10.2convert-32-intel.s
    A llvm/test/MC/X86/avx10.2convert-64-att.s
    A llvm/test/MC/X86/avx10.2convert-64-intel.s
    M llvm/test/MachineVerifier/test_g_llround.mir
    M llvm/test/MachineVerifier/test_g_lround.mir
    M llvm/test/TableGen/x86-fold-tables.inc
    M llvm/test/Transforms/Attributor/call-simplify-pointer-info.ll
    M llvm/test/Transforms/Attributor/multiple-offsets-pointer-info.ll
    M llvm/test/Transforms/Attributor/value-simplify-pointer-info.ll
    M llvm/test/Transforms/CodeGenPrepare/AArch64/sink-free-instructions.ll
    M llvm/test/Transforms/CodeGenPrepare/X86/fold-loop-of-urem.ll
    M llvm/test/Transforms/Coroutines/coro-debug-O2.ll
    M llvm/test/Transforms/Coroutines/coro-debug-coro-frame.ll
    M llvm/test/Transforms/Coroutines/coro-debug-dbg.values.ll
    M llvm/test/Transforms/Coroutines/coro-debug-frame-variable.ll
    A llvm/test/Transforms/FunctionAttrs/cold.ll
    A llvm/test/Transforms/GCOVProfiling/kcfi-normalize.ll
    M llvm/test/Transforms/GCOVProfiling/kcfi.ll
    M llvm/test/Transforms/IndVarSimplify/rewrite-loop-exit-value.ll
    M llvm/test/Transforms/InstCombine/2004-11-27-SetCCForCastLargerAndConstant.ll
    M llvm/test/Transforms/InstCombine/2010-11-23-Distributed.ll
    M llvm/test/Transforms/InstCombine/abs-1.ll
    M llvm/test/Transforms/InstCombine/add-mask-neg.ll
    M llvm/test/Transforms/InstCombine/add.ll
    M llvm/test/Transforms/InstCombine/add2.ll
    M llvm/test/Transforms/InstCombine/add_or_sub.ll
    M llvm/test/Transforms/InstCombine/and-or-icmp-const-icmp.ll
    M llvm/test/Transforms/InstCombine/and-or-icmps.ll
    M llvm/test/Transforms/InstCombine/and-or-not.ll
    M llvm/test/Transforms/InstCombine/and-or.ll
    M llvm/test/Transforms/InstCombine/and-xor-merge.ll
    M llvm/test/Transforms/InstCombine/and-xor-or.ll
    M llvm/test/Transforms/InstCombine/and.ll
    M llvm/test/Transforms/InstCombine/apint-and-xor-merge.ll
    M llvm/test/Transforms/InstCombine/apint-or.ll
    M llvm/test/Transforms/InstCombine/apint-shift.ll
    M llvm/test/Transforms/InstCombine/apint-sub.ll
    M llvm/test/Transforms/InstCombine/ashr-lshr.ll
    M llvm/test/Transforms/InstCombine/assume-align.ll
    M llvm/test/Transforms/InstCombine/assume-separate_storage.ll
    M llvm/test/Transforms/InstCombine/avg-lsb.ll
    M llvm/test/Transforms/InstCombine/binop-and-shifts.ll
    M llvm/test/Transforms/InstCombine/binop-cast.ll
    M llvm/test/Transforms/InstCombine/bit-checks.ll
    M llvm/test/Transforms/InstCombine/bitcast-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/bitcast.ll
    M llvm/test/Transforms/InstCombine/bitreverse.ll
    M llvm/test/Transforms/InstCombine/bswap-fold.ll
    M llvm/test/Transforms/InstCombine/call-guard.ll
    M llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-eq-to-icmp-ule.ll
    M llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-ne-to-icmp-ugt.ll
    M llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-uge-to-icmp-ule.ll
    M llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-ult-to-icmp-ugt.ll
    M llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-and-icmp-eq-to-icmp-ule.ll
    M llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-and-icmp-ne-to-icmp-ugt.ll
    M llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-v2-and-icmp-eq-to-icmp-ule.ll
    M llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-v2-and-icmp-ne-to-icmp-ugt.ll
    M llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-v3-and-icmp-eq-to-icmp-ule.ll
    M llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-v3-and-icmp-ne-to-icmp-ugt.ll
    M llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-v4-and-icmp-eq-to-icmp-ule.ll
    M llvm/test/Transforms/InstCombine/canonicalize-low-bit-mask-v4-and-icmp-ne-to-icmp-ugt.ll
    M llvm/test/Transforms/InstCombine/cast-mul-select.ll
    M llvm/test/Transforms/InstCombine/cast.ll
    M llvm/test/Transforms/InstCombine/cast_phi.ll
    M llvm/test/Transforms/InstCombine/cast_ptr.ll
    M llvm/test/Transforms/InstCombine/cmp-x-vs-neg-x.ll
    M llvm/test/Transforms/InstCombine/conditional-negation.ll
    M llvm/test/Transforms/InstCombine/ctpop-cttz.ll
    M llvm/test/Transforms/InstCombine/ctpop-pow2.ll
    M llvm/test/Transforms/InstCombine/cttz.ll
    M llvm/test/Transforms/InstCombine/demorgan.ll
    M llvm/test/Transforms/InstCombine/dependent-ivs.ll
    M llvm/test/Transforms/InstCombine/fadd-fsub-factor.ll
    M llvm/test/Transforms/InstCombine/fadd.ll
    M llvm/test/Transforms/InstCombine/fast-basictest.ll
    M llvm/test/Transforms/InstCombine/fast-math.ll
    M llvm/test/Transforms/InstCombine/fcmp.ll
    M llvm/test/Transforms/InstCombine/fdiv-sqrt.ll
    M llvm/test/Transforms/InstCombine/fdiv.ll
    M llvm/test/Transforms/InstCombine/float-shrink-compare.ll
    M llvm/test/Transforms/InstCombine/fmul.ll
    M llvm/test/Transforms/InstCombine/fold-ext-eq-c-with-op.ll
    M llvm/test/Transforms/InstCombine/fold-inc-of-add-of-not-x-and-y-to-sub-x-from-y.ll
    M llvm/test/Transforms/InstCombine/fold-select-fmul-if-zero.ll
    M llvm/test/Transforms/InstCombine/fold-signbit-test-power2.ll
    M llvm/test/Transforms/InstCombine/fpextend.ll
    M llvm/test/Transforms/InstCombine/fptrunc.ll
    M llvm/test/Transforms/InstCombine/free-inversion.ll
    M llvm/test/Transforms/InstCombine/fsh.ll
    M llvm/test/Transforms/InstCombine/fsub.ll
    M llvm/test/Transforms/InstCombine/funnel.ll
    M llvm/test/Transforms/InstCombine/getelementptr.ll
    M llvm/test/Transforms/InstCombine/hoist-negation-out-of-bias-calculation.ll
    M llvm/test/Transforms/InstCombine/hoist-xor-by-constant-from-xor-by-value.ll
    M llvm/test/Transforms/InstCombine/icmp-add.ll
    M llvm/test/Transforms/InstCombine/icmp-and-add-sub-xor-p2.ll
    M llvm/test/Transforms/InstCombine/icmp-and-lowbit-mask.ll
    M llvm/test/Transforms/InstCombine/icmp-and-shift.ll
    M llvm/test/Transforms/InstCombine/icmp-custom-dl.ll
    M llvm/test/Transforms/InstCombine/icmp-equality-rotate.ll
    M llvm/test/Transforms/InstCombine/icmp-equality-xor.ll
    M llvm/test/Transforms/InstCombine/icmp-ext-ext.ll
    M llvm/test/Transforms/InstCombine/icmp-gep.ll
    M llvm/test/Transforms/InstCombine/icmp-mul-zext.ll
    M llvm/test/Transforms/InstCombine/icmp-mul.ll
    M llvm/test/Transforms/InstCombine/icmp-of-and-x.ll
    M llvm/test/Transforms/InstCombine/icmp-of-or-x.ll
    M llvm/test/Transforms/InstCombine/icmp-of-trunc-ext.ll
    M llvm/test/Transforms/InstCombine/icmp-of-xor-x.ll
    M llvm/test/Transforms/InstCombine/icmp-or-of-select-with-zero.ll
    M llvm/test/Transforms/InstCombine/icmp-or.ll
    M llvm/test/Transforms/InstCombine/icmp-range.ll
    M llvm/test/Transforms/InstCombine/icmp-rotate.ll
    M llvm/test/Transforms/InstCombine/icmp-select-implies-common-op.ll
    M llvm/test/Transforms/InstCombine/icmp-select.ll
    M llvm/test/Transforms/InstCombine/icmp-sub.ll
    M llvm/test/Transforms/InstCombine/icmp-uge-of-not-of-shl-allones-by-bits-and-val-to-icmp-eq-of-lshr-val-by-bits-and-0.ll
    M llvm/test/Transforms/InstCombine/icmp-ult-of-not-of-shl-allones-by-bits-and-val-to-icmp-ne-of-lshr-val-by-bits-and-0.ll
    M llvm/test/Transforms/InstCombine/icmp.ll
    M llvm/test/Transforms/InstCombine/implies.ll
    M llvm/test/Transforms/InstCombine/invert-variable-mask-in-masked-merge-scalar.ll
    M llvm/test/Transforms/InstCombine/invert-variable-mask-in-masked-merge-vector.ll
    M llvm/test/Transforms/InstCombine/ispow2.ll
    M llvm/test/Transforms/InstCombine/known-bits.ll
    M llvm/test/Transforms/InstCombine/known-never-nan.ll
    M llvm/test/Transforms/InstCombine/ldexp-ext.ll
    M llvm/test/Transforms/InstCombine/log-pow.ll
    M llvm/test/Transforms/InstCombine/logical-select-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/logical-select.ll
    M llvm/test/Transforms/InstCombine/lshr-and-negC-icmpeq-zero.ll
    M llvm/test/Transforms/InstCombine/lshr.ll
    M llvm/test/Transforms/InstCombine/masked-merge-add.ll
    M llvm/test/Transforms/InstCombine/masked-merge-and-of-ors.ll
    M llvm/test/Transforms/InstCombine/masked-merge-or.ll
    M llvm/test/Transforms/InstCombine/masked-merge-xor.ll
    M llvm/test/Transforms/InstCombine/minmax-fold.ll
    M llvm/test/Transforms/InstCombine/minmax-of-xor-x.ll
    M llvm/test/Transforms/InstCombine/mul-masked-bits.ll
    M llvm/test/Transforms/InstCombine/mul-pow2.ll
    M llvm/test/Transforms/InstCombine/mul.ll
    M llvm/test/Transforms/InstCombine/mul_fold.ll
    M llvm/test/Transforms/InstCombine/mul_full_64.ll
    M llvm/test/Transforms/InstCombine/not-add.ll
    M llvm/test/Transforms/InstCombine/not.ll
    M llvm/test/Transforms/InstCombine/onehot_merge.ll
    M llvm/test/Transforms/InstCombine/or-xor-xor.ll
    M llvm/test/Transforms/InstCombine/or-xor.ll
    M llvm/test/Transforms/InstCombine/or.ll
    M llvm/test/Transforms/InstCombine/partally-redundant-left-shift-input-masking-after-truncation-variant-b.ll
    M llvm/test/Transforms/InstCombine/partally-redundant-left-shift-input-masking-variant-b.ll
    M llvm/test/Transforms/InstCombine/phi.ll
    M llvm/test/Transforms/InstCombine/pr44242.ll
    M llvm/test/Transforms/InstCombine/pr49688.ll
    M llvm/test/Transforms/InstCombine/pr75369.ll
    M llvm/test/Transforms/InstCombine/ptr-int-ptr-icmp.ll
    M llvm/test/Transforms/InstCombine/ptrmask.ll
    M llvm/test/Transforms/InstCombine/range-check.ll
    M llvm/test/Transforms/InstCombine/reassociate-nuw.ll
    M llvm/test/Transforms/InstCombine/redundant-left-shift-input-masking-after-truncation-variant-b.ll
    M llvm/test/Transforms/InstCombine/redundant-left-shift-input-masking-variant-b.ll
    M llvm/test/Transforms/InstCombine/rem.ll
    M llvm/test/Transforms/InstCombine/result-of-add-of-negative-is-non-zero-and-no-underflow.ll
    M llvm/test/Transforms/InstCombine/result-of-add-of-negative-or-zero-is-non-zero-and-no-underflow.ll
    M llvm/test/Transforms/InstCombine/result-of-usub-is-non-zero-and-no-overflow.ll
    M llvm/test/Transforms/InstCombine/saturating-add-sub.ll
    M llvm/test/Transforms/InstCombine/scalarization-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/scalarization.ll
    M llvm/test/Transforms/InstCombine/select-and-or.ll
    M llvm/test/Transforms/InstCombine/select-binop-cmp.ll
    M llvm/test/Transforms/InstCombine/select-binop-foldable-floating-point.ll
    M llvm/test/Transforms/InstCombine/select-cmp-eq-op-fold.ll
    M llvm/test/Transforms/InstCombine/select-cmp.ll
    M llvm/test/Transforms/InstCombine/select-ctlz-to-cttz.ll
    M llvm/test/Transforms/InstCombine/select-divrem.ll
    M llvm/test/Transforms/InstCombine/select-factorize.ll
    M llvm/test/Transforms/InstCombine/select-masked_gather.ll
    M llvm/test/Transforms/InstCombine/select-masked_load.ll
    M llvm/test/Transforms/InstCombine/select-of-bittest.ll
    M llvm/test/Transforms/InstCombine/select-safe-transforms.ll
    M llvm/test/Transforms/InstCombine/select-with-bitwise-ops.ll
    M llvm/test/Transforms/InstCombine/select.ll
    M llvm/test/Transforms/InstCombine/select_meta.ll
    M llvm/test/Transforms/InstCombine/set.ll
    A llvm/test/Transforms/InstCombine/sext-a-lt-b-plus-zext-a-gt-b-to-uscmp.ll
    M llvm/test/Transforms/InstCombine/shift-add.ll
    M llvm/test/Transforms/InstCombine/shift-amount-reassociation-in-bittest-with-truncation-lshr.ll
    M llvm/test/Transforms/InstCombine/shift-amount-reassociation-in-bittest-with-truncation-shl.ll
    M llvm/test/Transforms/InstCombine/shift-direction-in-bit-test.ll
    M llvm/test/Transforms/InstCombine/shift-logic.ll
    M llvm/test/Transforms/InstCombine/shift.ll
    M llvm/test/Transforms/InstCombine/shl-bo.ll
    M llvm/test/Transforms/InstCombine/shuffle-binop.ll
    M llvm/test/Transforms/InstCombine/signed-truncation-check.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll
    M llvm/test/Transforms/InstCombine/sink-not-into-and.ll
    M llvm/test/Transforms/InstCombine/sink-not-into-or.ll
    M llvm/test/Transforms/InstCombine/smax-icmp.ll
    M llvm/test/Transforms/InstCombine/smin-icmp.ll
    M llvm/test/Transforms/InstCombine/sub-ashr-or-to-icmp-select.ll
    M llvm/test/Transforms/InstCombine/sub-gep.ll
    M llvm/test/Transforms/InstCombine/sub-lshr-or-to-icmp-select.ll
    M llvm/test/Transforms/InstCombine/sub-minmax.ll
    M llvm/test/Transforms/InstCombine/sub-not.ll
    M llvm/test/Transforms/InstCombine/sub-of-negatible-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/sub-of-negatible.ll
    M llvm/test/Transforms/InstCombine/sub-xor-cmp.ll
    M llvm/test/Transforms/InstCombine/sub.ll
    M llvm/test/Transforms/InstCombine/trunc-binop-ext.ll
    M llvm/test/Transforms/InstCombine/uaddo.ll
    M llvm/test/Transforms/InstCombine/umax-icmp.ll
    M llvm/test/Transforms/InstCombine/umin-icmp.ll
    M llvm/test/Transforms/InstCombine/unordered-compare-and-ordered.ll
    M llvm/test/Transforms/InstCombine/unsigned-add-lack-of-overflow-check-via-add.ll
    M llvm/test/Transforms/InstCombine/unsigned-add-lack-of-overflow-check-via-xor.ll
    M llvm/test/Transforms/InstCombine/unsigned-add-lack-of-overflow-check.ll
    M llvm/test/Transforms/InstCombine/unsigned-add-overflow-check-via-add.ll
    M llvm/test/Transforms/InstCombine/unsigned-add-overflow-check-via-xor.ll
    M llvm/test/Transforms/InstCombine/unsigned-add-overflow-check.ll
    M llvm/test/Transforms/InstCombine/unsigned-sub-lack-of-overflow-check.ll
    M llvm/test/Transforms/InstCombine/unsigned-sub-overflow-check.ll
    M llvm/test/Transforms/InstCombine/vec_demanded_elts.ll
    M llvm/test/Transforms/InstCombine/vec_shuffle-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/vec_shuffle.ll
    M llvm/test/Transforms/InstCombine/vector-reverse.ll
    M llvm/test/Transforms/InstCombine/vector-xor.ll
    M llvm/test/Transforms/InstCombine/widenable-conditions.ll
    M llvm/test/Transforms/InstCombine/xor.ll
    M llvm/test/Transforms/InstCombine/xor2.ll
    M llvm/test/Transforms/InstCombine/zext-bool-add-sub.ll
    M llvm/test/Transforms/InstCombine/zext-or-icmp.ll
    M llvm/test/Transforms/InstCombine/zext.ll
    M llvm/test/Transforms/LoopIdiom/X86/ctlz.ll
    M llvm/test/Transforms/LoopIdiom/X86/left-shift-until-bittest.ll
    M llvm/test/Transforms/LoopIdiom/X86/left-shift-until-zero.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/deterministic-type-shrinkage.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-cond-inv-loads.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-gather-scatter.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-inductions.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-accesses.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-widen-phi.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/vector-reverse-mask4.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-qabs.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-reductions.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-selectandorcost.ll
    M llvm/test/Transforms/LoopVectorize/ARM/pointer_iv.ll
    M llvm/test/Transforms/LoopVectorize/ARM/tail-fold-multiple-icmps.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-intrinsics-reduction.ll
    M llvm/test/Transforms/LoopVectorize/X86/invariant-load-gather.ll
    M llvm/test/Transforms/LoopVectorize/X86/invariant-store-vectorization.ll
    M llvm/test/Transforms/LoopVectorize/X86/pr23997.ll
    M llvm/test/Transforms/LoopVectorize/extract-last-veclane.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-chains-vplan.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-chains.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-complex.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-sink-replicate-region.ll
    M llvm/test/Transforms/LoopVectorize/float-induction.ll
    M llvm/test/Transforms/LoopVectorize/if-conversion-nest.ll
    M llvm/test/Transforms/LoopVectorize/induction.ll
    M llvm/test/Transforms/LoopVectorize/instruction-only-used-outside-of-loop.ll
    M llvm/test/Transforms/LoopVectorize/interleaved-accesses.ll
    M llvm/test/Transforms/LoopVectorize/invariant-store-vectorization-2.ll
    M llvm/test/Transforms/LoopVectorize/invariant-store-vectorization.ll
    M llvm/test/Transforms/LoopVectorize/pr36983.ll
    M llvm/test/Transforms/LoopVectorize/pr55167-fold-tail-live-out.ll
    M llvm/test/Transforms/LoopVectorize/reduction-inloop-cond.ll
    M llvm/test/Transforms/LoopVectorize/reduction-inloop.ll
    M llvm/test/Transforms/LoopVectorize/reduction.ll
    M llvm/test/Transforms/LoopVectorize/runtime-check.ll
    M llvm/test/Transforms/LoopVectorize/scalable-inductions.ll
    M llvm/test/Transforms/LoopVectorize/select-cmp-multiuse.ll
    M llvm/test/Transforms/LoopVectorize/uniform-args-call-variants.ll
    M llvm/test/Transforms/LoopVectorize/vplan-printing.ll
    M llvm/test/Transforms/OpenMP/spmdization.ll
    M llvm/test/Transforms/PGOProfile/chr.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/hoist-runtime-checks.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/hoisting-sinking-required-for-vectorization.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/matrix-extract-insert.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/peel-multiple-unreachable-exits-for-vectorization.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/quant_4x4.ll
    M llvm/test/Transforms/PhaseOrdering/ARM/arm_mult_q15.ll
    M llvm/test/Transforms/PhaseOrdering/X86/hoist-load-of-baseptr.ll
    M llvm/test/Transforms/PhaseOrdering/X86/speculation-vs-tbaa.ll
    M llvm/test/Transforms/PhaseOrdering/X86/vector-reductions-logical.ll
    M llvm/test/Transforms/PhaseOrdering/fast-basictest.ll
    M llvm/test/Transforms/PhaseOrdering/reassociate-instcombine.ll
    M llvm/test/Transforms/PhaseOrdering/runtime-check-removal.ll
    M llvm/test/Transforms/Reassociate/fast-ArrayOutOfBounds.ll
    M llvm/test/Transforms/Reassociate/fast-SubReassociate.ll
    M llvm/test/Transforms/SLPVectorizer/X86/cmp_commute-inseltpoison.ll
    M llvm/test/Transforms/SLPVectorizer/X86/cmp_commute.ll
    A llvm/test/Transforms/SLPVectorizer/X86/phi-nodes-as-operand-reorder.ll
    M llvm/test/Transforms/SLPVectorizer/X86/phi.ll
    M llvm/test/lit.cfg.py
    M llvm/test/tools/UpdateTestChecks/update_analyze_test_checks/Inputs/x86-loopvectorize-costmodel.ll.expected
    M llvm/test/tools/dsymutil/X86/modules.m
    A llvm/test/tools/llvm-cgdata/convert.test
    A llvm/test/tools/llvm-cgdata/empty.test
    A llvm/test/tools/llvm-cgdata/error.test
    A llvm/test/tools/llvm-cgdata/merge-archive.test
    A llvm/test/tools/llvm-cgdata/merge-concat.test
    A llvm/test/tools/llvm-cgdata/merge-double.test
    A llvm/test/tools/llvm-cgdata/merge-single.test
    A llvm/test/tools/llvm-cgdata/show.test
    A llvm/test/tools/llvm-objdump/AArch64/Inputs/fat.macho-arm64e-kernel-ptrauth-abi
    A llvm/test/tools/llvm-objdump/AArch64/Inputs/fat.macho-arm64e-ptrauth-abi
    A llvm/test/tools/llvm-objdump/AArch64/macho-universal-arm64e-kernel-ptrauth-abi.test
    A llvm/test/tools/llvm-objdump/AArch64/macho-universal-arm64e-ptrauth-abi.test
    A llvm/test/tools/llvm-objdump/macho-ptrauth-cpusubtype.test
    M llvm/tools/dsymutil/MachOUtils.cpp
    A llvm/tools/llvm-cgdata/CMakeLists.txt
    A llvm/tools/llvm-cgdata/Opts.td
    A llvm/tools/llvm-cgdata/llvm-cgdata.cpp
    M llvm/tools/llvm-objdump/MachODump.cpp
    M llvm/tools/llvm-reduce/deltas/RunIRPasses.cpp
    M llvm/unittests/ADT/STLExtrasTest.cpp
    M llvm/unittests/ADT/StringExtrasTest.cpp
    M llvm/unittests/ADT/StringRefTest.cpp
    M llvm/unittests/Analysis/CMakeLists.txt
    A llvm/unittests/Analysis/CtxProfAnalysisTest.cpp
    M llvm/unittests/Analysis/GraphWriterTest.cpp
    M llvm/unittests/BinaryFormat/MachOTest.cpp
    A llvm/unittests/CGData/CMakeLists.txt
    A llvm/unittests/CGData/OutlinedHashTreeRecordTest.cpp
    A llvm/unittests/CGData/OutlinedHashTreeTest.cpp
    M llvm/unittests/CMakeLists.txt
    R llvm/unittests/CodeGenData/CMakeLists.txt
    R llvm/unittests/CodeGenData/OutlinedHashTreeRecordTest.cpp
    R llvm/unittests/CodeGenData/OutlinedHashTreeTest.cpp
    M llvm/unittests/IR/IntrinsicsTest.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp
    M llvm/unittests/SandboxIR/TrackerTest.cpp
    M llvm/unittests/Support/SignalsTest.cpp
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
    M llvm/unittests/TargetParser/TargetParserTest.cpp
    M llvm/utils/TableGen/IntrinsicEmitter.cpp
    M llvm/utils/TableGen/TableGen.cpp
    M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
    M llvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn
    A llvm/utils/gn/secondary/llvm/lib/CGData/BUILD.gn
    R llvm/utils/gn/secondary/llvm/lib/CodeGenData/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Support/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/Utils/BUILD.gn
    M llvm/utils/gn/secondary/llvm/test/BUILD.gn
    A llvm/utils/gn/secondary/llvm/tools/llvm-cgdata/BUILD.gn
    M llvm/utils/gn/secondary/llvm/unittests/Analysis/BUILD.gn
    M llvm/utils/gn/secondary/llvm/unittests/BUILD.gn
    A llvm/utils/gn/secondary/llvm/unittests/CGData/BUILD.gn
    R llvm/utils/gn/secondary/llvm/unittests/CodeGenData/BUILD.gn
    M llvm/utils/lit/tests/Inputs/shtest-cat/cat-error-0.txt
    M llvm/utils/lit/tests/Inputs/shtest-cat/cat-error-1.txt
    M llvm/utils/lit/tests/Inputs/shtest-cat/cat.txt
    A mlir/docs/DefiningDialects/Constraints.md
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
    M mlir/include/mlir/Dialect/Func/Extensions/MeshShardingExtensions.h
    M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
    M mlir/include/mlir/Dialect/IRDL/IR/IRDL.td
    M mlir/include/mlir/Dialect/IRDL/IR/IRDLOps.td
    M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
    R mlir/include/mlir/Dialect/Mesh/IR/TensorShardingInterfaceImpl.h
    M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorOps.td
    A mlir/include/mlir/Dialect/Tensor/Extensions/AllExtensions.h
    A mlir/include/mlir/Dialect/Tensor/Extensions/MeshShardingExtensions.h
    A mlir/include/mlir/Dialect/Tensor/IR/ShardingInterfaceImpl.h
    M mlir/include/mlir/IR/BuiltinTypes.h
    M mlir/include/mlir/IR/BuiltinTypes.td
    M mlir/include/mlir/IR/CMakeLists.txt
    M mlir/include/mlir/IR/CommonTypeConstraints.td
    M mlir/include/mlir/IR/Constraints.td
    M mlir/include/mlir/IR/MLIRContext.h
    M mlir/include/mlir/InitAllDialects.h
    M mlir/include/mlir/InitAllExtensions.h
    M mlir/include/mlir/TableGen/Constraint.h
    M mlir/lib/Conversion/ConvertToSPIRV/CMakeLists.txt
    M mlir/lib/Conversion/ConvertToSPIRV/ConvertToSPIRVPass.cpp
    M mlir/lib/Conversion/GPUToLLVMSPV/GPUToLLVMSPV.cpp
    M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
    M mlir/lib/Conversion/GPUToSPIRV/GPUToSPIRV.cpp
    M mlir/lib/Conversion/MathToLibm/MathToLibm.cpp
    M mlir/lib/Conversion/OpenMPToLLVM/OpenMPToLLVM.cpp
    M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
    M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
    M mlir/lib/Dialect/GPU/Transforms/SubgroupReduceLowering.cpp
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp
    M mlir/lib/Dialect/Math/Transforms/LegalizeToF32.cpp
    M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
    M mlir/lib/Dialect/Mesh/Interfaces/CMakeLists.txt
    R mlir/lib/Dialect/Mesh/Interfaces/TensorShardingInterfaceImpl.cpp
    M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Sparsification.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/CodegenEnv.h
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/LoopEmitter.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/LoopEmitter.h
    M mlir/lib/Dialect/Tensor/CMakeLists.txt
    A mlir/lib/Dialect/Tensor/Extensions/AllExtensions.cpp
    A mlir/lib/Dialect/Tensor/Extensions/CMakeLists.txt
    A mlir/lib/Dialect/Tensor/Extensions/MeshShardingExtensions.cpp
    M mlir/lib/IR/BuiltinTypes.cpp
    M mlir/lib/IR/CMakeLists.txt
    M mlir/lib/TableGen/Constraint.cpp
    M mlir/lib/TableGen/Operator.cpp
    A mlir/test/Conversion/ConvertToSPIRV/argmax-kernel.mlir
    A mlir/test/Conversion/ConvertToSPIRV/gpu.mlir
    M mlir/test/Conversion/GPUToLLVMSPV/gpu-to-llvm-spv.mlir
    M mlir/test/Conversion/MathToLibm/convert-to-libm.mlir
    M mlir/test/Conversion/OpenMPToLLVM/convert-to-llvmir.mlir
    M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
    M mlir/test/Dialect/EmitC/invalid_ops.mlir
    M mlir/test/Dialect/EmitC/ops.mlir
    M mlir/test/Dialect/GPU/canonicalize.mlir
    M mlir/test/Dialect/GPU/invalid.mlir
    M mlir/test/Dialect/GPU/subgroup-reduce-lowering.mlir
    M mlir/test/Dialect/Linalg/canonicalize.mlir
    M mlir/test/Dialect/Linalg/loops.mlir
    M mlir/test/Dialect/Math/legalize-to-f32.mlir
    M mlir/test/Dialect/MemRef/ops.mlir
    M mlir/test/Dialect/SparseTensor/sparse_kernels_to_iterator.mlir
    A mlir/test/mlir-tblgen/type-constraints.td
    M mlir/tools/mlir-lsp-server/CMakeLists.txt
    M mlir/tools/mlir-tblgen/AttrOrTypeDefGen.cpp
    M offload/plugins-nextgen/amdgpu/src/rtl.cpp
    M offload/plugins-nextgen/common/include/ErrorReporting.h
    M offload/plugins-nextgen/common/include/PluginInterface.h
    M offload/test/api/omp_device_alloc.c
    M offload/test/sanitizer/double_free.c
    M offload/test/sanitizer/double_free_racy.c
    M offload/test/sanitizer/free_wrong_ptr_kind.c
    M offload/test/sanitizer/free_wrong_ptr_kind.cpp
    A offload/test/sanitizer/ptr_outside_alloc_1.c
    A offload/test/sanitizer/ptr_outside_alloc_2.c
    A offload/test/sanitizer/use_after_free_1.c
    A offload/test/sanitizer/use_after_free_2.c
    M utils/bazel/llvm-project-overlay/llvm/config.bzl
    M utils/bazel/llvm-project-overlay/llvm/include/llvm/Config/config.h
    M utils/bazel/llvm-project-overlay/llvm/unittests/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
    M utils/bazel/llvm_configs/config.h.cmake

  Log Message:
  -----------
  update

Created using spr 1.3.4


Compare: https://github.com/llvm/llvm-project/compare/1bc4fb1b1851...d4436590c8a7

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