[all-commits] [llvm/llvm-project] ab1b49: [AArch64] Adding tests for shifts

Wang Pengcheng via All-commits all-commits at lists.llvm.org
Tue Jan 23 19:07:36 PST 2024


  Branch: refs/heads/users/wangpc-pp/spr/riscv-add-experimental-support-of-zaamo-and-zalrsc
  Home:   https://github.com/llvm/llvm-project
  Commit: ab1b4991cfacfe04a579bf0b0ff4a704a6224d4a
      https://github.com/llvm/llvm-project/commit/ab1b4991cfacfe04a579bf0b0ff4a704a6224d4a
  Author: Tuan Chuong Goh <chuong.goh at arm.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    A llvm/test/CodeGen/AArch64/shift.ll

  Log Message:
  -----------
  [AArch64] Adding tests for shifts


  Commit: b689b4fe55103a04eac847964e126b6048b89ae0
      https://github.com/llvm/llvm-project/commit/b689b4fe55103a04eac847964e126b6048b89ae0
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/cmake/modules/FindFFI.cmake
    M openmp/libomptarget/plugins-nextgen/CMakeLists.txt

  Log Message:
  -----------
  [LLVM][CMake] Add ffi_static target for the FFI static library (#78779)

Summary:
This patch is an attempt to make the `find_package(FFI)` support in LLVM
prefer to provide the static library version if present. This is
currently
an optional library for building `libffi`, and its presence implies that
it should likely be used. This patch is an attempt to fix some problems
observed with testing programs linked against `libffi` on many different
systems that could have conflicting paths. Linking it statically
prevents this.

This patch adds the `ffi_static` target for this library.


  Commit: 5266c1285bb9560d8d9d266977167f6c24282e95
      https://github.com/llvm/llvm-project/commit/5266c1285bb9560d8d9d266977167f6c24282e95
  Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/lib/IR/DebugInfo.cpp
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
    R llvm/test/CodeGen/AArch64/dbg-assign-tag-offset-mix-loc.ll
    R llvm/test/CodeGen/AArch64/dbg-assign-tag-offset.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/declare-to-assign/hwasan.ll
    R llvm/test/Instrumentation/HWAddressSanitizer/dbg-assign-tag-offset.ll

  Log Message:
  -----------
  Revert "[hwasan] Update dbg.assign intrinsics in HWAsan pass" (#78971)

Reverts llvm/llvm-project#78606

https://lab.llvm.org/buildbot/#/builders/77/builds/33963


  Commit: 490a09a02e81c0034aa08a800fa7a57ec6ef0767
      https://github.com/llvm/llvm-project/commit/490a09a02e81c0034aa08a800fa7a57ec6ef0767
  Author: Björn Pettersson <bjorn.a.pettersson at ericsson.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

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

  Log Message:
  -----------
  [UnrollAnalyzerTest] Remove dependency to pass managers (#78473)

Remove use of LegacyPassManager in the UnrollAnalyzerTest unit test.

Given that the goal isn't to test pass manager interfaces, and since the
LoopUnrollAnalyzer isn't even implemented as a pass, we do not really
need the complexity of using a pass manager. Instead we just make sure
that we run LoopUnrollAnalyzer and other needed analyses standalone
(without any pass manager). This was inspired by the LoopInfoTest unit
test.


  Commit: 8fab16c86c9860fa78022a97553761fcdccfa03e
      https://github.com/llvm/llvm-project/commit/8fab16c86c9860fa78022a97553761fcdccfa03e
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M libcxx/docs/ReleaseNotes/18.rst

  Log Message:
  -----------
  [libc++][NFC] Remove trailing whitespace from release notes


  Commit: 5a667bee9c983f882255732ae27c96d1d94e0893
      https://github.com/llvm/llvm-project/commit/5a667bee9c983f882255732ae27c96d1d94e0893
  Author: Alexey Bataev <5361294+alexey-bataev at users.noreply.github.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/test/Transforms/InstCombine/logical-select-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/logical-select.ll

  Log Message:
  -----------
  [InstCombine] Try to fold trunc(shuffle(zext)) to just a shuffle (#78636)

Tries to remove extra trunc/ext instruction for shufflevector
instructions.

Differential Review: https://github.com/llvm/llvm-project/pull/78636


  Commit: cabe8be6bb2120828a741217365be975c59ac7b6
      https://github.com/llvm/llvm-project/commit/cabe8be6bb2120828a741217365be975c59ac7b6
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M libc/src/__support/FPUtil/FPBits.h
    M libc/test/src/__support/FPUtil/fpbits_test.cpp

  Log Message:
  -----------
  [libc] `FPRep` builders return `FPRep` instead of raw `StorageType` (#78588)


  Commit: bf7b8dae0615884816fff54cac08bc691746b1ee
      https://github.com/llvm/llvm-project/commit/bf7b8dae0615884816fff54cac08bc691746b1ee
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M libc/src/__support/FPUtil/FPBits.h
    M libc/test/src/__support/FPUtil/fpbits_test.cpp

  Log Message:
  -----------
  Revert "[libc] `FPRep` builders return `FPRep` instead of raw `StorageType`" (#78974)

Reverts llvm/llvm-project#78588


  Commit: 4f4690530e8b40cdf3a17c76a352b26c2fb0446c
      https://github.com/llvm/llvm-project/commit/4f4690530e8b40cdf3a17c76a352b26c2fb0446c
  Author: Jan Kokemüller <jan.kokemueller at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M libcxx/docs/ReleaseNotes/18.rst
    M libcxx/include/__expected/expected.h
    M libcxx/test/libcxx/utilities/expected/expected.expected/no_unique_address.compile.pass.cpp
    M libcxx/test/libcxx/utilities/expected/expected.expected/transform_error.mandates.verify.cpp
    M libcxx/test/libcxx/utilities/expected/expected.void/no_unique_address.compile.pass.cpp
    M libcxx/test/libcxx/utilities/expected/expected.void/transform_error.mandates.verify.cpp
    M libcxx/test/std/utilities/expected/expected.expected/assign/assign.U.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/assign/assign.copy.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/assign/assign.move.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/assign/emplace.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/monadic/transform.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/monadic/transform_error.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/swap/member.swap.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/assign/assign.copy.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/assign/assign.move.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/assign/assign.unexpected.copy.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/assign/assign.unexpected.move.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/monadic/transform_error.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/swap/member.swap.pass.cpp
    M libcxx/test/std/utilities/expected/types.h

  Log Message:
  -----------
  [libc++] Ensure that std::expected has no tail padding (#69673)

Currently std::expected can have some padding bytes in its tail due to
[[no_unique_address]]. Those padding bytes can be used by other objects.
For example, in the current implementation:

  sizeof(std::expected<std::optional<int>, bool>) == 
    sizeof(std::expected<std::expected<std::optional<int>, bool>, bool>)

As a result, the data layout of an
  std::expected<std::expected<std::optional<int>, bool>, bool> 
can look like this:

              +-- optional "has value" flag
              |        +--padding
  /---int---\ |        |
  00 00 00 00 01 00 00 00
                |  |
                |  +- "outer" expected "has value" flag
                |
                +- expected "has value" flag

This is problematic because `emplace()`ing the "inner" expected can not
only overwrite the "inner" expected "has value" flag (issue #68552) but
also the tail padding where other objects might live.

This patch fixes the problem by ensuring that std::expected has no tail
padding, which is achieved by conditional usage of [[no_unique_address]]
based on the tail padding that this would create.

This is an ABI breaking change because the following property changes:

  sizeof(std::expected<std::optional<int>, bool>) <
    sizeof(std::expected<std::expected<std::optional<int>, bool>, bool>)

Before the change, this relation didn't hold. After the change, the relation
does hold, which means that the size of std::expected in these cases increases
after this patch. The data layout will change in the following cases where
tail padding can be reused by other objects:

  class foo : std::expected<std::optional<int>, bool> {
    bool b;
  };

or using [[no_unique_address]]:

  struct foo {
    [[no_unique_address]] std::expected<std::optional<int>, bool> e;
    bool b;
  };

The vendor communication is handled in #70820.
Fixes: #70494

Co-authored-by: philnik777 <nikolasklauser at berlin.de>
Co-authored-by: Louis Dionne <ldionne.2 at gmail.com>


  Commit: bfef161a80b62723bedad996aa7a697f99e6802a
      https://github.com/llvm/llvm-project/commit/bfef161a80b62723bedad996aa7a697f99e6802a
  Author: chuongg3 <chuong.goh at arm.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/test/CodeGen/AArch64/fcmp.ll
    M llvm/test/CodeGen/AArch64/icmp.ll
    M llvm/test/CodeGen/AArch64/sext.ll
    M llvm/test/CodeGen/AArch64/shift.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Legalize Shifts for Smaller/Larger Vectors (#78750)

Legalize shl/lshr/ashr for smaller/larger vector widths with legal
element sizes

Smaller than legal vector types does not work at the moment as it relies
on G_ANYEXT to work with smaller than legal vector types


  Commit: 3c246efd04210af56ab6ce960b98283ec5bc7c30
      https://github.com/llvm/llvm-project/commit/3c246efd04210af56ab6ce960b98283ec5bc7c30
  Author: Petr Maj <53400784+zduka at users.noreply.github.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
    M llvm/test/Transforms/RewriteStatepointsForGC/base-pointers.ll

  Log Message:
  -----------
  True fixpoint algorithm in RS4GC (#75826)

Fixes a problem where the explicit marking of various instructions as
conflicts did not propagate to their users. An example of this:

```
%getelementptr = getelementptr i8, <2 x ptr addrspace(1)> zeroinitializer, <2 x i64> <i64 888, i64 908>
%shufflevector = shufflevector <2 x ptr addrspace(1)> %getelementptr, <2 x ptr addrspace(1)> zeroinitializer, <4 x i32> <i32 0, i32 1, i32 2, i32 3>
%shufflevector1 = shufflevector <2 x ptr addrspace(1)> %getelementptr, <2 x ptr addrspace(1)> zeroinitializer, <4 x i32> <i32 0, i32 1, i32 2, i32 3>
%select = select i1 false, <4 x ptr addrspace(1)> %shufflevector1, <4 x ptr addrspace(1)> %shufflevector
```

Here the vector shuffles will get single base (gep) during the fixpoint
and therefore the select will get a known base (gep). We later mark the
shuffles as conflicts, but this does not change the base of select. This
gets caught by an assert where the select's type will differ from its
(wrong) base later on.

The solution in the MR is to move the explicit conflict marking into the
fixpoint phase.

---------

Co-authored-by: Petr Maj <pmaj at azul.com>


  Commit: 1edb43f62ca408774b4392cbe641598e1c4725be
      https://github.com/llvm/llvm-project/commit/1edb43f62ca408774b4392cbe641598e1c4725be
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M libc/src/__support/FPUtil/FPBits.h
    M libc/test/src/__support/FPUtil/fpbits_test.cpp

  Log Message:
  -----------
  [reland][libc] `FPRep` builders return `FPRep` instead of raw `StorageType` (#78978)

Reland #78588


  Commit: 70823fe4871eb6ca3fe8dc8264ac005c8edbfe70
      https://github.com/llvm/llvm-project/commit/70823fe4871eb6ca3fe8dc8264ac005c8edbfe70
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M libcxx/docs/ReleaseNotes/18.rst

  Log Message:
  -----------
  [libc++][NFC] Fix incorrect formatting of release notes


  Commit: 52a8bed426e59d10b41a12208d3ba55cd2c76a1f
      https://github.com/llvm/llvm-project/commit/52a8bed426e59d10b41a12208d3ba55cd2c76a1f
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp
    M llvm/lib/Target/AMDGPU/SIAnnotateControlFlow.cpp
    M llvm/test/CodeGen/AMDGPU/llvm.dbg.value.ll
    M llvm/test/CodeGen/AMDGPU/si-annotate-dbg-info.ll

  Log Message:
  -----------
  [DebugInfo][RemoveDIs] Adjust AMDGPU passes to work with DPValues (#78736)

This patch tweaks two AMDGPU passes to use iterators rather than
instruction pointers for expressing an insertion point. This is needed
to accurately support DPValues, the non-instruction storage object for
debug-info.

Two tests were sensitive to this change (variable assignments were being
put in the wrong place), and I've added extra run-lines with the "try
new debug-info..." flag. These get tested on our public buildbot to
ensure they continue to work accurately.


  Commit: 75b0c913a5fa3895818a7c7a066c0a8e1a214329
      https://github.com/llvm/llvm-project/commit/75b0c913a5fa3895818a7c7a066c0a8e1a214329
  Author: Andrzej Warzynski <andrzej.warzynski at arm.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp

  Log Message:
  -----------
  [mlir][nfc] Update comments

1. Updates and clarifies a few comments related to hooks for
   vector.{insert|extract}_strided_slice.

2. For consistency with vector.insert_strided_slice, removes a TODO from
   vector.extract_strided_slice Op def. It's self-explenatory that
   adding support for non-unit strides is a "TODO".


  Commit: 90af11ea97cf9ab34677720c5b7848eb5e9d4efe
      https://github.com/llvm/llvm-project/commit/90af11ea97cf9ab34677720c5b7848eb5e9d4efe
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    A libcxx/docs/ReleaseNotes.rst
    M libcxx/docs/index.rst

  Log Message:
  -----------
  [libc++] Make sure to publish release notes at ReleaseNotes.html

In LLVM 17, we switched to numbered RST files for release notes, which
makes it easier to deal with cherry-picks around release points. However,
we stopped publishing `libcxx/docs/ReleaseNotes.html`, which was
referenced by external sites.

This patch ensures that we keep publishing `ReleaseNotes.html` by simply
including the versioned RST file in the unversioned RST file.

Fixes #77955


  Commit: 55cb52bbc539777aeb176f22fef0b4bfc70883fc
      https://github.com/llvm/llvm-project/commit/55cb52bbc539777aeb176f22fef0b4bfc70883fc
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M flang/include/flang/Lower/OpenMP.h
    M flang/lib/Lower/OpenMP.cpp
    M flang/test/Lower/OpenMP/FIR/sections.f90
    A flang/test/Lower/OpenMP/infinite-loop-in-construct.f90
    M flang/test/Lower/OpenMP/sections.f90
    A flang/test/Lower/OpenMP/wsloop-unstructured.f90

  Log Message:
  -----------
  [Flang][OpenMP] Restructure recursive lowering in `createBodyOfOp` (#77761)

This brings `createBodyOfOp` to its final intended form. First, input
privatization is performed, then the recursive lowering takes place, and
finally the output privatization (lastprivate) is done.

This enables fixing a known issue with infinite loops inside of an
OpenMP region, and the fix is included in this patch.

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

Recursive lowering [5/5]

---------

Co-authored-by: Kiran Chandramohan <kiran.chandramohan at arm.com>


  Commit: ce519b59b77551d1e9698de17367385a3dbf1352
      https://github.com/llvm/llvm-project/commit/ce519b59b77551d1e9698de17367385a3dbf1352
  Author: Natalie Chouinard <sudonatalie at google.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/include/clang/Driver/Options.td
    M clang/lib/Driver/Driver.cpp
    M clang/test/Driver/dxc_spirv.hlsl

  Log Message:
  -----------
  [HLSL][SPIR-V] Add support -fspv-target-env opt (#78611)

Add the -fspv-target-env option to the clang-dxc compatibility driver to
specify the SPIR-V target environment, which is propagated to the target
Triple.


  Commit: ebb853fbe5f67ab42d78de45bbcb7b32b6323fb1
      https://github.com/llvm/llvm-project/commit/ebb853fbe5f67ab42d78de45bbcb7b32b6323fb1
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

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

  Log Message:
  -----------
  [ConstraintElim] Remove unused checkCondition() parameters (NFC)


  Commit: ac3ee1b1aec424c60660fd245f5b53aaffa2f5b1
      https://github.com/llvm/llvm-project/commit/ac3ee1b1aec424c60660fd245f5b53aaffa2f5b1
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

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

  Log Message:
  -----------
  [Transforms] Fix -Wunused-variable and remove redundant VerifyStates after #75826 (NFC)

llvm-project/llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp:1064:18: error: unused variable 'I' [-Werror,-Wunused-variable]
    Instruction *I = cast<Instruction>(Pair.first);
                 ^
llvm-project/llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp:1066:11: error: unused variable 'BaseValue' [-Werror,-Wunused-variable]
    auto *BaseValue = State.getBaseValue();
          ^
2 errors generated.


  Commit: 3440466536c97ced20e366301a60f12f4fd01e30
      https://github.com/llvm/llvm-project/commit/3440466536c97ced20e366301a60f12f4fd01e30
  Author: carlobertolli <carlo.bertolli at amd.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M openmp/libomptarget/test/lit.cfg
    M openmp/libomptarget/test/lit.site.cfg.in
    M openmp/libomptarget/test/unified_shared_memory/api.c
    M openmp/libomptarget/test/unified_shared_memory/close_enter_exit.c

  Log Message:
  -----------
  [OpenMP] Fix two usm tests for amdgpus. (#78824)

Some are missing setting of HSA_XNACK=1 environment variable, used to
enable unified memory support on amdgpu's when it's not been set at
kernel boot time. Some others needed to be marked as supporting
unified_shared_memory in the lit test harness.

Extend lit test harness to enable unified_shared_memory requirement for
AMD GPUs.

Reland: #77851


  Commit: ff1cde5ba2da8b227e1ed4a4c47b636ca4fbe59e
      https://github.com/llvm/llvm-project/commit/ff1cde5ba2da8b227e1ed4a4c47b636ca4fbe59e
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/vec3-loads-ext-trunc-stores.ll

  Log Message:
  -----------
  [AArch64] Add vec3 load/store tests with GEPs with const offsets.

Extra tests for
  https://github.com/llvm/llvm-project/pull/78637
  https://github.com/llvm/llvm-project/pull/78632


  Commit: 3de5d8e1254977c8812412a159da4185c9853fd0
      https://github.com/llvm/llvm-project/commit/3de5d8e1254977c8812412a159da4185c9853fd0
  Author: Sam McCall <sam.mccall at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang-tools-extra/include-cleaner/test/tool.cpp
    M clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp

  Log Message:
  -----------
  [include-cleaner] Add --only-headers flag, opposite of --ignore-headers (#78714)


  Commit: af1741ed40ec3a2664c50effe0d0c9bd89e60cdc
      https://github.com/llvm/llvm-project/commit/af1741ed40ec3a2664c50effe0d0c9bd89e60cdc
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

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

  Log Message:
  -----------
  [Flang][OpenMP] Reword comment for clarification, NFC


  Commit: 0d8e333a7e756fc6ab07305ba1bbce916f510b30
      https://github.com/llvm/llvm-project/commit/0d8e333a7e756fc6ab07305ba1bbce916f510b30
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/include/clang/Basic/OpenACCKinds.h
    M clang/include/clang/Parse/Parser.h
    M clang/lib/Parse/ParseOpenACC.cpp
    M clang/test/ParserOpenACC/parse-clauses.c
    M clang/test/ParserOpenACC/parse-clauses.cpp

  Log Message:
  -----------
  [OpenACC] Implement 'vector_length' clause parsing.

The 'vector_length' clause is the first of the 'int-expr' clauses that I've
implemented.  Currently this is just being parsed as an assignment-expr,
  since it needs to be usable in a list. Sema implementation will
  enforce the integral-nature of it.


  Commit: 6ba62f4f251763745d39194ecd33ebaf7a739059
      https://github.com/llvm/llvm-project/commit/6ba62f4f251763745d39194ecd33ebaf7a739059
  Author: Matthew Devereau <matthew.devereau at arm.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/include/clang/Basic/TargetBuiltins.h
    M clang/include/clang/Basic/arm_sve.td
    M clang/include/clang/Basic/arm_sve_sme_incl.td
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvt.c
    M llvm/include/llvm/IR/IntrinsicsAArch64.td
    M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-cvt.ll

  Log Message:
  -----------
  [AArch64][SME2] Refine fcvtu/fcvts/scvtf/ucvtf (#77947)

Rename intrinsics for fcvtu to fcvtzu and fcvts to fcvtzs.

Use llvm_anyvector_ty for both multi vector returns and operands,
therefore the return and operands can be specified in the intrinsic
call, e.g.

@llvm.aarch64.sve.scvtf.x4.nxv4f32.nxv4i32


  Commit: 51e91b64d0deb6a743861c2a0fba84865250036e
      https://github.com/llvm/llvm-project/commit/51e91b64d0deb6a743861c2a0fba84865250036e
  Author: itrofimow <i.trofimow at yandex.ru>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M libcxx/benchmarks/CMakeLists.txt
    A libcxx/benchmarks/exception_ptr.bench.cpp
    M libcxx/docs/BuildingLibcxx.rst
    M libcxx/include/__availability
    M libcxx/include/__exception/exception_ptr.h
    M libcxx/include/new
    M libcxx/include/typeinfo
    M libcxx/lib/abi/arm64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/i686-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/powerpc-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/powerpc64-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-freebsd.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.noexceptions.nonew.abilist
    M libcxx/src/support/runtime/exception_pointer_cxxabi.ipp
    M libcxx/src/support/runtime/exception_pointer_glibcxx.ipp
    M libcxx/test/libcxx/transitive_includes/cxx03.csv
    M libcxx/test/libcxx/transitive_includes/cxx11.csv
    M libcxx/test/libcxx/transitive_includes/cxx14.csv
    M libcxx/test/libcxx/transitive_includes/cxx17.csv
    M libcxx/test/libcxx/transitive_includes/cxx20.csv
    M libcxx/test/libcxx/transitive_includes/cxx23.csv
    M libcxx/test/libcxx/transitive_includes/cxx26.csv
    M libcxxabi/include/cxxabi.h
    M libcxxabi/lib/exceptions.exp
    M libcxxabi/src/cxa_exception.cpp

  Log Message:
  -----------
  [libc++abi] Implement __cxa_init_primary_exception and use it to optimize std::make_exception_ptr (#65534)

This patch implements __cxa_init_primary_exception, an extension to the 
Itanium C++ ABI. This extension is already present in both libsupc++ and 
libcxxrt. This patch also starts making use of this function in 
std::make_exception_ptr: instead of going through a full throw/catch 
cycle, we are now able to initialize an exception directly, thus making 
std::make_exception_ptr around 30x faster.


  Commit: 6a80e56ad0c7ae0adb8c4fb3f88eab7643566f41
      https://github.com/llvm/llvm-project/commit/6a80e56ad0c7ae0adb8c4fb3f88eab7643566f41
  Author: Piotr Zegar <me at piotrzegar.pl>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/cppcoreguidelines/PreferMemberInitializerCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/prefer-member-initializer.cpp

  Log Message:
  -----------
  [clang-tidy] Fix macros handling in cppcoreguidelines-prefer-member-initializer (#72037)

Produces now valid fixes for a member variables initialized with macros.
Correctly uses expansion location instead of location inside macro to
get init code.

Close #70189


  Commit: 726d940586d7018ef03e87cb86601f4885f66001
      https://github.com/llvm/llvm-project/commit/726d940586d7018ef03e87cb86601f4885f66001
  Author: Konstantin Zhuravlyov <kzhuravl_dev at outlook.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/docs/AMDGPUUsage.rst

  Log Message:
  -----------
  AMDGPU/Docs: Add link to MI300 Instruction Set Architecture (#78777)


  Commit: 69fedaf830f8a2df4751a3c20189b7299daf88ae
      https://github.com/llvm/llvm-project/commit/69fedaf830f8a2df4751a3c20189b7299daf88ae
  Author: Daniel Grumberg <dgrumberg at apple.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/include/clang/ExtractAPI/API.h
    M clang/include/clang/ExtractAPI/DeclarationFragments.h
    M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
    M clang/include/clang/ExtractAPI/Serialization/SerializerBase.h
    M clang/include/clang/ExtractAPI/Serialization/SymbolGraphSerializer.h
    M clang/lib/ExtractAPI/API.cpp
    M clang/lib/ExtractAPI/DeclarationFragments.cpp
    M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
    A clang/test/ExtractAPI/union.c

  Log Message:
  -----------
  [clang][ExtractAPI] Add support C unions in non C++ parsing mode (#77451)

Ensure that we generate correct symbol kinds and declaration fragments
for unions in C and Objective-C parsing modes.

rdar://120544091


  Commit: d9cb37c9045bb0b3692d6faaeac43150a26e42e4
      https://github.com/llvm/llvm-project/commit/d9cb37c9045bb0b3692d6faaeac43150a26e42e4
  Author: Paul T Robinson <paul.robinson at sony.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

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

  Log Message:
  -----------
  [Headers][X86] Add macro descriptions to ia32intrin.h (#78613)

These are largely copy-pasted from the corresponding function
descriptions. Updated _rdtsc definition because it was just plain wrong.


  Commit: 8c1b7fba1fbe9729d6258127b633bd05339e766b
      https://github.com/llvm/llvm-project/commit/8c1b7fba1fbe9729d6258127b633bd05339e766b
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
    M llvm/test/CodeGen/AArch64/dbg-value-swift-async.ll

  Log Message:
  -----------
  [SelectionDAG][DebugInfo][RemoveDIs] Handle entry value variables in DPValues too (#78726)

This patch abstracts visitEntryValueDbgValue to deal with the substance
of variable locations (Value, Var, Expr, DebugLoc) rather than how
they're stored. That allows us to call it from handleDebugValue, which
is similarly abstracted. This allows the entry-value behaviour (see the
test) to be supported with non-instruction debug-info too!.


  Commit: 4e64ed97804ab4146d9cc24db16a624a265aa690
      https://github.com/llvm/llvm-project/commit/4e64ed97804ab4146d9cc24db16a624a265aa690
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86FixupVectorConstants.cpp
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/lib/Target/X86/X86InstrInfo.h
    M llvm/lib/Target/X86/X86MCInstLower.cpp

  Log Message:
  -----------
  [X86] Update X86::getConstantFromPool to take base OperandNo instead of Displacement MachineOperand

This allows us to check the entire constant address calculation, and ensure we're not performing any runtime address math into the constant pool (noticed in an upcoming patch).


  Commit: 74ab7958bdda4d10b082129151f434176f99320e
      https://github.com/llvm/llvm-project/commit/74ab7958bdda4d10b082129151f434176f99320e
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86MCInstLower.cpp
    M llvm/test/CodeGen/X86/combine-concatvectors.ll
    M llvm/test/CodeGen/X86/nontemporal-4.ll
    M llvm/test/CodeGen/X86/pr13577.ll
    M llvm/test/CodeGen/X86/ret-mmx.ll

  Log Message:
  -----------
  [X86] printZeroUpperMove - add support for constant vectors.

Allows cases where movss/movsd etc. are loading constant (ConstantDataSequential) sub-vectors, ensuring we pad with the correct number of zero upper elements by making repeated printConstant calls to print zeroes in a matching int/fp format.


  Commit: c5532124dc0ffc892ded0b093e92244977e748f8
      https://github.com/llvm/llvm-project/commit/c5532124dc0ffc892ded0b093e92244977e748f8
  Author: Daniel Grumberg <dgrumberg at apple.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/lib/ExtractAPI/DeclarationFragments.cpp
    M clang/test/ExtractAPI/typedef.c

  Log Message:
  -----------
  [clang][ExtractAPI] Ensure typedef to pointer types are preserved (#78584)

When generating declaration fragments for types that use typedefs to
pointer types ensure that we keep the user-defined typedef form instead
of desugaring the typedef.

rdar://102137655


  Commit: bfb09326be2281bdbf4c1f3cea532fc17a28ad15
      https://github.com/llvm/llvm-project/commit/bfb09326be2281bdbf4c1f3cea532fc17a28ad15
  Author: Stefan Gränitz <stefan.graenitz at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/JITLink/aarch32.h
    M llvm/lib/ExecutionEngine/JITLink/ELF_aarch32.cpp
    M llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_data.s
    M llvm/unittests/ExecutionEngine/JITLink/AArch32Tests.cpp

  Log Message:
  -----------
  [JITLink][AArch32] Implement ELF relocation R_ARM_TARGET1

Prepare a configuration switch and default to R_ARM_ABS32


  Commit: 565470ed27131b2550e71cf334bf3f33f9d82c62
      https://github.com/llvm/llvm-project/commit/565470ed27131b2550e71cf334bf3f33f9d82c62
  Author: Stefan Gränitz <stefan.graenitz at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/JITLink/aarch32.h
    M llvm/lib/ExecutionEngine/JITLink/ELF_aarch32.cpp
    M llvm/lib/ExecutionEngine/JITLink/aarch32.cpp
    M llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_data.s
    M llvm/unittests/ExecutionEngine/JITLink/AArch32Tests.cpp

  Log Message:
  -----------
  [JITLink][AArch32] Implement ELF relocation R_ARM_NONE


  Commit: 160ddf71147637b4b806dde2a0c686496aae5f14
      https://github.com/llvm/llvm-project/commit/160ddf71147637b4b806dde2a0c686496aae5f14
  Author: Andrzej Warzynski <andrzej.warzynski at arm.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M mlir/test/Dialect/Vector/invalid.mlir

  Log Message:
  -----------
  [mlir] Remove duplicate test

The removed test is identical to the one directly above.


  Commit: e302950023cd99251371c5dc8a1e3b609dd5a8fe
      https://github.com/llvm/llvm-project/commit/e302950023cd99251371c5dc8a1e3b609dd5a8fe
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M flang/tools/f18/flang-to-external-fc.in

  Log Message:
  -----------
  [flang] Handle -S assemble only flag in flang-to-external-fc (#78979)

Flang was recently updated on Compiler Explorer and by default it's in
assemble only mode, you have to enable linking and executing.

This means that the default output for flang-to-external-fc is nothing,
as it doesn't know what `-S` means. You'd have to know to enable the
link to binary option to see any output.

Handle `-S` so that users of Compiler Explorer don't have to wonder why
the "compiler" is broken.


  Commit: 27eb8d53ae44e2f5a6259744446ea389afaf68a2
      https://github.com/llvm/llvm-project/commit/27eb8d53ae44e2f5a6259744446ea389afaf68a2
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86MCInstLower.cpp
    M llvm/test/CodeGen/X86/widen_shuffle-1.ll

  Log Message:
  -----------
  [X86] printConstant - add ConstantVector handling


  Commit: 06c3c3b67cb0287856145806cfb0179def3214bd
      https://github.com/llvm/llvm-project/commit/06c3c3b67cb0287856145806cfb0179def3214bd
  Author: Piotr Zegar <piotr.zegar at nokia.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
    M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
    A clang-tools-extra/clang-tidy/bugprone/ChainedComparisonCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/ChainedComparisonCheck.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    A clang-tools-extra/docs/clang-tidy/checks/bugprone/chained-comparison.rst
    M clang-tools-extra/docs/clang-tidy/checks/list.rst
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/chained-comparison.c
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/chained-comparison.cpp

  Log Message:
  -----------
  [clang-tidy] Add bugprone-chained-comparison check (#76365)

Check that flags chained comparison expressions,
such as a < b < c or a == b == c, which may have
unintended behavior due to implicit operator
associativity.

Moved from Phabricator  (D144429).


  Commit: 2bb6d7b8a4d1e31d5c856174c163e77d7d3a0b94
      https://github.com/llvm/llvm-project/commit/2bb6d7b8a4d1e31d5c856174c163e77d7d3a0b94
  Author: Stefan Gränitz <stefan.graenitz at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/tools/clang-repl/CMakeLists.txt

  Log Message:
  -----------
  [clang-repl] Limit use of PLT offset flag to linkers that support it

Follow-up fix from https://github.com/llvm/llvm-project/pull/78959


  Commit: 4897b9888f11023bde363fb7dcebea440a0a13e9
      https://github.com/llvm/llvm-project/commit/4897b9888f11023bde363fb7dcebea440a0a13e9
  Author: Emma Pilkington <emma.pilkington95 at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M lld/test/ELF/lto/amdgcn-oses.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-function-args.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-addrspacecast.mir
    M llvm/test/CodeGen/AMDGPU/remove-no-kernel-id-attribute.ll

  Log Message:
  -----------
  [AMDGPU] Make a few more tests default COV agnostic (#78926)


  Commit: ae99966a279601022d2b4d61dfbec349f7d65c12
      https://github.com/llvm/llvm-project/commit/ae99966a279601022d2b4d61dfbec349f7d65c12
  Author: carlobertolli <carlo.bertolli at amd.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M openmp/libomptarget/include/Shared/PluginAPI.h
    M openmp/libomptarget/include/Shared/PluginAPI.inc
    M openmp/libomptarget/include/Shared/Requirements.h
    M openmp/libomptarget/include/device.h
    M openmp/libomptarget/plugins-nextgen/amdgpu/dynamic_hsa/hsa_ext_amd.h
    M openmp/libomptarget/plugins-nextgen/amdgpu/src/rtl.cpp
    M openmp/libomptarget/plugins-nextgen/common/include/PluginInterface.h
    M openmp/libomptarget/plugins-nextgen/common/src/PluginInterface.cpp
    M openmp/libomptarget/src/OpenMP/Mapping.cpp
    M openmp/libomptarget/src/PluginManager.cpp
    M openmp/libomptarget/src/device.cpp
    A openmp/libomptarget/test/mapping/auto_zero_copy.cpp

  Log Message:
  -----------
  [OpenMP] Enable automatic unified shared memory on MI300A. (#77512)

This patch enables applications that did not request OpenMP
unified_shared_memory to run with the same zero-copy behavior, where
mapped memory does not result in extra memory allocations and memory
copies, but CPU-allocated memory is accessed from the device. The name
for this behavior is "automatic zero-copy" and it relies on detecting:
that the runtime is running on a MI300A, that the user did not select
unified_shared_memory in their program, and that XNACK (unified memory
support) is enabled in the current GPU configuration. If all these
conditions are met, then automatic zero-copy is triggered.

This patch also introduces an environment variable OMPX_APU_MAPS that,
if set, triggers automatic zero-copy also on non APU GPUs (e.g., on
discrete GPUs).
This patch is still missing support for global variables, which will be
provided in a subsequent patch.

Co-authored-by: Thorsten Blass <thorsten.blass at amd.com>


  Commit: d4d81acb52bd44681210001c148ac86df8a344f0
      https://github.com/llvm/llvm-project/commit/d4d81acb52bd44681210001c148ac86df8a344f0
  Author: Kerry McLaughlin <kerry.mclaughlin at arm.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/SMEABIPass.cpp
    M llvm/lib/Target/AArch64/Utils/AArch64SMEAttributes.cpp
    M llvm/lib/Target/AArch64/Utils/AArch64SMEAttributes.h
    M llvm/test/CodeGen/AArch64/sme-zt0-state.ll

  Log Message:
  -----------
  [AArch64][SME2] Extend SMEABIPass to handle functions with new ZT0 state (#78848)

updateNewZAFunctions is extended to generate the following on entry to a
function with either the "aarch64_pstate_za_new" or "arm_new_zt0"
attribute:
- Private-ZA interface: commit any active lazy-saves & enable PSTATE.ZA.
  - "aarch64_pstate_za_new": zero ZA.
  - "arm_new_zt0": zero ZT0.

Additionally, PSTATE.ZA should disabled before returning if the function
has a private-ZA interface.


  Commit: f188f4589cc8f690779c62996520663718df106d
      https://github.com/llvm/llvm-project/commit/f188f4589cc8f690779c62996520663718df106d
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/dbg-value-swift-async.ll

  Log Message:
  -----------
  [DebugInfo] Disable a test runline temporarily

This is a follow-up to 8c1b7fba1fb -- GlobalISel currently doesn't handle
RemoveDIs mode debug-info, but will (see #75228). Disable this runline
until then.

(This is a patch-landing ordering problem)


  Commit: b5df6a90f5365e61d2dfa1583d36cbc79ab5775b
      https://github.com/llvm/llvm-project/commit/b5df6a90f5365e61d2dfa1583d36cbc79ab5775b
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

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

  Log Message:
  -----------
  [mlir][openacc] Fix num_gang parser (#78792)

Nb of operand per segment is not correctly computed.


  Commit: ee6199ca3cf101c764788ebf8df5b0e3e00f5538
      https://github.com/llvm/llvm-project/commit/ee6199ca3cf101c764788ebf8df5b0e3e00f5538
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp

  Log Message:
  -----------
  [mlir][openacc][NFC] Cleanup hasOnly functions for device_type support (#78800)

Just a cleanup for all the `has.*Only()` function to avoid code
duplication


  Commit: ebd4dc42630e201c15894b48c3ea890eaa8c3b18
      https://github.com/llvm/llvm-project/commit/ebd4dc42630e201c15894b48c3ea890eaa8c3b18
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M compiler-rt/test/asan/TestCases/alloca_loop_unpoisoning.cpp

  Log Message:
  -----------
  [asan,test] Make alloca_loop_unpoisoning.cpp robust and fix s390x failure (#78774)

In the test from https://reviews.llvm.org/D7098, `char array[len];` is
32-byte aligned on most targets whether it is instrumented or not
(optimized by StackSafetyAnalysis), due to the the used `*FrameLowering`
being `StackRealignable`.

However, when using `SystemZELFFrameLowering`, an un-instrumented
`char array[len];` is only 8-byte aligned.

Ensure `char array[len];` gets instrumented like what we did to
`alloca_vla_interact.cpp`, to make the test pass on s390x.


  Commit: 621bafd5c14cc324612e32c8123ac1ebf1c0530b
      https://github.com/llvm/llvm-project/commit/621bafd5c14cc324612e32c8123ac1ebf1c0530b
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M openmp/libomptarget/include/Shared/APITypes.h
    M openmp/libomptarget/include/Shared/PluginAPI.h
    M openmp/libomptarget/include/Shared/PluginAPI.inc
    M openmp/libomptarget/include/device.h
    M openmp/libomptarget/include/rtl.h
    M openmp/libomptarget/plugins-nextgen/amdgpu/src/rtl.cpp
    M openmp/libomptarget/plugins-nextgen/common/include/GlobalHandler.h
    M openmp/libomptarget/plugins-nextgen/common/include/PluginInterface.h
    M openmp/libomptarget/plugins-nextgen/common/src/PluginInterface.cpp
    M openmp/libomptarget/plugins-nextgen/cuda/src/rtl.cpp
    M openmp/libomptarget/plugins-nextgen/generic-elf-64bit/src/rtl.cpp
    M openmp/libomptarget/src/PluginManager.cpp
    M openmp/libomptarget/src/device.cpp
    M openmp/libomptarget/src/omptarget.cpp

  Log Message:
  -----------
  [Libomptarget] Move target table handling out of the plugins (#77150)

Summary:
This patch removes the bulk of the handling of the
`__tgt_offload_entries` out of the plugins itself. The reason for this
is because the plugins themselves should not be handling this
implementation detail of the OpenMP runtime. Instead, we expose two new
plugin API functions to get the points to a device pointer for a global
as well as a kernel type.

This required introducing a new type to represent a binary image that
has been loaded on a device. We can then use this to load the addresses
as needed. The creation of the mapping table is then handled just in
`libomptarget` where we simply look up each address individually. This
should allow us to expose these operations more generically when we
provide a separate API.


  Commit: 76160718df7c1f31ff50a4964d749c2b9d83f9cf
      https://github.com/llvm/llvm-project/commit/76160718df7c1f31ff50a4964d749c2b9d83f9cf
  Author: OCHyams <orlando.hyams at sony.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/lib/IR/DebugInfo.cpp
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
    A llvm/test/CodeGen/AArch64/dbg-assign-tag-offset-mix-loc.ll
    A llvm/test/CodeGen/AArch64/dbg-assign-tag-offset.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/declare-to-assign/hwasan.ll
    A llvm/test/Instrumentation/HWAddressSanitizer/dbg-assign-tag-offset.ll

  Log Message:
  -----------
  Reapply [hwasan] Update dbg.assign intrinsics in HWAsan pass #78606

llvm.dbg.assign intrinsics have 2 {value, expression} pairs; fix hwasan to update
the second expression.

Fixes #76545


  Commit: a859df3b0a099648ec4cd305f22c87ea12ebaac9
      https://github.com/llvm/llvm-project/commit/a859df3b0a099648ec4cd305f22c87ea12ebaac9
  Author: Dominik Wójt <dominik.wojt at arm.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M libcxx/modules/std.compat/ctime.inc
    M libcxx/modules/std/ctime.inc
    M libcxx/test/libcxx/selftest/modules/std-and-std.compat-module.sh.cpp
    M libcxx/test/libcxx/selftest/modules/std.compat-module.sh.cpp
    M libcxx/test/std/modules/std.compat.pass.cpp

  Log Message:
  -----------
  [libc++] Add "using-if-exists" to timespec_get in modules (#78686)

Picolibc does not provide timespec_get function. Adding
"using-if-exists" attribute fixes the modules.

This is a follow up patch for
https://github.com/llvm/llvm-project/pull/78580


  Commit: 43b13341fbbb718223484a79a539a3c13062f39f
      https://github.com/llvm/llvm-project/commit/43b13341fbbb718223484a79a539a3c13062f39f
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/Arch/Mips.cpp
    M lld/ELF/Arch/PPC64.cpp
    M lld/ELF/Config.h
    M lld/ELF/Driver.cpp
    M lld/ELF/InputFiles.cpp
    M lld/ELF/InputFiles.h
    M lld/ELF/InputSection.cpp
    M lld/ELF/InputSection.h
    M lld/ELF/LTO.cpp
    M lld/ELF/LinkerScript.cpp
    M lld/ELF/Relocations.cpp
    M lld/ELF/ScriptLexer.h
    M lld/ELF/ScriptParser.cpp
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/Target.cpp
    M lld/ELF/Writer.cpp
    M lld/test/ELF/cref.s
    M lld/test/ELF/linkerscript/symbol-ordering-file2.s
    M lld/test/ELF/x86-64-gotpc-no-relax-err.s

  Log Message:
  -----------
  [ELF] Add internal InputFile (#78944)

Based on https://reviews.llvm.org/D45375 . Introduce a new InputFile
kind `InternalKind`, use it for

* `ctx.internalFile`: for linker-defined symbols and some synthesized
`Undefined`
* `createInternalFile`: for symbol assignments and --defsym

I picked "internal" instead of "synthetic" to avoid confusion with
SyntheticSection.

Currently a symbol's file is one of: nullptr, ObjKind, SharedKind,
BitcodeKind, BinaryKind. Now it's non-null (I plan to add an
`assert(file)` to Symbol::Symbol and change `toString(const InputFile
*)`
separately).

Debugging and error reporting gets improved. The immediate user-facing
difference is more descriptive "File" column in the --cref output. This
patch may unlock further simplification.

Currently each symbol assignment gets its own
`createInternalFile(cmd->location)`. Two symbol assignments in a linker
script do not share the same file. Making the file the same would be
nice, but would require non trivial code.


  Commit: c083b38007c4895cee8b175bd54d24be9fdb5fc0
      https://github.com/llvm/llvm-project/commit/c083b38007c4895cee8b175bd54d24be9fdb5fc0
  Author: Jon Roelofs <jonathan_roelofs at apple.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/apple.inc

  Log Message:
  -----------
  [builtins][FMV][Apple] Use builtin atomic load/store, instead of libdispatch (#78807)


  Commit: 9a90aa01edfc5a56d975658a0cbbfa980a0ef7ed
      https://github.com/llvm/llvm-project/commit/9a90aa01edfc5a56d975658a0cbbfa980a0ef7ed
  Author: Gareth Williamson <gwllx.dev at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M libcxx/modules/std.compat/cstdlib.inc

  Log Message:
  -----------
  [libc++][modules] Add using_if_exists attribute (#77559) (#78909)

libc on macOS does not provide at_quick_exit or quick_exit. This allows
modules to build on macOS and defer any errors to usage site of these
symbols.

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


  Commit: 312acdfae1409bee29a33f71306e3ae3e1ea7d66
      https://github.com/llvm/llvm-project/commit/312acdfae1409bee29a33f71306e3ae3e1ea7d66
  Author: Matthew Devereau <matthew.devereau at arm.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/lib/Headers/CMakeLists.txt
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_add-i32.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_add-i64.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_cnt.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_ld1.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_ld1_vnum.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_ldr.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_mopa-za32.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_mopa-za64.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_mops-za32.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_mops-za64.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_read.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_st1.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_st1_vnum.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_state_funs.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_str.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_write.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_zero.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_add.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_bmop.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_clamp.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvt.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvtn.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_fp_dots.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_frint.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_int_dots.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_ldr_str_zt.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt_x2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt_x4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt_x2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt_x4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_max.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_maxnm.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_min.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_minnm.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mla.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlal.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlall.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mls.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlsl.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mop.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_read.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_reinterpret_svcount_svbool.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_sqdmulh.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_sub.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_unpkx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_unpkx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vdot.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_add.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_qrshr.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_rshl.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_selx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_selx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_uzpx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_uzpx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_zipx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_zipx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_write.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_zero_zt.c
    M clang/test/Sema/aarch64-incompat-sm-builtin-calls.c
    M clang/test/Sema/aarch64-sme-intrinsics/acle_sme_imm.cpp
    M clang/test/Sema/aarch64-sme-intrinsics/acle_sme_target.c
    M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_imm.cpp
    M clang/utils/TableGen/SveEmitter.cpp
    M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
    M utils/bazel/llvm-project-overlay/clang/BUILD.bazel

  Log Message:
  -----------
  [AArch64][SME] Take arm_sme.h out of draft (#78961)


  Commit: 530c72b498e571f2de4850e7ca4b1558a83742da
      https://github.com/llvm/llvm-project/commit/530c72b498e571f2de4850e7ca4b1558a83742da
  Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/VecFuncs.def
    M llvm/test/Transforms/LoopVectorize/AArch64/veclib-function-calls.ll

  Log Message:
  -----------
  [TLI] Add missing ArmPL mappings (#78474)

Adds TLI mappings for fixed and scalable vector variants of cospi(f),
fmax(f), ilogb(f) and ldexp(f).


  Commit: ed760d170f18b3ca9f53f4e4a2e31d82bf0ba3e7
      https://github.com/llvm/llvm-project/commit/ed760d170f18b3ca9f53f4e4a2e31d82bf0ba3e7
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M libcxx/lib/abi/CHANGELOG.TXT

  Log Message:
  -----------
  [libc++] Mention __cxa_init_primary_exception in the ABI changelog


  Commit: 02f95b77515fe18ed1076b94cbb850ea0cf3c77e
      https://github.com/llvm/llvm-project/commit/02f95b77515fe18ed1076b94cbb850ea0cf3c77e
  Author: Petr Hosek <phosek at google.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M libcxx/docs/ReleaseNotes/18.rst
    M libcxx/docs/Status/Cxx2cPapers.csv
    M libcxx/docs/Status/FormatIssues.csv
    M libcxx/include/__config
    M libcxx/include/__format/format_arg.h
    M libcxx/include/__format/format_context.h
    M libcxx/include/format
    R libcxx/test/std/utilities/format/format.arguments/format.arg/visit.pass.cpp
    R libcxx/test/std/utilities/format/format.arguments/format.arg/visit.return_type.pass.cpp
    R libcxx/test/std/utilities/format/format.arguments/format.arg/visit_format_arg.deprecated.verify.cpp
    M libcxx/test/std/utilities/format/format.arguments/format.arg/visit_format_arg.pass.cpp
    M libcxx/test/std/utilities/format/format.arguments/format.args/get.pass.cpp
    M libcxx/test/support/test_basic_format_arg.h
    M libcxx/test/support/test_macros.h
    M libcxx/utils/generate_feature_test_macro_components.py

  Log Message:
  -----------
  Revert "[libc++][format] P2637R3: Member `visit` (`std::basic_format_arg`) (#76449)"

This reverts commit 7d9b5aa65b09126031e1c2903605a7d34aea4bc1 since
std/utilities/format/format.arguments/format.arg/visit.return_type.pass.cpp
is failing on Windows when building with Clang-cl.


  Commit: 0fe20aa45eab5f66ac88776f068b7f41b8204aaf
      https://github.com/llvm/llvm-project/commit/0fe20aa45eab5f66ac88776f068b7f41b8204aaf
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M libc/startup/linux/do_start.cpp

  Log Message:
  -----------
  [libc] support PIE relocations (#78993)

For some reasons, we are using `-fpie`
(libc/cmake/modules/LLVMLibCObjectRules.cmake:31) without supporting it.
According to @lntue, some of the hermetic tests are broken without
proper PIE support. This patch implements basic relocations support for
PIE.


  Commit: 89aa3355e2366c6cf6ad9ac1f4693ff950d86c30
      https://github.com/llvm/llvm-project/commit/89aa3355e2366c6cf6ad9ac1f4693ff950d86c30
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/include/llvm/IR/DebugInfo.h
    M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
    M llvm/test/DebugInfo/Generic/assignment-tracking/instcombine/remove-redundant-dbg.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/remove-redundant.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/remove-redundant-dbg.ll

  Log Message:
  -----------
  [RemoveDIs][DebugInfo] Remove redundant DPVAssigns (#78574)

DPValues are already supported by most of the utilities that remove
redundant debug info after certain passes; the exception to this is
`removeUndefDbgAssignsFromEntryBlock`, which applies only to
llvm.dbg.assigns which were previously unimplemented for DPValues. Now
that DPVAssigns exist, we have to support removing redundant instances
in the same way, which this patch implements.


  Commit: 19261390cc3d0e58e0130ee4078fd1049889f510
      https://github.com/llvm/llvm-project/commit/19261390cc3d0e58e0130ee4078fd1049889f510
  Author: Sam Clegg <sbc at chromium.org>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M lld/ELF/InputFiles.h
    A lld/test/wasm/Inputs/start-lib1.s
    A lld/test/wasm/Inputs/start-lib2.s
    A lld/test/wasm/start-lib.s
    M lld/wasm/Driver.cpp
    M lld/wasm/InputFiles.h
    M lld/wasm/Options.td
    M lld/wasm/Symbols.h

  Log Message:
  -----------
  [lld][WebAssembly] Implement `--start-lib`/`--end-lib` (#78821)

Fixes: #77960


  Commit: 042a6a1349d512edaaa225380771c64a8d92810a
      https://github.com/llvm/llvm-project/commit/042a6a1349d512edaaa225380771c64a8d92810a
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M libcxx/include/__chrono/ostream.h
    M libcxx/include/chrono
    M libcxx/test/std/time/time.clock/time.clock.local/ostream.pass.cpp
    A libcxx/test/std/time/time.clock/time.clock.local/ostream.verify.cpp
    R libcxx/test/std/time/time.clock/time.clock.system/ostream.pass.cpp
    A libcxx/test/std/time/time.clock/time.clock.system/sys_date.ostream.pass.cpp
    A libcxx/test/std/time/time.clock/time.clock.system/sys_time.ostream.pass.cpp

  Log Message:
  -----------
  [libc++][chrono] Fixes (sys|local)_time formatters. (#76456)

- The sys_time formatter is constrained, which was not implemented.
- There is a sys_days formatter which was not implemented.
- The local_time formatter uses the sys_time formatter in its
implementation so "inherited" the same issues.

Fixes: https://github.com/llvm/llvm-project/issues/73849
Fixes: https://github.com/llvm/llvm-project/issues/67983


  Commit: 806f43e3cb9ca2bff7c2ae6f1324a062ddb83cac
      https://github.com/llvm/llvm-project/commit/806f43e3cb9ca2bff7c2ae6f1324a062ddb83cac
  Author: Rajveer Singh Bharadwaj <rajveer.developer at icloud.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M libcxx/include/__memory/assume_aligned.h
    A libcxx/test/libcxx/utilities/memory/ptr.align/assume_aligned.const_eval.verify.cpp

  Log Message:
  -----------
  [libc++] Diagnoses insufficiently aligned pointers for std::assume_aligned during constant evaluation (#73775)

This is a `libc++` enhancement when violating alignment assumption for
`__builtin_assume_aligned`.

Fixes #64078


  Commit: e390bda9782b461f10433aa6728acf87521e22a5
      https://github.com/llvm/llvm-project/commit/e390bda9782b461f10433aa6728acf87521e22a5
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M lld/ELF/InputFiles.cpp
    M lld/ELF/Symbols.h
    M lld/ELF/Writer.cpp
    M lld/test/ELF/allow-shlib-undefined.s

  Log Message:
  -----------
  [ELF] Suppress --no-allow-shlib-undefined diagnostic when a SharedSymbol is overridden by a hidden visibility Defined which is later discarded

Commit 1981b1b6b92f7579a30c9ed32dbdf3bc749c1b40 unexpectedly strengthened
--no-allow-shlib-undefined to catch a kind of ODR violation.
More precisely, when all three conditions are met, the new
`--no-allow-shlib-undefined` code reports an error.

* There is a DSO undef that has been satisfied by a definition from
  another DSO.
* The `SharedSymbol` is overridden by a non-exported (usually of hidden
  visibility) definition in a relocatable object file (`Defined`).
* The section containing the `Defined` is garbage-collected (it is not
  part of `.dynsym` and is not marked as live).

Technically, the hidden Defined in the executable can be intentional: it
can be meant to remain non-exported and not interact with any dynamic
symbols of the same name that might exist in other DSOs. To allow for
such use cases, allocate a new bit in
Symbol and relax the --no-allow-shlib-undefined check to before
commit 1981b1b6b92f7579a30c9ed32dbdf3bc749c1b40.


  Commit: 7378fb30645ad5398491acea3960a8115d1b171c
      https://github.com/llvm/llvm-project/commit/7378fb30645ad5398491acea3960a8115d1b171c
  Author: Dmitri Gribenko <gribozavr at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M libcxx/include/__config

  Log Message:
  -----------
  [libc++] Protect the libc++ implementation from CUDA SDK's __noinline__ macro (#73838)

The CUDA SDK contains an unfortunate definition for the `__noinline__`
macro. This patch works around it by using `__attribute__((noinline))`
instead of `__attribute__((__noinline__))` on CUDA. We are still waiting
for a long-term resolution to this issue in NVIDIA/cccl#1235.


  Commit: d7fb9eb818d22085c7dae0ce9a8be7ade963d7e5
      https://github.com/llvm/llvm-project/commit/d7fb9eb818d22085c7dae0ce9a8be7ade963d7e5
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectOptimize.cpp
    M llvm/test/CodeGen/X86/select-optimize.ll

  Log Message:
  -----------
  [DebugInfo][RemoveDIs] Handle DPValues in SelectOptimize (#79005)

When there are debug intrinsics in-between groups of select
instructions, select-optimise sinks them into the "end" block. This
needs to be replicated for DPValues, the non-instruction variable
assignment object. Implement that and add a RUN line to a test that was
sensitive to this to ensure it gets tested.

(The exact range of instructions being transformed here is a little
fiddly, hence I've gone with a helper lambda).


  Commit: c0a74ad90c34de5e17f713cd2a97223a425dfeb7
      https://github.com/llvm/llvm-project/commit/c0a74ad90c34de5e17f713cd2a97223a425dfeb7
  Author: Petr Hosek <phosek at google.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M libc/include/llvm-libc-macros/sys-queue-macros.h

  Log Message:
  -----------
  [libc] Use QUEUE_TYPEOF in STAILQ_LAST (#79011)

This is to ensure this macro is compatible with both C and C++.


  Commit: 3eb4178b9cc321da5b74b9bba1a5ad825531e474
      https://github.com/llvm/llvm-project/commit/3eb4178b9cc321da5b74b9bba1a5ad825531e474
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/OpenACC/OpenACC.h
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
    M mlir/test/Dialect/OpenACC/canonicalize.mlir
    M mlir/test/Dialect/OpenACC/invalid.mlir
    M mlir/test/Dialect/OpenACC/ops.mlir

  Log Message:
  -----------
  [mlir][openacc] Update acc.loop to be a proper loop like operation (#67355)

The initial design of the `acc.loop` was to be an operation that
encapsulates a loop like operation. This was an early design and we now
want to change it so the `acc.loop` operation becomes a real loop-like
operation by implementing the LoopLikeInterface.

Differential Revision: https://reviews.llvm.org/D159229

This patch is just moved from Phabricator to github


  Commit: 5062a178bf9dd46008b8f7a182facb6152c46889
      https://github.com/llvm/llvm-project/commit/5062a178bf9dd46008b8f7a182facb6152c46889
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M flang/include/flang/Lower/OpenACC.h
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/OpenACC.cpp
    M flang/test/Lower/OpenACC/acc-kernels-loop.f90
    M flang/test/Lower/OpenACC/acc-loop-exit.f90
    M flang/test/Lower/OpenACC/acc-loop.f90
    M flang/test/Lower/OpenACC/acc-parallel-loop.f90
    M flang/test/Lower/OpenACC/acc-private.f90
    M flang/test/Lower/OpenACC/acc-reduction.f90
    M flang/test/Lower/OpenACC/acc-serial-loop.f90
    M flang/test/Lower/OpenACC/locations.f90

  Log Message:
  -----------
  [flang][openacc] Lower loop directive to the new acc.loop op design (#65417)

acc.loop was redesigned in https://reviews.llvm.org/D159229. This patch
updates the lowering to match the new op.

DO CONCURRENT construct will be added in a follow up patch.

Note that the pre-commit ci will fail until D159229 is merged. 

Depends on #67355


  Commit: f4c2ee12684a6b4857c9e6777ba53e02555978ba
      https://github.com/llvm/llvm-project/commit/f4c2ee12684a6b4857c9e6777ba53e02555978ba
  Author: Stephen Tozer <Stephen.Tozer at Sony.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/test/DebugInfo/Generic/assignment-tracking/instcombine/remove-redundant-dbg.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/remove-redundant.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/remove-redundant-dbg.ll

  Log Message:
  -----------
  [RemoveDIs] Remove tests for redundant DPVAssigns until DPVAssigns are enabled

This patch fixes commit 89aa3355, which added tests for
the removal of redundant DPVAssigns; unlike other cases where
adding tests for DPVAssigns before they are enabled is harmless,
these tests require them to be enabled, so must be deleted until
we enable them.

Fixes failures on llvm-new-debug-iterators buildbot:
https://lab.llvm.org/buildbot/#/builders/275/builds/3581


  Commit: 5ce286849a0cc605210031411265c2a84fc6c633
      https://github.com/llvm/llvm-project/commit/5ce286849a0cc605210031411265c2a84fc6c633
  Author: Mingming Liu <mingmingl at google.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Instrumentation/CGProfile.h
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/Transforms/Instrumentation/CGProfile.cpp
    M llvm/test/Instrumentation/cgprofile.ll

  Log Message:
  -----------
  [CGProfile] Use callee's PGO name when caller->callee is an indirect call. (#78610)

- With PGO, indirect call edges are constructed using value profiles, and the profile address is mapped to a function's PGO name. The PGO name is computed using a functions linkage before LTO internalization or global promotion.
- With ThinLTO, local functions [could be
promoted](https://github.com/llvm/llvm-project/blob/2663d2cb9c9361f0b234c40a0f50c7ba0748eb26/llvm/lib/Transforms/Utils/FunctionImportUtils.cpp#L288) to have external linkage; and with
[full](https://github.com/llvm/llvm-project/blob/2663d2cb9c9361f0b234c40a0f50c7ba0748eb26/llvm/lib/LTO/LTO.cpp#L1328)
or
[thin](https://github.com/llvm/llvm-project/blob/2663d2cb9c9361f0b234c40a0f50c7ba0748eb26/llvm/lib/LTO/LTO.cpp#L448)
LTO, global functions could be internalized. Edge construction should use a function's PGO name before its linkage is updated.


  Commit: 4207ad57707f07208dfb1d7c79889e1372c396ab
      https://github.com/llvm/llvm-project/commit/4207ad57707f07208dfb1d7c79889e1372c396ab
  Author: azhan92 <alisonxzhang at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M libcxx/src/new.cpp
    A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size.except.pass.cpp
    A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_align.except.pass.cpp
    A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_align_nothrow.except.pass.cpp
    A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_nothrow.except.pass.cpp
    A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size.except.pass.cpp
    A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_align.except.pass.cpp
    A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_align_nothrow.except.pass.cpp
    A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_nothrow.except.pass.cpp
    M libcxxabi/src/stdlib_new_delete.cpp

  Log Message:
  -----------
  [libc++] Fix noexcept behaviour of operator new helper functions  (#74337)

This patch removes the noexcept specifier introduced in #69407 since the
Standard allows a new handler to throw an exception of type bad_alloc 
(or derived from it). With the noexcept specifier on the helper
functions, we would immediately terminate the program.

The patch also adds tests for the case that had regressed.

Co-authored-by: Alison Zhang <alisonzhang at ibm.com>


  Commit: a301fb11014f9cfdf4ee8cada173c46a7677d9d3
      https://github.com/llvm/llvm-project/commit/a301fb11014f9cfdf4ee8cada173c46a7677d9d3
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/include/clang/Driver/Driver.h
    M clang/include/clang/Driver/Options.td
    M clang/lib/Driver/Driver.cpp
    A clang/test/Driver/modules-print-library-module-manifest-path.cpp

  Log Message:
  -----------
  [clang][modules] Print library module manifest path. (#76451)

This implements a way for the compiler to find the modules.json
associated with the C++23 Standard library modules.

This is based on a discussion in SG15. At the moment no Standard library
installs this manifest. #75741 adds this feature in libc++.


  Commit: 04952c5bec69c197ea6ffb718ae80fcf78c7828a
      https://github.com/llvm/llvm-project/commit/04952c5bec69c197ea6ffb718ae80fcf78c7828a
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/include/clang/Basic/OpenACCKinds.h
    M clang/lib/Parse/ParseOpenACC.cpp
    M clang/test/ParserOpenACC/parse-clauses.c

  Log Message:
  -----------
  [OpenACC] Implement remaining 'simple' int-expr clauses.

'num_gangs', 'num_workers', 'device_num', and 'default_async' are all
exactly the same (for the purposes of parsing) as 'vector_length', so
implement these the same way.


  Commit: 0cea54a382f3187acbe3e81bd0fd7cf2cb1077b8
      https://github.com/llvm/llvm-project/commit/0cea54a382f3187acbe3e81bd0fd7cf2cb1077b8
  Author: Alex Langford <alangford at apple.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M lldb/include/lldb/Breakpoint/Watchpoint.h
    M lldb/include/lldb/Utility/Broadcaster.h
    M lldb/source/Breakpoint/BreakpointList.cpp
    M lldb/source/Breakpoint/BreakpointLocation.cpp
    M lldb/source/Breakpoint/Watchpoint.cpp
    M lldb/source/Breakpoint/WatchpointList.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Target/Process.cpp
    M lldb/source/Target/Target.cpp
    M lldb/source/Target/Thread.cpp
    M lldb/source/Target/ThreadList.cpp
    M lldb/source/Utility/Broadcaster.cpp

  Log Message:
  -----------
  [lldb][NFCI] Remove EventData* param from BroadcastEvent (#78773)

BroadcastEvent currently takes its EventData* param and shoves it into
an Event object, which takes ownership of the pointer and places it into
a shared_ptr to manage the lifetime.

Instead of relying on `new` and passing raw pointers around, I think it
would make more sense to create the shared_ptr up front.


  Commit: 414df7051ac90f186fac9d3d8968aa827eceb697
      https://github.com/llvm/llvm-project/commit/414df7051ac90f186fac9d3d8968aa827eceb697
  Author: Malavika Samak <malavika.samak at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-warning-data-invocation.cpp

  Log Message:
  -----------
  [-Wunsafe-buffer-usage] Fix the crash introduced by the unsafe invocation of span::data warning (#78815)

The patch fixes the crash introduced by the DataInvocation warning
gadget designed to warn against unsafe invocations of span::data method.

It also now considers the invocation of span::data method inside
parenthesis.

Radar: 121223051

---------

Co-authored-by: MalavikaSamak <malavika2 at apple.com>


  Commit: 16d2583254284611843b2517c8e9f9d6efe8c627
      https://github.com/llvm/llvm-project/commit/16d2583254284611843b2517c8e9f9d6efe8c627
  Author: Valentin Clement <clementval at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M flang/test/Lower/OpenACC/acc-loop.f90

  Log Message:
  -----------
  [flang][openacc] Fix test with new loop design


  Commit: 1be0d9d7d88a9bdabe6ef4d81720ddf4cf6f71c1
      https://github.com/llvm/llvm-project/commit/1be0d9d7d88a9bdabe6ef4d81720ddf4cf6f71c1
  Author: Dani <DanielKristofKiss at users.noreply.github.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/test/CodeGen/attr-target-clones-aarch64.c
    M clang/test/CodeGen/attr-target-version.c
    M clang/test/CodeGenCXX/attr-target-clones-aarch64.cpp
    M clang/test/CodeGenCXX/attr-target-version.cpp

  Log Message:
  -----------
  [AArch64][Clang] Fix linker error for function multiversioning (#74358)

AArch64 part of https://github.com/llvm/llvm-project/pull/71706.

Default version is now mangled with .default.
Resolver for the TargetVersion need to be emitted from the
CodeGenModule::EmitMultiVersionFunctionDefinition.


  Commit: 7c53e9f6671b44ffd2c36d8c6f0f05456a6222ea
      https://github.com/llvm/llvm-project/commit/7c53e9f6671b44ffd2c36d8c6f0f05456a6222ea
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
    M llvm/test/Transforms/LoopStrengthReduce/X86/lsr-cond-dbg.ll
    M llvm/test/Transforms/LoopStrengthReduce/dbg-preserve-0.ll
    M llvm/test/Transforms/LoopStrengthReduce/dbg-preserve-1.ll
    M llvm/test/Transforms/LoopStrengthReduce/dbg-preserve-2.ll
    M llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-0.ll
    M llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-1.ll
    M llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-2.ll
    M llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-3.ll
    M llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-4.ll
    M llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-5.ll
    M llvm/test/Transforms/LoopStrengthReduce/optimizemax_debugloc.ll
    M llvm/test/Transforms/LoopStrengthReduce/pr12018.ll
    M llvm/test/Transforms/LoopStrengthReduce/pr51329.ll
    M llvm/test/Transforms/LoopStrengthReduce/pr51656.ll
    M llvm/test/Transforms/LoopStrengthReduce/pr52161.ll

  Log Message:
  -----------
  [RemoveDIs][DebugInfo] Add support for DPValues to LoopStrengthReduce (#78706)

This patch trivially extends support for DbgValueInst recovery to
DPValues in LoopStrengthReduce; they are handled identically, so this is
mostly done by reusing the DbgValueInst code (using templates or
auto-parameter lambdas to reduce actual code duplication).


  Commit: 6d5f8d3e6e473a6890f232dba8b14b7b46140558
      https://github.com/llvm/llvm-project/commit/6d5f8d3e6e473a6890f232dba8b14b7b46140558
  Author: Kevin Frei <kevinfrei at users.noreply.github.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M lldb/source/Plugins/SymbolLocator/Debuginfod/SymbolLocatorDebuginfod.cpp
    M lldb/source/Plugins/SymbolLocator/Debuginfod/SymbolLocatorDebuginfodProperties.td
    M llvm/include/llvm/Debuginfod/Debuginfod.h
    M llvm/lib/Debuginfod/Debuginfod.cpp

  Log Message:
  -----------
  Added settings for DEBUGINFOD cache location and timeout (#78605)

I've been working on more/better configuration for improving DEBUGINFOD
support. This is the first (and easiest) slice of the work.

I've added `timeout` and `cache-path` settings that can override the
DEBUGINFOD library defaults (and environment variables.) I also renamed
the `plugin.symbol-locator.debuginfod.server_urls` setting to
`server-urls` to be more consistent with the rest of LLDB's settings
(the underscore switch is switched to a hyphen)

I've got a few tests that validate the cache-path setting (as a
side-effect), but they've exposed a few bugs that I'll be putting up a
separate PR for (which will include the tests).

---------

Co-authored-by: Kevin Frei <freik at meta.com>


  Commit: d83a3ea529575f17ea6ea608a43bca0b3065dcfe
      https://github.com/llvm/llvm-project/commit/d83a3ea529575f17ea6ea608a43bca0b3065dcfe
  Author: Sanjay Marreddi <sanjay.mareddi at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M libcxx/include/regex
    M libcxx/test/std/re/re.const/re.matchflag/match_not_eol.pass.cpp

  Log Message:
  -----------
  [libc++] Fix std::regex_search to match $ alone with match_default flag (#78845)

Using std::regex_search with the regex_constant match_default and a
simple regex pattern `$` is expected to match general strings such as
_"a", "ab", "abc"..._ at `[last, last)` positions. But, the current
implementation fails to do so.

Fixes #75042


  Commit: 73ff017c9b39d8a1ecc350f0572e3274dd4c9146
      https://github.com/llvm/llvm-project/commit/73ff017c9b39d8a1ecc350f0572e3274dd4c9146
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

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

  Log Message:
  -----------
  [Sema] Fix a warning

This patch fixes:

  clang/lib/Sema/AnalysisBasedWarnings.cpp:2269:21: error: unused
  variable 'subExpr' [-Werror,-Wunused-variable]


  Commit: bb28442c0b9790473363cbca2867630262358018
      https://github.com/llvm/llvm-project/commit/bb28442c0b9790473363cbca2867630262358018
  Author: Alexandre Ganea <37383324+aganea at users.noreply.github.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/include/llvm/Support/TargetOpcodes.def
    M llvm/lib/CodeGen/PatchableFunction.cpp
    M llvm/lib/Target/X86/X86MCInstLower.cpp
    A llvm/test/CodeGen/X86/patchable-prologue-tailcall.ll
    M llvm/test/CodeGen/X86/patchable-prologue.ll

  Log Message:
  -----------
  [CodeGen][X86] Fix lowering of tailcalls when `-ms-hotpatch` is used (#77245)

Previously, tail jump pseudo-opcodes were skipped by the
`encodeInstruction()` call inside `X86AsmPrinter::LowerPATCHABLE_OP`.
This caused emission of a 2-byte NOP and dropping of the tail jump.

With this PR, we change `PATCHABLE_OP` to not wrap the first
`MachineInstr` anymore, but inserting itself before,
leaving the instruction unaltered. At lowering time in `X86AsmPrinter`,
we now "look ahead" for the next non-pseudo `MachineInstr` and
lower+encode it, to inspect its size. If the size is below what
`PATCHABLE_OP` expects, it inserts NOPs; otherwise it does nothing. That
way, now the first `MachineInstr` is always lowered as usual even if
`"patchable-function"="prologue-short-redirect"` is used.

Fixes https://github.com/llvm/llvm-project/issues/76879,
https://github.com/llvm/llvm-project/issues/76958 and
https://github.com/llvm/llvm-project/issues/59039


  Commit: 309dcc112b1d3f0a24ea67e5b0377c649637260f
      https://github.com/llvm/llvm-project/commit/309dcc112b1d3f0a24ea67e5b0377c649637260f
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

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

  Log Message:
  -----------
  [gn] port a80e65e00ada7

See here for context:
https://github.com/llvm/llvm-project/pull/65534#issuecomment-1904633461


  Commit: bcfdab87052116ce7bf2a9d9b2b1cc2e40a43618
      https://github.com/llvm/llvm-project/commit/bcfdab87052116ce7bf2a9d9b2b1cc2e40a43618
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

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

  Log Message:
  -----------
  [flang] Fix a warning

This patch fixes:

  flang/lib/Lower/OpenACC.cpp:1964:15: error: unused variable
  'loopDirective' [-Werror,-Wunused-variable]


  Commit: bfd12f39b16e7ba2c342e120b925499f8504f5b3
      https://github.com/llvm/llvm-project/commit/bfd12f39b16e7ba2c342e120b925499f8504f5b3
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.h
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/chrono/TestDataFormatterLibcxxChrono.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/chrono/main.cpp

  Log Message:
  -----------
  [lldb][libc++] Adds system_clock data formatters. (#78609)


  Commit: f10ec8c77403fd722b3f50710cb73757da4383e4
      https://github.com/llvm/llvm-project/commit/f10ec8c77403fd722b3f50710cb73757da4383e4
  Author: Petr Hosek <phosek at google.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M libc/src/__support/FPUtil/riscv/FMA.h
    M libc/src/__support/FPUtil/riscv/sqrt.h

  Log Message:
  -----------
  [libc][riscv] Check if we have F or D extension before using them (#79036)

We shouldn't be using instructions that require F or D extensions
unconditionally before checking if those instructions are available.


  Commit: 0dd72eb269dd485b98afba2c58a1d747db53dcad
      https://github.com/llvm/llvm-project/commit/0dd72eb269dd485b98afba2c58a1d747db53dcad
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/include/clang/Basic/OpenACCKinds.h
    M clang/lib/Parse/ParseOpenACC.cpp
    M clang/test/ParserOpenACC/parse-clauses.c

  Log Message:
  -----------
  [OpenACC] Implement 'vector' and 'worker' cluase argument parsing

Both of the clauses 'vector' and 'worker' have an optional 'special'
word followed by an int-expr.  The arguments list is optional, as is the
special word, but if the parens are included, an int-expr is required.

This patch implements parsing for both.


  Commit: 1e2a4ccb6237b6db9db7dc3fd11a94410ec9b0df
      https://github.com/llvm/llvm-project/commit/1e2a4ccb6237b6db9db7dc3fd11a94410ec9b0df
  Author: Zahira Ammarguellat <zahira.ammarguellat at intel.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticCommonKinds.td
    M clang/include/clang/Lex/Preprocessor.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Lex/Preprocessor.cpp
    M clang/lib/Sema/SemaChecking.cpp
    A clang/test/Sema/warn-infinity-nan-disabled-lnx.cpp
    A clang/test/Sema/warn-infinity-nan-disabled-win.cpp

  Log Message:
  -----------
  [CLANG] Add warning when INF or NAN are used in a binary operation or as function argument in fast math mode. (#76873)

Check for operations using INF or NaN when in ffast-math mode and
generate a warning.


  Commit: 02aa6956b5b6c92f3d4aea0aa466ed0d33343335
      https://github.com/llvm/llvm-project/commit/02aa6956b5b6c92f3d4aea0aa466ed0d33343335
  Author: Jake Egan <5326451+jakeegan at users.noreply.github.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/test/Index/Core/designated-inits.c
    M clang/test/Index/Core/external-source-symbol-attr-cxx.cpp
    M clang/test/Index/Core/external-source-symbol-attr.m
    M clang/test/Index/Core/index-dependent-source.cpp
    M clang/test/Index/Core/index-instantiated-source.cpp
    M clang/test/Index/Core/index-source-invalid-name.cpp
    M clang/test/Index/Core/index-source.cpp
    M clang/test/Index/Core/index-source.m
    M clang/test/Index/Core/index-source.mm
    M clang/test/Index/Core/index-subkinds.m
    M clang/test/Index/Core/index-with-module.m
    M clang/test/Index/ms-property.cpp
    M clang/test/Index/using_if_exists.cpp
    M clang/tools/libclang/CMakeLists.txt

  Log Message:
  -----------
  [clang][AIX] Only export libclang.map symbols from libclang (#78748)

This will prevent unnecessary symbols being exported in libclang, which
could cause issues with non-unique objects.


  Commit: 4f21fb84479286ddc781d73f8df152f81a8264e7
      https://github.com/llvm/llvm-project/commit/4f21fb84479286ddc781d73f8df152f81a8264e7
  Author: Qiongsi Wu <274595+qiongsiwu at users.noreply.github.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
    M clang/docs/UsersManual.rst
    M clang/include/clang/Basic/CodeGenOptions.h
    M clang/include/clang/Frontend/Utils.h
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/test/Profile/c-general.c
    M compiler-rt/include/CMakeLists.txt
    A compiler-rt/include/profile/instr_prof_interface.h
    M compiler-rt/lib/profile/InstrProfiling.h
    A compiler-rt/test/profile/Linux/instrprof-weak-symbol.c
    A compiler-rt/test/profile/instrprof-api.c

  Log Message:
  -----------
  [PGO] Reland PGO's Counter Reset and File Dumping APIs #76471 (#78285)

https://github.com/llvm/llvm-project/pull/76471 caused buildbot failures
on Windows. For more details, see
https://github.com/llvm/llvm-project/issues/77546.

This PR revises the test and relands
https://github.com/llvm/llvm-project/pull/76471.


  Commit: e3172e841899779caf461cee97826940dca806e7
      https://github.com/llvm/llvm-project/commit/e3172e841899779caf461cee97826940dca806e7
  Author: Andrzej Warzynski <andrzej.warzynski at arm.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M mlir/test/mlir-cpu-runner/global-constructors.mlir

  Log Message:
  -----------
  [mlir] Update "UNSUPPORTED" directive in a test

Add missing "arm64" target to the list of unsupported targets ("arm64"
is used on Darwin).


  Commit: 83f82a9efdb4492659396b9a0bcdf64371752cd9
      https://github.com/llvm/llvm-project/commit/83f82a9efdb4492659396b9a0bcdf64371752cd9
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/utils/gn/secondary/compiler-rt/include/BUILD.gn

  Log Message:
  -----------
  [gn] port 4f21fb844792


  Commit: 0ab9c382d4ca070cf2335030a689b505bbd967c6
      https://github.com/llvm/llvm-project/commit/0ab9c382d4ca070cf2335030a689b505bbd967c6
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

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

  Log Message:
  -----------
  [gn build] Port 06c3c3b67cb0


  Commit: 02a28ee8d981b2a8416c50e41c74cb21e73b8340
      https://github.com/llvm/llvm-project/commit/02a28ee8d981b2a8416c50e41c74cb21e73b8340
  Author: cor3ntin <corentinjabot at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/Features.def
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/test/Lexer/cxx-features.cpp
    M clang/test/Lexer/has_extension_cxx.cpp

  Log Message:
  -----------
  [Clang] Update feature test macros for Clang 18 (#78991)

* Set `__cpp_auto_cast`, as per
https://github.com/cplusplus/CWG/issues/281
* Support `__has_extension(cxx_generalized_nttp)` in C++20 as the
feature isn't stable enough for a feature test macro
* Support `__has_extension(cxx_explicit_this_parameter)` in c++23 as the
feature isn't stable enough for a feature test macro


  Commit: 263efb044add93b946ca4a96a8f1699b3eb9ae73
      https://github.com/llvm/llvm-project/commit/263efb044add93b946ca4a96a8f1699b3eb9ae73
  Author: Stefan Gränitz <stefan.graenitz at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    R llvm/test/ExecutionEngine/OrcLazy/debug-descriptor-elf-minimal.ll
    A llvm/test/ExecutionEngine/OrcLazy/debug-descriptor.ll
    R llvm/test/ExecutionEngine/OrcLazy/debug-objects-elf-minimal.ll
    A llvm/test/ExecutionEngine/OrcLazy/debug-objects.ll
    M llvm/tools/lli/CMakeLists.txt
    R llvm/tools/lli/ExecutionUtils.cpp
    R llvm/tools/lli/ExecutionUtils.h
    M llvm/tools/lli/lli.cpp

  Log Message:
  -----------
  [lli] Revisit Orc debug output tests (#76822)

Integrate in-memory debug-info dumps into the `--orc-lazy-debug`
command-line option instead of exposing built-in functions to be called
from JITed code. This reduces overall amount of code (removing
`ExecutionUtils.cpp`) and seems cleaner anyway.

All existing items of `OrcDumpKind` work on IR level and run in the
IR-transform step of the JIT. The newly added `DumpDebugDescriptor` and
`DumpDebugObjects` must run after debug-registration and thus are
deferred to the Object-transform step of the JIT. This separation is the
major side-effect of the patch.


  Commit: 2d373143ad69910c56bbc7161224d365813a95b0
      https://github.com/llvm/llvm-project/commit/2d373143ad69910c56bbc7161224d365813a95b0
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

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

  Log Message:
  -----------
  [gn build] Port 263efb044add


  Commit: b00aa1c77b0aade04adf89336c52d415a71c9477
      https://github.com/llvm/llvm-project/commit/b00aa1c77b0aade04adf89336c52d415a71c9477
  Author: gulfemsavrun <gulfem at google.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/lib/IR/DebugInfo.cpp
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
    R llvm/test/CodeGen/AArch64/dbg-assign-tag-offset-mix-loc.ll
    R llvm/test/CodeGen/AArch64/dbg-assign-tag-offset.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/declare-to-assign/hwasan.ll
    R llvm/test/Instrumentation/HWAddressSanitizer/dbg-assign-tag-offset.ll

  Log Message:
  -----------
  Revert "Reapply [hwasan] Update dbg.assign intrinsics in HWAsan pass … (#79053)

…#78606"

This reverts commit 76160718df7c1f31ff50a4964d749c2b9d83f9cf because it
caused an assertion failure in emitDbgValue function in Codegen in Clang
Linux toolchain builders for Fuchsia.
https://logs.chromium.org/logs/fuchsia/buildbucket/cr-buildbucket/8758181086086431185/+/u/clang/build/stdout


  Commit: 364a5b5b850a4f3e564da4bde080567a5d1e14d2
      https://github.com/llvm/llvm-project/commit/364a5b5b850a4f3e564da4bde080567a5d1e14d2
  Author: Zahira Ammarguellat <zahira.ammarguellat at intel.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Basic/LangOptions.h
    M clang/lib/CodeGen/CGExprComplex.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/CodeGen/cx-complex-range.c
    A clang/test/CodeGen/smiths-complex-div.c
    M clang/test/Driver/range.c

  Log Message:
  -----------
  Fix a bug in implementation of Smith's algorithm used in complex div. (#78330)

This patch fixes a bug in Smith's algorithm (thanks to @andykaylor who
detected it) and makes sure that last option in command line rules.


  Commit: 9f8ccf50dde17adae1368a0cf41edadc8327aaf4
      https://github.com/llvm/llvm-project/commit/9f8ccf50dde17adae1368a0cf41edadc8327aaf4
  Author: Julian Schmidt <44101708+5chmidti at users.noreply.github.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-templates.cpp
    M clang/lib/Analysis/ExprMutationAnalyzer.cpp
    M clang/unittests/Analysis/ExprMutationAnalyzerTest.cpp

  Log Message:
  -----------
  [clang-tidy] fix misc-const-correctnes false-positive for fold expressions (#78320)

The check no longer emits a diagnostic for non-parameter-pack 
variables in C++17 fold expressions.
The operator used is type-dependent because of the parameter pack
and can therefore not be guaranteed to not mutate the variable.

Fixes: #70323


  Commit: 3f3a3e873a684e924d9d873f9e094e217e323f2a
      https://github.com/llvm/llvm-project/commit/3f3a3e873a684e924d9d873f9e094e217e323f2a
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    A llvm/test/ExecutionEngine/OrcLazy/debug-descriptor-elf-minimal.ll
    R llvm/test/ExecutionEngine/OrcLazy/debug-descriptor.ll
    A llvm/test/ExecutionEngine/OrcLazy/debug-objects-elf-minimal.ll
    R llvm/test/ExecutionEngine/OrcLazy/debug-objects.ll
    M llvm/tools/lli/CMakeLists.txt
    A llvm/tools/lli/ExecutionUtils.cpp
    A llvm/tools/lli/ExecutionUtils.h
    M llvm/tools/lli/lli.cpp

  Log Message:
  -----------
  Revert "[lli] Revisit Orc debug output tests" (#79055)

Reverts llvm/llvm-project#76822

This fails to build with gcc 7.5:
```
llvm/tools/lli/lli.cpp:1087:16: error: could not convert ‘Obj’ from ‘std::unique_ptr<llvm::MemoryBuffer>’ to ‘llvm::Expected<std::unique_ptr<llvm::MemoryBuffer> >’
         return Obj;
                ^~~
```


  Commit: fa4780fa6cc36188b84b2a977ac15351c39d45dd
      https://github.com/llvm/llvm-project/commit/fa4780fa6cc36188b84b2a977ac15351c39d45dd
  Author: Jan Patrick Lehr <jplehr at users.noreply.github.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Driver/Options.td
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    A clang/test/OpenMP/force-usm.c
    M openmp/libomptarget/test/lit.cfg
    A openmp/libomptarget/test/offloading/force-usm.cpp

  Log Message:
  -----------
  [OpenMP][USM] Introduces -fopenmp-force-usm flag (#76571)

This flag forces the compiler to generate code for OpenMP target regions
as if the user specified the #pragma omp requires unified_shared_memory
in each source file.

The option does not have a -fno-* friend since OpenMP requires the
unified_shared_memory clause to be present in all source files. Since
this flag does no harm if the clause is present, it can be used in
conjunction. My understanding is that USM should not be turned off
selectively, hence, no -fno- version.

This adds a basic test to check the correct generation of double
indirect access to declare target globals in USM mode vs non-USM mode.
Which I think is the only difference observable in code generation.

This runtime test checks for the (non-)occurence of data movement between host
and device. It does one run without the flag and one with the flag to
also see that both versions behave as expected. In the case w/o the new
flag data movement between host and device is expected. In the case with
the flag such data movement should not be present / reported.


  Commit: 80b67eebd2ca55c571031ee8a6d23ce3c24a86db
      https://github.com/llvm/llvm-project/commit/80b67eebd2ca55c571031ee8a6d23ce3c24a86db
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/test/Driver/riscv-cpus.c
    M llvm/lib/Target/RISCV/RISCVProcessors.td

  Log Message:
  -----------
  [RISCV] Add Zic64b, Ziccamoa, Ziccif, Zicclsm, Ziccrse, and Za64rs to sifive-p450. (#79030)


  Commit: 7c8030e9bbad913a6a87ddf9ea4d69ab33ffb6c4
      https://github.com/llvm/llvm-project/commit/7c8030e9bbad913a6a87ddf9ea4d69ab33ffb6c4
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td

  Log Message:
  -----------
  [RISCV] Combine HasStdExtZfhOrZfhmin and HasStdExtZfhmin. NFC (#78826)

I kept the AssemblerPredicate and diagnostic from HasStdExtZfhOrZfhmin
that mentions both extensions, but replaced all uses with
HasStdExtZfhmin.

Same for the Zhinxmin equivalent.


  Commit: 4cb90ca8f8bfbe8dc938a1b8b821d98640cbab4c
      https://github.com/llvm/llvm-project/commit/4cb90ca8f8bfbe8dc938a1b8b821d98640cbab4c
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/lib/Target/ARM/Thumb1InstrInfo.cpp
    M llvm/lib/Target/ARM/Thumb2InstrInfo.cpp
    M llvm/test/CodeGen/ARM/stack-guard-elf.ll

  Log Message:
  -----------
  [Thumb,ELF] Fix access to dso_preemptable __stack_chk_guard with static relocation model (#78950)

PR #70014 fixes A32 to use GOT for dso_preemptable `__stack_chk_guard`
with static relocation model (e.g. -fPIE/-fPIC LTO compiles with -no-pie
linking).

This patch fixes such `__stack_chk_guard` access for Thumb1 and Thumb2.
Note: `t2LDRLIT_ga_pcrel` is only for ELF. mingw needs
`.refptr.__stack_chk_guard` (https://reviews.llvm.org/D92738).

Fix #64999


  Commit: 181c4c331a0c661fe90d5e3803049232022aa582
      https://github.com/llvm/llvm-project/commit/181c4c331a0c661fe90d5e3803049232022aa582
  Author: Jan Patrick Lehr <jplehr at users.noreply.github.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M openmp/libomptarget/test/offloading/force-usm.cpp

  Log Message:
  -----------
  [OpenMP][Fix] Require USM capability in force-usm test (#79059)

This should fix the AMDGPU buildbot breakage from #76571


  Commit: 95c1039eca1fd32bd7f48db2e82c4294564d75d7
      https://github.com/llvm/llvm-project/commit/95c1039eca1fd32bd7f48db2e82c4294564d75d7
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

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

  Log Message:
  -----------
  [RISCV] Add TuneNoDefaultUnroll to sifive-p450.


  Commit: 8789b7e5559c0c419d5247f60866e29ab3b651a8
      https://github.com/llvm/llvm-project/commit/8789b7e5559c0c419d5247f60866e29ab3b651a8
  Author: Alan Phipps <a-phipps at ti.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/docs/SourceBasedCodeCoverage.rst
    M llvm/docs/CoverageMappingFormat.rst

  Log Message:
  -----------
  [clang][NFC] Update top-level Code Coverage documentation to include MC/DC.


  Commit: c532033e0fe7aa7f88127fcee72f67e1af399136
      https://github.com/llvm/llvm-project/commit/c532033e0fe7aa7f88127fcee72f67e1af399136
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

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

  Log Message:
  -----------
  [NFC][Clang] Fix compile warning caused by #78330


  Commit: cd6ed95e48354d14e59871f3c3f3a8665def22c8
      https://github.com/llvm/llvm-project/commit/cd6ed95e48354d14e59871f3c3f3a8665def22c8
  Author: Stefan Gränitz <stefan.graenitz at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    R llvm/test/ExecutionEngine/OrcLazy/debug-descriptor-elf-minimal.ll
    A llvm/test/ExecutionEngine/OrcLazy/debug-descriptor.ll
    R llvm/test/ExecutionEngine/OrcLazy/debug-objects-elf-minimal.ll
    A llvm/test/ExecutionEngine/OrcLazy/debug-objects.ll
    M llvm/tools/lli/CMakeLists.txt
    R llvm/tools/lli/ExecutionUtils.cpp
    R llvm/tools/lli/ExecutionUtils.h
    M llvm/tools/lli/lli.cpp

  Log Message:
  -----------
  Reland "[lli] Revisit Orc debug output tests (#79055)"

Integrate in-memory debug-info dumps into the `--orc-lazy-debug`
command-line option instead of exposing built-in functions to be called
from JITed code. This reduces overall amount of code (removing
`ExecutionUtils.cpp`) and seems cleaner anyway.

All existing items of `OrcDumpKind` work on IR level and run in the
IR-transform step of the JIT. The newly added `DumpDebugDescriptor` and
`DumpDebugObjects` must run after debug-registration and thus are
deferred to the Object-transform step of the JIT. This separation is the
major side-effect of the patch.

The original commit 263efb044add93b9 was reverted in #79055, because
the gcc 7.5 bot had found a missing std::move().


  Commit: cc2c8ab21fd9b831799bff9ca99be2a2243d23b9
      https://github.com/llvm/llvm-project/commit/cc2c8ab21fd9b831799bff9ca99be2a2243d23b9
  Author: Douglas Yung <douglas.yung at sony.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/test/CodeGen/PowerPC/sms-regpress.mir

  Log Message:
  -----------
  Require asserts for llvm/test/CodeGen/PowerPC/sms-regpress.mir.


  Commit: 8675952583b1c639e6bcbe2869aecda1d01320f2
      https://github.com/llvm/llvm-project/commit/8675952583b1c639e6bcbe2869aecda1d01320f2
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-exact-vlen.ll

  Log Message:
  -----------
  [RISCV] Add coverage for shuffles splitable using exact VLEN

Test coverage for an upcoming transform.


  Commit: eaef645a5836df56b53800383022a3a384305c6b
      https://github.com/llvm/llvm-project/commit/eaef645a5836df56b53800383022a3a384305c6b
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/test/CodeGen/Thumb/stack_guard_remat.ll

  Log Message:
  -----------
  [test] Update stack_guard_remat.ll


  Commit: fe0ec2c91cfbf2aad2a61e402f21b771db685b90
      https://github.com/llvm/llvm-project/commit/fe0ec2c91cfbf2aad2a61e402f21b771db685b90
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

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

  Log Message:
  -----------
  [Coverage] Const-ize `MCDCRecordProcessor` stuff (#78918)

The life of `MCDCRecordProcessor`'s instance is short. It may accept
`const` objects to process.

On the other hand, the life of `MCDCBranches` is shorter than `Record`.
It may be rewritten with reference, rather than copying.


  Commit: 672fb5892eb1dd977fd36149fd45d794103b0408
      https://github.com/llvm/llvm-project/commit/672fb5892eb1dd977fd36149fd45d794103b0408
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp

  Log Message:
  -----------
  [RISCV] Remove extra semicolons. NFC


  Commit: 1000cefc049e313a532fc9df2a48d80826fc80c7
      https://github.com/llvm/llvm-project/commit/1000cefc049e313a532fc9df2a48d80826fc80c7
  Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/SOPInstructions.td
    M llvm/test/MC/AMDGPU/gfx12_asm_sopp.s
    M llvm/test/MC/AMDGPU/gfx12_unsupported.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sopp.txt

  Log Message:
  -----------
  [AMDGPU] Remove s_set_inst_prefetch_distance support from GFX12 (#78786)

This instruction is not supported by GFX12.


  Commit: 424b9cf41abf376cc7a34640f5f451c91714f77b
      https://github.com/llvm/llvm-project/commit/424b9cf41abf376cc7a34640f5f451c91714f77b
  Author: Alan Phipps <a-phipps at ti.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/lib/CodeGen/CGExprScalar.cpp
    A clang/test/Profile/c-mcdc-logicalop-ternary.c

  Log Message:
  -----------
  [Coverage][clang] Ensure bitmap for ternary condition is updated before visiting children (#78814)

This is a fix for MC/DC issue https://github.com/llvm/llvm-project/issues/78453 in which a ConditionalOperator that evaluates a complex condition was incorrectly updating its global bitmap after visiting its LHS and RHS children. This
was wrong because if the LHS or RHS also evaluate a complex condition, the MCDC temporary bitmap value will get corrupted. The fix is to ensure that the bitmap is updated prior to visiting the LHS and RHS.


  Commit: b83b8d3fd17885438b0ea154e07088d877d293a8
      https://github.com/llvm/llvm-project/commit/b83b8d3fd17885438b0ea154e07088d877d293a8
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/CMakeLists.txt
    M clang/cmake/caches/BOLT.cmake
    M clang/utils/perf-training/CMakeLists.txt
    M clang/utils/perf-training/bolt.lit.cfg
    M clang/utils/perf-training/bolt.lit.site.cfg.in
    M clang/utils/perf-training/perf-helper.py

  Log Message:
  -----------
  Reland [Clang][CMake] Support perf, LBR, and Instrument CLANG_BOLT options (#69133)

This reverts commit 6c47419703acfcd7dcca9e30ab9dba6a7a42f977.

Default to CLANG_BOLT=OFF

Test Plan:
Build a regular Clang build.


  Commit: 1d5c16d7805806e920feee2b4ec93d5800293837
      https://github.com/llvm/llvm-project/commit/1d5c16d7805806e920feee2b4ec93d5800293837
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M libc/cmake/modules/CheckCompilerFeatures.cmake
    M libc/cmake/modules/LLVMLibCObjectRules.cmake
    M utils/bazel/llvm-project-overlay/libc/libc_build_rules.bzl

  Log Message:
  -----------
  [libc] default enable -ftrivial-auto-var-init=pattern (#78776)

Usage of uninitialized memory is a top memory safety issue in C++ codebases.
Help mitigate this somewhat by default initialize stack allocations to a
pattern (0xAA repeating).

Clang has received optimizations to sink these into control flow paths that
access such values to minimize the overhead of these added initializations.

If there's a measurable slowdown, we can add
-ftrivial-auto-var-init-max-size=<N> for some value N bytes if we have any
large stack allocations, or add attribute uninitialized to any variable
declarations.

Unsupported until GCC 12.1 / Clang 8.

Increases file size of libc.a from a full build by +8.79Ki (+0.2%).


  Commit: 6953b367027e4234607a6718a0a1d57eb52ef57e
      https://github.com/llvm/llvm-project/commit/6953b367027e4234607a6718a0a1d57eb52ef57e
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/CMakeLists.txt
    M clang/cmake/caches/BOLT.cmake
    M clang/utils/perf-training/CMakeLists.txt
    M clang/utils/perf-training/bolt.lit.cfg
    M clang/utils/perf-training/bolt.lit.site.cfg.in
    M clang/utils/perf-training/perf-helper.py

  Log Message:
  -----------
  Revert "Reland [Clang][CMake] Support perf, LBR, and Instrument CLANG_BOLT options (#69133)"

This reverts commit b83b8d3fd17885438b0ea154e07088d877d293a8.

Breaks buildbots e.g.
https://lab.llvm.org/buildbot/#/builders/225/builds/29950


  Commit: 042bb2850dcdd0b8a519f51678f2e40d0a97f548
      https://github.com/llvm/llvm-project/commit/042bb2850dcdd0b8a519f51678f2e40d0a97f548
  Author: Dimitry Andric <dimitry at andric.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M compiler-rt/lib/tsan/rtl/tsan_platform_linux.cpp

  Log Message:
  -----------
  [tsan] Fix build for FreeBSD and NetBSD after 0784b1eefa36 (#79019)

In 0784b1eefa36 some code for re-execution was moved to
`ReExecIfNeeded()`, but also extended with a few Linux-only features.
This leads to compile errors on FreeBSD, or other non-Linux platforms:

compiler-rt/lib/tsan/rtl/tsan_platform_linux.cpp:247:25: error: use of
undeclared identifier 'personality'
      247 |   int old_personality = personality(0xffffffff);
          |                         ^
compiler-rt/lib/tsan/rtl/tsan_platform_linux.cpp:249:54: error: use of
undeclared identifier 'ADDR_NO_RANDOMIZE'
249 | (old_personality != -1) && ((old_personality & ADDR_NO_RANDOMIZE)
== 0);
          |                                                      ^
compiler-rt/lib/tsan/rtl/tsan_platform_linux.cpp:281:46: error: use of
undeclared identifier 'ADDR_NO_RANDOMIZE'
281 | CHECK_NE(personality(old_personality | ADDR_NO_RANDOMIZE), -1);
          |                                              ^

Surround the affected part with a `#if SANITIZER_LINUX` block for now.


  Commit: be0c8098364b4bc9b210db65f5799bf37aefb605
      https://github.com/llvm/llvm-project/commit/be0c8098364b4bc9b210db65f5799bf37aefb605
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp

  Log Message:
  -----------
  [NFC][Debuginfo][RemoveDIs] Switch an insertion to use iterators

With the soon-to-land new-debug-info storage model, it's going to be
important to use iterators for instruction insertion rather than
instruction pointers. This (single line in instcombine) is the last place
that trips up our internal testing for debug-info, where we insert a PHI
and it should be using an iterator.


  Commit: d37d1c8deaa34216248ad51e549a701852e29fa3
      https://github.com/llvm/llvm-project/commit/d37d1c8deaa34216248ad51e549a701852e29fa3
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M flang/test/Driver/linker-flags.f90

  Log Message:
  -----------
  [flang][driver] deprecate manual usage of -lFortran_main (#79016)

Intended to warn users of the 18.x release not to do this.

A better solution should be found for the 19.x release. See discussion
in https://github.com/llvm/llvm-project/pull/78152.

Unfortunately there is no warning on Windows currently. I am rushing to
get this landed before 18.x branches.


  Commit: ee0b4d9681047f77d1f7bf53dc185fe140700464
      https://github.com/llvm/llvm-project/commit/ee0b4d9681047f77d1f7bf53dc185fe140700464
  Author: Félix-Antoine Constantin <60141446+felix642 at users.noreply.github.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/google/IntegerTypesCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/google/runtime-int.cpp

  Log Message:
  -----------
  [clang-tidy] Ignore user-defined literals in google-runtime-int (#78859)

User-defined literals do not accept u?intXX(_t)? variables. So the check
should not emit a warning.

Fixes #54546 #25214


  Commit: 50e2581a199da9702841f103eefca8dca2fc7b4f
      https://github.com/llvm/llvm-project/commit/50e2581a199da9702841f103eefca8dca2fc7b4f
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M flang/docs/Directives.md
    M flang/include/flang/Common/Fortran.h
    M flang/lib/Semantics/check-call.cpp
    M flang/lib/Semantics/check-declarations.cpp
    M flang/test/Semantics/ignore_tkr01.f90
    A flang/test/Semantics/ignore_tkr03.f90

  Log Message:
  -----------
  [flang] Allow assumed-shape element pass to dummy arg with ignore_tkr (#78196)

This is allowed by gfortran and ifort with `![GCC|DEC]$ ATTRIBUTES
NO_ARG_CHECK`


  Commit: ff9627348e89b9e1a56714448f33dd42cf847777
      https://github.com/llvm/llvm-project/commit/ff9627348e89b9e1a56714448f33dd42cf847777
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/tools/llc/llc.cpp
    M llvm/tools/opt/opt.cpp

  Log Message:
  -----------
  [NFC][DebugInfo] Set a testing flag to be hidden

This flag (--try-experimental-debuginfo-iterators) only exists for testing
purposes, to get some RUNlines running in new-debug-info mode before it's
properly supported. The flag isn't something that's going to be useful to
people using llvm 18, so hide it from the options list.


  Commit: 3ab8d2aac7bc2dd45dda3db0b8a71fd27eefb749
      https://github.com/llvm/llvm-project/commit/3ab8d2aac7bc2dd45dda3db0b8a71fd27eefb749
  Author: Dinar Temirbulatov <Dinar.Temirbulatov at arm.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M compiler-rt/cmake/builtin-config-ix.cmake
    M compiler-rt/lib/builtins/CMakeLists.txt
    A compiler-rt/lib/builtins/aarch64/sme-libc-routines.c
    A compiler-rt/test/builtins/Unit/sme-string-test.cpp
    M compiler-rt/test/lit.common.cfg.py
    M compiler-rt/test/lit.common.configured.in
    M compiler-rt/unittests/lit.common.unit.configured.in

  Log Message:
  -----------
  [AArch64][compiler-rt] Add memcpy, memset, memmove, memchr builtins. (#77496)

Add naive implementation of memcpy, memset, memmove, memchr for SME
targets.
Co-authored-by: David Sherwood <david.sherwood at arm.com>


  Commit: d922c82447e51921ee0545c398f60eb3a6ee24a3
      https://github.com/llvm/llvm-project/commit/d922c82447e51921ee0545c398f60eb3a6ee24a3
  Author: Anlun Xu <anlunx at google.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

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

  Log Message:
  -----------
  [Blaze] Fix build file


  Commit: a2d68b4bece54bcfa7bfde1e80058ab19b6d1775
      https://github.com/llvm/llvm-project/commit/a2d68b4bece54bcfa7bfde1e80058ab19b6d1775
  Author: David Green <david.green at arm.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/CodeGen/SelectOptimize.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
    M llvm/test/CodeGen/AArch64/selectopt.ll

  Log Message:
  -----------
  [SelectOpt] Add handling for Select-like operations. (#77284)

Some operations behave like selects. For example `or(zext(c), y)` is the
same as select(c, y|1, y)` and instcombine can canonicalize the select
to the or form. These operations can still be worthwhile converting to
branch as opposed to keeping as a select or or instruction.

This patch attempts to add some basic handling for them, creating a
SelectLike abstraction in the select optimization pass. The backend can
opt into handling `or(zext(c),x)` as a select if it could be profitable,
and the select optimization pass attempts to handle them in much the
same way as a `select(c, x|1, x)`. The Or(x, 1) may need to be added as
a new instruction, generated as the or is converted to branches.

This helps fix a regression from selects being converted to or's
recently.


  Commit: 7117a4e8409018f31c00b186ac4627586d839e59
      https://github.com/llvm/llvm-project/commit/7117a4e8409018f31c00b186ac4627586d839e59
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/include/llvm/Bitcode/BitcodeWriterPass.h
    M llvm/lib/Bitcode/Writer/BitcodeWriterPass.cpp

  Log Message:
  -----------
  [BitcodeWriter] Remove ThinLTO-specific bits from legacy pass

Since we shouldn't be doing any LTO logic from the legacy pass manager.


  Commit: 029bfd6329aee0b60761998986dadba38e1de6f3
      https://github.com/llvm/llvm-project/commit/029bfd6329aee0b60761998986dadba38e1de6f3
  Author: lntue <35648136+lntue at users.noreply.github.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M libc/cmake/modules/CheckCompilerFeatures.cmake
    M libc/cmake/modules/LLVMLibCTestRules.cmake
    M libc/test/UnitTest/HermeticTestUtils.cpp

  Log Message:
  -----------
  [libc] Replace -nostdlib++ flag when building with gcc and add placement new operator to HermeticTestUtils.cpp. (#78906)

`-nostdlib++` is a clang-only flag. Replacing it with `-nostdlib` when
building with gcc.


  Commit: 58cfd56356ed96690150245ca5bcf646d12edc7a
      https://github.com/llvm/llvm-project/commit/58cfd56356ed96690150245ca5bcf646d12edc7a
  Author: Simeon K <5235180+simeonkr at users.noreply.github.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/include/llvm/IR/Intrinsics.td
    M llvm/include/llvm/IR/VPIntrinsics.def
    M llvm/lib/CodeGen/ExpandVectorPredication.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fmaximum-vp.ll
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fminimum-vp.ll
    A llvm/test/CodeGen/RISCV/rvv/fmaximum-vp.ll
    A llvm/test/CodeGen/RISCV/rvv/fminimum-vp.ll
    M llvm/unittests/IR/VPIntrinsicTest.cpp

  Log Message:
  -----------
  [VP][RISCV] Introduce llvm.vp.minimum/maximum intrinsics (#74840)

Although there are predicated versions of minnum/maxnum, the ones for
minimum/maximum are currently missing. This patch introduces these
intrinsics and implements their lowering to RISC-V.


  Commit: 907f2a0927d94d72d59f27e411c595b95aa673e9
      https://github.com/llvm/llvm-project/commit/907f2a0927d94d72d59f27e411c595b95aa673e9
  Author: Alex Voicu <alexandru.voicu at amd.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/test/Driver/hipstdpar.c

  Log Message:
  -----------
  [HIP][Driver] Automatically include `hipstdpar` forwarding header (#78915)

The forwarding header used by `hipstdpar` on AMDGPU targets is now
pacakged with `rocThrust`. This change augments the ROCm Driver
component so that it can automatically pick up the packaged header iff
the user hasn't overridden it via the dedicated flag.


  Commit: fcff4582f01db2f5a99e3acf452aec9f2d8a126a
      https://github.com/llvm/llvm-project/commit/fcff4582f01db2f5a99e3acf452aec9f2d8a126a
  Author: wanglei <wanglei at loongson.cn>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArch.td
    M llvm/lib/Target/LoongArch/LoongArchSubtarget.h
    M llvm/lib/Target/LoongArch/LoongArchTargetTransformInfo.cpp
    M llvm/lib/Target/LoongArch/LoongArchTargetTransformInfo.h
    A llvm/test/Transforms/LoopVectorize/LoongArch/defaults.ll
    A llvm/test/Transforms/LoopVectorize/LoongArch/lit.local.cfg

  Log Message:
  -----------
  [LoongArch] Permit auto-vectorization using LSX/LASX with `auto-vec` feature (#78943)

With enough codegen complete, we can now correctly report the size of
vector registers for LSX/LASX, allowing auto vectorization (The
`auto-vec` feature needs to be enabled simultaneously).

As described, the `auto-vec` feature is an experimental one. To ensure
that automatic vectorization is not enabled by default, because the
information provided by the current `TTI` cannot yield additional
benefits for automatic vectorization.


  Commit: ea75542db99136a4612d8624ecff8581128cac21
      https://github.com/llvm/llvm-project/commit/ea75542db99136a4612d8624ecff8581128cac21
  Author: Ben Shi <2283975856 at qq.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
    M clang/test/Analysis/Inputs/system-header-simulator.h
    M clang/test/Analysis/stream-error.c
    M clang/test/Analysis/taint-tester.c

  Log Message:
  -----------
  [clang][analyzer] Support 'getdelim' and 'getline' in StreamChecker (#78693)


  Commit: 45c84f8011d2be9a2378487607ef811f75b4bfca
      https://github.com/llvm/llvm-project/commit/45c84f8011d2be9a2378487607ef811f75b4bfca
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp

  Log Message:
  -----------
  [clang][analyzer] Remove unused variable in StreamChecker.cpp (NFC)

llvm-project/clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp:1125:17:
 error: unused variable 'ASTC' [-Werror,-Wunused-variable]
 1125 |     ASTContext &ASTC = C.getASTContext();
      |                 ^~~~
1 error generated.


  Commit: 9a03d94a4db6b6d3b7cb1582e9e9cc239e737a30
      https://github.com/llvm/llvm-project/commit/9a03d94a4db6b6d3b7cb1582e9e9cc239e737a30
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/utils/gn/secondary/compiler-rt/test/BUILD.gn

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

Might want to set this to True (and add a few source files to
builtins) at some point, but for now heal the bots.


  Commit: a0a16884ac678564787d3a939ad046b9b66bc3b9
      https://github.com/llvm/llvm-project/commit/a0a16884ac678564787d3a939ad046b9b66bc3b9
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/docs/LangRef.rst

  Log Message:
  -----------
  [Docs] Add anchors for llvm.minimum/maximum in LangRef.rst. NFC

This was missed in 58cfd56356ed96690150245ca5bcf646d12edc7a


  Commit: c0fe2b8963aad8ad247eeceffb8eb833ee63a0e7
      https://github.com/llvm/llvm-project/commit/c0fe2b8963aad8ad247eeceffb8eb833ee63a0e7
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

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

  Log Message:
  -----------
  Apply clang-tidy fixes for modernize-loop-convert in Transforms.cpp (NFC)


  Commit: 3af5ab21b8da9015a5e336eb711e696781defcc9
      https://github.com/llvm/llvm-project/commit/3af5ab21b8da9015a5e336eb711e696781defcc9
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

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

  Log Message:
  -----------
  Apply clang-tidy fixes for readability-identifier-naming in Transforms.cpp (NFC)


  Commit: 2e0909025ec010981f582d4e13b129e17329ee1b
      https://github.com/llvm/llvm-project/commit/2e0909025ec010981f582d4e13b129e17329ee1b
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

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

  Log Message:
  -----------
  Apply clang-tidy fixes for readability-simplify-boolean-expr in Vectorization.cpp (NFC)


  Commit: acf2f24ac3288c1342edbeaba0fdd4e432b4ccb8
      https://github.com/llvm/llvm-project/commit/acf2f24ac3288c1342edbeaba0fdd4e432b4ccb8
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

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

  Log Message:
  -----------
  Apply clang-tidy fixes for llvm-else-after-return in LLVMDialect.cpp (NFC)


  Commit: d4933b3241f463871cae55bbeec8563e7ffe03a2
      https://github.com/llvm/llvm-project/commit/d4933b3241f463871cae55bbeec8563e7ffe03a2
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M mlir/lib/Dialect/Math/Transforms/PolynomialApproximation.cpp

  Log Message:
  -----------
  Apply clang-tidy fixes for readability-identifier-naming in PolynomialApproximation.cpp (NFC)


  Commit: 4db4d7f282d17634966cdfda8ccecee1bfcfe1ff
      https://github.com/llvm/llvm-project/commit/4db4d7f282d17634966cdfda8ccecee1bfcfe1ff
  Author: Carl Ritson <carl.ritson at amd.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-overlap-wwm-reserve.mir

  Log Message:
  -----------
  [AMDGPU] SILowerSGPRSpills: do not update MRI reserve registers (#77888)

VGPRs used for spilling do not require explicit reservation with MRI.
freezeReservedRegs() executed before register allocation ensures these
are placed in the reserve set.

The only pass after SILowerSGPRSpills is SIPreAllocateWWMRegs which
explicitly tests for interference before register allocation so should
not reuse a WWM VGPR holding spill data. reserveReg prevents calculation
of correct liveness for physical registers which could be used to extend
SIPreAllocateWWMRegs.


  Commit: b8e708b9d39862c2b7595c02e7bdc4878a2d7186
      https://github.com/llvm/llvm-project/commit/b8e708b9d39862c2b7595c02e7bdc4878a2d7186
  Author: Jim Lin <jim at andestech.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVMergeBaseOffset.cpp
    M llvm/test/CodeGen/RISCV/fold-addi-loadstore.ll

  Log Message:
  -----------
  [RISCV] Merge ADDI with X0 into base offset (#78940)

If offset is `addi rd, x0, imm`, merge imm into base offset.


  Commit: e5ca202ef8870f3b46cc19a7a62624e6908be9a8
      https://github.com/llvm/llvm-project/commit/e5ca202ef8870f3b46cc19a7a62624e6908be9a8
  Author: Stefan Gränitz <stefan.graenitz at gmail.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/JITLink/aarch32.h
    M llvm/lib/ExecutionEngine/JITLink/aarch32.cpp
    A llvm/test/ExecutionEngine/JITLink/AArch32/ELF_stubs_arm.s
    A llvm/test/ExecutionEngine/JITLink/AArch32/ELF_stubs_multi.s
    M llvm/tools/llvm-jitlink/llvm-jitlink.cpp

  Log Message:
  -----------
  [JITLink][AArch32] Multi-stub support for armv7/thumbv7 (#78371)

We want to emit stubs that match the instruction set state of the
relocation site. This is important for branches that have no built-in
switch for the instruction set state. It's the case for Jump24
relocations. Relocations on instructions that support switching on
the fly will be rewritten in a relaxation step in the future. This
affects Call relocations on `BL`/`BLX` instructions.

In this patch, the StubManager gains a second stub symbol slot for each
target and selects which one to use based on the relocation type. For
testing, we select the appropriate slot with a stub-kind filter, i.e.
`arm` or `thumb`. With that we can implement Armv7 stubs and test
that we can have both kinds of stubs for a single external symbol.


  Commit: 8c680451a5eff02dd7e5004b69e05b3744f4e1aa
      https://github.com/llvm/llvm-project/commit/8c680451a5eff02dd7e5004b69e05b3744f4e1aa
  Author: itrofimow <i.trofimow at yandex.ru>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M libcxx/src/support/runtime/exception_pointer_unimplemented.ipp

  Log Message:
  -----------
  [libc++] Fix linking for platforms that don't implement std::exception_ptr (#79040)

This patch fixes linkage for platforms that don't implement
std::exception_ptr, as such setup was overlooked in #65534.


  Commit: 6082478e1a5bde8ac03ac7220b733313a5417a13
      https://github.com/llvm/llvm-project/commit/6082478e1a5bde8ac03ac7220b733313a5417a13
  Author: Konstantin Varlamov <varconsteq at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M libcxx/include/__config
    M libcxx/include/__coroutine/coroutine_handle.h
    M libcxx/include/__memory_resource/polymorphic_allocator.h
    M libcxx/src/filesystem/operations.cpp
    M libcxx/src/memory_resource.cpp
    M libcxx/src/mutex.cpp
    A libcxx/test/libcxx/utilities/utility/mem.res/mem.poly.allocator.class/mem.poly.allocator.mem/assert.deallocate.pass.cpp
    R libcxx/test/libcxx/utilities/utility/mem.res/mem.poly.allocator.class/mem.poly.allocator.mem/debug.deallocate.pass.cpp

  Log Message:
  -----------
  [libc++][hardening] Classify assertions related to leaks and syscalls. (#77164)

Introduce two new categories:
- `_LIBCPP_ASSERT_VALID_DEALLOCATION`;
- `_LIBCPP_ASSERT_VALID_EXTERNAL_API_CALL`.


  Commit: 37efa7038d30ea13f62ad919fec1e8c8ce35b3ef
      https://github.com/llvm/llvm-project/commit/37efa7038d30ea13f62ad919fec1e8c8ce35b3ef
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M lld/ELF/Driver.cpp
    M lld/test/ELF/x86-64-zrel-zrela.s

  Log Message:
  -----------
  [ELF] Fix spurious warning for -z rel && -z rela

Fixes: 665f913e4509e3e4f531aa4a4ebe92ec2ea5c23f


  Commit: bffd80d6df6195c8069b655b1f2463ad8622a707
      https://github.com/llvm/llvm-project/commit/bffd80d6df6195c8069b655b1f2463ad8622a707
  Author: Douglas Yung <douglas.yung at sony.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M compiler-rt/cmake/builtin-config-ix.cmake
    M compiler-rt/lib/builtins/CMakeLists.txt
    R compiler-rt/lib/builtins/aarch64/sme-libc-routines.c
    R compiler-rt/test/builtins/Unit/sme-string-test.cpp
    M compiler-rt/test/lit.common.cfg.py
    M compiler-rt/test/lit.common.configured.in
    M compiler-rt/unittests/lit.common.unit.configured.in

  Log Message:
  -----------
  Revert "[AArch64][compiler-rt] Add memcpy, memset, memmove, memchr builtins. (#77496)"

This reverts commit 3ab8d2aac7bc2dd45dda3db0b8a71fd27eefb749.

This change is causing issues running lit tests on many bots including:
- https://lab.llvm.org/buildbot/#/builders/197/builds/12119
- https://lab.llvm.org/buildbot/#/builders/184/builds/9792
- https://lab.llvm.org/buildbot/#/builders/93/builds/18455
- https://lab.llvm.org/buildbot/#/builders/231/builds/19858
- https://lab.llvm.org/buildbot/#/builders/121/builds/38426
- https://lab.llvm.org/buildbot/#/builders/230/builds/23990
- https://lab.llvm.org/buildbot/#/builders/57/builds/32391
- https://lab.llvm.org/buildbot/#/builders/247/builds/13502
- https://lab.llvm.org/buildbot/#/builders/275/builds/3601
- https://lab.llvm.org/buildbot/#/builders/269/builds/4211
- https://lab.llvm.org/buildbot/#/builders/18/builds/14161
- https://lab.llvm.org/buildbot/#/builders/19/builds/23893
- https://lab.llvm.org/buildbot/#/builders/37/builds/30295
- https://lab.llvm.org/buildbot/#/builders/77/builds/33979


  Commit: 5c68c6d70fc204b0efdb2af95dfb328d616129e3
      https://github.com/llvm/llvm-project/commit/5c68c6d70fc204b0efdb2af95dfb328d616129e3
  Author: Shengchen Kan <shengchen.kan at intel.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrCompiler.td
    M llvm/lib/Target/X86/X86InstrShiftRotate.td
    M llvm/lib/Target/X86/X86InstrUtils.td
    A llvm/test/CodeGen/X86/apx/rol.ll
    A llvm/test/CodeGen/X86/apx/ror.ll
    A llvm/test/CodeGen/X86/apx/sar.ll
    A llvm/test/CodeGen/X86/apx/shl.ll
    A llvm/test/CodeGen/X86/apx/shld.ll
    A llvm/test/CodeGen/X86/apx/shr.ll
    A llvm/test/CodeGen/X86/apx/shrd.ll
    A llvm/test/MC/Disassembler/X86/apx/rcl.txt
    A llvm/test/MC/Disassembler/X86/apx/rcr.txt
    A llvm/test/MC/Disassembler/X86/apx/rol.txt
    A llvm/test/MC/Disassembler/X86/apx/ror.txt
    A llvm/test/MC/Disassembler/X86/apx/sar.txt
    A llvm/test/MC/Disassembler/X86/apx/shl.txt
    A llvm/test/MC/Disassembler/X86/apx/shld.txt
    A llvm/test/MC/Disassembler/X86/apx/shr.txt
    A llvm/test/MC/Disassembler/X86/apx/shrd.txt
    A llvm/test/MC/X86/apx/rcl-att.s
    A llvm/test/MC/X86/apx/rcl-intel.s
    A llvm/test/MC/X86/apx/rcr-att.s
    A llvm/test/MC/X86/apx/rcr-intel.s
    A llvm/test/MC/X86/apx/rol-att.s
    A llvm/test/MC/X86/apx/rol-intel.s
    A llvm/test/MC/X86/apx/ror-att.s
    A llvm/test/MC/X86/apx/ror-intel.s
    A llvm/test/MC/X86/apx/sar-att.s
    A llvm/test/MC/X86/apx/sar-intel.s
    A llvm/test/MC/X86/apx/shl-att.s
    A llvm/test/MC/X86/apx/shl-intel.s
    A llvm/test/MC/X86/apx/shld-att.s
    A llvm/test/MC/X86/apx/shld-intel.s
    A llvm/test/MC/X86/apx/shr-att.s
    A llvm/test/MC/X86/apx/shr-intel.s
    A llvm/test/MC/X86/apx/shrd-att.s
    A llvm/test/MC/X86/apx/shrd-intel.s
    M llvm/test/TableGen/x86-fold-tables.inc

  Log Message:
  -----------
  [X86] Support encoding/decoding and lowering for APX variant SHL/SHR/SAR/ROL/ROR/RCL/RCR/SHLD/SHRD (#78853)

Four variants: promoted legacy, ND (new data destination), NF (no flags
update) and NF_ND (NF + ND).

The syntax of NF instructions is aligned with GNU binutils.
https://sourceware.org/pipermail/binutils/2023-September/129545.html


  Commit: afc229b217f499160b3228a0d7d1783613ac9b58
      https://github.com/llvm/llvm-project/commit/afc229b217f499160b3228a0d7d1783613ac9b58
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/utils/gn/secondary/compiler-rt/test/BUILD.gn

  Log Message:
  -----------
  Revert "[gn] port 3ab8d2aac7bc"

This reverts commit 9a03d94a4db6b6d3b7cb1582e9e9cc239e737a30.

3ab8d2aac7bc was reverted in bffd80d6df61.


  Commit: 9577806b1e6ce06bece48d96b39035f4cee9137d
      https://github.com/llvm/llvm-project/commit/9577806b1e6ce06bece48d96b39035f4cee9137d
  Author: Stefan Gränitz <stefan.graenitz at gmail.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/JITLink/aarch32.h
    M llvm/lib/ExecutionEngine/JITLink/ELFLinkGraphBuilder.h
    M llvm/lib/ExecutionEngine/JITLink/ELF_aarch32.cpp
    M llvm/lib/ExecutionEngine/JITLink/aarch32.cpp
    M llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_data.s

  Log Message:
  -----------
  [JITLink][AArch32] Implement R_ARM_PREL31 and process .ARM.exidx sections (#79044)

`R_ARM_PREL31` is a 31-bits relative data relocation where the
most-significant bit is preserved. It's used primarily in `.ARM.exidx`
sections, which we skipped processing until now, because we didn't
support the relocation type. This was implemented in RuntimeDyld with
https://reviews.llvm.org/D25069 and I implemented it in a similar way in
JITLink in order to reach feature parity.


  Commit: 62eb65b36f8e8fa121de047c89fb7dbe5d4c96be
      https://github.com/llvm/llvm-project/commit/62eb65b36f8e8fa121de047c89fb7dbe5d4c96be
  Author: Sean Fertile <35576261+mandlebug at users.noreply.github.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/lib/Driver/Driver.cpp
    M clang/test/Driver/fat-lto-objects.c

  Log Message:
  -----------
  [FatLTO] output of -ffat-lto-objects -S should be assembly. (#79041)

Fat lto with -c compiles to an object file with the IR embedded in a
section of the object, the combination of fat-lto with -S should then
produce an assembly file equivalent of that. The IR output can still be
genreated by using both -S and -emit-llvm.


  Commit: 23edf782a268e750b18f720fa082a6891ae9d304
      https://github.com/llvm/llvm-project/commit/23edf782a268e750b18f720fa082a6891ae9d304
  Author: Petr Hosek <phosek at google.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M libc/config/baremetal/riscv/entrypoints.txt
    M libc/docs/math/index.rst

  Log Message:
  -----------
  [libc] Include missing RISC-V stdlib.h and math.h entrypoints (#79034)

This matches the entrypoints for baremetal ARM.


  Commit: 4beb7237103a66e90b90a43b1ca0c77bca872d5b
      https://github.com/llvm/llvm-project/commit/4beb7237103a66e90b90a43b1ca0c77bca872d5b
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/app.h
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/src/sys/CMakeLists.txt
    A libc/src/sys/auxv/CMakeLists.txt
    A libc/src/sys/auxv/getauxval.h
    A libc/src/sys/auxv/linux/CMakeLists.txt
    A libc/src/sys/auxv/linux/getauxval.cpp
    M libc/test/src/sys/CMakeLists.txt
    A libc/test/src/sys/auxv/CMakeLists.txt
    A libc/test/src/sys/auxv/linux/CMakeLists.txt
    A libc/test/src/sys/auxv/linux/getauxval_test.cpp

  Log Message:
  -----------
  [libc] implement sys/getauxval (#78493)

This PR implements `sys/getauxval`
that can be used in both overlay builds and full builds.


  Commit: 3b171cb968b3f8495b096139fc57ff6263727e40
      https://github.com/llvm/llvm-project/commit/3b171cb968b3f8495b096139fc57ff6263727e40
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/lib/Format/ContinuationIndenter.cpp
    M clang/lib/Format/WhitespaceManager.h
    M clang/unittests/Format/FormatTest.cpp

  Log Message:
  -----------
  [clang-format] Fix a bug in ContinuationIndenter (#78921)

Fixes #76991.


  Commit: 7e63940f69d99c12ccc18c76e1fc6b861fd459ec
      https://github.com/llvm/llvm-project/commit/7e63940f69d99c12ccc18c76e1fc6b861fd459ec
  Author: Shih-Po Hung <shihpo.hung at sifive.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/RISCV/rvv-shuffle.ll
    M llvm/test/Analysis/CostModel/RISCV/shuffle-broadcast.ll

  Log Message:
  -----------
  [RISCV][CostModel] Make VMV_S_X and VMV_X_S cost independent of LMUL (#78739)

Following #77963, instructions like VMV_S_X/VMV_X_S 
handle single element, so the cost don't scale with LMUL.


  Commit: 4ef646eab3023b52ce8ee529d16605c92caba8ba
      https://github.com/llvm/llvm-project/commit/4ef646eab3023b52ce8ee529d16605c92caba8ba
  Author: Gedare Bloom <gedare at rtems.org>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/lib/Format/ContinuationIndenter.cpp
    M clang/unittests/Format/FormatTest.cpp

  Log Message:
  -----------
  [clang-format]: Fix formatting of if statements with BlockIndent  (#77699)

A bug with BlockIndent prevents line breaks within if (and else if)
clauses.

While fixing this bug, it appears that AlignAfterOpenBracket is not
designed to work with loop and if statements, but AlwaysBreak works on
if clauses. The documentation and tests are not clear on whether or not
this behavior is intended.

This PR preserves the `AlwaysBreak` behavior on `if` clauses without
supporting `BlockIndent` on `if` clauses to avoid regressions while
fixing the bug.

It may be reasonable to create an explicit option for alignment of if
(and loop) clauses intentionally for both `AlwaysBreak` and
`BlockIndent`

Fixes #54663.

Migrated from Differential Revision: https://reviews.llvm.org/D154755
See more discussion there. Addressed last open comment from the rev
about refactoring the complex conditional logic involved with the
`AlignAfterOpenBracket` line break behavior.


  Commit: 097a40ac899d0b88b4b62b85e6faa43802e87010
      https://github.com/llvm/llvm-project/commit/097a40ac899d0b88b4b62b85e6faa43802e87010
  Author: Chen Zheng <czhengsz at cn.ibm.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/test/Analysis/CostModel/PowerPC/insert_extract.ll

  Log Message:
  -----------
  nfc add test cases for PowerPC vector instructions cost analysis


  Commit: 314526557ec66ee627ae8a1c03f6ccc610668fdb
      https://github.com/llvm/llvm-project/commit/314526557ec66ee627ae8a1c03f6ccc610668fdb
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M libcxx/docs/ReleaseNotes/18.rst
    A libcxx/src/include/overridable_function.h
    M libcxx/src/new.cpp
    A libcxx/test/libcxx/language.support/support.dynamic/assert.nothrow_new_not_overridden_fno_exceptions.pass.cpp
    A libcxx/test/libcxx/language.support/support.dynamic/new_dont_return_nullptr.pass.cpp
    M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_align_nothrow.replace.indirect.pass.cpp
    M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_nothrow.replace.indirect.pass.cpp
    M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_align_nothrow.replace.indirect.pass.cpp
    M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_nothrow.replace.indirect.pass.cpp
    M libcxx/test/support/check_assertion.h
    M libcxx/test/support/count_new.h
    M libcxx/test/support/test.support/test_check_assertion.pass.cpp
    M libcxxabi/src/stdlib_new_delete.cpp

  Log Message:
  -----------
  [libc++] Fix the behavior of throwing `operator new` under -fno-exceptions (#69498)

In D144319, Clang tried to land a change that would cause some functions
that are not supposed to return nullptr to optimize better. As reported
in https://reviews.llvm.org/D144319#4203982, libc++ started seeing
failures in its CI shortly after this change was landed.

As explained in D146379, the reason for these failures is that libc++'s
throwing `operator new` can in fact return nullptr when compiled with
exceptions disabled. However, this contradicts the Standard, which
clearly says that the throwing version of `operator new(size_t)` should
never return nullptr. This is actually a long standing issue. I've
previously seen a case where LTO would optimize incorrectly based on the
assumption that `operator new` doesn't return nullptr, an assumption
that was violated in that case because libc++.dylib was compiled with
-fno-exceptions.

Unfortunately, fixing this is kind of tricky. The Standard has a few
requirements for the allocation functions, some of which are impossible
to satisfy under -fno-exceptions:
1. `operator new(size_t)` must never return nullptr
2. `operator new(size_t, nothrow_t)` must call the throwing version and
return nullptr on failure to allocate
3. We can't throw exceptions when compiled with -fno-exceptions

In the case where exceptions are enabled, things work nicely.
`new(size_t)` throws and `new(size_t, nothrow_t)` uses a try-catch to
return nullptr. However, when compiling the library with
-fno-exceptions, we can't throw an exception from `new(size_t)`, and we
can't catch anything from `new(size_t, nothrow_t)`. The only thing we
can do from `new(size_t)` is actually abort the program, which does not
make it possible for `new(size_t, nothrow_t)` to catch something and
return nullptr.

This patch makes the following changes:
1. When compiled with -fno-exceptions, the throwing version of `operator
new` will now abort on failure instead of returning nullptr on failure.
This resolves the issue that the compiler could mis-compile based on the
assumption that nullptr is never returned. This constitutes an API and
ABI breaking change for folks compiling the library with -fno-exceptions
(which is not the general public, who merely uses libc++ headers but use
a shared library that has already been compiled). This should mostly
impact vendors and other folks who compile libc++.dylib themselves.

2. When the library is compiled with -fexceptions, the nothrow version
of `operator new` has no change. When the library is compiled with
-fno-exceptions, the nothrow version of `operator new` will now check
whether the throwing version of `operator new` has been overridden. If
it has not been overridden, then it will use an implementation
equivalent to that of the throwing `operator new`, except it will return
nullptr on failure to allocate (instead of terminating). However, if the
throwing `operator new` has been overridden, it is now an error NOT to
also override the nothrow `operator new`. Indeed, there is no way for us
to implement a valid nothrow `operator new` without knowing the exact
implementation of the throwing version.

In summary, this change will impact people who fall into the following
intersection of conditions:
- They use the libc++ shared/static library built with `-fno-exceptions`
- They do not override `operator new(..., std::nothrow_t)`
- They override `operator new(...)` (the throwing version)
- They use `operator new(..., std::nothrow_t)`

We believe this represents a small number of people.

Fixes #60129
rdar://103958777

Differential Revision: https://reviews.llvm.org/D150610


  Commit: 888f2a58a9d441e29a6769ff0d96ec5306262336
      https://github.com/llvm/llvm-project/commit/888f2a58a9d441e29a6769ff0d96ec5306262336
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M libcxx/test/support/check_assertion.h

  Log Message:
  -----------
  [libc++][NFC] Fix formatting in check_assertion.h


  Commit: f3dd8f10c77f29ff2563482c96c33f2c2bbc847c
      https://github.com/llvm/llvm-project/commit/f3dd8f10c77f29ff2563482c96c33f2c2bbc847c
  Author: Yitzhak Mandelbaum <ymand at users.noreply.github.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/include/clang/Analysis/FlowSensitive/DataflowAnalysis.h
    M clang/include/clang/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.h
    M clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp
    M clang/unittests/Analysis/FlowSensitive/TestingSupport.cpp
    M clang/unittests/Analysis/FlowSensitive/TestingSupport.h
    M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp
    M clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp

  Log Message:
  -----------
  [clang][dataflow] Make cap on block visits configurable by caller. (#77481)

Previously, we hard-coded the cap on block visits inside the framework.
This
patch enables the caller to specify the cap in the APIs for running an
analysis.


  Commit: 904b0901ef2d33e6232b7a51fa2525c30fd117e8
      https://github.com/llvm/llvm-project/commit/904b0901ef2d33e6232b7a51fa2525c30fd117e8
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/test/Preprocessor/riscv-target-features.c
    M llvm/lib/Target/RISCV/RISCVProcessors.td

  Log Message:
  -----------
  [RISCV] Add FeatureFastUnalignedAccess to sifive-p450. (#79075)


  Commit: 35ab0c78cf5f2294e251a6fb1e0d6e58dc80d955
      https://github.com/llvm/llvm-project/commit/35ab0c78cf5f2294e251a6fb1e0d6e58dc80d955
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/test/Transforms/Attributor/nofpclass-implied-by-fcmp.ll

  Log Message:
  -----------
  ValueTracking: Add tests fcmpToClassTest for fcmp true/false


  Commit: 1a99df9f3dfdfd6ff3a3d46113c9e0e9d55ad892
      https://github.com/llvm/llvm-project/commit/1a99df9f3dfdfd6ff3a3d46113c9e0e9d55ad892
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/test/Transforms/Attributor/nofpclass-implied-by-fcmp.ll

  Log Message:
  -----------
  ValueTracking: Add tests for fcmpToClassTest for fcmp ole/ugt inf

This catches an assertion in a recommit of
dc3faf0ed0e3f1ea9e435a006167d9649f865da1


  Commit: 8076b896955e91cc2d16283cf8206f3354702022
      https://github.com/llvm/llvm-project/commit/8076b896955e91cc2d16283cf8206f3354702022
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/Attributor/nofpclass-implied-by-fcmp.ll

  Log Message:
  -----------
  ValueTracking: Handle fcmp true/false in fcmpToClassTest

This ensures full compare coverage for certain special constants.


  Commit: 28f9041879620b44505d54670f5ccb2ed48b24d9
      https://github.com/llvm/llvm-project/commit/28f9041879620b44505d54670f5ccb2ed48b24d9
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/lib/DebugInfo/DWARF/DWARFContext.cpp

  Log Message:
  -----------
  [DebugInfo] Use DenseMap::lookup (NFC)


  Commit: a0b459df256e8d16cade7f38a6fdaf2e763c847f
      https://github.com/llvm/llvm-project/commit/a0b459df256e8d16cade7f38a6fdaf2e763c847f
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/include/llvm/IR/GlobalValue.h

  Log Message:
  -----------
  [IR] Use StringRef::consume_front (NFC)


  Commit: 47c76e7aba0cf823f7fa883e0d374ad1a160067a
      https://github.com/llvm/llvm-project/commit/47c76e7aba0cf823f7fa883e0d374ad1a160067a
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp

  Log Message:
  -----------
  [SPIRV] Use llvm::find (NFC)


  Commit: 8c3304453c22ad1b5a914e64a7f6435f58f4099c
      https://github.com/llvm/llvm-project/commit/8c3304453c22ad1b5a914e64a7f6435f58f4099c
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/tools/llvm-diff/lib/DifferenceEngine.cpp

  Log Message:
  -----------
  [llvm-diff] Use llvm::predecessors (NFC)


  Commit: f1d3ebc9918aa6d1d04cda98da1ecef2dd51978c
      https://github.com/llvm/llvm-project/commit/f1d3ebc9918aa6d1d04cda98da1ecef2dd51978c
  Author: S. B. Tam <cpplearner at outlook.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M libcxx/test/std/diagnostics/syserr/syserr.compare/eq_error_code_error_code.pass.cpp
    M libcxx/test/std/diagnostics/syserr/syserr.errcat/syserr.errcat.derived/message.pass.cpp
    M libcxx/test/std/diagnostics/syserr/syserr.errcat/syserr.errcat.objects/system_category.pass.cpp

  Log Message:
  -----------
   [libc++][test] Use LIBCPP_ASSERT in some `system_category`-related tests (#78834)


  Commit: a6065f0fa55aaf694b5f85ecad7badec5cc02425
      https://github.com/llvm/llvm-project/commit/a6065f0fa55aaf694b5f85ecad7badec5cc02425
  Author: Eli Friedman <efriedma at quicinc.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/lib/CodeGen/CGCXX.cpp
    M llvm/include/llvm/IR/CallingConv.h
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/Target/AArch64/AArch64.h
    A llvm/lib/Target/AArch64/AArch64Arm64ECCallLowering.cpp
    M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
    M llvm/lib/Target/AArch64/AArch64CallingConvention.h
    M llvm/lib/Target/AArch64/AArch64CallingConvention.td
    M llvm/lib/Target/AArch64/AArch64FastISel.cpp
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64MCInstLower.cpp
    M llvm/lib/Target/AArch64/AArch64MCInstLower.h
    M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
    M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
    M llvm/lib/Target/AArch64/AArch64Subtarget.h
    M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
    M llvm/lib/Target/AArch64/CMakeLists.txt
    M llvm/lib/Target/AArch64/GISel/AArch64CallLowering.cpp
    M llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.h
    M llvm/test/CodeGen/AArch64/arm64ec-dllimport.ll
    A llvm/test/CodeGen/AArch64/arm64ec-entry-thunks-local-linkage.ll
    A llvm/test/CodeGen/AArch64/arm64ec-entry-thunks.ll
    A llvm/test/CodeGen/AArch64/arm64ec-exit-thunks.ll
    M llvm/test/CodeGen/AArch64/arm64ec-reservedregs.ll
    M llvm/test/CodeGen/AArch64/arm64ec-varargs.ll
    M llvm/test/CodeGen/AArch64/stack-protector-target.ll
    M llvm/test/CodeGen/AArch64/win-alloca.ll

  Log Message:
  -----------
  Arm64EC entry/exit thunks, consolidated. (#79067)

This combines the previously posted patches with some additional work
I've done to more closely match MSVC output.

Most of the important logic here is implemented in
AArch64Arm64ECCallLowering. The purpose of the
AArch64Arm64ECCallLowering is to take "normal" IR we'd generate for
other targets, and generate most of the Arm64EC-specific bits:
generating thunks, mangling symbols, generating aliases, and generating
the .hybmp$x table. This is all done late for a few reasons: to
consolidate the logic as much as possible, and to ensure the IR exposed
to optimization passes doesn't contain complex arm64ec-specific
constructs.

The other changes are supporting changes, to handle the new constructs
generated by that pass.

There's a global llvm.arm64ec.symbolmap representing the .hybmp$x
entries for the thunks. This gets handled directly by the AsmPrinter
because it needs symbol indexes that aren't available before that.

There are two new calling conventions used to represent calls to and
from thunks: ARM64EC_Thunk_X64 and ARM64EC_Thunk_Native. There are a few
changes to handle the associated exception-handling info,
SEH_SaveAnyRegQP and SEH_SaveAnyRegQPX.

I've intentionally left out handling for structs with small
non-power-of-two sizes, because that's easily separated out. The rest of
my current work is here. I squashed my current patches because they were
split in ways that didn't really make sense. Maybe I could split out
some bits, but it's hard to meaningfully test most of the parts
independently.

Thanks to @dpaoliello for extensive testing and suggestions.

(Originally posted as https://reviews.llvm.org/D157547 .)


  Commit: 4ee195a2a791cc338feddfa8d82679eddb330bf1
      https://github.com/llvm/llvm-project/commit/4ee195a2a791cc338feddfa8d82679eddb330bf1
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

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

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


  Commit: ce3e767ac5ea1a1d1a166e88c152e2125ec7662b
      https://github.com/llvm/llvm-project/commit/ce3e767ac5ea1a1d1a166e88c152e2125ec7662b
  Author: ManuelvOK <info at manuel-thieme.de>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M clang/lib/CodeGen/CodeGenPGO.cpp
    M clang/lib/CodeGen/CoverageMappingGen.cpp

  Log Message:
  -----------
  [Coverage] Map regions from system headers (#76950)

In 2155195131a57f2f01e7cfabb85bb027518c2dc6, the
"system-headers-coverage" option has been added but not used in all
necessary places.

Potential reviewers: @gulfemsavrun @petrhosek

Co-authored-by: Manuel Kalettka <manuel.kalettka at kernkonzept.com>


  Commit: 3f740322c5b9b7d6f45a73d2fac948df3c74a3a7
      https://github.com/llvm/llvm-project/commit/3f740322c5b9b7d6f45a73d2fac948df3c74a3a7
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M libc/config/linux/arm/entrypoints.txt

  Log Message:
  -----------
  [libc] remove getauxval from arm32 entrypoint list (#79093)

`getauxval` depends on `open/read/close` which are not built on arm32.
Remove `getauxval` for now.


  Commit: 86f05477d0bd7347e9bec8c1f9a7d89c167ad556
      https://github.com/llvm/llvm-project/commit/86f05477d0bd7347e9bec8c1f9a7d89c167ad556
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M libc/src/sys/auxv/linux/CMakeLists.txt

  Log Message:
  -----------
  [libc] add missing header deps to getauxval (#79091)

`getauxval` depends on `libc.include.sys_auxv`


  Commit: fcb8342a219ada8ec641790a4c8a9f969d7d64ee
      https://github.com/llvm/llvm-project/commit/fcb8342a219ada8ec641790a4c8a9f969d7d64ee
  Author: Ami-zhang <zhanglimin at loongson.cn>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsLoongArchBase.def
    M clang/include/clang/Basic/BuiltinsLoongArchLASX.def
    M clang/include/clang/Basic/BuiltinsLoongArchLSX.def
    M clang/lib/Headers/larchintrin.h
    M clang/lib/Headers/lasxintrin.h
    M clang/lib/Headers/lsxintrin.h
    A clang/test/CodeGen/LoongArch/builtin-dbl-approximate.c
    A clang/test/CodeGen/LoongArch/builtin-flt-approximate.c
    M clang/test/CodeGen/LoongArch/intrinsic-la64-error.c
    A clang/test/CodeGen/LoongArch/lasx/builtin-approximate-alias.c
    A clang/test/CodeGen/LoongArch/lasx/builtin-approximate.c
    A clang/test/CodeGen/LoongArch/lsx/builtin-approximate-alias.c
    A clang/test/CodeGen/LoongArch/lsx/builtin-approximate.c
    M llvm/include/llvm/IR/IntrinsicsLoongArch.td
    M llvm/lib/Target/LoongArch/LoongArch.td
    M llvm/lib/Target/LoongArch/LoongArchFloat32InstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchFloat64InstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchSubtarget.h
    A llvm/test/CodeGen/LoongArch/intrinsic-frecipe-dbl.ll
    A llvm/test/CodeGen/LoongArch/intrinsic-frecipe-flt.ll
    A llvm/test/CodeGen/LoongArch/lasx/intrinsic-frecipe.ll
    A llvm/test/CodeGen/LoongArch/lasx/intrinsic-frsqrte.ll
    A llvm/test/CodeGen/LoongArch/lsx/intrinsic-frecipe.ll
    A llvm/test/CodeGen/LoongArch/lsx/intrinsic-frsqrte.ll

  Log Message:
  -----------
  [LoongArch] Add definitions and feature 'frecipe' for FP approximation intrinsics/builtins (#78962)

This PR adds definitions and 'frecipe' feature for FP approximation
intrinsics/builtins. In additions, this adds and complements relative
testcases.


  Commit: 39a1b280a170ff8e0e605693f8386b8dd161cf94
      https://github.com/llvm/llvm-project/commit/39a1b280a170ff8e0e605693f8386b8dd161cf94
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M lld/test/ELF/lto/cache.ll
    M lld/test/ELF/lto/thinlto.ll

  Log Message:
  -----------
  [ELF] Improve ThinLTO tests


  Commit: 150a58bed08f9f83ae4157a033ef1c67c210bbc4
      https://github.com/llvm/llvm-project/commit/150a58bed08f9f83ae4157a033ef1c67c210bbc4
  Author: Piotr Zegar <me at piotrzegar.pl>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M clang-tools-extra/docs/clang-tidy/checks/list.rst

  Log Message:
  -----------
  [clang-tidy][DOC] Update list.rst

Update list.rst to put checks in alphabetical order


  Commit: 297b77036e82b7684e1823c14b318e365aed5b26
      https://github.com/llvm/llvm-project/commit/297b77036e82b7684e1823c14b318e365aed5b26
  Author: Simeon K <5235180+simeonkr at users.noreply.github.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/test/CodeGen/RISCV/rvv/allocate-lmul-2-4-8.ll

  Log Message:
  -----------
  [RISCV] Fix stack size computation when M extension disabled (#78602)

Ensure that getVLENFactoredAmount does not fail when the scale amount
requires the use of a non-trivial multiplication but the M extension is
not enabled. In such case, perform the multiplication using shifts and
adds.


  Commit: f799f936929c232a16abc7c520a10fecadbf05f9
      https://github.com/llvm/llvm-project/commit/f799f936929c232a16abc7c520a10fecadbf05f9
  Author: yjijd <licongtian at loongson.cn>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
    A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/sitofp.ll
    A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/uitofp.ll
    A llvm/test/CodeGen/LoongArch/lsx/ir-instruction/sitofp.ll
    A llvm/test/CodeGen/LoongArch/lsx/ir-instruction/uitofp.ll

  Log Message:
  -----------
  [CodeGen][LoongArch] Set SINT_TO_FP/UINT_TO_FP to legal for vector types (#78924)

Support the following conversions:
v4i32->v4f32, v2i64->v2f64(LSX)
v8i32->v8f32, v4i64->v4f64(LASX)
v4i32->v4f64, v4i64->v4f32(LASX)


  Commit: 9e2c0f000549991ea5585d6799ade92811a8faae
      https://github.com/llvm/llvm-project/commit/9e2c0f000549991ea5585d6799ade92811a8faae
  Author: Lu Weining <luweining at loongson.cn>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M llvm/docs/ReleaseNotes.rst

  Log Message:
  -----------
  [docs] Add llvm & clang release notes for LoongArch (#79097)


  Commit: 8938bc0ad0651f8d481cca2b2b98345d34b3aabe
      https://github.com/llvm/llvm-project/commit/8938bc0ad0651f8d481cca2b2b98345d34b3aabe
  Author: Konstantin Varlamov <varconsteq at gmail.com>
  Date:   2024-01-22 (Mon, 22 Jan 2024)

  Changed paths:
    M libcxx/include/__algorithm/comp_ref_type.h
    M libcxx/include/__algorithm/nth_element.h
    M libcxx/include/__algorithm/sort.h
    M libcxx/include/__algorithm/three_way_comp_ref_type.h
    M libcxx/include/__config
    M libcxx/include/__debug_utils/strict_weak_ordering_check.h
    R libcxx/test/libcxx/algorithms/alg.sorting/assert.sort.invalid_comparator.pass.cpp
    A libcxx/test/libcxx/algorithms/alg.sorting/assert.sort.invalid_comparator/assert.sort.invalid_comparator.oob.pass.cpp
    A libcxx/test/libcxx/algorithms/alg.sorting/assert.sort.invalid_comparator/assert.sort.invalid_comparator.pass.cpp
    A libcxx/test/libcxx/algorithms/alg.sorting/assert.sort.invalid_comparator/bad_comparator_values.h
    A libcxx/test/libcxx/algorithms/alg.sorting/assert.sort.invalid_comparator/invalid_comparator_utilities.h
    R libcxx/test/libcxx/algorithms/alg.sorting/bad_comparator_values.h

  Log Message:
  -----------
  [libc++][hardening] Categorize assertions related to strict weak ordering (#77405)

If a user passes a comparator that doesn't satisfy strict weak ordering
(see https://eel.is/c++draft/algorithms#alg.sorting.general) to
a sorting algorithm, the algorithm can produce an incorrect result or
even lead
to an out-of-bounds access. Unfortunately, comprehensively validating
that a given comparator indeed satisfies the strict weak ordering
requirement is prohibitively expensive (see [the related
RFC](https://discourse.llvm.org/t/rfc-strict-weak-ordering-checks-in-the-debug-libc/70217)).
As a result, we have three independent sets of checks:

- assertions that catch out-of-bounds accesses within the algorithms'
  implementation. These are relatively cheap; however, they cannot catch
  the underlying cause and cannot prevent the case where an invalid
  comparator would result in an incorrectly-sorted sequence without
  actually triggering an OOB access;

- debug comparators that wrap a given comparator and on each comparison
  check that if `(a < b)`, then `!(b < a)`, where `<` stands for the
  user-provided comparator. This performs up to 2x number of comparisons
  but doesn't affect the algorithmic complexity. While this approach can
  find more issues, it is still a heuristic;

- a comprehensive check of the comparator that validates up to 100
  elements in the resulting sorted sequence (see the RFC above for
details). The check is expensive but the 100 element limit can somewhat
  compensate for that, especially for large values of `N`.

The first set of checks is enabled in the fast hardening mode while the
other two are only enabled in the debug mode.

This patch also removes the
`_LIBCPP_DEBUG_STRICT_WEAK_ORDERING_CHECK` macro that
previously was used to selectively enable the 100-element check.
Now this check is enabled unconditionally in the debug mode.

Also, introduce a new category
`_LIBCPP_ASSERT_SEMANTIC_REQUIREMENT`. This category is
intended for checking the semantic requirements from the Standard.
Typically, these are hard or impossible to completely validate, so
these checks are expected to be heuristic in nature and potentially
quite expensive.

See https://reviews.llvm.org/D150264 for additional background.
Fixes #71496


  Commit: ab32a3c166e9eae12260b4c6eca9bcf21f500e87
      https://github.com/llvm/llvm-project/commit/ab32a3c166e9eae12260b4c6eca9bcf21f500e87
  Author: Michael Klemm <michael.klemm at amd.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M flang/module/iso_c_binding.f90
    M flang/module/iso_fortran_env.f90

  Log Message:
  -----------
  [flang] Do not leak intrinsics used by ISO_C_BINDING and ISO_FORTRAN_ENV (#79006)

This resolves bug #78953. Intrinsics used by the MODULE definition are
being declared PRIVATE, so that they do not leak into the namespace of
the code that USEs the modules.


  Commit: 44ba6ebc999d6e9b27bedfe04a993adfd204dc6a
      https://github.com/llvm/llvm-project/commit/44ba6ebc999d6e9b27bedfe04a993adfd204dc6a
  Author: yjijd <licongtian at loongson.cn>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
    A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/fptosi.ll
    A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/fptoui.ll
    A llvm/test/CodeGen/LoongArch/lsx/ir-instruction/fptosi.ll
    A llvm/test/CodeGen/LoongArch/lsx/ir-instruction/fptoui.ll

  Log Message:
  -----------
  [CodeGen][LoongArch] Set FP_TO_SINT/FP_TO_UINT to legal for vector types (#79107)

Support the following conversions:
v4f32->v4i32, v2f64->v2i64(LSX)
v8f32->v8i32, v4f64->v4i64(LASX)
v4f32->v4i64, v4f64->v4i32(LASX)


  Commit: 3ea92ea2f9d236569f82825cdba6d59bcc22495c
      https://github.com/llvm/llvm-project/commit/3ea92ea2f9d236569f82825cdba6d59bcc22495c
  Author: Yi Kong <yikong at google.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

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

  Log Message:
  -----------
  Fix MFS warning format

WithColor::warning() does not append new line automatically.


  Commit: 7da76958390a43b2fd1db506c90970aeae4367eb
      https://github.com/llvm/llvm-project/commit/7da76958390a43b2fd1db506c90970aeae4367eb
  Author: Aiden Grossman <agrossman154 at yahoo.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/include/llvm/Target/TargetPfmCounters.td
    M llvm/lib/Target/X86/X86PfmCounters.td
    M llvm/tools/llvm-exegesis/lib/BenchmarkResult.cpp
    M llvm/tools/llvm-exegesis/lib/BenchmarkResult.h
    M llvm/tools/llvm-exegesis/llvm-exegesis.cpp

  Log Message:
  -----------
  [llvm-exegesis] Add additional validation counters (#76788)

This patch adds support for additional types of validation counters and
also adds mappings between these new validation counter types and
physical counters on the hardware for microarchitectures that I have the
ability to test on.


  Commit: ba1e84fb8f45e102f40f409fcfe9b420fbf9fb70
      https://github.com/llvm/llvm-project/commit/ba1e84fb8f45e102f40f409fcfe9b420fbf9fb70
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Serialization/ASTReader.h
    M clang/lib/Serialization/ASTReader.cpp
    A clang/test/Modules/pr60085.cppm
    A clang/test/Modules/pr78830.cppm

  Log Message:
  -----------
  [C++20] [Modules] Handle inconsistent deduced function return type from importing modules

Close https://github.com/llvm/llvm-project/issues/78830
Close https://github.com/llvm/llvm-project/issues/60085

The direct reason of the issues is that in a module unit, the return
type of a function is deduced to a concrete type (e.g., int) but in the
other module unit, the return type of the same function is not deduced
yet (e.g, auto). Then when we importing the 2 modules, the later
function is selected but the code generator doesn't know how to generate
the auto type. So here is the crash.

The tricky part here is that, when the ASTReader reads the second
unreduced function, it finds the reading function has the same signature
with the already read deduced one and they have the same ODRHash. So
that the ASTReader skips loading the function body of the unreduced
function then the code generator can't infer the undeduced type like it
usually can. Also this is generally fine for functions without deducing
type since it is sufficient to emit a function call without the function
body.

Also in fact, we've already handled the case that the functon has
deduced type and its deducing state is inconsist in different modules:
https://github.com/llvm/llvm-project/blob/3ea92ea2f9d236569f82825cdba6d59bcc22495c/clang/lib/Serialization/ASTReader.cpp#L9531-L9544
and
https://github.com/llvm/llvm-project/blob/3ea92ea2f9d236569f82825cdba6d59bcc22495c/clang/lib/Serialization/ASTReaderDecl.cpp#L3643-L3647.

We've handled the case:
(1) If we read the undeduced functions first and read the deduced functions
later, the compiler will propagate the deduced type info for redecls in
the end of the reading.
(2) If we read the deduced functions first and read the undeduced
functions later, we will propagae the deduced type info when we **complete
the redecl chain**.

However, in the reporting issues, we're in the second case and
reproducer didn't trigger the action to complete the redecl chain. So
here is the crash.

Then it is obvious how should fix the problem. We should complete the
redecl chain for undeduced function types in the end of the reading for
the second case.


  Commit: 134fcc62786d31ab73439201dce2d73808d1785a
      https://github.com/llvm/llvm-project/commit/134fcc62786d31ab73439201dce2d73808d1785a
  Author: Shengchen Kan <shengchen.kan at intel.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrInfo.cpp

  Log Message:
  -----------
  [X86][NFC] Simplify function X86InstrInfo::commuteInstructionImpl


  Commit: f20556678c70f89f96ed01b2c6092c5f7d6efedd
      https://github.com/llvm/llvm-project/commit/f20556678c70f89f96ed01b2c6092c5f7d6efedd
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
    A llvm/test/CodeGen/AArch64/blr-bti-preserves-operands.mir
    R llvm/test/CodeGen/AArch64/blr-bti-preserves-regmask.mir

  Log Message:
  -----------
  Reland "[llvm][AArch64] Copy all operands when expanding BLR_BTI bundle (#78267)" (#78719)

This reverts commit 955417ade2648c2b1a4e5f0be697f61570590a88.

The problem with the previous version was that the bundle instruction
had arguments like "target arg1 arg2". When it's expanded we produced a
BL or BLR which can only accept one argument, the target of the branch.

Now I realise why expandCALL_RVMARKER has to copy them in mutiple steps.
The operands for the called function need to be changed to implicit
arguments of the branch instruction.

* Copy the branch target.
* Copy all register operands, marking them as implicit.
* Copy any other operands without modifying them.

Prior to any attempt to fix #77915:
BL @_setjmp, csr_aarch64_aapcs, implicit-def $lr, implicit $sp,
implicit-def dead $lr, implicit $sp, implicit-def $sp

Which is dropping the use of the arguments for the called function.

My first fix attempt produced:
BL @_setjmp, $x0, $w1, <regmask $fp ...>, implicit-def $lr, implicit
$sp, implicit-def dead $lr, implicit $sp, implicit-def $sp

It copied the arguments but as explicit arguments to the BL which only
expects 1, failing verification.

With this new change we produce:
BL @_setjmp, csr_aarch64_aapcs, implicit-def $lr, implicit $sp, implicit
$x0, implicit $w1, implicit-def dead $lr, implicit $sp, implicit-def $sp

Note specifically the added "implicit $x0, implicit $w1". So BL only has
1 explicit argument, but the arguments to the function are still used.


  Commit: d8628a00fd92c6f9db631f817a63eada90707ad2
      https://github.com/llvm/llvm-project/commit/d8628a00fd92c6f9db631f817a63eada90707ad2
  Author: Jianjian Guan <jacquesguan at me.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsRISCV.td

  Log Message:
  -----------
  [RISCV] Add IntrArgMemOnly for vector unit stride load/store intrinsics (#78415)

IntrArgMemOnly means the intrinsic only accesses memory that its
pointer-typed argument(s) points to. I think RVV load/store intrinsics
meets it. Add IntrArgMemOnly would help in some passes, by example, it
could add `alais.scope` to intrinsics callee when try to inline a
function that has noalais parameter(s).


  Commit: c193bb7e9eee02a435944506c732db9b480f0c84
      https://github.com/llvm/llvm-project/commit/c193bb7e9eee02a435944506c732db9b480f0c84
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
    A llvm/test/tools/llvm-cov/Inputs/mcdc-maxbs.c
    A llvm/test/tools/llvm-cov/Inputs/mcdc-maxbs.o
    A llvm/test/tools/llvm-cov/Inputs/mcdc-maxbs.proftext
    A llvm/test/tools/llvm-cov/mcdc-maxbs.test

  Log Message:
  -----------
  [Coverage] getMaxBitmapSize: Scan `max(BitmapIdx)` instead of the last `Decision` (#78963)

In `CoverageMapping.cpp:getMaxBitmapSize()`, 
this assumed that the last `Decision` has the maxmum `BitmapIdx`.

Let it scan `max(BitmapIdx)`.

Note that `<=` is used insted of `<`, because `BitmapIdx == 0` is valid
and `MaxBitmapID` is `unsigned`. `BitmapIdx` is unique in the record.

Fixes #78922


  Commit: 66237d647ed95d7df92a438f8181c11423addc7d
      https://github.com/llvm/llvm-project/commit/66237d647ed95d7df92a438f8181c11423addc7d
  Author: Shengchen Kan <shengchen.kan at intel.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86CompressEVEX.cpp
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/test/CodeGen/X86/apx/compress-evex.mir
    M llvm/test/CodeGen/X86/apx/shrd.ll

  Log Message:
  -----------
  [X86][CodeGen] Add entries for NDD SHLD/SHRD to the commuteInstructionImpl


  Commit: ccf1e322bd5828c74ac5213dc2e05ab506da25bd
      https://github.com/llvm/llvm-project/commit/ccf1e322bd5828c74ac5213dc2e05ab506da25bd
  Author: martinboehme <mboehme at google.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M clang/include/clang/Analysis/FlowSensitive/Transfer.h
    M clang/lib/Analysis/FlowSensitive/Transfer.cpp
    M clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp
    M clang/unittests/Analysis/FlowSensitive/LoggerTest.cpp
    M clang/unittests/Analysis/FlowSensitive/SignAnalysisTest.cpp
    M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp

  Log Message:
  -----------
  [clang][dataflow] Process terminator condition within `transferCFGBlock()`. (#78127)

In particular, it's important that we create the "fallback" atomic at
this point
(which we produce if the transfer function didn't produce a value for
the
expression) so that it is placed in the correct environment.

Previously, we processed the terminator condition in the
`TerminatorVisitor`,
which put the fallback atomic in a copy of the environment that is
produced as
input for the _successor_ block, rather than the environment for the
block
containing the expression for which we produce the fallback atomic.

As a result, we produce different fallback atomics every time we process
the
successor block, and hence we don't have a consistent representation of
the
terminator condition in the flow condition.

This patch includes a test (authored by ymand@) that fails without the
fix.


  Commit: 60e1c835d326a74ef67bf4b9399d439262d0380e
      https://github.com/llvm/llvm-project/commit/60e1c835d326a74ef67bf4b9399d439262d0380e
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/include/llvm/IR/DebugInfo.h
    M llvm/lib/Transforms/Scalar/SROA.cpp
    M llvm/test/DebugInfo/Generic/assignment-tracking/instcombine/remove-redundant-dbg.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/after-inlining.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/alloca-single-slice.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/arglist.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/complex.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/fail-fragment.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/frag-2.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/frag.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/id.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/memcpy.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/memmove-to-from-same-alloca.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/remove-redundant-dbg.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/rewrite.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/split-pre-fragmented-store-2.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/split-pre-fragmented-store.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/store.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/unspecified-var-size.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/user-memcpy.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/var-sized-fragment.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/vec-1.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/vec-2.ll

  Log Message:
  -----------
  [RemoveDIs][DebugInfo] Update SROA to handle DPVAssigns (#78475)

SROA needs to update llvm.dbg.assign intrinsics when it migrates debug
info in response to alloca splitting; this patch updates the debug info
migration code to handle DPVAssigns as well, making use of generic code
to avoid duplication as much as possible.


  Commit: 47bcc91e06798e8730983b3848cc152a79c7afae
      https://github.com/llvm/llvm-project/commit/47bcc91e06798e8730983b3848cc152a79c7afae
  Author: harishch4 <harishcse44 at gmail.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M flang/lib/Semantics/resolve-directives.cpp
    A flang/test/Lower/OpenMP/threadprivate-default-clause.f90

  Log Message:
  -----------
  [Flang][OpenMP] Fix to variables not inheriting data sharing attributes (#79017)

When a default(none) clause exists and a threadprivate variable is used
inside the construct, the variable does not inherit threadprivate
behavior and throws the below error.

> error: The DEFAULT(NONE) clause requires that 'a' must be listed in a
data-sharing attribute clause

Added a condition to skip the error if it is a threadprivate variable.

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


  Commit: 5a458767dd797cbfa2eeb12b9b8b64f2c63159a5
      https://github.com/llvm/llvm-project/commit/5a458767dd797cbfa2eeb12b9b8b64f2c63159a5
  Author: Ivan Kosarev <ivan.kosarev at amd.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/BUFInstructions.td
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.td
    M llvm/lib/Target/AMDGPU/VOP2Instructions.td
    M llvm/lib/Target/AMDGPU/VOPCInstructions.td
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_dpp16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_dpp8.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1_dpp8.txt

  Log Message:
  -----------
  [AMDGPU][True16] Support source DPP operands. (#79025)


  Commit: 376f3be83444901fc4d50570bee492f0f666938f
      https://github.com/llvm/llvm-project/commit/376f3be83444901fc4d50570bee492f0f666938f
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/include/llvm/IR/DebugInfo.h

  Log Message:
  -----------
  [DebugInfo] Remove redefinition of 'getDPVAssignmentMarkers' (NFC)

llvm-project/llvm/include/llvm/IR/DebugInfo.h:239:31: error: redefinition of 'getDPVAssignmentMarkers'
inline SmallVector<DPValue *> getDPVAssignmentMarkers(const Instruction *Inst) {
                              ^
llvm-project/llvm/include/llvm/IR/DebugInfo.h:233:31: note: previous definition is here
inline SmallVector<DPValue *> getDPVAssignmentMarkers(const Instruction *Inst) {
                              ^


  Commit: 0ed8194256c6c96875ed9dd102d15ee8a9260fec
      https://github.com/llvm/llvm-project/commit/0ed8194256c6c96875ed9dd102d15ee8a9260fec
  Author: Alexey Lapshin <a.v.lapshin at mail.ru>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/include/llvm/DWARFLinker/AddressesMap.h
    M llvm/lib/DWARFLinker/Classic/DWARFLinker.cpp
    M llvm/lib/DWARFLinker/Parallel/DWARFLinkerCompileUnit.cpp
    M llvm/lib/DWARFLinker/Parallel/DWARFLinkerImpl.cpp
    M llvm/lib/DWARFLinker/Parallel/DependencyTracker.cpp
    M llvm/test/tools/dsymutil/absolute_symbol.test
    M llvm/test/tools/dsymutil/arch-option.test
    M llvm/test/tools/dsymutil/archive-timestamp.test
    M llvm/test/tools/dsymutil/basic-linking.test
    M llvm/test/tools/dsymutil/debug-map-parsing.test
    M llvm/test/tools/dsymutil/dump-symtab.test
    M llvm/test/tools/dsymutil/fat-binary-output.test
    M llvm/test/tools/dsymutil/fat-header.test
    M llvm/test/tools/dsymutil/yaml-object-address-rewrite.test
    M llvm/tools/dsymutil/DwarfLinkerForBinary.cpp
    M llvm/tools/dsymutil/DwarfLinkerForBinary.h
    M llvm/tools/llvm-dwarfutil/DebugInfoLinker.cpp

  Log Message:
  -----------
  [dsymutil] Add --linker parallel to more tests. (#78581)

This patch adds check for parallel linker to tests located in the root
of test/tools/dsymutil.


  Commit: 1715866a94b30f719f8db58591c9adfda6ff0ef6
      https://github.com/llvm/llvm-project/commit/1715866a94b30f719f8db58591c9adfda6ff0ef6
  Author: Yi Wu <43659785+yi-wu-arm at users.noreply.github.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/test/Lower/Intrinsics/execute_command_line-optional.f90
    M flang/test/Lower/Intrinsics/execute_command_line.f90

  Log Message:
  -----------
  fix optional wait wrongly treated as false (#78149)


  Commit: fd9b33754198972b835f05ce58d8bb9f0ac8ff7e
      https://github.com/llvm/llvm-project/commit/fd9b33754198972b835f05ce58d8bb9f0ac8ff7e
  Author: tltao <tony.le.tao at gmail.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

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

  Log Message:
  -----------
  [TLI] Remove leftover assert in TargetLibraryInfoImpl initialize (#79056)

Remove unnecessary assert for a sorted StandardNames after
implementation of getLibFunc is changed from binary search to a DenseMap
Lookup in commit 7d950f040e3da66ec83f91b58d8c2220483d6335.

The original getLibFunc binary search implementation is in commit
c740e3f0d1ca9690100160ed2708d97d3c6562f0.

Co-authored-by: Tony Tao <tonytao at ca.ibm.com>


  Commit: d386c40b23798d6b80de5fea61b541dc8cbae36c
      https://github.com/llvm/llvm-project/commit/d386c40b23798d6b80de5fea61b541dc8cbae36c
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/test/tools/llvm-cov/Inputs/mcdc-maxbs.o
    M llvm/test/tools/llvm-cov/mcdc-maxbs.test

  Log Message:
  -----------
  test/llvm-cov: Regenerate mcdc-maxbs.o w/o zlib (#78963)


  Commit: bb3a515f95513571886bb900d4ddefb9ea5b4bad
      https://github.com/llvm/llvm-project/commit/bb3a515f95513571886bb900d4ddefb9ea5b4bad
  Author: Ivan Kosarev <ivan.kosarev at amd.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/BUFInstructions.td

  Log Message:
  -----------
  [AMDGPU][NFC] Refine determining the vdata operand in MUBUF_Load_Pseudo<>.

A follow-up from <https://github.com/llvm/llvm-project/pull/79025>.


  Commit: 9629c73aeb4609f58aa9edb0b87d18dd9e8fecc0
      https://github.com/llvm/llvm-project/commit/9629c73aeb4609f58aa9edb0b87d18dd9e8fecc0
  Author: Dmitri Gribenko <gribozavr at gmail.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M libcxx/include/__config

  Log Message:
  -----------
  [libc++] Remove a duplicated definition of _LIBCPP_NOINLINE (#79114)

I failed to delete the old definition as a part of
https://github.com/llvm/llvm-project/pull/73838.


  Commit: 3bc86bf3bf742506818cf4d94c9227e4afed6f19
      https://github.com/llvm/llvm-project/commit/3bc86bf3bf742506818cf4d94c9227e4afed6f19
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M libc/fuzzing/stdlib/strtofloat_fuzz.cpp
    M libc/src/__support/FPUtil/DivisionAndRemainderOperations.h
    M libc/src/__support/FPUtil/FPBits.h
    M libc/src/__support/FPUtil/Hypot.h
    M libc/src/__support/FPUtil/ManipulationFunctions.h
    M libc/src/__support/FPUtil/NormalFloat.h
    M libc/src/__support/FPUtil/dyadic_float.h
    M libc/src/__support/FPUtil/except_value_utils.h
    M libc/src/__support/FPUtil/generic/FMA.h
    M libc/src/__support/FPUtil/generic/FMod.h
    M libc/src/__support/FPUtil/generic/sqrt.h
    M libc/src/__support/FPUtil/generic/sqrt_80_bit_long_double.h
    M libc/src/__support/FPUtil/x86_64/NextAfterLongDouble.h
    M libc/src/__support/common.h
    M libc/src/__support/str_to_float.h
    M libc/src/math/generic/acosf.cpp
    M libc/src/math/generic/acoshf.cpp
    M libc/src/math/generic/asinf.cpp
    M libc/src/math/generic/atanhf.cpp
    M libc/src/math/generic/cosf.cpp
    M libc/src/math/generic/coshf.cpp
    M libc/src/math/generic/exp.cpp
    M libc/src/math/generic/exp10.cpp
    M libc/src/math/generic/exp10f_impl.h
    M libc/src/math/generic/exp2.cpp
    M libc/src/math/generic/exp2f_impl.h
    M libc/src/math/generic/expf.cpp
    M libc/src/math/generic/expm1.cpp
    M libc/src/math/generic/expm1f.cpp
    M libc/src/math/generic/log.cpp
    M libc/src/math/generic/log10.cpp
    M libc/src/math/generic/log10f.cpp
    M libc/src/math/generic/log1p.cpp
    M libc/src/math/generic/log1pf.cpp
    M libc/src/math/generic/log2.cpp
    M libc/src/math/generic/log2f.cpp
    M libc/src/math/generic/logf.cpp
    M libc/src/math/generic/powf.cpp
    M libc/src/math/generic/sincosf.cpp
    M libc/src/math/generic/sinf.cpp
    M libc/src/math/generic/sinhf.cpp
    M libc/src/math/generic/tanf.cpp
    M libc/test/UnitTest/FPMatcher.h
    M libc/test/src/__support/FPUtil/fpbits_test.cpp
    M libc/test/src/math/FDimTest.h
    M libc/test/src/math/FmaTest.h
    M libc/test/src/math/HypotTest.h
    M libc/test/src/math/ILogbTest.h
    M libc/test/src/math/LdExpTest.h
    M libc/test/src/math/NextAfterTest.h
    M libc/test/src/math/RIntTest.h
    M libc/test/src/math/RemQuoTest.h
    M libc/test/src/math/RoundToIntegerTest.h
    M libc/test/src/math/differential_testing/BinaryOpSingleOutputDiff.h
    M libc/test/src/math/differential_testing/SingleInputSingleOutputDiff.h
    M libc/test/src/math/smoke/FDimTest.h
    M libc/test/src/math/smoke/FmaTest.h
    M libc/test/src/math/smoke/HypotTest.h
    M libc/test/src/math/smoke/ILogbTest.h
    M libc/test/src/math/smoke/LdExpTest.h
    M libc/test/src/math/smoke/NextAfterTest.h
    M libc/test/src/math/smoke/NextTowardTest.h
    M libc/test/src/math/smoke/RIntTest.h
    M libc/test/src/math/smoke/RemQuoTest.h
    M libc/test/src/math/smoke/RoundToIntegerTest.h
    M libc/test/src/stdio/sprintf_test.cpp
    M libc/test/src/stdio/sscanf_test.cpp
    M libc/utils/MPFRWrapper/MPFRUtils.cpp

  Log Message:
  -----------
  [libc] Remove unnecessary `FPBits` functions and properties (#79113)

This patch reduces the surface of `FPBits`.


  Commit: 626d0fa30addc6e8fb9af4a80df853af645733b4
      https://github.com/llvm/llvm-project/commit/626d0fa30addc6e8fb9af4a80df853af645733b4
  Author: Stefan Gränitz <stefan.graenitz at gmail.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/tools/llvm-jitlink/llvm-jitlink-executor/llvm-jitlink-executor.cpp

  Log Message:
  -----------
  [llvm-jitlink-executor] Fix unused function warning with LLVM_ENABLE_THREADS=0 (NFC)


  Commit: 8e09f13d679df6c34dd03d8ad6116c832318cab0
      https://github.com/llvm/llvm-project/commit/8e09f13d679df6c34dd03d8ad6116c832318cab0
  Author: Stefan Gränitz <stefan.graenitz at gmail.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/unittests/ExecutionEngine/JITLink/EHFrameSupportTests.cpp
    M llvm/unittests/ExecutionEngine/Orc/CoreAPIsTest.cpp

  Log Message:
  -----------
  [OrcJITTests] Fix warning: suggest explicit braces to avoid ambiguous 'else' (NFC)

Likely related to platform-specific expansion of gtest macros:
```
llvm/unittests/ExecutionEngine/Orc/CoreAPIsTest.cpp:1276:12: warning: suggest explicit
braces to avoid ambiguous 'else' [-Wdangling-else]
```


  Commit: b524eed9259e26b5812e2b55cc05e42fda217486
      https://github.com/llvm/llvm-project/commit/b524eed9259e26b5812e2b55cc05e42fda217486
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M libc/fuzzing/stdlib/strtofloat_fuzz.cpp
    M libc/src/__support/FPUtil/DivisionAndRemainderOperations.h
    M libc/src/__support/FPUtil/FPBits.h
    M libc/src/__support/FPUtil/Hypot.h
    M libc/src/__support/FPUtil/ManipulationFunctions.h
    M libc/src/__support/FPUtil/NormalFloat.h
    M libc/src/__support/FPUtil/dyadic_float.h
    M libc/src/__support/FPUtil/except_value_utils.h
    M libc/src/__support/FPUtil/generic/FMA.h
    M libc/src/__support/FPUtil/generic/FMod.h
    M libc/src/__support/FPUtil/generic/sqrt.h
    M libc/src/__support/FPUtil/generic/sqrt_80_bit_long_double.h
    M libc/src/__support/FPUtil/x86_64/NextAfterLongDouble.h
    M libc/src/__support/common.h
    M libc/src/__support/str_to_float.h
    M libc/src/math/generic/acosf.cpp
    M libc/src/math/generic/acoshf.cpp
    M libc/src/math/generic/asinf.cpp
    M libc/src/math/generic/atanhf.cpp
    M libc/src/math/generic/cosf.cpp
    M libc/src/math/generic/coshf.cpp
    M libc/src/math/generic/exp.cpp
    M libc/src/math/generic/exp10.cpp
    M libc/src/math/generic/exp10f_impl.h
    M libc/src/math/generic/exp2.cpp
    M libc/src/math/generic/exp2f_impl.h
    M libc/src/math/generic/expf.cpp
    M libc/src/math/generic/expm1.cpp
    M libc/src/math/generic/expm1f.cpp
    M libc/src/math/generic/log.cpp
    M libc/src/math/generic/log10.cpp
    M libc/src/math/generic/log10f.cpp
    M libc/src/math/generic/log1p.cpp
    M libc/src/math/generic/log1pf.cpp
    M libc/src/math/generic/log2.cpp
    M libc/src/math/generic/log2f.cpp
    M libc/src/math/generic/logf.cpp
    M libc/src/math/generic/powf.cpp
    M libc/src/math/generic/sincosf.cpp
    M libc/src/math/generic/sinf.cpp
    M libc/src/math/generic/sinhf.cpp
    M libc/src/math/generic/tanf.cpp
    M libc/test/UnitTest/FPMatcher.h
    M libc/test/src/__support/FPUtil/fpbits_test.cpp
    M libc/test/src/math/FDimTest.h
    M libc/test/src/math/FmaTest.h
    M libc/test/src/math/HypotTest.h
    M libc/test/src/math/ILogbTest.h
    M libc/test/src/math/LdExpTest.h
    M libc/test/src/math/NextAfterTest.h
    M libc/test/src/math/RIntTest.h
    M libc/test/src/math/RemQuoTest.h
    M libc/test/src/math/RoundToIntegerTest.h
    M libc/test/src/math/differential_testing/BinaryOpSingleOutputDiff.h
    M libc/test/src/math/differential_testing/SingleInputSingleOutputDiff.h
    M libc/test/src/math/smoke/FDimTest.h
    M libc/test/src/math/smoke/FmaTest.h
    M libc/test/src/math/smoke/HypotTest.h
    M libc/test/src/math/smoke/ILogbTest.h
    M libc/test/src/math/smoke/LdExpTest.h
    M libc/test/src/math/smoke/NextAfterTest.h
    M libc/test/src/math/smoke/NextTowardTest.h
    M libc/test/src/math/smoke/RIntTest.h
    M libc/test/src/math/smoke/RemQuoTest.h
    M libc/test/src/math/smoke/RoundToIntegerTest.h
    M libc/test/src/stdio/sprintf_test.cpp
    M libc/test/src/stdio/sscanf_test.cpp
    M libc/utils/MPFRWrapper/MPFRUtils.cpp

  Log Message:
  -----------
  Revert "[libc] Remove unnecessary `FPBits` functions and properties" (#79118)

Reverts llvm/llvm-project#79113
It broke aarch64 build bot machines.


  Commit: 74cb09ff90bff4b91f6c3527fd2715d5d4e77aea
      https://github.com/llvm/llvm-project/commit/74cb09ff90bff4b91f6c3527fd2715d5d4e77aea
  Author: Stephen Tozer <Stephen.Tozer at Sony.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/test/DebugInfo/Generic/assignment-tracking/instcombine/remove-redundant-dbg.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/remove-redundant-dbg.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/user-memcpy.ll

  Log Message:
  -----------
  [RemoveDIs][NFC] Disable RemoveDIs tests that are not yet enabled

As part of a recent patch landing, some tests that are not yet ready
to support RemoveDIs were turned on; this patch disables those tests
in RemoveDIs mode.

Fixes buildbot failure:
https://lab.llvm.org/buildbot/#/builders/275/builds/3640


  Commit: 96adf69ba93965956d1ee507d9f75a453d99b666
      https://github.com/llvm/llvm-project/commit/96adf69ba93965956d1ee507d9f75a453d99b666
  Author: AtariDreams <83477269+AtariDreams at users.noreply.github.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
    M llvm/test/Transforms/InstCombine/shift-logic.ll

  Log Message:
  -----------
  [InstCombine] Remove one-use check if other logic operand is constant (#77973)

By using `match(W, m_ImmConstant())`, we do not need to worry about
one-time use anymore.


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

  Changed paths:
    M clang/include/clang/Lex/Preprocessor.h

  Log Message:
  -----------
  [Lex] Avoid repeated calls to getIdentifierInfo() (NFC)

We're calling it four times in the same function.


  Commit: 1f9de23e94af3ff50f67a3b16be3769919c2e146
      https://github.com/llvm/llvm-project/commit/1f9de23e94af3ff50f67a3b16be3769919c2e146
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/test/Transforms/IndVarSimplify/iv-poison.ll

  Log Message:
  -----------
  [SCEVExp] Add additional tests for hoisting IVs with NSW flags.


  Commit: 13c6f1ea2e7eb15fe492d8fca4fa1857c6f86370
      https://github.com/llvm/llvm-project/commit/13c6f1ea2e7eb15fe492d8fca4fa1857c6f86370
  Author: OCHyams <orlando.hyams at sony.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/IR/DebugInfo.cpp
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
    A llvm/test/CodeGen/AArch64/dbg-assign-tag-offset-mix-loc.ll
    A llvm/test/CodeGen/AArch64/dbg-assign-tag-offset.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/declare-to-assign/hwasan.ll
    A llvm/test/Instrumentation/HWAddressSanitizer/dbg-assign-tag-offset.ll

  Log Message:
  -----------
  Reapply [hwasan] Update dbg.assign intrinsics in HWAsan pass #78606

llvm.dbg.assign intrinsics have 2 {value, expression} pairs; fix hwasan to update
the second expression.

Fixes #76545


  Commit: 3112578597c031e6f00c4b126182bd0d8582c729
      https://github.com/llvm/llvm-project/commit/3112578597c031e6f00c4b126182bd0d8582c729
  Author: Dinar Temirbulatov <Dinar.Temirbulatov at arm.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M compiler-rt/cmake/builtin-config-ix.cmake
    M compiler-rt/lib/builtins/CMakeLists.txt
    A compiler-rt/lib/builtins/aarch64/sme-libc-routines.c
    M compiler-rt/test/CMakeLists.txt
    A compiler-rt/test/builtins/Unit/sme-string-test.cpp
    M compiler-rt/test/lit.common.cfg.py
    M compiler-rt/test/lit.common.configured.in
    M compiler-rt/unittests/lit.common.unit.configured.in

  Log Message:
  -----------
  [AArch64][compiler-rt] Add memcpy, memset, memmove, memchr builtins. (#77496)

Add naive implementation of memcpy, memset, memmove, memchr for SME
targets.
Co-authored-by: David Sherwood <david.sherwood at arm.com>


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

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

  Log Message:
  -----------
  Fix MSVC "result of 32-bit shift implicitly converted to 64 bits" warning. NFC.


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

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/i64-to-float.ll
    M llvm/test/CodeGen/X86/packus.ll
    M llvm/test/CodeGen/X86/sext-vsetcc.ll
    M llvm/test/CodeGen/X86/test-shrink-bug.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-4.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-6.ll
    M llvm/test/CodeGen/X86/vector-shift-ashr-128.ll
    M llvm/test/CodeGen/X86/vector-shift-ashr-256.ll
    M llvm/test/CodeGen/X86/vector-shift-lshr-128.ll
    M llvm/test/CodeGen/X86/vector-shift-lshr-256.ll
    M llvm/test/CodeGen/X86/vector-shift-shl-128.ll
    M llvm/test/CodeGen/X86/vector-shift-shl-256.ll

  Log Message:
  -----------
  [X86] canonicalizeShuffleWithOp - recognise constant vectors with getTargetConstantFromNode

Allows shuffle to fold constant vectors that have already been lowered to constant pool - shuffle combining can then constant fold this.

Noticed while triaging #79100


  Commit: 1652d44d8da83b0a01d5f0b378f10882f5ec8d22
      https://github.com/llvm/llvm-project/commit/1652d44d8da83b0a01d5f0b378f10882f5ec8d22
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M clang/include/clang/AST/Type.h
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/AST/TypePrinter.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaType.cpp
    A clang/test/CodeGen/aarch64-sme2-intrinsics/aarch64-sme2-attrs.cpp
    M clang/test/Sema/aarch64-sme-func-attrs-without-target-feature.cpp
    M clang/test/Sema/aarch64-sme-func-attrs.c

  Log Message:
  -----------
  [Clang] Amend SME attributes with support for ZT0. (#77941)

This patch builds on top of #76971 and implements support for:
* __arm_new("zt0")
* __arm_in("zt0")
* __arm_out("zt0")
* __arm_inout("zt0")
* __arm_preserves("zt0")


  Commit: f47c4067fd30ef4318f6ff4d4afafd1ef8a2e262
      https://github.com/llvm/llvm-project/commit/f47c4067fd30ef4318f6ff4d4afafd1ef8a2e262
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    A llvm/test/Transforms/PhaseOrdering/AArch64/indvars-vectorization.ll

  Log Message:
  -----------
  [PhaseOrder] Add test where indvars dropping NSW prevents vectorization.

End-to-end test for https://github.com/llvm/llvm-project/issues/71517,
testing IndVars/LoopVectorize interaction


  Commit: 082f87c9d418eb7b5a731e16b50e6649e387cb5a
      https://github.com/llvm/llvm-project/commit/082f87c9d418eb7b5a731e16b50e6649e387cb5a
  Author: Saiyedul Islam <Saiyedul.Islam at amd.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Driver/Options.td
    M clang/test/CodeGen/amdgpu-address-spaces.cpp
    M clang/test/CodeGenCUDA/amdgpu-code-object-version.cu
    M clang/test/CodeGenCUDA/amdgpu-workgroup-size.cu
    M clang/test/CodeGenHIP/default-attributes.hip
    M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn.cl
    M flang/test/Driver/driver-help-hidden.f90
    M flang/test/Driver/driver-help.f90
    M llvm/docs/AMDGPUUsage.rst
    M llvm/docs/ReleaseNotes.rst
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M mlir/lib/Dialect/GPU/Transforms/SerializeToHsaco.cpp
    M mlir/lib/Target/LLVMIR/Dialect/ROCDL/ROCDLToLLVMIRTranslation.cpp
    M mlir/test/Target/LLVMIR/rocdl.mlir

  Log Message:
  -----------
  [AMDGPU] Change default AMDHSA Code Object version to 5 (#79038)

Also update LIT tests and docs.
For more details, see
https://llvm.org/docs/AMDGPUUsage.html#code-object-v5-metadata

Corresponding llvm-objdump AMDGPU lit tests are updated
in a follow-up PR.


  Commit: 33ec6b3de7f72bc5da6351538f713777c1f8a199
      https://github.com/llvm/llvm-project/commit/33ec6b3de7f72bc5da6351538f713777c1f8a199
  Author: Saiyedul Islam <Saiyedul.Islam at amd.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/test/tools/llvm-objdump/ELF/AMDGPU/kd-gfx10.s
    M llvm/test/tools/llvm-objdump/ELF/AMDGPU/kd-gfx11.s
    M llvm/test/tools/llvm-objdump/ELF/AMDGPU/kd-gfx12.s
    M llvm/test/tools/llvm-objdump/ELF/AMDGPU/kd-gfx90a.s
    M llvm/test/tools/llvm-objdump/ELF/AMDGPU/kd-sgpr.s
    M llvm/test/tools/llvm-objdump/ELF/AMDGPU/kd-vgpr.s
    M llvm/test/tools/llvm-objdump/ELF/AMDGPU/kd-zeroed-gfx10.s

  Log Message:
  -----------
  [AMDGPU] Update llvm-objdump lit tests for COV5 (#79039)

Depends on #79038 which makes cov5 as the default code
object version.


  Commit: 7ec078ed4b7f6e7f44133a2abbc35c74b67787cc
      https://github.com/llvm/llvm-project/commit/7ec078ed4b7f6e7f44133a2abbc35c74b67787cc
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/Support/Windows/Path.inc

  Log Message:
  -----------
  [Support] Avoid a VirtualBox shared folders mmap bug (#78597)

In acd8791c2619f2afc0347c1bff073b32fbffb5d6, a call to FlushFileBuffers
was added to work around a rare kernel bug. In
3b9b4d2156673edda50584086fbfb0d66460b4d2, the scope of that workaround
was limited, for performance reasons, as the flushes are quite
expensive.

On VirtualBox shared folders, closing a memory mapping that has been
written to, also needs to be explicitly flushed, if renaming the output
file before it is closed. Contrary to the kernel bug, this always
happens on such mounts. In these cases, the output ends up as a file of
the right size, but the contents are all zeros.

The sequence to trigger the issue on the VirtualBox Shared Folders is
this, summarized:

    file = CreateFile()
    mapping = CreateFileMapping(file)
    mem = MapViewOfFile()
    CloseHandle(mapping)
    write(mem)
    UnmapViewOfFile(mem)
    SetFileInformationByHandle(file, FileRenameInfo)
    CloseHandle(file)

With this sequence, the output file always ends up with all zeros. See
https://github.com/mstorsjo/llvm-mingw/issues/393 for a full
reproduction example.

To avoid this issue, call FlushFileBuffers() when the file may reside on
a VitualBox shared folder. As the flushes are expensive, only do them
when the output isn't on a local file system.

The issue with VirtualBox shared folders could also be fixed by calling
FlushViewOfFile before UnmapViewOfFile, and doing that could be slightly
less expensive than FlushFileBuffers.

Empirically, the difference between the two is very small though, and as
it's not easy to verify whether switching FlushFileBuffers to
FlushViewOfFile helps with the rare kernel bug, keep using
FlushFileBuffers for both cases, for code simplicity.

This fixes downstream bug
https://github.com/mstorsjo/llvm-mingw/issues/393.


  Commit: e3d73ad58c41b945d9fc5d5fb16ea44850ccf652
      https://github.com/llvm/llvm-project/commit/e3d73ad58c41b945d9fc5d5fb16ea44850ccf652
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M clang/tools/clang-repl/CMakeLists.txt

  Log Message:
  -----------
  [clang-repl] Fix CMake errors when cross compiling

These stem from 4821c90c24d52d4a42990fd9371caedb157bc58b.

When cross compiling, CMAKE_SYSTEM_PROCESSOR is empty, if the
target processor hasn't been set when setting up the cross
compilation. Ideally, when setting up cross compilation with
CMake, the user is supposed to set CMAKE_SYSTEM_PROCESSOR, but
so far, compilation has worked just fine even without it.

Quote the string where CMAKE_SYSTEM_PROCESSOR is expanded, to
avoid argument errors when it expands to an empty string.


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

  Changed paths:
    M llvm/include/llvm/IR/ProfileSummary.h

  Log Message:
  -----------
  ProfileSummary.h - remove unnecessary std::move.

The constructor args are passed by reference since d6790a0a3ce769fc6f37b2577c074d30cb92dbc2

Fixes MSVC static analysis warning


  Commit: 82f424f766be00b037a706a835d0a0663a2680f1
      https://github.com/llvm/llvm-project/commit/82f424f766be00b037a706a835d0a0663a2680f1
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M clang/include/clang/Driver/Driver.h
    M clang/include/clang/Driver/Options.td
    M clang/lib/Driver/Driver.cpp
    R clang/test/Driver/modules-print-library-module-manifest-path.cpp

  Log Message:
  -----------
  Revert "[clang][modules] Print library module manifest path. (#76451)"

This reverts commit a301fb11014f9cfdf4ee8cada173c46a7677d9d3.

The changes caused failures like:
https://lab.llvm.org/buildbot/#/builders/91/builds/22189


  Commit: 42b0884238aa3149785ac75fe983e3d6c7715a11
      https://github.com/llvm/llvm-project/commit/42b0884238aa3149785ac75fe983e3d6c7715a11
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
    M llvm/test/CodeGen/AMDGPU/vcmpx-permlane-hazard.mir

  Log Message:
  -----------
  [AMDGPU] Handle V_PERMLANE64_B32 in fixVcmpxPermlaneHazards (#79125)

Fixes #78856


  Commit: 52665432842fc187eac6404407df1fa6f37444d6
      https://github.com/llvm/llvm-project/commit/52665432842fc187eac6404407df1fa6f37444d6
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

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

  Log Message:
  -----------
  [RemoveDIs][DebugInfo] Handle DPVAssigns in AssignmentTrackingLowering (#78980)

Following on from the previous patch 6aeb7a7,
this patch adds the necessary code to process the DPV equivalents of
llvm.dbg.assign intrinsics. Most of the content of this patch is simply
duplicating existing functionality, using generic code for simple
functions and PointerUnions where storage is required. The most complex
changes are in the places that iterate over instructions, as iterating
over DPValues between instructions is different to iterating over
instructions that may or may not be debug intrinsics; this is most
complex in `AssignmentTrackingLowering::process`, where I've added some
comments to explain the state of the program at each key point depending
on whether we are operating on intrinsics or DPValues.


  Commit: 4318b033bddc64d5654f3e368fddde859ff4d02e
      https://github.com/llvm/llvm-project/commit/4318b033bddc64d5654f3e368fddde859ff4d02e
  Author: Simon Pilgrim <RKSimon at users.noreply.github.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86MCInstLower.cpp
    M llvm/test/CodeGen/X86/2009-06-12-x86_64-tail-call-conv-out-of-sync-bug.ll
    M llvm/test/CodeGen/X86/2011-10-19-widen_vselect.ll
    M llvm/test/CodeGen/X86/addsub-constant-folding.ll
    M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast.ll
    M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast_from_memory.ll
    M llvm/test/CodeGen/X86/avx2-fma-fneg-combine.ll
    M llvm/test/CodeGen/X86/avx2-vperm.ll
    M llvm/test/CodeGen/X86/avx512-shuffles/partial_permute.ll
    M llvm/test/CodeGen/X86/bitreverse.ll
    M llvm/test/CodeGen/X86/combine-sdiv.ll
    M llvm/test/CodeGen/X86/combine-subo.ll
    M llvm/test/CodeGen/X86/combine-udiv.ll
    M llvm/test/CodeGen/X86/fma-fneg-combine-2.ll
    M llvm/test/CodeGen/X86/fold-int-pow2-with-fmul-or-fdiv.ll
    M llvm/test/CodeGen/X86/fpclamptosat_vec.ll
    M llvm/test/CodeGen/X86/hoist-and-by-const-from-lshr-in-eqcmp-zero.ll
    M llvm/test/CodeGen/X86/icmp-abs-C-vec.ll
    M llvm/test/CodeGen/X86/insert-into-constant-vector.ll
    M llvm/test/CodeGen/X86/masked_store_trunc.ll
    M llvm/test/CodeGen/X86/matrix-multiply.ll
    M llvm/test/CodeGen/X86/oddshuffles.ll
    M llvm/test/CodeGen/X86/omit-urem-of-power-of-two-or-zero-when-comparing-with-zero.ll
    M llvm/test/CodeGen/X86/peephole-fold-movsd.ll
    M llvm/test/CodeGen/X86/pr63108.ll
    M llvm/test/CodeGen/X86/psubus.ll
    M llvm/test/CodeGen/X86/sext-vsetcc.ll
    M llvm/test/CodeGen/X86/shrink_vmul.ll
    M llvm/test/CodeGen/X86/sink-addsub-of-const.ll
    M llvm/test/CodeGen/X86/slow-pmulld.ll
    M llvm/test/CodeGen/X86/srem-seteq-vec-nonsplat.ll
    M llvm/test/CodeGen/X86/sse2.ll
    M llvm/test/CodeGen/X86/urem-seteq-illegal-types.ll
    M llvm/test/CodeGen/X86/urem-seteq-vec-nonsplat.ll
    M llvm/test/CodeGen/X86/vec_fp_to_int.ll
    M llvm/test/CodeGen/X86/vector-blend.ll
    M llvm/test/CodeGen/X86/vector-fshl-512.ll
    M llvm/test/CodeGen/X86/vector-fshr-128.ll
    M llvm/test/CodeGen/X86/vector-fshr-512.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-2.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-4.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i64-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i64-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i64-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i64-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-4.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-4.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-8.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-4.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-8.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-4.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-8.ll
    M llvm/test/CodeGen/X86/vector-mulfix-legalize.ll
    M llvm/test/CodeGen/X86/vector-partial-undef.ll
    M llvm/test/CodeGen/X86/vector-reduce-add-mask.ll
    M llvm/test/CodeGen/X86/vector-replicaton-i1-mask.ll
    M llvm/test/CodeGen/X86/vector-shift-ashr-128.ll
    M llvm/test/CodeGen/X86/vector-shift-ashr-sub128.ll
    M llvm/test/CodeGen/X86/vector-shift-lshr-128.ll
    M llvm/test/CodeGen/X86/vector-shift-lshr-512.ll
    M llvm/test/CodeGen/X86/vector-shift-lshr-sub128.ll
    M llvm/test/CodeGen/X86/vector-shuffle-128-v16.ll
    M llvm/test/CodeGen/X86/vector-shuffle-256-v16.ll
    M llvm/test/CodeGen/X86/vector-shuffle-256-v32.ll
    M llvm/test/CodeGen/X86/vector-shuffle-256-v8.ll
    M llvm/test/CodeGen/X86/vector-shuffle-512-v16.ll
    M llvm/test/CodeGen/X86/vector-shuffle-512-v32.ll
    M llvm/test/CodeGen/X86/vector-shuffle-512-v64.ll
    M llvm/test/CodeGen/X86/vector-shuffle-512-v8.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx2.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-sse41.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-ssse3.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining.ll
    M llvm/test/CodeGen/X86/vector-shuffle-v1.ll
    M llvm/test/CodeGen/X86/vector-shuffle-v192.ll
    M llvm/test/CodeGen/X86/widen_arith-2.ll
    M llvm/test/CodeGen/X86/widen_arith-4.ll
    M llvm/test/CodeGen/X86/widen_arith-5.ll
    M llvm/test/CodeGen/X86/widen_arith-6.ll
    M llvm/test/CodeGen/X86/x86-interleaved-access.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast_from_memory.ll

  Log Message:
  -----------
  [MC][X86] Merge lane/element broadcast comment printers. (#79020)

This is /almost/ NFC - the only annoyance is that for some reason we were using "<C1,C2,..>" for ConstantVector types unlike all other cases - these now use the same "[C1,C2,..]" format as the other constant printers.


  Commit: e7b4ff8119403509da3e7941dcb86b1c6a6d61c5
      https://github.com/llvm/llvm-project/commit/e7b4ff8119403509da3e7941dcb86b1c6a6d61c5
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/vec3-loads-ext-trunc-stores.ll

  Log Message:
  -----------
  [AArch64] Add vec3 tests with add between load and store.

Extra tests for
  https://github.com/llvm/llvm-project/pull/78637
  https://github.com/llvm/llvm-project/pull/78632


  Commit: e60d780f4a9ac6dc79aebe197d3575e9ea636b7f
      https://github.com/llvm/llvm-project/commit/e60d780f4a9ac6dc79aebe197d3575e9ea636b7f
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/utils/gn/secondary/compiler-rt/test/BUILD.gn

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

3ab8d2aac7bc relanded in 3112578597c031, so reland this too.

Might want to set this to True (and add a few source files to
builtins) at some point, but for now heal the bots.


  Commit: 6b02d2f86389d68a0cf2162377c5dda05bd4b68a
      https://github.com/llvm/llvm-project/commit/6b02d2f86389d68a0cf2162377c5dda05bd4b68a
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M libc/fuzzing/stdlib/strtofloat_fuzz.cpp
    M libc/src/__support/FPUtil/DivisionAndRemainderOperations.h
    M libc/src/__support/FPUtil/FPBits.h
    M libc/src/__support/FPUtil/Hypot.h
    M libc/src/__support/FPUtil/ManipulationFunctions.h
    M libc/src/__support/FPUtil/NormalFloat.h
    M libc/src/__support/FPUtil/aarch64/FEnvImpl.h
    M libc/src/__support/FPUtil/dyadic_float.h
    M libc/src/__support/FPUtil/except_value_utils.h
    M libc/src/__support/FPUtil/generic/FMA.h
    M libc/src/__support/FPUtil/generic/FMod.h
    M libc/src/__support/FPUtil/generic/sqrt.h
    M libc/src/__support/FPUtil/generic/sqrt_80_bit_long_double.h
    M libc/src/__support/FPUtil/x86_64/NextAfterLongDouble.h
    M libc/src/__support/common.h
    M libc/src/__support/str_to_float.h
    M libc/src/math/generic/acosf.cpp
    M libc/src/math/generic/acoshf.cpp
    M libc/src/math/generic/asinf.cpp
    M libc/src/math/generic/atanhf.cpp
    M libc/src/math/generic/cosf.cpp
    M libc/src/math/generic/coshf.cpp
    M libc/src/math/generic/exp.cpp
    M libc/src/math/generic/exp10.cpp
    M libc/src/math/generic/exp10f_impl.h
    M libc/src/math/generic/exp2.cpp
    M libc/src/math/generic/exp2f_impl.h
    M libc/src/math/generic/expf.cpp
    M libc/src/math/generic/expm1.cpp
    M libc/src/math/generic/expm1f.cpp
    M libc/src/math/generic/log.cpp
    M libc/src/math/generic/log10.cpp
    M libc/src/math/generic/log10f.cpp
    M libc/src/math/generic/log1p.cpp
    M libc/src/math/generic/log1pf.cpp
    M libc/src/math/generic/log2.cpp
    M libc/src/math/generic/log2f.cpp
    M libc/src/math/generic/logf.cpp
    M libc/src/math/generic/powf.cpp
    M libc/src/math/generic/sincosf.cpp
    M libc/src/math/generic/sinf.cpp
    M libc/src/math/generic/sinhf.cpp
    M libc/src/math/generic/tanf.cpp
    M libc/test/UnitTest/FPMatcher.h
    M libc/test/src/__support/FPUtil/fpbits_test.cpp
    M libc/test/src/math/FDimTest.h
    M libc/test/src/math/FmaTest.h
    M libc/test/src/math/HypotTest.h
    M libc/test/src/math/ILogbTest.h
    M libc/test/src/math/LdExpTest.h
    M libc/test/src/math/NextAfterTest.h
    M libc/test/src/math/RIntTest.h
    M libc/test/src/math/RemQuoTest.h
    M libc/test/src/math/RoundToIntegerTest.h
    M libc/test/src/math/differential_testing/BinaryOpSingleOutputDiff.h
    M libc/test/src/math/differential_testing/SingleInputSingleOutputDiff.h
    M libc/test/src/math/smoke/FDimTest.h
    M libc/test/src/math/smoke/FmaTest.h
    M libc/test/src/math/smoke/HypotTest.h
    M libc/test/src/math/smoke/ILogbTest.h
    M libc/test/src/math/smoke/LdExpTest.h
    M libc/test/src/math/smoke/NextAfterTest.h
    M libc/test/src/math/smoke/NextTowardTest.h
    M libc/test/src/math/smoke/RIntTest.h
    M libc/test/src/math/smoke/RemQuoTest.h
    M libc/test/src/math/smoke/RoundToIntegerTest.h
    M libc/test/src/stdio/sprintf_test.cpp
    M libc/test/src/stdio/sscanf_test.cpp
    M libc/utils/MPFRWrapper/MPFRUtils.cpp

  Log Message:
  -----------
  [reland][libc] Remove unnecessary `FPBits` functions and properties (#79128)

- reland #79113
- Fix aarch64 RISC-V build


  Commit: d2398cca6f716bb48f11500faf90f087f5b5f5d1
      https://github.com/llvm/llvm-project/commit/d2398cca6f716bb48f11500faf90f087f5b5f5d1
  Author: Saiyedul Islam <Saiyedul.Islam at amd.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M mlir/lib/Target/LLVMIR/Dialect/ROCDL/ROCDLToLLVMIRTranslation.cpp
    M mlir/test/Target/LLVMIR/rocdl.mlir

  Log Message:
  -----------
  Restore: [mlir][ROCDL] Stop setting amdgpu-implicitarg-num-bytes (#79129)

This patch restores PR#78498


  Commit: 55f12299d890078708eb6d2e069dc117ad244d4d
      https://github.com/llvm/llvm-project/commit/55f12299d890078708eb6d2e069dc117ad244d4d
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/Attributor/nofpclass-implied-by-fcmp.ll
    M llvm/test/Transforms/InstCombine/and-fcmp.ll
    M llvm/unittests/Analysis/ValueTrackingTest.cpp

  Log Message:
  -----------
  ValueTracking: Recognize fcmp ole/ugt with inf as a class test (#79095)

These were missed and hopefully avoids assertions when
dc3faf0ed0e3f1ea9e435a006167d9649f865da1 is recommitted.


  Commit: 10f3296dd7d74c975f208a8569221dc8f96d1db1
      https://github.com/llvm/llvm-project/commit/10f3296dd7d74c975f208a8569221dc8f96d1db1
  Author: Alexandre Ganea <37383324+aganea at users.noreply.github.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M openmp/cmake/HandleOpenMPOptions.cmake
    M openmp/runtime/src/kmp_affinity.cpp
    M openmp/runtime/src/kmp_barrier.cpp
    M openmp/runtime/src/kmp_io.cpp
    M openmp/runtime/src/kmp_os.h
    M openmp/runtime/src/kmp_settings.cpp
    M openmp/runtime/src/kmp_wait_release.h
    M openmp/runtime/src/z_Windows_NT_util.cpp

  Log Message:
  -----------
  [openmp] Fix warnings when building on Windows with latest MSVC or Clang ToT (#77853)

There were quite a few compilation warnings when building openmp on Windows with
the latest Visual Studios 2022 version 17.8.4. Some other warnings were visible
with the latest Clang at tip. This commit fixes all of them.


  Commit: 16df714e77e8d31619445e5f6d87d89da962eec4
      https://github.com/llvm/llvm-project/commit/16df714e77e8d31619445e5f6d87d89da962eec4
  Author: Danial Klimkin <dklimkin at users.noreply.github.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/test/CodeGen/Thumb/stack_guard_remat.ll

  Log Message:
  -----------
  [test] Update stack_guard_remat.ll (#79139)

Replace cp with a cat. This allows to create a writable file when the
original one is read-only.


  Commit: 94f960925b7f609636fc2ffd83053814d5e45ed1
      https://github.com/llvm/llvm-project/commit/94f960925b7f609636fc2ffd83053814d5e45ed1
  Author: Alexandre Ganea <alex_toresh at yahoo.fr>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M openmp/cmake/HandleOpenMPOptions.cmake
    M openmp/runtime/src/kmp_affinity.cpp
    M openmp/runtime/src/kmp_barrier.cpp
    M openmp/runtime/src/kmp_io.cpp
    M openmp/runtime/src/kmp_os.h
    M openmp/runtime/src/kmp_settings.cpp
    M openmp/runtime/src/kmp_wait_release.h
    M openmp/runtime/src/z_Windows_NT_util.cpp

  Log Message:
  -----------
  Revert 10f3296dd7d74c975f208a8569221dc8f96d1db1 - [openmp] Fix warnings when building on Windows with latest MSVC or Clang ToT (#77853)

It broke the AMDGPU buildbot: https://lab.llvm.org/buildbot/#/builders/193/builds/45378


  Commit: e96242b4e4306ba690f9e2e8f12758da8f63805e
      https://github.com/llvm/llvm-project/commit/e96242b4e4306ba690f9e2e8f12758da8f63805e
  Author: Paul T Robinson <paul.robinson at sony.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

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

  Log Message:
  -----------
  [Headers][X86] Add macro descriptions to bmiintrin.h (#79048)

These are largely copy-pasted from the corresponding function
descriptions. Added \see cross-references. Also changed <c> tags to \c.


  Commit: d38c61a13d89ec57b80e5174029b63071c6d7290
      https://github.com/llvm/llvm-project/commit/d38c61a13d89ec57b80e5174029b63071c6d7290
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp

  Log Message:
  -----------
  [clang][Interp][NFC] Move ToVoid casts to the bottom

So we have all the complex casts together.


  Commit: 654131fab22e71f156d8fa9d37389622f1652438
      https://github.com/llvm/llvm-project/commit/654131fab22e71f156d8fa9d37389622f1652438
  Author: OldWorldOrdr <joey.t.reinhart at gmail.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M lld/test/MachO/link-csu-object.s

  Log Message:
  -----------
  fix test (#79018)

Mistake with #78628 that got caught after being merged


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

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineOutliner.h
    M llvm/lib/CodeGen/MachineOutliner.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/X86/X86InstrInfo.cpp

  Log Message:
  -----------
  [MachineOutliner] Refactor iterating over Candidate's instructions (#78972)

Make Candidate's front() and back() functions return references to
MachineInstr and introduce begin() and end() returning iterators, the
same way it is usually done in other container-like classes.

This makes possible to iterate over the instructions contained in
Candidate the same way one can iterate over MachineBasicBlock (note that
begin() and end() return bundled iterators, just like MachineBasicBlock
does, but no instr_begin() and instr_end() are defined yet).


  Commit: 818f13fc00bb29df98d730dca6561014db1d4e26
      https://github.com/llvm/llvm-project/commit/818f13fc00bb29df98d730dca6561014db1d4e26
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h

  Log Message:
  -----------
  [AMDGPU] Remove getWorkGroupIDSGPR, unused since aa6fb4c45e01


  Commit: 30845e8ab46c416a2e333eb84239e9ec71e92617
      https://github.com/llvm/llvm-project/commit/30845e8ab46c416a2e333eb84239e9ec71e92617
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/test/DebugInfo/assignment-tracking/AArch64/scalable-vectors.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/DSE.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/assignment-tracking-not-enabled.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/coalesce-cfg.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/dbg-phi-produces-undef.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/diamond-1.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/diamond-2.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/diamond-3.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/frag-size-zero.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/global-storage.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/large-type.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/loop-hoist.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/loop-sink.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/loop-unroll.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/lower-offset-expression.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/lower-to-value.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/mem-loc-frag-fill-cfg.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/mem-loc-frag-fill.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/negative-offset.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/nested-loop-frags.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/nested-loop-sroa.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/nested-loop.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/no-redundant-def-after-alloca.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/order-of-defs.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/remove-redundant-defs-bwd-scan.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/remove-redundant-defs-to-prevent-reordering.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/sdag-dangling-dbgassign.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/sdag-ir-salvage-assign.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/sdag-transfer-dbgassign.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/single-memory-location-2.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/single-memory-location.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/split-alloca.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/untagged-store-assignment-extra-checks.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/untagged-store-assignment-outside-variable.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/use-known-value-at-early-mem-def-2.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/use-known-value-at-early-mem-def.ll

  Log Message:
  -----------
  [RemoveDIs][DebugInfo] Handle DPVAssigns in Assignment Tracking excluding lowering (#78982)

This patch adds support for DPVAssigns across all of
AssignmentTrackingAnalysis except for AssignmentTrackingLowering, which
is implemented in a separate patch. This patch includes handling
DPValues in MemLocFragFill, the removal of redundant DPValues as part of
AssignmentTrackingAnalysis (which is different to the version in
`BasicBlockUtils.cpp`), and preventing the DPVAssigns from being
directly emitted in SelectionDAG (just as we don't emit llvm.dbg.assigns
directly, but receive a set of locations from
AssignmentTrackingAnalysis' output).


  Commit: 40bdfd39e394baa08fa67c5943c1b53c66c94bed
      https://github.com/llvm/llvm-project/commit/40bdfd39e394baa08fa67c5943c1b53c66c94bed
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    A llvm/test/tools/llvm-reduce/remove-dp-values.ll
    M llvm/tools/llvm-reduce/CMakeLists.txt
    M llvm/tools/llvm-reduce/DeltaManager.cpp
    A llvm/tools/llvm-reduce/deltas/ReduceDPValues.cpp
    A llvm/tools/llvm-reduce/deltas/ReduceDPValues.h
    M llvm/tools/llvm-reduce/llvm-reduce.cpp

  Log Message:
  -----------
  [llvm-reduce][DebugInfo] Support reducing non-instruction debug-info (#78995)

LLVM will shortly be able to represent variable locations without
encoding information into intrinsics -- they'll be stored as DPValue
objects instead. We'll still need to be able to llvm-reduce these
variable location assignments just like we can with intrinsics today,
thus, here's an llvm-reduce pass that enumerates and reduces the DPValue
objects.

The test for this is paradoxically written with dbg.value intrinsics:
this is because we're changing all the core parts of LLVM to support
this first, with the textual IR format coming last. Until that arrives,
testing the llvm-reduce'ing of DPValues needs the added test using
intrinsics. We should be able to drop the variable assignment using
%alsoloaded using this method. As with the other llvm-reduce tests, I've
got one set of check lines for making the reduction happen as desired,
and the other set to check the final output.


  Commit: 6bbaad1ed402490a648ca184a1f945988789b7a1
      https://github.com/llvm/llvm-project/commit/6bbaad1ed402490a648ca184a1f945988789b7a1
  Author: Lucas Duarte Prates <lucas.prates at arm.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M clang/lib/Basic/Targets/ARM.cpp
    M clang/test/CodeGen/arm-acle-coproc.c
    M clang/test/Driver/arm-cortex-cpus-1.c
    M clang/test/Preprocessor/arm-target-features.c
    M llvm/include/llvm/TargetParser/ARMTargetParser.def
    M llvm/lib/Target/ARM/ARM.td
    M llvm/lib/Target/ARM/ARMSubtarget.h
    M llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp
    M llvm/lib/TargetParser/ARMTargetParser.cpp
    M llvm/lib/TargetParser/Triple.cpp
    M llvm/unittests/TargetParser/TargetParserTest.cpp

  Log Message:
  -----------
  [ARM] Introduce the v9.5-A architecture version to Arm targets (#78994)

This introduces the Armv9.5-A architecture version to the Arm backend,
following on from the existing implementation for AArch64 targets.

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


  Commit: f2a2f8082bbb16fadf3583f7ac1b85e3e93a9f4c
      https://github.com/llvm/llvm-project/commit/f2a2f8082bbb16fadf3583f7ac1b85e3e93a9f4c
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

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

  Log Message:
  -----------
  [CMake][PGO] Add libunwind to list of stage1 runtimes (#78869)

This fixes the build since 8f90e6937a1fac80873bb2dab5f382c82ba1ba4e
which made libcxxabi use llvm's libunwind by default.

Fixes #78487


  Commit: c173a5bdc422ed457a04b68ec7c136add9eee11c
      https://github.com/llvm/llvm-project/commit/c173a5bdc422ed457a04b68ec7c136add9eee11c
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

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

  Log Message:
  -----------
  [gn build] Port 40bdfd39e394


  Commit: 9edd1c4daeba59b3db3390d449543b71c73f161b
      https://github.com/llvm/llvm-project/commit/9edd1c4daeba59b3db3390d449543b71c73f161b
  Author: Saiyedul Islam <Saiyedul.Islam at amd.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M mlir/lib/Target/LLVM/ROCDL/Target.cpp

  Log Message:
  -----------
  [MLIR][AMDGPU] Switch to code object version 5 (#79144)

As AMDGPU backend has moved to cov5 as default, mlir should also switch
to it.


  Commit: 087172258a50d5bcabe43aff072a20701f0808ef
      https://github.com/llvm/llvm-project/commit/087172258a50d5bcabe43aff072a20701f0808ef
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/IRTranslator.h
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-shift-of-shifted-dbg-value-fallback.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/debug-cpp.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/debug-insts.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-dilocation.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-extract-used-by-dbg.ll
    M llvm/test/CodeGen/X86/GlobalISel/x86-calllowering-dbg-trunc.ll

  Log Message:
  -----------
  [DebugInfo][RemoveDIs] Handle non-instr debug-info in GlobalISel (#75228)

The RemoveDIs project is aiming to eliminate debug intrinsics like
dbg.value and dbg.declare from LLVM, and replace them with DPValue objects
attached to instructions. ISel is one of the "terminals" where that
information needs to be converted into MIR format: this patch implements
support for that in GlobalISel. We aim for the output of LLVM to be
identical with/without RemoveDIs debug-info.

This patch should be NFC, as we're handling the same data about variables
stored in a different format -- it now appears in a DPValue object rather
than as an intrinsic. To that end, I've refactored the handling of
dbg.values into a dedicated function, and call it whenever a dbg.value or a
DPValue is encountered. dbg.declare is handled in a similar way.

Testing: adding the --try-experimental-debuginfo-iterators switch to llc
causes it to try and convert to the "new" debug-info format if it's built
in (LLVM_EXPERIMENTAL_DEBUGINFO_ITERATORS=On), and it'll be covered by our
buildbot. One test has a few extra wildcard-regexes added: this is because
there's some extra data printed about attached debug-info, which is safe to
ignore.


  Commit: 10a3e9138ec9fd9f3f563bb1b6e014f4e3d4ebc9
      https://github.com/llvm/llvm-project/commit/10a3e9138ec9fd9f3f563bb1b6e014f4e3d4ebc9
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M libc/src/__support/FPUtil/arm/FEnvImpl.h

  Log Message:
  -----------
  [libc] Fix forward arm32 buildbot (#79151)

Fix forward #79128


  Commit: 5f47687c82e6a9246f9fd852185fbba43385abe3
      https://github.com/llvm/llvm-project/commit/5f47687c82e6a9246f9fd852185fbba43385abe3
  Author: Dinar Temirbulatov <Dinar.Temirbulatov at arm.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M compiler-rt/unittests/lit.common.unit.configured.in

  Log Message:
  -----------
  Remove config.aarch64_sme from compiler-rt/unittests/lit.common.unit.configured.in


  Commit: 291ac25298f797f99d880833c20756d82d779c02
      https://github.com/llvm/llvm-project/commit/291ac25298f797f99d880833c20756d82d779c02
  Author: Qiongsi Wu <274595+qiongsiwu at users.noreply.github.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M compiler-rt/test/profile/instrprof-api.c

  Log Message:
  -----------
  [PGO] Remove calls to `__llvm_orderfile_dump()` in `instrprof-api.c` test (#79150)

https://github.com/llvm/llvm-project/pull/78285 added a test which calls
`__llvm_orderfile_dump()`, a functionality that is not supported on many
platforms. This PR removes the call to `__llvm_orderfile_dump()` to
avoid it failing on unsupported platforms, and turn on the test for
Windows, so we test the rest of the API that are supported.


  Commit: 77e204c7b04f1f516db9a1dd5602e4a853bb0d1c
      https://github.com/llvm/llvm-project/commit/77e204c7b04f1f516db9a1dd5602e4a853bb0d1c
  Author: Kyungwoo Lee <kyulee at meta.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M lld/MachO/Arch/ARM64.cpp
    M lld/MachO/Arch/ARM64Common.h
    M lld/MachO/Arch/ARM64_32.cpp
    M lld/MachO/Arch/X86_64.cpp
    M lld/MachO/Driver.cpp
    M lld/MachO/SyntheticSections.cpp
    M lld/MachO/SyntheticSections.h
    M lld/MachO/Target.h
    A lld/test/MachO/arm64-objc-stubs-dyn.s
    M lld/test/MachO/arm64-objc-stubs.s
    M lld/test/MachO/x86-64-objc-stubs.s

  Log Message:
  -----------
  [lld-macho][arm64] implement -objc_stubs_small (#78665)

This patch implements `-objc_stubs_small` targeting arm64, aiming to
align with ld64's behavior.
1. `-objc_stubs_fast`: As previously implemented, this always uses the
Global Offset Table (GOT) to invoke `objc_msgSend`. The alignment of the
objc stub is 32 bytes.
2. `-objc_stubs_small`: This behavior depends on whether `objc_msgSend`
is defined. If it is, it directly jumps to `objc_msgSend`. If not, it
creates another stub to indirectly jump to `objc_msgSend`, minimizing
the size. The alignment of the objc stub in this case is 4 bytes.


  Commit: dffa8039b10823f67347453a0ef445ee785ed4aa
      https://github.com/llvm/llvm-project/commit/dffa8039b10823f67347453a0ef445ee785ed4aa
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M libc/src/__support/FPUtil/DivisionAndRemainderOperations.h
    M libc/src/__support/FPUtil/generic/sqrt.h
    M libc/src/__support/FPUtil/generic/sqrt_80_bit_long_double.h
    M libc/test/UnitTest/FPMatcher.h
    M libc/test/src/__support/FPUtil/fpbits_test.cpp
    M libc/test/src/math/FDimTest.h
    M libc/test/src/math/FmaTest.h
    M libc/test/src/math/HypotTest.h
    M libc/test/src/math/ILogbTest.h
    M libc/test/src/math/LdExpTest.h
    M libc/test/src/math/NextAfterTest.h
    M libc/test/src/math/RIntTest.h
    M libc/test/src/math/RemQuoTest.h
    M libc/test/src/math/RoundToIntegerTest.h
    M libc/test/src/math/smoke/FDimTest.h
    M libc/test/src/math/smoke/FmaTest.h
    M libc/test/src/math/smoke/HypotTest.h
    M libc/test/src/math/smoke/ILogbTest.h
    M libc/test/src/math/smoke/LdExpTest.h
    M libc/test/src/math/smoke/NextAfterTest.h
    M libc/test/src/math/smoke/NextTowardTest.h
    M libc/test/src/math/smoke/RIntTest.h
    M libc/test/src/math/smoke/RemQuoTest.h
    M libc/test/src/math/smoke/RoundToIntegerTest.h

  Log Message:
  -----------
  [libc] Remove specific nan payload in math functions (#79133)


  Commit: 2cff46f8c0aa88222aba776de094c650aa09a33d
      https://github.com/llvm/llvm-project/commit/2cff46f8c0aa88222aba776de094c650aa09a33d
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M libc/test/UnitTest/ErrnoSetterMatcher.h

  Log Message:
  -----------
  [libc][NFC] use builder pattern for ErrnoSetterMatcher (#79153)

ErrnoSetterMatcher::returns can be misleading as it does not initialize
the errno. This is made worse as later on there is a switch statement on
the errno comparator using __builtin_unreachable(). This patch make
ErrnoSetterMatcher::returns give back a builder that is nomially
different from ErrnoSetterMatcher.


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

  Changed paths:
    A llvm/test/CodeGen/X86/pr78897.ll

  Log Message:
  -----------
  [X86] Add test case for Issue #78897


  Commit: 179ba129f50aefe6e670800aec7091d958aa6f90
      https://github.com/llvm/llvm-project/commit/179ba129f50aefe6e670800aec7091d958aa6f90
  Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M clang/test/CodeGen/attr-target-version.c
    M clang/test/Sema/attr-target-clones-aarch64.c
    M clang/test/SemaCXX/attr-target-version.cpp
    M compiler-rt/lib/builtins/cpu_model/aarch64.c
    M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/mrs.inc
    M compiler-rt/lib/builtins/cpu_model/aarch64/hwcap.inc
    M llvm/include/llvm/TargetParser/AArch64TargetParser.h

  Log Message:
  -----------
  [AArch64][FMV] Support feature MOPS in Function Multi Versioning. (#78788)

The patch adds support for FEAT_MOPS (Memory Copy and Memory Set
instructions) in Function Multi Versioning. The bits [19:16] of the
system register ID_AA64ISAR2_EL1 indicate whether FEAT_MOPS is
implemented in AArch64 state. This information is accessible via ELF
hwcaps.


  Commit: 0c02b2e0e0397b5d73dc4c8cc10561f05789ee41
      https://github.com/llvm/llvm-project/commit/0c02b2e0e0397b5d73dc4c8cc10561f05789ee41
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    A llvm/test/Analysis/LoopAccessAnalysis/noalias-scope-decl.ll

  Log Message:
  -----------
  [LAA] Add test for #79137 (NFC)


  Commit: 6ad4ed5f1dd0a8160cd3c7b75e63a0e2f6061b5b
      https://github.com/llvm/llvm-project/commit/6ad4ed5f1dd0a8160cd3c7b75e63a0e2f6061b5b
  Author: Paschalis Mpeis <paschalis.mpeis at arm.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

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

  Log Message:
  -----------
  [VecLib] Fix: Restore DebugFlag state in ReplaceWithVecLibTest (#78989)

It appears that Google Tests run multiple modules from the same
invocation.
As a result setting `llvm::DebugFlag` in this pass kept it on in
subsequent passes, which is not the expected behavior.


  Commit: 632f44e5edee6395ef26953d41a0e681a121aad3
      https://github.com/llvm/llvm-project/commit/632f44e5edee6395ef26953d41a0e681a121aad3
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/Scalar/ADCE.cpp
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
    M llvm/lib/Transforms/Utils/CodeExtractor.cpp
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    M llvm/lib/Transforms/Utils/Local.cpp
    M llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Utils/ValueMapper.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/DebugInfo/Generic/assignment-tracking/adce/no-delete.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/dse/dse-after-memcpyopt-merge.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/dse/shorten-offset.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/dse/shorten.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/inline/id.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/inline/inline-stores.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/inline/shared-alloca.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/inline/use-before-def.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/instcombine/do-not-remove-redundant-dbg.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/instcombine/memset.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/instcombine/sink-store.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/instcombine/sink.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/instcombine/store-new-type.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/instcombine/storemerge.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/licm/merge.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/licm/multi-exit.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/loop-deletion/dead-loop.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/mem2reg/phi.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/mem2reg/single-block-alloca.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/mem2reg/single-store-alloca.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/mem2reg/store-to-part-of-alloca.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/memcpyopt/merge-stores.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/mldst-motion/diamond.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/parse-and-verify/instruction-type.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/parse-and-verify/verify.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/remove-redundant-fwd-scan-linked.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/salvage-value.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/simplifycfg/empty-block.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/simplifycfg/speculated-store.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/slp-vectorizer/merge-scalars.ll
    M llvm/test/Transforms/HotColdSplit/invalid-dbg-assign.ll

  Log Message:
  -----------
  [RemoveDIs][DebugInfo] Handle DPVAssign in most transforms (#78986)

This patch trivially updates various opt passes to handle DPVAssigns. In
all cases, this means some combination of generifying existing code to
handle DPValues and DbgAssignIntrinsics, iterating over DPValues where
previously we did not, or duplicating code for DbgAssignIntrinsics to
the equivalent DPValue function (in inlining and salvageDebugInfo).


  Commit: 6bb7d515c3577afbae9293caa050e02643a19355
      https://github.com/llvm/llvm-project/commit/6bb7d515c3577afbae9293caa050e02643a19355
  Author: Mirko Brkušanin <Mirko.Brkusanin at amd.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNDPPCombine.cpp
    M llvm/test/CodeGen/AMDGPU/dpp_combine_gfx11.mir

  Log Message:
  -----------
  [AMDGPU] Properly check op_sel in GCNDPPCombine (#79122)


  Commit: 4782ac8dd3cfa96e14ad4eff1389bbcfda27240f
      https://github.com/llvm/llvm-project/commit/4782ac8dd3cfa96e14ad4eff1389bbcfda27240f
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/Transforms/IPO/IROutliner.cpp
    M llvm/test/Transforms/IROutliner/legal-debug.ll

  Log Message:
  -----------
  [DebugInfo][RemoveDIs] Use splice in Outliner rather than moveBefore (#79124)

This patch replaces a utility in the outliner that moves the contents of
one basic block into another basic block, with a call to splice instead.
I think it's NFC, however I'd like a second pair of eyes to look at it
just in case.

The reason for doing this is an edge case in the handling of DPValue
objects, the replacement for dbg.values. If there's a variable
assignment "dangling" at the end of a block (which happens when we
delete the terminator), inserting instructions at end() doesn't shift
the DPValue up into the block. We could probably fix this; but it's much
easier to use splice at the only call site that does this.

Patch adds --try-experimental-debuginfo-iterators to a test to exercise
this code path.


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

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

  Log Message:
  -----------
  [DAG] visitSCALAR_TO_VECTOR - don't fold scalar_to_vector(bin(extract(x),extract(y)) -> bin(x,y) if extracts have other uses

Fixes #78897 - although the test case still has a number of poor codegen issues (in particular for i686 triples) that will need addressing (combining the nodes in topological order should help).


  Commit: 2856db0d3b691907e055265c10f3ccc9b04f594e
      https://github.com/llvm/llvm-project/commit/2856db0d3b691907e055265c10f3ccc9b04f594e
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M libc/src/__support/FPUtil/BasicOperations.h
    M libc/src/__support/FPUtil/DivisionAndRemainderOperations.h
    M libc/src/__support/FPUtil/FPBits.h
    M libc/src/__support/FPUtil/Hypot.h
    M libc/src/__support/FPUtil/ManipulationFunctions.h
    M libc/src/__support/FPUtil/NearestIntegerOperations.h
    M libc/src/__support/FPUtil/NormalFloat.h
    M libc/src/__support/FPUtil/generic/FMA.h
    M libc/src/__support/str_to_float.h
    M libc/src/math/generic/exp.cpp
    M libc/src/math/generic/exp10.cpp
    M libc/src/math/generic/exp2.cpp
    M libc/src/math/generic/expf.cpp
    M libc/src/math/generic/hypotf.cpp
    M libc/src/math/generic/log10f.cpp
    M libc/src/math/generic/log1pf.cpp
    M libc/src/math/generic/log2f.cpp
    M libc/src/math/generic/logf.cpp
    M libc/src/math/generic/range_reduction_fma.h
    M libc/src/stdio/printf_core/float_dec_converter.h
    M libc/test/UnitTest/FPMatcher.h
    M libc/test/src/math/CeilTest.h
    M libc/test/src/math/CopySignTest.h
    M libc/test/src/math/FAbsTest.h
    M libc/test/src/math/FDimTest.h
    M libc/test/src/math/FMaxTest.h
    M libc/test/src/math/FMinTest.h
    M libc/test/src/math/FloorTest.h
    M libc/test/src/math/FmaTest.h
    M libc/test/src/math/FrexpTest.h
    M libc/test/src/math/HypotTest.h
    M libc/test/src/math/ILogbTest.h
    M libc/test/src/math/LdExpTest.h
    M libc/test/src/math/LogbTest.h
    M libc/test/src/math/ModfTest.h
    M libc/test/src/math/NextAfterTest.h
    M libc/test/src/math/RIntTest.h
    M libc/test/src/math/RemQuoTest.h
    M libc/test/src/math/RoundTest.h
    M libc/test/src/math/RoundToIntegerTest.h
    M libc/test/src/math/SqrtTest.h
    M libc/test/src/math/TruncTest.h
    M libc/test/src/math/acosf_test.cpp
    M libc/test/src/math/acoshf_test.cpp
    M libc/test/src/math/asinf_test.cpp
    M libc/test/src/math/asinhf_test.cpp
    M libc/test/src/math/atanf_test.cpp
    M libc/test/src/math/atanhf_test.cpp
    M libc/test/src/math/cos_test.cpp
    M libc/test/src/math/cosf_test.cpp
    M libc/test/src/math/coshf_test.cpp
    M libc/test/src/math/erff_test.cpp
    M libc/test/src/math/exhaustive/exhaustive_test.h
    M libc/test/src/math/exhaustive/hypotf_test.cpp
    M libc/test/src/math/exhaustive/sincosf_test.cpp
    M libc/test/src/math/exp10_test.cpp
    M libc/test/src/math/exp10f_test.cpp
    M libc/test/src/math/exp2_test.cpp
    M libc/test/src/math/exp2f_test.cpp
    M libc/test/src/math/exp_test.cpp
    M libc/test/src/math/expf_test.cpp
    M libc/test/src/math/expm1_test.cpp
    M libc/test/src/math/expm1f_test.cpp
    M libc/test/src/math/log10_test.cpp
    M libc/test/src/math/log10f_test.cpp
    M libc/test/src/math/log1p_test.cpp
    M libc/test/src/math/log1pf_test.cpp
    M libc/test/src/math/log2_test.cpp
    M libc/test/src/math/log2f_test.cpp
    M libc/test/src/math/log_test.cpp
    M libc/test/src/math/logf_test.cpp
    M libc/test/src/math/sin_test.cpp
    M libc/test/src/math/sincosf_test.cpp
    M libc/test/src/math/sinf_test.cpp
    M libc/test/src/math/sinhf_test.cpp
    M libc/test/src/math/smoke/FDimTest.h
    M libc/test/src/math/smoke/FMaxTest.h
    M libc/test/src/math/smoke/FMinTest.h
    M libc/test/src/math/smoke/FmaTest.h
    M libc/test/src/math/smoke/HypotTest.h
    M libc/test/src/math/smoke/ILogbTest.h
    M libc/test/src/math/smoke/LdExpTest.h
    M libc/test/src/math/smoke/LogbTest.h
    M libc/test/src/math/smoke/ModfTest.h
    M libc/test/src/math/smoke/NextAfterTest.h
    M libc/test/src/math/smoke/NextTowardTest.h
    M libc/test/src/math/smoke/RIntTest.h
    M libc/test/src/math/smoke/RemQuoTest.h
    M libc/test/src/math/smoke/RoundToIntegerTest.h
    M libc/test/src/math/smoke/coshf_test.cpp
    M libc/test/src/math/smoke/exp10f_test.cpp
    M libc/test/src/math/smoke/exp2f_test.cpp
    M libc/test/src/math/smoke/expf_test.cpp
    M libc/test/src/math/smoke/expm1f_test.cpp
    M libc/test/src/math/smoke/sinhf_test.cpp
    M libc/test/src/math/tan_test.cpp
    M libc/test/src/math/tanf_test.cpp
    M libc/test/src/math/tanhf_test.cpp
    M libc/test/src/stdlib/atof_test.cpp
    M libc/test/src/stdlib/strtod_test.cpp
    M libc/test/src/stdlib/strtof_test.cpp
    M libc/utils/MPFRWrapper/MPFRUtils.cpp

  Log Message:
  -----------
  [libc][NFC] Remove `FPBits` cast operator (#79142)

The semantics for casting can range from "bitcast" (same representation)
to "different representation", to "type promotion". Here we remove the
cast operator and force usage of `get_val` as the only function to get
the floating point value, making the intent clearer and more consistent.


  Commit: 6cf37dd504d0466bd9f34e29712d60759ef8180f
      https://github.com/llvm/llvm-project/commit/6cf37dd504d0466bd9f34e29712d60759ef8180f
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/test/CodeGen/AMDGPU/indirect-call-known-callees.ll
    M llvm/test/CodeGen/AMDGPU/lower-work-group-id-intrinsics.ll
    M llvm/test/CodeGen/AMDGPU/workgroup-id-in-arch-sgprs.ll

  Log Message:
  -----------
  [AMDGPU] Enable architected SGPRs for GFX12 (#79160)


  Commit: d3a6a90ae5e80b074293ebfbcb2f15da9c57acc5
      https://github.com/llvm/llvm-project/commit/d3a6a90ae5e80b074293ebfbcb2f15da9c57acc5
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/IR/BasicBlock.cpp
    M llvm/lib/IR/DebugInfo.cpp
    M llvm/test/DebugInfo/Generic/assignment-tracking/declare-to-assign/long-double-x87.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/declare-to-assign/nullptr-declare.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/declare-to-assign/scalable-vector.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/declare-to-assign/set-flag-only-if-modified.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/declare-to-assign/structured-bindings.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/declare-to-assign/var-not-alloca-sized.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/declare-to-assign/vla.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/instcombine/remove-redundant-dbg.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/loop-vectorize/remove-redundant-dbg.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/optnone.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/parse-and-verify/roundtrip.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/remove-redundant.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/remove-redundant-dbg.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/user-memcpy.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/track-assignments.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/coalesce-options.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/coalesce-simple.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/remove-undef-fragment.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/untagged-store-frag.ll

  Log Message:
  -----------
  [RemoveDIs][DebugInfo] Enable creation of DPVAssigns, update outstanding AT tests (#79148)

This is the final patch for DPVAssign support, implementing the actual
creation of DPVAssigns and allowing them to be converted along with
dbg.values and dbg.declares. Numerous tests landed in previous patches
will no longer be rotten after this patch lands (previously they would
trivially pass due to DPVAssigns not actually being used), and a further
batch of tests have been added here that require the changes in this
patch before they pass.


  Commit: 1f6f19935c1b4512190f1bc94ebf94f3d2b69911
      https://github.com/llvm/llvm-project/commit/1f6f19935c1b4512190f1bc94ebf94f3d2b69911
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/arm_sme.td
    M clang/include/clang/Basic/arm_sve_sme_incl.td
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_ldr_str_zt.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt_x2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt_x4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt_x2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt_x4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_zero_zt.c
    M clang/test/Sema/aarch64-incompat-sm-builtin-calls.c
    M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_imm.cpp
    M clang/utils/TableGen/SveEmitter.cpp

  Log Message:
  -----------
  [Clang][AArch64] Add diagnostics for builtins that use ZT0. (#79140)

Similar to what we did for ZA, this patch adds diagnostics to flag when
using a ZT0 builtin in a function that does not have ZT0 state.


  Commit: 5176df55d3afcbecd6e6c42176fa7175897f0016
      https://github.com/llvm/llvm-project/commit/5176df55d3afcbecd6e6c42176fa7175897f0016
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M compiler-rt/test/lit.common.configured.in

  Log Message:
  -----------
  [CompilerRT] Attempt to fix a lit-config issue

This is a follow-up to 3112578597c03 -- it looks like passing the added
cmake flag to pythonize_bool also appends "_PYBOOL" to the flag name, which
this lit config file is missing. This trips up builds such as:

  https://lab.llvm.org/buildbot/#/builders/275/builds/3661
  https://lab.llvm.org/buildbot/#/builders/184/builds/9811

Where COMPILER_RT_HAS_AARCH64_SME ends up expanding to nothing.


  Commit: 55929cd679375d6ee5111edcb881103f57588d0e
      https://github.com/llvm/llvm-project/commit/55929cd679375d6ee5111edcb881103f57588d0e
  Author: Stefan Gränitz <stefan.graenitz at gmail.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/JITLink/aarch32.h
    M llvm/lib/ExecutionEngine/JITLink/ELF_aarch32.cpp
    M llvm/lib/ExecutionEngine/JITLink/aarch32.cpp
    M llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_arm.s
    A llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_armv7plus.s
    M llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_data.s
    R llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_thumb.s
    A llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_thumbv6m.s
    A llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_thumbv7a.s
    A llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_thumbv7m.s
    M llvm/test/ExecutionEngine/JITLink/AArch32/ELF_stubs_arm.s
    M llvm/test/ExecutionEngine/JITLink/AArch32/ELF_stubs_thumb.s

  Log Message:
  -----------
  [JITLink][AArch32] Implement Armv5 ldr-pc stubs and use them for all pre-v7 targets (#79082)

This stub type loads an absolute address directly into the PC register.
It's the simplest and most compatible way to implement a branch
indirection across the entire address space (and probably the slowest as
well). It's the ideal fallback for all targets for which we did not
(yet) implement a more performant solution.


  Commit: 39420279125c8d2fe0a2dae8b8c2e80d0118789c
      https://github.com/llvm/llvm-project/commit/39420279125c8d2fe0a2dae8b8c2e80d0118789c
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/test/Transforms/IROutliner/legal-debug.ll

  Log Message:
  -----------
  [DebugInfo][RemoveDIs] Disable a run-line while investigating a problem

This just reduces coverage for RemoveDIs temporarily, and it's almost
certainly a patch-ordering problem.


  Commit: 8a45cec934697747ac3d3a18e75833e0058fe9a1
      https://github.com/llvm/llvm-project/commit/8a45cec934697747ac3d3a18e75833e0058fe9a1
  Author: James Y Knight <jyknight at google.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/docs/Atomics.rst
    M llvm/docs/LangRef.rst
    M llvm/include/llvm/CodeGen/TargetLowering.h

  Log Message:
  -----------
  [LangRef] adjust IR atomics specification following C++20 model tweaks. (#77263)

C++20 accepted two papers, [P0668](https://wg21.link/P0668) and
[P0982](https://wg21.link/P0982), which changed the atomics memory model
slightly in order to reflect the realities of the existing
implementations.

The rationale for these changes applies as well to the LLVM IR atomics
model. No code changes are expected to be required from this change: it
is primarily a matter of more-correctly-documenting the existing state
of the world.

There's three changes: two of them weaken guarantees, and one
strengthens them:

1. The memory ordering guaranteed by some backends/CPUs when seq_cst
operations are mixed with acquire/release operations on the same
location was weaker than the spec guaranteed. Therefore, the
specification is changed to remove the requirement that seq_cst ordering
is consistent with happens-before, and replaces it with a slightly
weaker requirement of consistency with a new relation named
strongly-happens-before.

2. The rules for a "release sequence" were weakened. Previously, an
acquire synchronizes with an release even if it observes a later
monotonic store from the same thread as the release store. That has now
been removed: now, only read-modify-write operations can extend a
release sequence.

3. The model for a a seq_cst fence is strengthened, such that placing a
seq_cst between monotonic accesses now _is_ sufficient to guarantee
sequential consistency in the model (as it always has been on existing
implementations.)

Note that I've directly referenced the C++ standard's atomics.order
section for the precise semantics of seq_cst, instead of fully
describing them. They are quite complex, and a lot of work has gone into
refining the words in the standard. I'm afraid if I attempt to reiterate
them, I would only introduce errors.


  Commit: 51f9e982ed5c9a1f39c50d0501ab1bcb6ebf5de4
      https://github.com/llvm/llvm-project/commit/51f9e982ed5c9a1f39c50d0501ab1bcb6ebf5de4
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp

  Log Message:
  -----------
  [RISCV] Use early return for select shuffle lowering [nfc]

Minor rework of the fallback case for two argument shuffles in lowerVECTOR_SHUFFLE.  We had some common code which wasn't actually common, and simplified significantly once specialized for whether we had a select or not.


  Commit: 42b28c694ebc8a4ab09ef0b419308d47fc1e21ba
      https://github.com/llvm/llvm-project/commit/42b28c694ebc8a4ab09ef0b419308d47fc1e21ba
  Author: Sam Tebbs <samuel.tebbs at arm.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M clang/include/clang/Basic/arm_sve.td
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_while_x2.c

  Log Message:
  -----------
  [clang] Add missing streaming attributes to SVE builtins (#79134)

This patch adds `IsStreamingCompatible` or `IsStreamingOrSVE2p1` to the
SVE builtins that missed them.


  Commit: 2531a15dfd4eafda21622e3a828a93fc9a27e3b6
      https://github.com/llvm/llvm-project/commit/2531a15dfd4eafda21622e3a828a93fc9a27e3b6
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M clang/include/clang/Basic/OpenACCKinds.h
    M clang/include/clang/Parse/Parser.h
    M clang/lib/Parse/ParseOpenACC.cpp
    M clang/test/ParserOpenACC/parse-clauses.c

  Log Message:
  -----------
  [OpenACC] Implement 'device_type' clause parsing

'device_type' takes either an asterisk or a list of impementation
specific identifiers. This patch implements the parsing for it.
Additionally, 'dtype' is an alias for 'device_type', though we're
implementing it as its own clause kind to improve future diagnostics, as
this will allow us to differentiate the spellings.


  Commit: 8ed1291d96eaf230ce289c9e62d28df3851d4372
      https://github.com/llvm/llvm-project/commit/8ed1291d96eaf230ce289c9e62d28df3851d4372
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

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

  Log Message:
  -----------
  [MachineCopyPropagation] Make a SmallVector larger (NFC) (#79106)

This patch makes a SmallVector slightly larger.  We encounter quite a
few instructions with 3 or 4 defs but very few beyond that on X86.

This saves 0.39% of heap allocations during the compilation of a large
preprocessed file, namely X86ISelLowering.cpp, for the X86 target.


  Commit: c5a33befcc328339a84c35f6899ff3f3309399fc
      https://github.com/llvm/llvm-project/commit/c5a33befcc328339a84c35f6899ff3f3309399fc
  Author: Juergen Ributzka <juergen at ributzka.de>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M clang/include/clang/Basic/CodeGenOptions.def
    M clang/lib/Basic/CodeGenOptions.cpp
    M clang/test/ClangScanDeps/strip-codegen-args.m

  Log Message:
  -----------
  [clang][modules] Fix CodeGen options that can affect the AST. (#78816)

`OptimizationLevel` and `OptimizeSize` can affect the generated AST. They indirectly affect the `Optimize` and `OptimizeSize` frontend options, which in turn set predefined macro definitions.

This fixes rdar://121228252.


  Commit: a0f69be26293dfb3b6c65ca65bd68f735f60c5a3
      https://github.com/llvm/llvm-project/commit/a0f69be26293dfb3b6c65ca65bd68f735f60c5a3
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp

  Log Message:
  -----------
  [RISCV] Continue with early return for shuffle lowering [nfc]

Move two cases where we're not actually going to use any of our computed index vectors or mask values above the computation of the same.


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

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
    A llvm/test/CodeGen/RISCV/zcb-regalloc-hints.ll

  Log Message:
  -----------
  [RISCV] Add regalloc hints for Zcb instructions. (#78949)

This hints the register allocator to use the same register for source
and destination to enable more compression.


  Commit: 03d362db7463f3451692fa6a80204b35dfe95037
      https://github.com/llvm/llvm-project/commit/03d362db7463f3451692fa6a80204b35dfe95037
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    A libc/docs/gpu/rpc-diagram.svg
    M libc/docs/gpu/rpc.rst
    M libc/docs/gpu/testing.rst

  Log Message:
  -----------
  [libc][Docs] Update the GPU RPC documentation (#79069)

Summary:
This adds some more concrete information on the RPC interface. Hopefully
this is intelligable and provides some useful examples.


  Commit: 3428c28b3d611ac608bb8e22633c65f605a6511e
      https://github.com/llvm/llvm-project/commit/3428c28b3d611ac608bb8e22633c65f605a6511e
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/utils/gn/secondary/compiler-rt/test/BUILD.gn

  Log Message:
  -----------
  [gn] port 5176df55d3a


  Commit: edeaf41e22cc7b1ab9ef30954762f2a08a3c3561
      https://github.com/llvm/llvm-project/commit/edeaf41e22cc7b1ab9ef30954762f2a08a3c3561
  Author: Alina Sbirlea <asbirlea at google.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Scalar/ConstantHoisting.h
    M llvm/lib/Transforms/Scalar/ConstantHoisting.cpp

  Log Message:
  -----------
  [ConstantHoisting] Cache OptForSize. (#79170)

CacheOptForSize to remove quadratic behavior.

For each constant analyzed, ConstantHoising calls
`shouldOptimizeForSize(F)`, which calls `PSI.getTotalCallCount(F)`.
PSI.getTotalCallCount(F) goes through all the instructions in all basic
blocks, and checks if each is a call, to count them up.

This reduces `llc` time for a very large IR from ~10min to under 3min.
Reproducer testcase is much too large to share.


  Commit: 6a7abea47418721616c9dd7a16f5cc3e5a67d49c
      https://github.com/llvm/llvm-project/commit/6a7abea47418721616c9dd7a16f5cc3e5a67d49c
  Author: Stefan Gränitz <stefan.graenitz at gmail.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

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

  Log Message:
  -----------
  Revert "[clang-repl] Enable native CPU detection by default (#77491)" (#79178)

Reverting because `clang-repl -Xcc -mcpu=arm1176jzf-s` isn't overwriting
this as I had expected. We need to check whether a specific CPU flag was
given by the user first.

Reverts llvm/llvm-project#77491


  Commit: 15fdc7646ca24506ccb6a59861da8f3b52ab031c
      https://github.com/llvm/llvm-project/commit/15fdc7646ca24506ccb6a59861da8f3b52ab031c
  Author: Alexandre Ganea <alex_toresh at yahoo.fr>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M openmp/cmake/HandleOpenMPOptions.cmake
    M openmp/runtime/src/kmp_affinity.cpp
    M openmp/runtime/src/kmp_barrier.cpp
    M openmp/runtime/src/kmp_io.cpp
    M openmp/runtime/src/kmp_os.h
    M openmp/runtime/src/kmp_settings.cpp
    M openmp/runtime/src/kmp_wait_release.h
    M openmp/runtime/src/z_Windows_NT_util.cpp

  Log Message:
  -----------
  Re-land [openmp] Fix warnings when building on Windows with latest MSVC or Clang ToT (#77853)

The reverts 94f960925b7f609636fc2ffd83053814d5e45ed1 and fixes it.


  Commit: e4f0829d80aabe7d0b80d8ba60828dd0c9774300
      https://github.com/llvm/llvm-project/commit/e4f0829d80aabe7d0b80d8ba60828dd0c9774300
  Author: Stefan Gränitz <stefan.graenitz at gmail.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/ExecutionEngine/Orc/LLJIT.cpp

  Log Message:
  -----------
  [Orc] Let LLJIT default to JITLink for ELF-based ARM targets  (#77313)

The JITLink AArch32 backend reached feature-parity with RuntimeDyld
on ELF-based systems. This patch changes the default JIT-linker in Orc's
LLJIT for these platforms.

This allows us to run clang-repl with JITLink on ARM and use all the
features we had with RuntimeDyld before. All existing tests for
clang-repl are passing.


  Commit: 55a7bb0ff68a97a8ec640f846c40aae19a2d58c0
      https://github.com/llvm/llvm-project/commit/55a7bb0ff68a97a8ec640f846c40aae19a2d58c0
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

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

  Log Message:
  -----------
  [RISCV] Re-format RISCVFeatures.td so it doesn't look like AssemblerPredicate is an operand to Predicate. (#79076)

AssemblerPredicate was almost always indented to the same column as the
first operand to Predicate. But AssemblerPredicate is a separate base
class so should have the same indentation as Predicate.

For the string passed to AssemblePredicate, I aligned it to the other
arguments on the previous if it fit in 80 columns. Otherwise I indented
4 spaces past the start of AssemblerPredicate.

For some vendor extensions I put the 2 classes on new lines instead of
the same line as the def. This gave more room for the strings and was
more consistent with other formatting in that portion of the file.


  Commit: 32073b835674a9e7bc3e1ee9708efb7c58e7394f
      https://github.com/llvm/llvm-project/commit/32073b835674a9e7bc3e1ee9708efb7c58e7394f
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.tr-w32.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.tr-w64.ll

  Log Message:
  -----------
  AMDGPU: Do not generate non-temporal hint when Load_Tr intrinsic did not specify it (#79104)

int_amdgcn_global_load_tr did not specify non-temporal load transpose,
thus we should
not genetrate the non-temporal hint for the load. We need to implement
getTgtMemIntrinsic
to create the corresponding MemSDNode. And we don't set the non-temporal
flag because
the intrinsic did not specify it.

NOTE: We need to implement getTgtMemIntrinsic for any memory intrinsics.


  Commit: 7fe951ad8af24d9b7072cbad58d22f2e6cb5da7e
      https://github.com/llvm/llvm-project/commit/7fe951ad8af24d9b7072cbad58d22f2e6cb5da7e
  Author: gulfemsavrun <gulfem at google.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/IR/DebugInfo.cpp
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
    R llvm/test/CodeGen/AArch64/dbg-assign-tag-offset-mix-loc.ll
    R llvm/test/CodeGen/AArch64/dbg-assign-tag-offset.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/declare-to-assign/hwasan.ll
    R llvm/test/Instrumentation/HWAddressSanitizer/dbg-assign-tag-offset.ll

  Log Message:
  -----------
  Revert "Reapply [hwasan] Update dbg.assign intrinsics in HWAsan pass … (#79186)

…#78606"

This reverts commit 13c6f1ea2e7eb15fe492d8fca4fa1857c6f86370 because it
causes an assertion in DebugInfoMetadata.cpp:1968 in Clang Linux
builders for Fuchsia.

https://logs.chromium.org/logs/fuchsia/buildbucket/cr-buildbucket/8758111613576762817/+/u/clang/build/stdout


  Commit: 51a11f1c44b7bd7655687471d8c8912afb637efc
      https://github.com/llvm/llvm-project/commit/51a11f1c44b7bd7655687471d8c8912afb637efc
  Author: Tacet <advenam.tacet at trailofbits.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

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

  Log Message:
  -----------
  [ASan][ADT] Don't scribble with ASan (#79066)

With this commit, scribbling under AddressSanitizer (ASan) is disabled to prevent  overwriting poisoned objects (e.g., annotated short strings).
Needed by https://github.com/llvm/llvm-project/pull/79049


  Commit: 5a7d68c8c4b13aea9922c860e56f6c6cdc223d87
      https://github.com/llvm/llvm-project/commit/5a7d68c8c4b13aea9922c860e56f6c6cdc223d87
  Author: Danial Klimkin <dklimkin at users.noreply.github.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-warning-data-invocation.cpp

  Log Message:
  -----------
  [test] Avoid libc dep in Update warn-unsafe-buffer-usage-warning-data… (#79183)

Avoid libc dep in warn-unsafe-buffer-usage-warning-data-invocation.

To keep the test hermetic. This is in line with other existing
declarations in the file that avoid includes.


  Commit: 80fcc9247a166ca056f049fc4662417b2ae157ce
      https://github.com/llvm/llvm-project/commit/80fcc9247a166ca056f049fc4662417b2ae157ce
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/GPU/Transforms/Passes.td
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td

  Log Message:
  -----------
  [mlir][AMDGPU] Actually update the default ABI version, add comments (#79185)

Much confusion occurred earlier today when updating the fallback `int
abi;` in addControlVariables() didn't do anything. THis was because that
that value is the fallback for if the ABI version fails to parse ...
which it always should, because it has a default value that comes from
multiple different places.

This commit updates all the places said default variable can come from,
namely:
1. The ROCDL target attribute definition
2. The ROCDL target attribute's builders
3. The rocdl-attach-target pass's default option values.

With this, the printf test is passing.


  Commit: c416b2efe89c11db593fe8041c366e0cb63d4eeb
      https://github.com/llvm/llvm-project/commit/c416b2efe89c11db593fe8041c366e0cb63d4eeb
  Author: Tacet <advenam.tacet at trailofbits.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

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

  Log Message:
  -----------
  [ASan][JSON] Unpoison memory before its reuse (#79065)

This commit unpoisons memory before its reuse (with reinterpret_cast).
Required by https://github.com/llvm/llvm-project/pull/79049

Notice that it's a temporary solution to prevent buildbots from failing.
Read FIXME for details.


  Commit: cb528ec5e6331ce207c7b835d7ab963bd5e13af7
      https://github.com/llvm/llvm-project/commit/cb528ec5e6331ce207c7b835d7ab963bd5e13af7
  Author: Tacet <advenam.tacet at trailofbits.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M libcxx/include/string
    A libcxx/test/libcxx/containers/strings/basic.string/asan_deque_integration.pass.cpp
    A libcxx/test/libcxx/containers/strings/basic.string/asan_short.pass.cpp
    A libcxx/test/libcxx/containers/strings/basic.string/asan_vector_integration.pass.cpp
    M libcxx/test/support/asan_testing.h

  Log Message:
  -----------
  [ASan][libc++] Turn on ASan annotations for short strings (#79049)

Originally merged here: https://github.com/llvm/llvm-project/pull/75882
Reverted here: https://github.com/llvm/llvm-project/pull/78627

Reverted due to failing buildbots. The problem was not caused by the
annotations code, but by code in the `UniqueFunctionBase` class and in
the `JSON.h` file. That code caused the program to write to memory that
was already being used by string objects, which resulted in an ASan
error.

Fixes are implemented in:
- https://github.com/llvm/llvm-project/pull/79065
- https://github.com/llvm/llvm-project/pull/79066

Problematic code from `UniqueFunctionBase` for example:
```cpp
#ifndef NDEBUG
    // In debug builds, we also scribble across the rest of the storage.
    memset(RHS.getInlineStorage(), 0xAD, InlineStorageSize);
#endif
```

---

Original description:

This commit turns on ASan annotations in `std::basic_string` for short
stings (SSO case).

Originally suggested here: https://reviews.llvm.org/D147680

String annotations added here:
https://github.com/llvm/llvm-project/pull/72677

Requires to pass CI without fails:
- https://github.com/llvm/llvm-project/pull/75845
- https://github.com/llvm/llvm-project/pull/75858

Annotating `std::basic_string` with default allocator is implemented in
https://github.com/llvm/llvm-project/pull/72677 but annotations for
short strings (SSO - Short String Optimization) are turned off there.
This commit turns them on. This also removes
`_LIBCPP_SHORT_STRING_ANNOTATIONS_ALLOWED`, because we do not plan to
support turning on and off short string annotations.

Support in ASan API exists since
https://github.com/llvm/llvm-project/commit/dd1b7b797a116eed588fd752fbe61d34deeb24e4.
You can turn off annotations for a specific allocator based on changes
from
https://github.com/llvm/llvm-project/commit/2fa1bec7a20bb23f2e6620085adb257dafaa3be0.

This PR is a part of a series of patches extending AddressSanitizer C++
container overflow detection capabilities by adding annotations, similar
to those existing in `std::vector` and `std::deque` collections. These
enhancements empower ASan to effectively detect instances where the
instrumented program attempts to access memory within a collection's
internal allocation that remains unused. This includes cases where
access occurs before or after the stored elements in `std::deque`, or
between the `std::basic_string`'s size (including the null terminator)
and capacity bounds.

The introduction of these annotations was spurred by a real-world
software bug discovered by Trail of Bits, involving an out-of-bounds
memory access during the comparison of two strings using the
`std::equals` function. This function was taking iterators
(`iter1_begin`, `iter1_end`, `iter2_begin`) to perform the comparison,
using a custom comparison function. When the `iter1` object exceeded the
length of `iter2`, an out-of-bounds read could occur on the `iter2`
object. Container sanitization, upon enabling these annotations, would
effectively identify and flag this potential vulnerability.

If you have any questions, please email:

    advenam.tacet at trailofbits.com
    disconnect3d at trailofbits.com


  Commit: 0cf20c2971375ea200035f2e99bd81bd00f5f27d
      https://github.com/llvm/llvm-project/commit/0cf20c2971375ea200035f2e99bd81bd00f5f27d
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M libc/src/unistd/linux/CMakeLists.txt
    M libc/src/unistd/linux/sysconf.cpp

  Log Message:
  -----------
  [libc] fix sysconf (#79159)

Apply previously discussed fix for `sysconf`


  Commit: bb8a8770e203ba027d141cd1200e93809ea66c8f
      https://github.com/llvm/llvm-project/commit/bb8a8770e203ba027d141cd1200e93809ea66c8f
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-exact-vlen.ll

  Log Message:
  -----------
  [RISCV] Exploit register boundaries when lowering shuffle with exact vlen (#79072)

If we have a shuffle which is larger than m1, we may be able to split it
into a series of individual m1 shuffles. This patch starts with the
subcase where the mask allows a 1-to-1 mapping from source register to
destination register - each with a possible permutation of their own. We
can potentially extend this later, thought in practice this seems to
already catch a number of the most interesting cases.


  Commit: 50d33c62ad8786400a712b01150f6decaf070782
      https://github.com/llvm/llvm-project/commit/50d33c62ad8786400a712b01150f6decaf070782
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M lld/COFF/Writer.cpp
    A lld/test/COFF/cfguard-weak-undef.s

  Log Message:
  -----------
  [LLD] [COFF] Fix crashes for cfguard with undefined weak symbols (#79063)

When marking symbols as having their address taken, we can have the
sitaution where we have the address taken of a weak symbol. If there's
no strong definition of the symbol, the symbol ends up as an absolute
symbol with the value null. In those cases, we don't have any Chunk.
Skip such symbols from the cfguard tables.

This fixes https://github.com/llvm/llvm-project/issues/78619.


  Commit: bdc41106ee48dce59c500c9a3957af947f30c8c3
      https://github.com/llvm/llvm-project/commit/bdc41106ee48dce59c500c9a3957af947f30c8c3
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-interleave.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-interleave.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-shuffles.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-interleaved-access.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-transpose.ll

  Log Message:
  -----------
  [RISCV] Recurse on first operand of two operand shuffles (#79180)

This is the first step towards an alternate shuffle lowering design for
the general two vector argument case. The goal is to leverage the
existing lowering for single vector permutes to avoid as many of the
vrgathers as required - even if we do need the other.

This patch handles only the first argument, and is arguably a slightly
weird half-step. However, the test changes from the full two argument
recurse patch are a lot harder to reason about. Taking this half step
gives much more easily reviewable changes, and is thus worthwhile. I
intend to post the patch for the second argument once this has landed.


  Commit: f05dd29ceea29080d18ec31414a7ae2edf86c39d
      https://github.com/llvm/llvm-project/commit/f05dd29ceea29080d18ec31414a7ae2edf86c39d
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-buildvec.ll

  Log Message:
  -----------
  [RISCV] Regenerate autogen test to remove spurious diff


  Commit: 3c20e25b0c51c67e35d028ba0d1d5f1dd5e206bb
      https://github.com/llvm/llvm-project/commit/3c20e25b0c51c67e35d028ba0d1d5f1dd5e206bb
  Author: AtariDreams <83477269+AtariDreams at users.noreply.github.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M clang/test/Analysis/malloc.mm
    M clang/test/Analysis/uninit-vals.m
    M clang/test/CodeGen/alloc-size.c
    M compiler-rt/lib/profile/InstrProfilingFile.c
    M compiler-rt/test/tsan/java_finalizer2.cpp

  Log Message:
  -----------
  [NFC] Size and element numbers are often swapped when calling calloc (#79081)

gcc-14 will now throw a warning if size and elements are swapped.


  Commit: 17bc4497847eb0388bedc5c8483bf8a1cbdd3a42
      https://github.com/llvm/llvm-project/commit/17bc4497847eb0388bedc5c8483bf8a1cbdd3a42
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M lld/test/ELF/lto/thin-archivecollision.ll

  Log Message:
  -----------
  [ELF] Improve thin-archivecollision.ll


  Commit: f6ced3579a8c7fe1ef93e25ecf521629afa928dd
      https://github.com/llvm/llvm-project/commit/f6ced3579a8c7fe1ef93e25ecf521629afa928dd
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M clang/cmake/caches/Release.cmake
    M llvm/utils/release/test-release.sh

  Log Message:
  -----------
  [CMake][Release] Add option for enabling PGO to release cache file. (#78823)

The option is LLVM_RELEASE_ENABLE_PGO and it's turned on by default.

---------

Co-authored-by: Petr Hosek <phosek at google.com>


  Commit: f7669ba3d9443bc95dd63fa25beea13e6265fdc5
      https://github.com/llvm/llvm-project/commit/f7669ba3d9443bc95dd63fa25beea13e6265fdc5
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M lld/ELF/LTO.cpp
    M lld/ELF/LTO.h
    M lld/test/ELF/common-archive-lookup.s
    M lld/test/ELF/lto/cache.ll
    M lld/test/ELF/lto/comdat-mixed-archive.test
    M lld/test/ELF/lto/emit-asm.ll
    M lld/test/ELF/lto/exclude-libs-libcall.ll
    M lld/test/ELF/lto/obj-path.ll
    M lld/test/ELF/lto/parallel-internalize.ll
    M lld/test/ELF/lto/parallel.ll
    M lld/test/ELF/lto/pseudo-probe-lto.ll
    M lld/test/ELF/lto/save-temps-eq.ll
    M lld/test/ELF/lto/thin-archivecollision.ll
    M lld/test/ELF/lto/thinlto.ll

  Log Message:
  -----------
  [ELF] --save-temps --lto-emit-asm: derive ELF/asm file names from bitcode file names

Port COFF's https://reviews.llvm.org/D78221 and
https://reviews.llvm.org/D137217 to ELF. For the in-process ThinLTO
link, `ld.lld --save-temps a.o d/b.o -o out` will create
ELF relocatable files `out.lto.a.o`/`d/out.lto.b.o` instead of
`out1.lto.o`/`out2.lto.o`. Deriving the LTO-generated relocatable file
name from bitcode file names helps debugging.

The relocatable file name from the first regular LTO partition does not
change: `out.lto.o`. The second, if present due to `--lto-partition=`,
changes from `out1.lto.o` to `lto.1.o`.

For an archive member, e.g. `d/a.a(coll.o at 8)`,
the relocatable file is `d/out.lto.a.a(coll.o at 8).o`.

`--lto-emit-asm` file names are changed similarly. `--lto-emit-asm -o
out` now creates `out.lto.s` instead of `out`, therefore the
`--lto-emit-asm -o -` idiom no longer works. However, I think this new
behavior (which matches COFF) is better since keeping or removing
`--lto-emit-asm` will dump different files, instead of overwriting the
`-o` output file from an executable/shared object to an assembly file.

Reviewers: rnk, igorkudrin, xur-llvm, teresajohnson, ZequanWu

Reviewed By: teresajohnson

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


  Commit: 7ca8feb1b89dfe62c9c3a06aa0585adbcd019eff
      https://github.com/llvm/llvm-project/commit/7ca8feb1b89dfe62c9c3a06aa0585adbcd019eff
  Author: Alex Langford <alangford at apple.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M lldb/include/lldb/API/LLDB.h

  Log Message:
  -----------
  [lldb] Include SBFormat.h in LLDB.h (#79194)

This was likely overlooked when SBFormat was added.


  Commit: 9122d19de4a237ededfd25c120bcb6e5efb22b1c
      https://github.com/llvm/llvm-project/commit/9122d19de4a237ededfd25c120bcb6e5efb22b1c
  Author: Roland McGrath <mcgrathr at google.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M libc/src/__support/FPUtil/arm/FEnvImpl.h

  Log Message:
  -----------
  Revert "[libc] Fix forward arm32 buildbot" (#79201)

Reverts llvm/llvm-project#79151, necessary to revert #79128, which broke
all production builds and landed without review.


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

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

  Log Message:
  -----------
  [RISCV] Move FeatureStdExtH in RISCVFeatures.td. NFC

It was accidentally in the middle of the floating point extensions
after the recent reordering.


  Commit: d86a6eacf661f2bf05ea486b7a04b0cc1f97919c
      https://github.com/llvm/llvm-project/commit/d86a6eacf661f2bf05ea486b7a04b0cc1f97919c
  Author: lntue <35648136+lntue at users.noreply.github.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M libc/src/__support/common.h

  Log Message:
  -----------
  [libc] Fix aliasing function name got accidentally deleted in #79128. (#79203)


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

  Changed paths:
    M .github/workflows/libcxx-build-and-test.yaml

  Log Message:
  -----------
  [libc++] Run the nightly libc++ build at 03:00 Eastern for real (#79184)

The nightly libc++ build was incorrectly set up to build at 22:00
Eastern when it intended to run at 03:00 Eastern. This patch fixes that.


  Commit: d813af73f70f6b2fd41621d640cc35e595b9da4c
      https://github.com/llvm/llvm-project/commit/d813af73f70f6b2fd41621d640cc35e595b9da4c
  Author: Ben Hamilton (Ben Gertzfield) <benhamilton at google.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    A clang/test/Format/dump-config-objc-stdin.m
    M clang/tools/clang-format/ClangFormat.cpp
    M clang/unittests/Format/FormatTestObjC.cpp

  Log Message:
  -----------
  [Format] Fix detection of languages when reading from stdin (#79051)

The code cleanup in #74794 accidentally broke detection of languages by
reading file content from stdin, e.g. via `clang-format -dump-config - <
/path/to/filename`.

This PR adds unit and integration tests to reproduce the issue and adds
a fix.

Fixes: #79023


  Commit: b504e97d921d72cc4407ab909ec371d1af957ab7
      https://github.com/llvm/llvm-project/commit/b504e97d921d72cc4407ab909ec371d1af957ab7
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/test/Transforms/IndVarSimplify/iv-poison.ll

  Log Message:
  -----------
  [IndVars] Add NUW variants to iv-poison.ll and variants with extra uses.


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/SystemZ/minbitwidth-non-vector-root.ll

  Log Message:
  -----------
  [SLP]Fix PR79193: skip analysis of gather nodes for minbitwidth.

No need in trying to analyze small graphs with gather node only to avoid
crash.


  Commit: 16343f0db286a5d2aaf9494dd402cda0d088d0a1
      https://github.com/llvm/llvm-project/commit/16343f0db286a5d2aaf9494dd402cda0d088d0a1
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M lld/test/ELF/lto/defsym.ll

  Log Message:
  -----------
  [ELF,test] Fix defsym.ll


  Commit: 4fcd7cf22deff4a63d2bac12c909be7266f8b353
      https://github.com/llvm/llvm-project/commit/4fcd7cf22deff4a63d2bac12c909be7266f8b353
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M lld/test/ELF/lto/defsym.ll

  Log Message:
  -----------
  [ELF,test] Actually fix defsym.ll


  Commit: 4beea6b195585e4d9e196a9a2b0bb79a9c040788
      https://github.com/llvm/llvm-project/commit/4beea6b195585e4d9e196a9a2b0bb79a9c040788
  Author: RolandF77 <55763885+RolandF77 at users.noreply.github.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

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

  Log Message:
  -----------
  [PowerPC] lower partial vector store cost (#78358)

There are matching store opcodes (stfd, stxsiwx) for the load opcodes
that make 32-bit and 64-bit vector operations cheap with VSX, so stores
should also be cheap.


  Commit: 4ad4c8e90e120687e768475fecb8cc03d422b3a1
      https://github.com/llvm/llvm-project/commit/4ad4c8e90e120687e768475fecb8cc03d422b3a1
  Author: Juergen Ributzka <juergen at ributzka.de>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/lib/Driver/ToolChains/Darwin.h
    M clang/lib/Driver/ToolChains/MSVC.cpp
    M clang/lib/Driver/ToolChains/MSVC.h
    M clang/lib/Driver/ToolChains/MinGW.cpp
    M clang/lib/Driver/ToolChains/MinGW.h

  Log Message:
  -----------
  [clang] Use LazyDetector for all toolchains. (#79073)

Use the LazyDetector also for the remaining toolchains to avoid unnecessarily checking for the Cuda and Rocm installations.

This fixes rdar://121397534.


  Commit: 3a9ff32354a95305c523ab3b13bf3684854d1327
      https://github.com/llvm/llvm-project/commit/3a9ff32354a95305c523ab3b13bf3684854d1327
  Author: lntue <35648136+lntue at users.noreply.github.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M libc/src/__support/FPUtil/arm/FEnvImpl.h

  Log Message:
  -----------
  [libc] Fix implicit conversion in FEnvImpl for arm32 targets. (#79210)


  Commit: 2b8649fbecdc300cde1032d739484690f75a27ba
      https://github.com/llvm/llvm-project/commit/2b8649fbecdc300cde1032d739484690f75a27ba
  Author: William Junda Huang <williamjhuang at google.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-profdata.rst
    M llvm/include/llvm/ProfileData/SampleProf.h
    A llvm/test/tools/llvm-profdata/merge-filter.test
    M llvm/tools/llvm-profdata/llvm-profdata.cpp

  Log Message:
  -----------
  Added feature in llvm-profdata merge to filter functions from the profile (#78378)

`--function=<regex>` Include functions matching regex in the output
`--no-function=<regex>` Exclude functions matching regex from the output

If both are specified, `--no-function` has a higher precedence if a
function name matches both filters


  Commit: 9261ab708e37c2d6499ac063045f816d25a5919c
      https://github.com/llvm/llvm-project/commit/9261ab708e37c2d6499ac063045f816d25a5919c
  Author: Kunwar Grover <groverkss at gmail.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
    M mlir/test/Target/LLVMIR/llvmir-invalid.mlir
    M mlir/test/Target/LLVMIR/llvmir.mlir

  Log Message:
  -----------
  [mlir][Target] Teach dense_resource conversion to LLVMIR Target (#78958)

This patch adds support for translating dense_resource attributes to
LLVMIR Target.
The support added is similar to how DenseElementsAttr is handled, except
we
don't need to handle splats.

Another possible way of doing this is adding iteration on
dense_resource, but that is
non-trivial as DenseResourceAttr is not meant to be something you should
directly
access. It has subclasses which you are supposed to use to iterate on
it.


  Commit: 6c98c5bd99b4c71a7895337cd4e437e023c2ec7a
      https://github.com/llvm/llvm-project/commit/6c98c5bd99b4c71a7895337cd4e437e023c2ec7a
  Author: Alex Langford <alangford at apple.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M lldb/include/lldb/Breakpoint/BreakpointIDList.h
    M lldb/source/Breakpoint/BreakpointIDList.cpp

  Log Message:
  -----------
  [lldb][NFCI] Remove unused method BreakpointIDList::AddBreakpointID(const char *) (#79189)

This overload is completely unused.


  Commit: 2227e50c618ecc6f83e8c69286a418ee04750361
      https://github.com/llvm/llvm-project/commit/2227e50c618ecc6f83e8c69286a418ee04750361
  Author: Billy Laws <blaws05 at gmail.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M clang/test/Preprocessor/init-aarch64.c

  Log Message:
  -----------
  [Preprocessor][test] Test ARM64EC definitions (#78916)


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

  Changed paths:
    M libcxx/docs/ReleaseProcedure.rst

  Log Message:
  -----------
  [libc++] Fix outdated release procedure for release notes


  Commit: 9d476e1e1a18af390e3455a6622ee67a69c64103
      https://github.com/llvm/llvm-project/commit/9d476e1e1a18af390e3455a6622ee67a69c64103
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/test/CodeGen/fat-lto-objects.c
    M clang/test/Driver/fat-lto-objects.c
    M llvm/docs/FatLTO.rst
    M llvm/include/llvm/Passes/PassBuilder.h
    M llvm/include/llvm/Transforms/IPO/EmbedBitcodePass.h
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/Transforms/IPO/EmbedBitcodePass.cpp
    M llvm/test/CodeGen/X86/fat-lto-section.ll
    M llvm/test/Transforms/EmbedBitcode/embed.ll

  Log Message:
  -----------
  [clang][FatLTO] Avoid UnifiedLTO until it can support WPD/CFI (#79061)

Currently, the UnifiedLTO pipeline seems to have trouble with several
LTO features, like SplitLTO units, which means we cannot use important
optimizations like Whole Program Devirtualization or security hardening
instrumentation like CFI.

This patch reverts FatLTO to using distinct pipelines for Full LTO and
ThinLTO. It still avoids module cloning, since that was error prone.


  Commit: 729657d6e15d0455557f35485deb87313ccdde10
      https://github.com/llvm/llvm-project/commit/729657d6e15d0455557f35485deb87313ccdde10
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/misc/CoroutineHostileRAIICheck.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/coroutine-hostile-raii.cpp

  Log Message:
  -----------
  [misc-coroutine-hostile-raii] Use getOperand instead of getCommonExpr. (#79206)

We were previously allowlisting awaitable types returned by
`await_transform` instead of the type of the operand of the `co_await`
expression.

This previously used to give false positives and not respect the
`AllowedAwaitablesList` flag when `await_transform` is used. See added
test cases for such examples.


  Commit: dc410f94f602390a65c832cf348b9ee6556b1809
      https://github.com/llvm/llvm-project/commit/dc410f94f602390a65c832cf348b9ee6556b1809
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M clang/include/clang/Driver/Types.def
    M clang/lib/Driver/Types.cpp
    A clang/test/Driver/opencl_aot_save_temps.cl

  Log Message:
  -----------
  [Clang][Driver] Fix `--save-temps` for OpenCL AoT compilation (#78333)

We can directly call `clang -c -x cl -target amdgcn -mcpu=gfx90a test.cl
-o test.o`
to compile an OpenCL kernel file. However, when `--save-temps` is
enabled, it doesn't
work because the preprocessed file (`.i` file) is taken as C source file
when it
is fed to the front end, thus causing compilation error because those
OpenCL keywords
can't be recognized. This patch fixes the issue.


  Commit: 1a300d6da3f3d10e02d9580f8f3f2080bba8adf9
      https://github.com/llvm/llvm-project/commit/1a300d6da3f3d10e02d9580f8f3f2080bba8adf9
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
    M llvm/test/Analysis/UniformityAnalysis/AMDGPU/intrinsics.ll

  Log Message:
  -----------
  AMDGPU: Add SourceOfDivergence for int_amdgcn_global_load_tr (#79218)


  Commit: c28ab6274322da693ea41a49e301c15b551c974a
      https://github.com/llvm/llvm-project/commit/c28ab6274322da693ea41a49e301c15b551c974a
  Author: Chris Apple <14171107+cjappl at users.noreply.github.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_internal_defs.h
    M compiler-rt/lib/tsan/rtl/tsan_dispatch_defs.h

  Log Message:
  -----------
  [NFCI] Move SANITIZER_WEAK_IMPORT to sanitizer_common (#79208)

SANITIZER_WEAK_IMPORT is useful for any call that needs to be
conditionally linked in. This is currently used for the
tsan_dispatch_interceptors, but can be used for other calls introduced
in newer versions of MacOS. (such as `aligned_alloc` in this PR
https://github.com/llvm/llvm-project/pull/79198).

This PR moves the definition to a higher level so it can be used in
other sanitizers.


  Commit: 575568de4166bf69e0a5bc68978580afbe936878
      https://github.com/llvm/llvm-project/commit/575568de4166bf69e0a5bc68978580afbe936878
  Author: Aart Bik <39774503+aartbik at users.noreply.github.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_block3d.mlir

  Log Message:
  -----------
  [mlir][sparse] adjust compression scheme for example (#79212)


  Commit: 750e90e4403df23d6b271afb90e6b4d463739965
      https://github.com/llvm/llvm-project/commit/750e90e4403df23d6b271afb90e6b4d463739965
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M mlir/include/mlir/Conversion/ArithToAMDGPU/ArithToAMDGPU.h
    M mlir/include/mlir/Conversion/Passes.td
    M mlir/include/mlir/Dialect/Arith/Utils/Utils.h
    M mlir/lib/Conversion/ArithToAMDGPU/ArithToAMDGPU.cpp
    M mlir/lib/Conversion/ArithToAMDGPU/CMakeLists.txt
    M mlir/lib/Dialect/Arith/Transforms/EmulateWideInt.cpp
    M mlir/lib/Dialect/Arith/Utils/Utils.cpp
    A mlir/test/Conversion/ArithToAMDGPU/8-bit-float-saturation.mlir
    M mlir/test/Conversion/ArithToAMDGPU/8-bit-floats.mlir

  Log Message:
  -----------
  [mlir][ArithToAMDGPU] Add option for saturating truncation to fp8 (#74153)

Many machine-learning applications (and most software written at AMD)
expect the operation that truncates floats to 8-bit floats to be
saturatinng. That is, they expect `truncf 256.0 : f32 to f8E4M3FNUZ` to
yield `240.0`, not `NaN`, and similarly for negative numbers. However,
the underlying hardware instruction that can be used for this truncation
implements overflow-to-NaN semantics.

To enable handling this usecase, we add the saturate-fp8-truncf option
to ArithToAMDGPU (off by default), which causes the requisite clamping
code to be emitted. Said clamping code ensures that Inf and NaN are
passed through exactly (and thus trancate to NaN).

Per review feedback, this commit efactors
createScalarOrSplatConstant() to the Arith dialect utilities and uses
it in this code. It also fixes naming of existing patterns and
switches from vector.extractelement/insertelement to
vector.extract/insert.


  Commit: 7fc25928233c133a4af1dadf0e060fb5d42ebd4e
      https://github.com/llvm/llvm-project/commit/7fc25928233c133a4af1dadf0e060fb5d42ebd4e
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/include/llvm/IR/Function.h
    M llvm/lib/IR/BasicBlock.cpp
    M llvm/lib/IR/DebugInfo.cpp
    M llvm/lib/IR/Instruction.cpp
    M llvm/test/DebugInfo/salvage-limit-expr-size.ll
    M llvm/test/Transforms/Util/strip-nonlinetable-debuginfo-localvars.ll

  Log Message:
  -----------
  [DebugInfo][RemoveDIs] "Final" cleanup for non-instr debug-info (#79121)

Here's a raft of minor fixes for the RemoveDIs project that's replacing
dbg.value intrinsics with DPValue objects, all IMO trivial:
 * When inserting functions or blocks and calling setIsNewDbgInfoFormat,
   do that after setting the Parent pointer, just in case conversion from
   (or to) dbg.value mode is triggered.
 * When transferring DPValues from an empty range in a splice call, don't
   transfer if there are no DPValues attached to the source block at all.
 * stripNonLineTableDebugInfo should drop DPValues.
 * In insertBefore, don't try to transfer DPValues if there aren't any.


  Commit: a16f81f5e3313e88f96de35e5edfe8bee463d308
      https://github.com/llvm/llvm-project/commit/a16f81f5e3313e88f96de35e5edfe8bee463d308
  Author: Thurston Dang <thurston at google.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M libcxx/include/string
    R libcxx/test/libcxx/containers/strings/basic.string/asan_deque_integration.pass.cpp
    R libcxx/test/libcxx/containers/strings/basic.string/asan_short.pass.cpp
    R libcxx/test/libcxx/containers/strings/basic.string/asan_vector_integration.pass.cpp
    M libcxx/test/support/asan_testing.h

  Log Message:
  -----------
  Revert "[ASan][libc++] Turn on ASan annotations for short strings (#79049)"

This reverts commit cb528ec5e6331ce207c7b835d7ab963bd5e13af7.

Reason: buildbot breakage (https://lab.llvm.org/buildbot/#/builders/5/builds/40364):
SUMMARY: AddressSanitizer: container-overflow /b/sanitizer-x86_64-linux-fast/build/libcxx_build_asan_ubsan/include/c++/v1/string:1870:29 in __get_long_pointer


  Commit: 22da8096020fcf54bae2f885882bbd088a4dcd9b
      https://github.com/llvm/llvm-project/commit/22da8096020fcf54bae2f885882bbd088a4dcd9b
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    A llvm/docs/RemoveDIsDebugInfo.md
    M llvm/docs/UserGuides.rst

  Log Message:
  -----------
  [Docs][DebugInfo][RemoveDIs] Document some debug-info transition info (#79167)

This is a high level description and FAQ for what we're doing in
RemoveDIs, and how old code should be behave with new debug-info
(exactly the same 99% of the time).


  Commit: 6a3ace20c80191159009668fff82fc3feeeca0a6
      https://github.com/llvm/llvm-project/commit/6a3ace20c80191159009668fff82fc3feeeca0a6
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    R libc/src/threads/linux/call_once.cpp
    R libc/src/threads/linux/thread_start_args.h.def

  Log Message:
  -----------
  [libc] remove redundant call_once (#79226)

Missed cleanup from https://reviews.llvm.org/D134716.

Fixes: #79220


  Commit: 2a61be4e4ca481016516403f634b475197221991
      https://github.com/llvm/llvm-project/commit/2a61be4e4ca481016516403f634b475197221991
  Author: Jeffrey Byrnes <Jeffrey.Byrnes at amd.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

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

  Log Message:
  -----------
  [SROA] NFC: Extract code to checkVectorTypesForPromotion

Change-Id: Ib6f237cc791a097f8f2411bc1d6502f11d4a748e


  Commit: 25e1916d88ebeef786956b678a4eb9a757e219d9
      https://github.com/llvm/llvm-project/commit/25e1916d88ebeef786956b678a4eb9a757e219d9
  Author: Alan Zhao <alanzhao1 at users.noreply.github.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M clang/test/CodeGenCXX/new-array-init.cpp

  Log Message:
  -----------
  [nfc][clang] Fix test in new-array-init.cpp (#79225)

This test was originally introduced in
https://github.com/llvm/llvm-project/pull/76976, but it incorrectly
tests braced-list initialization instead of parenthesized
initialization.


  Commit: d657519838e4b2310e13ec5ff52599e041860825
      https://github.com/llvm/llvm-project/commit/d657519838e4b2310e13ec5ff52599e041860825
  Author: Pete Lawrence <plawrence at apple.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M lldb/source/Core/ValueObject.cpp

  Log Message:
  -----------
  [lldb] Improve maintainability and readability for ValueObject methods (#75865)

As I worked through changes to another PR
(https://github.com/llvm/llvm-project/pull/74912), I couldn't help but
rewrite a few methods for readability, maintainability, and possibly
some behavior correctness too.

1. Exiting early instead of nested `if`-statements, which:
	- Reduces indentation levels for all subsequent lines
	- Treats missing pre-conditions similar to an error
- Clearly indicates that the full length of the method is the "happy
path".
2. Explicitly return empty Value Object shared pointers for those error
(like) situations, which
- Reduces the time it takes a maintainer to figure out what the method
actually returns based on those conditions.

3. Converting a mix of `if` and `if`-`else`-statements around an enum
into one `switch` statement, which:
	- Consolidates the former branching logic
	- Lets the compiler warn you of a (future) missing enum case
- This one may actually change behavior slightly, because what was an
early test for one enum case, now happens later on in the `switch`.

4. Consolidating near-identical, "copy-pasta" logic into one place,
which:
	- Separates the common code to the diverging paths.
	- Highlights the differences between the code paths.



rdar://119833526


  Commit: 03a61d34ebf4f8eeaa6861bec3ab39c75bb41778
      https://github.com/llvm/llvm-project/commit/03a61d34ebf4f8eeaa6861bec3ab39c75bb41778
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/include/llvm/BinaryFormat/ELFRelocs/RISCV.def
    M llvm/include/llvm/CodeGen/CommandFlags.h
    M llvm/include/llvm/Target/TargetMachine.h
    M llvm/include/llvm/Target/TargetOptions.h
    M llvm/include/llvm/TargetParser/Triple.h
    M llvm/lib/CodeGen/CommandFlags.cpp
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVFixupKinds.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.h
    M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
    M llvm/lib/Target/RISCV/RISCVExpandPseudoInsts.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/lib/Target/TargetMachine.cpp
    M llvm/test/CodeGen/RISCV/tls-models.ll
    M llvm/test/MC/RISCV/relocations.s
    A llvm/test/MC/RISCV/tlsdesc.s

  Log Message:
  -----------
  [RISCV] Support TLSDESC in the RISC-V backend (#66915)

This patch adds basic TLSDESC support in the RISC-V backend.

Specifically, we add new relocation types for TLSDESC, as prescribed in 
https://github.com/riscv-non-isa/riscv-elf-psabi-doc/pull/373, and add a
new pseudo instruction to simplify code generation.

This patch does not try to optimize the local dynamic case, which can be
improved in separate patches. 

Linker side changes will also be handled separately.

The current implementation is only enabled when passing the new
`-enable-tlsdesc` codegen flag.


  Commit: df1e01b316b174b5aa10727bd2ee0ec1082a9f65
      https://github.com/llvm/llvm-project/commit/df1e01b316b174b5aa10727bd2ee0ec1082a9f65
  Author: Jeff Niu <jeff at modular.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M mlir/test/IR/print-attr-type-aliases.mlir
    M mlir/test/lib/Dialect/Test/TestAttrDefs.td
    M mlir/test/lib/Dialect/Test/TestAttributes.cpp

  Log Message:
  -----------
  [mlir] Add example of `printAlias` to test dialect (NFC) (#79232)

Follow-up from previous pull request. Motivate the API change with an
attribute that decides between sugaring a sub-attribute or using an
alias


  Commit: 766e645d8d1e9e999386b90e3e19554d72324a66
      https://github.com/llvm/llvm-project/commit/766e645d8d1e9e999386b90e3e19554d72324a66
  Author: Jeffrey Byrnes <Jeffrey.Byrnes at amd.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/test/Transforms/SROA/vector-promotion.ll

  Log Message:
  -----------
  [SROA] NFC: Precommit test for pull/77678

Change-Id: I6b2346301f9bd840a0adceba4a0d03e9932af245


  Commit: b1778c7d7b9ec07c075118546b85a7cc9741e1f1
      https://github.com/llvm/llvm-project/commit/b1778c7d7b9ec07c075118546b85a7cc9741e1f1
  Author: Aiden Grossman <agrossman154 at yahoo.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/AsmPrinter.h
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    R llvm/test/CodeGen/Generic/bb-profile-dump.ll

  Log Message:
  -----------
  [AsmPrinter] Remove mbb-profile-dump flag (#76595)

Now that the work embedding PGO information in SHT_LLVM_BB_ADDR_MAP ELF
sections has landed, there is no longer a need to keep around the
mbb-profile-dump flag.


  Commit: c41472dbafd0dcacd943a95a9a099c1942d50394
      https://github.com/llvm/llvm-project/commit/c41472dbafd0dcacd943a95a9a099c1942d50394
  Author: Aiden Grossman <agrossman154 at yahoo.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M .github/workflows/libclang-python-tests.yml

  Log Message:
  -----------
  [Github] Only run libclang-python-tests on monorepo main

The libclang python binding test CI job currently doesn't have any
restrictions on what branches it will run on when something is pushed
and also isn't restricted to the monorepo. This patch adds a branch
restriction for the push event, only running the CI job when something
is pushed to the main branch (and the path filter is met), and also adds
a filter to ensure that the job comes from a PR against the monorepo or
a push to a branch in the monorepo.


  Commit: c51ab483e6c2d991a01179584705b83fbea1940d
      https://github.com/llvm/llvm-project/commit/c51ab483e6c2d991a01179584705b83fbea1940d
  Author: Jinyang He <hejinyang at loongson.cn>
  Date:   2024-01-24 (Wed, 24 Jan 2024)

  Changed paths:
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.h
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchFixupKinds.h
    A llvm/test/MC/LoongArch/Relocations/align-non-executable.s
    M llvm/test/MC/LoongArch/Relocations/relax-addsub.s
    A llvm/test/MC/LoongArch/Relocations/relax-align.s

  Log Message:
  -----------
  [LoongArch] Insert nops and emit align reloc when handle alignment directive (#72962)

Refer to RISCV, we will fix up the alignment if linker relaxation
changes code size and breaks alignment. Insert enough Nops and emit
R_LARCH_ALIGN relocation type so that linker could satisfy the alignment
by removing Nops.
It does so only in sections with the SHF_EXECINSTR flag.

In LoongArch psABI v2.30, R_LARCH_ALIGN requires symbol index. The
lowest 8 bits of addend represent alignment and the other bits of addend
represent the maximum number of bytes to emit.


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

  Changed paths:
    M llvm/lib/Transforms/Scalar/SROA.cpp
    M llvm/test/Transforms/SROA/vector-promotion.ll

  Log Message:
  -----------
  [SROA] Only try additional vector type candidates when needed (#77678)

https://github.com/llvm/llvm-project/commit/f9c2a341b94ca71508dcefa109ece843459f7f13
causes regressions when we have a slice with integer vector type that is
the same size as the partition, and a ptr load/store slice that is not
the size of the element type.

Ref `vector-promotion.ll:ptrLoadStoreTys`. 

Before the patch, we would only consider `<4 x i32>` as a candidate type
for vector promotion, and would find that it is a viable type for all
the slices.

After the patch, we now add `<2 x ptr>` as a candidate type due to slice
with user `store ptr %val0, ptr %obj, align 8` -- and flag that we
`HaveVecPtrTy`. The pre-existing behavior of this flag results in
removing the viable `<4 x i32>` and keeping only the unviable `<2 x
ptr>`, which results in a failure to promote.

The end result is failing to promote an alloca that was previously
promoted -- this does not appear to be the intent of that patch, which
has the goal of increasing promotions by providing more promotion
opportunities.

This PR preserves this behavior via a simple reorganization of the
implemention: try first the slice types with same size as the partition,
then, if there is no promotable type, try the `LoadStoreTys.`


  Commit: c663c8b8839e8a3e780426c1ab4d0005df90a116
      https://github.com/llvm/llvm-project/commit/c663c8b8839e8a3e780426c1ab4d0005df90a116
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M lld/test/ELF/dead-reloc-in-nonalloc.s

  Log Message:
  -----------
  [ELF,test] Improve dead-reloc-in-nonalloc.s

Test an absolute relocation referencing a DSO symbol, relocating a
non-SHF_ALLOC section. Also test --gc-sections.


  Commit: 7e50f006f7f652b9a5ac5ddd64deba5f1c9388a8
      https://github.com/llvm/llvm-project/commit/7e50f006f7f652b9a5ac5ddd64deba5f1c9388a8
  Author: paperchalice <liujunchang97 at outlook.com>
  Date:   2024-01-24 (Wed, 24 Jan 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/CodeGenPassBuilder.h
    M llvm/include/llvm/CodeGen/TargetPassConfig.h
    M llvm/include/llvm/Target/CGPassBuilderOption.h
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/lib/Target/X86/CMakeLists.txt
    A llvm/lib/Target/X86/X86CodeGenPassBuilder.cpp
    M llvm/lib/Target/X86/X86TargetMachine.h
    A llvm/test/tools/llc/new-pm/lit.local.cfg
    A llvm/test/tools/llc/new-pm/option-conflict.ll
    A llvm/test/tools/llc/new-pm/pipeline.ll
    A llvm/test/tools/llc/new-pm/start-stop.ll
    M llvm/tools/llc/CMakeLists.txt
    A llvm/tools/llc/NewPMDriver.cpp
    A llvm/tools/llc/NewPMDriver.h
    M llvm/tools/llc/llc.cpp
    M llvm/unittests/CodeGen/CMakeLists.txt
    R llvm/unittests/CodeGen/CodeGenPassBuilderTest.cpp

  Log Message:
  -----------
  [NewPM][CodeGen][llc] Add NPM support (#70922)

Add new pass manager support to `llc`. Users can use
`--passes=pass1,pass2...` to run mir passes, and use `--enable-new-pm`
to run default codegen pipeline.
This patch is taken from [D83612](https://reviews.llvm.org/D83612), the
original author is @yuanfang-chen.

---------

Co-authored-by: Yuanfang Chen <455423+yuanfang-chen at users.noreply.github.com>


  Commit: 230c13d59d0843c3b738920b85c341cc78a61fa9
      https://github.com/llvm/llvm-project/commit/230c13d59d0843c3b738920b85c341cc78a61fa9
  Author: Christudasan Devadasan <christudasan.devadasan at amd.com>
  Date:   2024-01-24 (Wed, 24 Jan 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow-codegen.ll
    M llvm/test/CodeGen/AMDGPU/bf16.ll
    M llvm/test/CodeGen/AMDGPU/callee-frame-setup.ll
    M llvm/test/CodeGen/AMDGPU/dwarf-multi-register-use-crash.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-preserved-registers.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-return-types.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_i32_system.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_i64_system.ll
    M llvm/test/CodeGen/AMDGPU/identical-subrange-spill-infloop.ll
    M llvm/test/CodeGen/AMDGPU/indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/insert-waitcnts-crash.ll
    M llvm/test/CodeGen/AMDGPU/ipra.ll
    M llvm/test/CodeGen/AMDGPU/mul24-pass-ordering.ll
    M llvm/test/CodeGen/AMDGPU/s-getpc-b64-remat.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-overlap-wwm-reserve.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spills-split-regalloc.ll
    M llvm/test/CodeGen/AMDGPU/sibling-call.ll
    M llvm/test/CodeGen/AMDGPU/spill-sgpr-csr-live-ins.mir
    M llvm/test/CodeGen/AMDGPU/spill-sgpr-to-virtual-vgpr.mir
    M llvm/test/CodeGen/AMDGPU/spill_more_than_wavesize_csr_sgprs.ll
    M llvm/test/CodeGen/AMDGPU/stacksave_stackrestore.ll
    M llvm/test/CodeGen/AMDGPU/strictfp_f16_abi_promote.ll
    M llvm/test/CodeGen/AMDGPU/unstructured-cfg-def-use-issue.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-large-tuple-alloc-error.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-tuple-allocation.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll

  Log Message:
  -----------
  [AMDGPU] Pick available high VGPR for CSR SGPR spilling (#78669)

CSR SGPR spilling currently uses the early available physical VGPRs. It
currently imposes a high register pressure while trying to allocate
large VGPR tuples within the default register budget.

This patch changes the spilling strategy by picking the VGPRs in the
reverse order, the highest available VGPR first and later after regalloc
shift them back to the lowest available range. With that, the initial
VGPRs would be available for allocation and possibility
of finding large number of contiguous registers will be more.


  Commit: 3dea0aa8f4607888d0c32cd7a691d8090b1b73c7
      https://github.com/llvm/llvm-project/commit/3dea0aa8f4607888d0c32cd7a691d8090b1b73c7
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

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

  Log Message:
  -----------
  [LSR] Fix incorrect comment. NFC (#79207)


  Commit: ecde13b1a861696dec5c4ccae792abe25df07db9
      https://github.com/llvm/llvm-project/commit/ecde13b1a861696dec5c4ccae792abe25df07db9
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Target/X86/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llc/BUILD.gn
    M llvm/utils/gn/secondary/llvm/unittests/CodeGen/BUILD.gn

  Log Message:
  -----------
  [gn build] port 7e50f006f7f6


  Commit: f0c387038854d61a632520a4073d1b6ebf4997ed
      https://github.com/llvm/llvm-project/commit/f0c387038854d61a632520a4073d1b6ebf4997ed
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2024-01-24 (Wed, 24 Jan 2024)

  Changed paths:
    M clang/lib/Lex/HeaderSearch.cpp
    A clang/test/Modules/pr73023.cpp

  Log Message:
  -----------
  [Modules] [HeaderSearch] Don't reenter headers if it is pragma once  (#76119)

Close https://github.com/llvm/llvm-project/issues/73023

The direct issue of https://github.com/llvm/llvm-project/issues/73023 is
that we entered a header which is marked as pragma once since the
compiler think it is OK if there is controlling macro.

It doesn't make sense. I feel like it should be sufficient to skip it
after we see the '#pragma once'.

>From the context, it looks like the workaround is primarily for
ObjectiveC. So we might need reviewers from OC.


  Commit: 7bda0ce15a2874ad74fb1a451a174084094ccc34
      https://github.com/llvm/llvm-project/commit/7bda0ce15a2874ad74fb1a451a174084094ccc34
  Author: paperchalice <liujunchang97 at outlook.com>
  Date:   2024-01-24 (Wed, 24 Jan 2024)

  Changed paths:
    M llvm/tools/llc/llc.cpp

  Log Message:
  -----------
  [llc] Remove C backend support (#79237)

C backend is removed in 3.1.


  Commit: 63f742c15f01a25c60f0090a3aceb15bb8985e5e
      https://github.com/llvm/llvm-project/commit/63f742c15f01a25c60f0090a3aceb15bb8985e5e
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-01-23 (Tue, 23 Jan 2024)

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

  Log Message:
  -----------
  [RISCV] Add sifive-p670 processor (#79015)

This is an OOO core that has a vector unit. For more information see
https://www.sifive.com/cores/performance-p650-670.

Scheduler model and other tuning will come in separate patches.


  Commit: 93248729cfae82a5ca2323d4a8e15aa3b9b9c707
      https://github.com/llvm/llvm-project/commit/93248729cfae82a5ca2323d4a8e15aa3b9b9c707
  Author: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
  Date:   2024-01-24 (Wed, 24 Jan 2024)

  Changed paths:
    R llvm/test/MC/RISCV/rv32a-invalid.s
    R llvm/test/MC/RISCV/rv32a-valid.s
    A llvm/test/MC/RISCV/rv32zaamo-invalid.s
    A llvm/test/MC/RISCV/rv32zaamo-valid.s
    A llvm/test/MC/RISCV/rv32zalrsc-invalid.s
    A llvm/test/MC/RISCV/rv32zalrsc-valid.s
    R llvm/test/MC/RISCV/rv64a-invalid.s
    R llvm/test/MC/RISCV/rv64a-valid.s
    A llvm/test/MC/RISCV/rv64zaamo-invalid.s
    A llvm/test/MC/RISCV/rv64zaamo-valid.s
    A llvm/test/MC/RISCV/rv64zalrsc-invalid.s
    A llvm/test/MC/RISCV/rv64zalrsc-valid.s

  Log Message:
  -----------
  [RISCV][MC] Split tests for A into Zaamo and Zalrsc parts

So that we don't duplicate tests in later patch.

Reviewers: topperc, dtcxzyw, asb

Reviewed By: asb

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


  Commit: 3641aa4506c87c02ee17a07d7bb0fe37f7094ce9
      https://github.com/llvm/llvm-project/commit/3641aa4506c87c02ee17a07d7bb0fe37f7094ce9
  Author: wangpc <wangpengcheng.pp at bytedance.com>
  Date:   2024-01-24 (Wed, 24 Jan 2024)

  Changed paths:
    M .github/workflows/libclang-python-tests.yml
    M .github/workflows/libcxx-build-and-test.yaml
    M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
    M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
    M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
    A clang-tools-extra/clang-tidy/bugprone/ChainedComparisonCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/ChainedComparisonCheck.h
    M clang-tools-extra/clang-tidy/cppcoreguidelines/PreferMemberInitializerCheck.cpp
    M clang-tools-extra/clang-tidy/google/IntegerTypesCheck.cpp
    M clang-tools-extra/clang-tidy/misc/CoroutineHostileRAIICheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    A clang-tools-extra/docs/clang-tidy/checks/bugprone/chained-comparison.rst
    M clang-tools-extra/docs/clang-tidy/checks/list.rst
    M clang-tools-extra/include-cleaner/test/tool.cpp
    M clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/chained-comparison.c
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/chained-comparison.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/prefer-member-initializer.cpp
    M clang-tools-extra/test/clang-tidy/checkers/google/runtime-int.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-templates.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/coroutine-hostile-raii.cpp
    M clang/cmake/caches/PGO.cmake
    M clang/cmake/caches/Release.cmake
    M clang/docs/ReleaseNotes.rst
    M clang/docs/SourceBasedCodeCoverage.rst
    M clang/docs/UsersManual.rst
    M clang/include/clang/AST/Type.h
    M clang/include/clang/Analysis/FlowSensitive/DataflowAnalysis.h
    M clang/include/clang/Analysis/FlowSensitive/Transfer.h
    M clang/include/clang/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.h
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/BuiltinsLoongArchBase.def
    M clang/include/clang/Basic/BuiltinsLoongArchLASX.def
    M clang/include/clang/Basic/BuiltinsLoongArchLSX.def
    M clang/include/clang/Basic/CodeGenOptions.def
    M clang/include/clang/Basic/CodeGenOptions.h
    M clang/include/clang/Basic/DiagnosticCommonKinds.td
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/Features.def
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Basic/LangOptions.h
    M clang/include/clang/Basic/OpenACCKinds.h
    M clang/include/clang/Basic/TargetBuiltins.h
    M clang/include/clang/Basic/arm_sme.td
    M clang/include/clang/Basic/arm_sve.td
    M clang/include/clang/Basic/arm_sve_sme_incl.td
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Driver/Types.def
    M clang/include/clang/ExtractAPI/API.h
    M clang/include/clang/ExtractAPI/DeclarationFragments.h
    M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
    M clang/include/clang/ExtractAPI/Serialization/SerializerBase.h
    M clang/include/clang/ExtractAPI/Serialization/SymbolGraphSerializer.h
    M clang/include/clang/Frontend/Utils.h
    M clang/include/clang/Lex/Preprocessor.h
    M clang/include/clang/Parse/Parser.h
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Serialization/ASTReader.h
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/lib/AST/TypePrinter.cpp
    M clang/lib/Analysis/ExprMutationAnalyzer.cpp
    M clang/lib/Analysis/FlowSensitive/Transfer.cpp
    M clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/lib/Basic/CodeGenOptions.cpp
    M clang/lib/Basic/Targets/ARM.cpp
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGCXX.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGExprComplex.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenPGO.cpp
    M clang/lib/CodeGen/CoverageMappingGen.cpp
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/lib/Driver/ToolChains/Darwin.h
    M clang/lib/Driver/ToolChains/MSVC.cpp
    M clang/lib/Driver/ToolChains/MSVC.h
    M clang/lib/Driver/ToolChains/MinGW.cpp
    M clang/lib/Driver/ToolChains/MinGW.h
    M clang/lib/Driver/Types.cpp
    M clang/lib/ExtractAPI/API.cpp
    M clang/lib/ExtractAPI/DeclarationFragments.cpp
    M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
    M clang/lib/Format/ContinuationIndenter.cpp
    M clang/lib/Format/WhitespaceManager.h
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/lib/Headers/CMakeLists.txt
    M clang/lib/Headers/bmiintrin.h
    M clang/lib/Headers/ia32intrin.h
    M clang/lib/Headers/larchintrin.h
    M clang/lib/Headers/lasxintrin.h
    M clang/lib/Headers/lsxintrin.h
    M clang/lib/Interpreter/Interpreter.cpp
    M clang/lib/Lex/HeaderSearch.cpp
    M clang/lib/Lex/Preprocessor.cpp
    M clang/lib/Parse/ParseOpenACC.cpp
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
    M clang/test/Analysis/Inputs/system-header-simulator.h
    M clang/test/Analysis/malloc.mm
    M clang/test/Analysis/stream-error.c
    M clang/test/Analysis/taint-tester.c
    M clang/test/Analysis/uninit-vals.m
    M clang/test/ClangScanDeps/strip-codegen-args.m
    A clang/test/CodeGen/LoongArch/builtin-dbl-approximate.c
    A clang/test/CodeGen/LoongArch/builtin-flt-approximate.c
    M clang/test/CodeGen/LoongArch/intrinsic-la64-error.c
    A clang/test/CodeGen/LoongArch/lasx/builtin-approximate-alias.c
    A clang/test/CodeGen/LoongArch/lasx/builtin-approximate.c
    A clang/test/CodeGen/LoongArch/lsx/builtin-approximate-alias.c
    A clang/test/CodeGen/LoongArch/lsx/builtin-approximate.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_add-i32.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_add-i64.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_cnt.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_ld1.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_ld1_vnum.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_ldr.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_mopa-za32.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_mopa-za64.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_mops-za32.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_mops-za64.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_read.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_st1.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_st1_vnum.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_state_funs.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_str.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_write.c
    M clang/test/CodeGen/aarch64-sme-intrinsics/acle_sme_zero.c
    A clang/test/CodeGen/aarch64-sme2-intrinsics/aarch64-sme2-attrs.cpp
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_add.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_bmop.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_clamp.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvt.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvtn.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_fp_dots.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_frint.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_int_dots.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_ldr_str_zt.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt_x2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt_x4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt_x2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt_x4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_max.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_maxnm.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_min.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_minnm.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mla.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlal.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlall.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mls.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlsl.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mop.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_read.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_reinterpret_svcount_svbool.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_sqdmulh.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_sub.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_unpkx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_unpkx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vdot.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_add.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_qrshr.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_rshl.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_selx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_selx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_uzpx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_uzpx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_zipx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_zipx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_write.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_zero_zt.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_while_x2.c
    M clang/test/CodeGen/alloc-size.c
    M clang/test/CodeGen/amdgpu-address-spaces.cpp
    M clang/test/CodeGen/arm-acle-coproc.c
    M clang/test/CodeGen/attr-target-clones-aarch64.c
    M clang/test/CodeGen/attr-target-version.c
    M clang/test/CodeGen/cx-complex-range.c
    M clang/test/CodeGen/fat-lto-objects.c
    A clang/test/CodeGen/smiths-complex-div.c
    M clang/test/CodeGenCUDA/amdgpu-code-object-version.cu
    M clang/test/CodeGenCUDA/amdgpu-workgroup-size.cu
    M clang/test/CodeGenCXX/attr-target-clones-aarch64.cpp
    M clang/test/CodeGenCXX/attr-target-version.cpp
    M clang/test/CodeGenCXX/new-array-init.cpp
    M clang/test/CodeGenHIP/default-attributes.hip
    M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn.cl
    M clang/test/Driver/arm-cortex-cpus-1.c
    M clang/test/Driver/dxc_spirv.hlsl
    M clang/test/Driver/fat-lto-objects.c
    M clang/test/Driver/hipstdpar.c
    A clang/test/Driver/opencl_aot_save_temps.cl
    M clang/test/Driver/range.c
    M clang/test/Driver/riscv-cpus.c
    M clang/test/ExtractAPI/typedef.c
    A clang/test/ExtractAPI/union.c
    A clang/test/Format/dump-config-objc-stdin.m
    M clang/test/Index/Core/designated-inits.c
    M clang/test/Index/Core/external-source-symbol-attr-cxx.cpp
    M clang/test/Index/Core/external-source-symbol-attr.m
    M clang/test/Index/Core/index-dependent-source.cpp
    M clang/test/Index/Core/index-instantiated-source.cpp
    M clang/test/Index/Core/index-source-invalid-name.cpp
    M clang/test/Index/Core/index-source.cpp
    M clang/test/Index/Core/index-source.m
    M clang/test/Index/Core/index-source.mm
    M clang/test/Index/Core/index-subkinds.m
    M clang/test/Index/Core/index-with-module.m
    M clang/test/Index/ms-property.cpp
    M clang/test/Index/using_if_exists.cpp
    M clang/test/Lexer/cxx-features.cpp
    M clang/test/Lexer/has_extension_cxx.cpp
    M clang/test/Misc/target-invalid-cpu-note.c
    A clang/test/Modules/pr60085.cppm
    A clang/test/Modules/pr73023.cpp
    A clang/test/Modules/pr78830.cppm
    A clang/test/OpenMP/force-usm.c
    M clang/test/ParserOpenACC/parse-clauses.c
    M clang/test/ParserOpenACC/parse-clauses.cpp
    M clang/test/Preprocessor/arm-target-features.c
    M clang/test/Preprocessor/init-aarch64.c
    M clang/test/Preprocessor/riscv-target-features.c
    M clang/test/Profile/c-general.c
    A clang/test/Profile/c-mcdc-logicalop-ternary.c
    M clang/test/Sema/aarch64-incompat-sm-builtin-calls.c
    M clang/test/Sema/aarch64-sme-func-attrs-without-target-feature.cpp
    M clang/test/Sema/aarch64-sme-func-attrs.c
    M clang/test/Sema/aarch64-sme-intrinsics/acle_sme_imm.cpp
    M clang/test/Sema/aarch64-sme-intrinsics/acle_sme_target.c
    M clang/test/Sema/aarch64-sme2-intrinsics/acle_sme2_imm.cpp
    M clang/test/Sema/attr-target-clones-aarch64.c
    A clang/test/Sema/warn-infinity-nan-disabled-lnx.cpp
    A clang/test/Sema/warn-infinity-nan-disabled-win.cpp
    M clang/test/SemaCXX/attr-target-version.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-warning-data-invocation.cpp
    M clang/tools/clang-format/ClangFormat.cpp
    M clang/tools/clang-repl/CMakeLists.txt
    M clang/tools/libclang/CMakeLists.txt
    M clang/unittests/Analysis/ExprMutationAnalyzerTest.cpp
    M clang/unittests/Analysis/FlowSensitive/LoggerTest.cpp
    M clang/unittests/Analysis/FlowSensitive/SignAnalysisTest.cpp
    M clang/unittests/Analysis/FlowSensitive/TestingSupport.cpp
    M clang/unittests/Analysis/FlowSensitive/TestingSupport.h
    M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp
    M clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp
    M clang/unittests/Format/FormatTest.cpp
    M clang/unittests/Format/FormatTestObjC.cpp
    M clang/utils/TableGen/SveEmitter.cpp
    M compiler-rt/cmake/builtin-config-ix.cmake
    M compiler-rt/include/CMakeLists.txt
    A compiler-rt/include/profile/instr_prof_interface.h
    M compiler-rt/lib/builtins/CMakeLists.txt
    A compiler-rt/lib/builtins/aarch64/sme-libc-routines.c
    M compiler-rt/lib/builtins/cpu_model/aarch64.c
    M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/apple.inc
    M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/mrs.inc
    M compiler-rt/lib/builtins/cpu_model/aarch64/hwcap.inc
    M compiler-rt/lib/profile/InstrProfiling.h
    M compiler-rt/lib/profile/InstrProfilingFile.c
    M compiler-rt/lib/sanitizer_common/sanitizer_internal_defs.h
    M compiler-rt/lib/tsan/rtl/tsan_dispatch_defs.h
    M compiler-rt/lib/tsan/rtl/tsan_platform_linux.cpp
    M compiler-rt/test/CMakeLists.txt
    M compiler-rt/test/asan/TestCases/alloca_loop_unpoisoning.cpp
    A compiler-rt/test/builtins/Unit/sme-string-test.cpp
    M compiler-rt/test/lit.common.cfg.py
    M compiler-rt/test/lit.common.configured.in
    A compiler-rt/test/profile/Linux/instrprof-weak-symbol.c
    A compiler-rt/test/profile/instrprof-api.c
    M compiler-rt/test/tsan/java_finalizer2.cpp
    M flang/docs/Directives.md
    M flang/include/flang/Common/Fortran.h
    M flang/include/flang/Lower/OpenACC.h
    M flang/include/flang/Lower/OpenMP.h
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/OpenACC.cpp
    M flang/lib/Lower/OpenMP.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/lib/Semantics/check-call.cpp
    M flang/lib/Semantics/check-declarations.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/module/iso_c_binding.f90
    M flang/module/iso_fortran_env.f90
    M flang/test/Driver/driver-help-hidden.f90
    M flang/test/Driver/driver-help.f90
    M flang/test/Driver/linker-flags.f90
    M flang/test/Lower/Intrinsics/execute_command_line-optional.f90
    M flang/test/Lower/Intrinsics/execute_command_line.f90
    M flang/test/Lower/OpenACC/acc-kernels-loop.f90
    M flang/test/Lower/OpenACC/acc-loop-exit.f90
    M flang/test/Lower/OpenACC/acc-loop.f90
    M flang/test/Lower/OpenACC/acc-parallel-loop.f90
    M flang/test/Lower/OpenACC/acc-private.f90
    M flang/test/Lower/OpenACC/acc-reduction.f90
    M flang/test/Lower/OpenACC/acc-serial-loop.f90
    M flang/test/Lower/OpenACC/locations.f90
    M flang/test/Lower/OpenMP/FIR/sections.f90
    A flang/test/Lower/OpenMP/infinite-loop-in-construct.f90
    M flang/test/Lower/OpenMP/sections.f90
    A flang/test/Lower/OpenMP/threadprivate-default-clause.f90
    A flang/test/Lower/OpenMP/wsloop-unstructured.f90
    M flang/test/Semantics/ignore_tkr01.f90
    A flang/test/Semantics/ignore_tkr03.f90
    M flang/tools/f18/flang-to-external-fc.in
    M libc/cmake/modules/CheckCompilerFeatures.cmake
    M libc/cmake/modules/LLVMLibCObjectRules.cmake
    M libc/cmake/modules/LLVMLibCTestRules.cmake
    M libc/config/baremetal/riscv/entrypoints.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/app.h
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    A libc/docs/gpu/rpc-diagram.svg
    M libc/docs/gpu/rpc.rst
    M libc/docs/gpu/testing.rst
    M libc/docs/math/index.rst
    M libc/fuzzing/stdlib/strtofloat_fuzz.cpp
    M libc/include/llvm-libc-macros/sys-queue-macros.h
    M libc/src/__support/FPUtil/BasicOperations.h
    M libc/src/__support/FPUtil/DivisionAndRemainderOperations.h
    M libc/src/__support/FPUtil/FPBits.h
    M libc/src/__support/FPUtil/Hypot.h
    M libc/src/__support/FPUtil/ManipulationFunctions.h
    M libc/src/__support/FPUtil/NearestIntegerOperations.h
    M libc/src/__support/FPUtil/NormalFloat.h
    M libc/src/__support/FPUtil/aarch64/FEnvImpl.h
    M libc/src/__support/FPUtil/arm/FEnvImpl.h
    M libc/src/__support/FPUtil/dyadic_float.h
    M libc/src/__support/FPUtil/except_value_utils.h
    M libc/src/__support/FPUtil/generic/FMA.h
    M libc/src/__support/FPUtil/generic/FMod.h
    M libc/src/__support/FPUtil/generic/sqrt.h
    M libc/src/__support/FPUtil/generic/sqrt_80_bit_long_double.h
    M libc/src/__support/FPUtil/riscv/FMA.h
    M libc/src/__support/FPUtil/riscv/sqrt.h
    M libc/src/__support/FPUtil/x86_64/NextAfterLongDouble.h
    M libc/src/__support/str_to_float.h
    M libc/src/math/generic/acosf.cpp
    M libc/src/math/generic/acoshf.cpp
    M libc/src/math/generic/asinf.cpp
    M libc/src/math/generic/atanhf.cpp
    M libc/src/math/generic/cosf.cpp
    M libc/src/math/generic/coshf.cpp
    M libc/src/math/generic/exp.cpp
    M libc/src/math/generic/exp10.cpp
    M libc/src/math/generic/exp10f_impl.h
    M libc/src/math/generic/exp2.cpp
    M libc/src/math/generic/exp2f_impl.h
    M libc/src/math/generic/expf.cpp
    M libc/src/math/generic/expm1.cpp
    M libc/src/math/generic/expm1f.cpp
    M libc/src/math/generic/hypotf.cpp
    M libc/src/math/generic/log.cpp
    M libc/src/math/generic/log10.cpp
    M libc/src/math/generic/log10f.cpp
    M libc/src/math/generic/log1p.cpp
    M libc/src/math/generic/log1pf.cpp
    M libc/src/math/generic/log2.cpp
    M libc/src/math/generic/log2f.cpp
    M libc/src/math/generic/logf.cpp
    M libc/src/math/generic/powf.cpp
    M libc/src/math/generic/range_reduction_fma.h
    M libc/src/math/generic/sincosf.cpp
    M libc/src/math/generic/sinf.cpp
    M libc/src/math/generic/sinhf.cpp
    M libc/src/math/generic/tanf.cpp
    M libc/src/stdio/printf_core/float_dec_converter.h
    M libc/src/sys/CMakeLists.txt
    A libc/src/sys/auxv/CMakeLists.txt
    A libc/src/sys/auxv/getauxval.h
    A libc/src/sys/auxv/linux/CMakeLists.txt
    A libc/src/sys/auxv/linux/getauxval.cpp
    R libc/src/threads/linux/call_once.cpp
    R libc/src/threads/linux/thread_start_args.h.def
    M libc/src/unistd/linux/CMakeLists.txt
    M libc/src/unistd/linux/sysconf.cpp
    M libc/startup/linux/do_start.cpp
    M libc/test/UnitTest/ErrnoSetterMatcher.h
    M libc/test/UnitTest/FPMatcher.h
    M libc/test/UnitTest/HermeticTestUtils.cpp
    M libc/test/src/__support/FPUtil/fpbits_test.cpp
    M libc/test/src/math/CeilTest.h
    M libc/test/src/math/CopySignTest.h
    M libc/test/src/math/FAbsTest.h
    M libc/test/src/math/FDimTest.h
    M libc/test/src/math/FMaxTest.h
    M libc/test/src/math/FMinTest.h
    M libc/test/src/math/FloorTest.h
    M libc/test/src/math/FmaTest.h
    M libc/test/src/math/FrexpTest.h
    M libc/test/src/math/HypotTest.h
    M libc/test/src/math/ILogbTest.h
    M libc/test/src/math/LdExpTest.h
    M libc/test/src/math/LogbTest.h
    M libc/test/src/math/ModfTest.h
    M libc/test/src/math/NextAfterTest.h
    M libc/test/src/math/RIntTest.h
    M libc/test/src/math/RemQuoTest.h
    M libc/test/src/math/RoundTest.h
    M libc/test/src/math/RoundToIntegerTest.h
    M libc/test/src/math/SqrtTest.h
    M libc/test/src/math/TruncTest.h
    M libc/test/src/math/acosf_test.cpp
    M libc/test/src/math/acoshf_test.cpp
    M libc/test/src/math/asinf_test.cpp
    M libc/test/src/math/asinhf_test.cpp
    M libc/test/src/math/atanf_test.cpp
    M libc/test/src/math/atanhf_test.cpp
    M libc/test/src/math/cos_test.cpp
    M libc/test/src/math/cosf_test.cpp
    M libc/test/src/math/coshf_test.cpp
    M libc/test/src/math/differential_testing/BinaryOpSingleOutputDiff.h
    M libc/test/src/math/differential_testing/SingleInputSingleOutputDiff.h
    M libc/test/src/math/erff_test.cpp
    M libc/test/src/math/exhaustive/exhaustive_test.h
    M libc/test/src/math/exhaustive/hypotf_test.cpp
    M libc/test/src/math/exhaustive/sincosf_test.cpp
    M libc/test/src/math/exp10_test.cpp
    M libc/test/src/math/exp10f_test.cpp
    M libc/test/src/math/exp2_test.cpp
    M libc/test/src/math/exp2f_test.cpp
    M libc/test/src/math/exp_test.cpp
    M libc/test/src/math/expf_test.cpp
    M libc/test/src/math/expm1_test.cpp
    M libc/test/src/math/expm1f_test.cpp
    M libc/test/src/math/log10_test.cpp
    M libc/test/src/math/log10f_test.cpp
    M libc/test/src/math/log1p_test.cpp
    M libc/test/src/math/log1pf_test.cpp
    M libc/test/src/math/log2_test.cpp
    M libc/test/src/math/log2f_test.cpp
    M libc/test/src/math/log_test.cpp
    M libc/test/src/math/logf_test.cpp
    M libc/test/src/math/sin_test.cpp
    M libc/test/src/math/sincosf_test.cpp
    M libc/test/src/math/sinf_test.cpp
    M libc/test/src/math/sinhf_test.cpp
    M libc/test/src/math/smoke/FDimTest.h
    M libc/test/src/math/smoke/FMaxTest.h
    M libc/test/src/math/smoke/FMinTest.h
    M libc/test/src/math/smoke/FmaTest.h
    M libc/test/src/math/smoke/HypotTest.h
    M libc/test/src/math/smoke/ILogbTest.h
    M libc/test/src/math/smoke/LdExpTest.h
    M libc/test/src/math/smoke/LogbTest.h
    M libc/test/src/math/smoke/ModfTest.h
    M libc/test/src/math/smoke/NextAfterTest.h
    M libc/test/src/math/smoke/NextTowardTest.h
    M libc/test/src/math/smoke/RIntTest.h
    M libc/test/src/math/smoke/RemQuoTest.h
    M libc/test/src/math/smoke/RoundToIntegerTest.h
    M libc/test/src/math/smoke/coshf_test.cpp
    M libc/test/src/math/smoke/exp10f_test.cpp
    M libc/test/src/math/smoke/exp2f_test.cpp
    M libc/test/src/math/smoke/expf_test.cpp
    M libc/test/src/math/smoke/expm1f_test.cpp
    M libc/test/src/math/smoke/sinhf_test.cpp
    M libc/test/src/math/tan_test.cpp
    M libc/test/src/math/tanf_test.cpp
    M libc/test/src/math/tanhf_test.cpp
    M libc/test/src/stdio/sprintf_test.cpp
    M libc/test/src/stdio/sscanf_test.cpp
    M libc/test/src/stdlib/atof_test.cpp
    M libc/test/src/stdlib/strtod_test.cpp
    M libc/test/src/stdlib/strtof_test.cpp
    M libc/test/src/sys/CMakeLists.txt
    A libc/test/src/sys/auxv/CMakeLists.txt
    A libc/test/src/sys/auxv/linux/CMakeLists.txt
    A libc/test/src/sys/auxv/linux/getauxval_test.cpp
    M libc/utils/MPFRWrapper/MPFRUtils.cpp
    M libcxx/benchmarks/CMakeLists.txt
    A libcxx/benchmarks/exception_ptr.bench.cpp
    M libcxx/docs/BuildingLibcxx.rst
    A libcxx/docs/ReleaseNotes.rst
    M libcxx/docs/ReleaseNotes/18.rst
    M libcxx/docs/ReleaseProcedure.rst
    M libcxx/docs/Status/Cxx2cPapers.csv
    M libcxx/docs/Status/FormatIssues.csv
    M libcxx/docs/index.rst
    M libcxx/include/__algorithm/comp_ref_type.h
    M libcxx/include/__algorithm/nth_element.h
    M libcxx/include/__algorithm/sort.h
    M libcxx/include/__algorithm/three_way_comp_ref_type.h
    M libcxx/include/__availability
    M libcxx/include/__chrono/ostream.h
    M libcxx/include/__config
    M libcxx/include/__coroutine/coroutine_handle.h
    M libcxx/include/__debug_utils/strict_weak_ordering_check.h
    M libcxx/include/__exception/exception_ptr.h
    M libcxx/include/__expected/expected.h
    M libcxx/include/__format/format_arg.h
    M libcxx/include/__format/format_context.h
    M libcxx/include/__memory/assume_aligned.h
    M libcxx/include/__memory_resource/polymorphic_allocator.h
    M libcxx/include/chrono
    M libcxx/include/format
    M libcxx/include/new
    M libcxx/include/regex
    M libcxx/include/typeinfo
    M libcxx/lib/abi/CHANGELOG.TXT
    M libcxx/lib/abi/arm64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/i686-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/powerpc-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/powerpc64-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-freebsd.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.noexceptions.nonew.abilist
    M libcxx/modules/std.compat/cstdlib.inc
    M libcxx/modules/std.compat/ctime.inc
    M libcxx/modules/std/ctime.inc
    M libcxx/src/filesystem/operations.cpp
    A libcxx/src/include/overridable_function.h
    M libcxx/src/memory_resource.cpp
    M libcxx/src/mutex.cpp
    M libcxx/src/new.cpp
    M libcxx/src/support/runtime/exception_pointer_cxxabi.ipp
    M libcxx/src/support/runtime/exception_pointer_glibcxx.ipp
    M libcxx/src/support/runtime/exception_pointer_unimplemented.ipp
    R libcxx/test/libcxx/algorithms/alg.sorting/assert.sort.invalid_comparator.pass.cpp
    A libcxx/test/libcxx/algorithms/alg.sorting/assert.sort.invalid_comparator/assert.sort.invalid_comparator.oob.pass.cpp
    A libcxx/test/libcxx/algorithms/alg.sorting/assert.sort.invalid_comparator/assert.sort.invalid_comparator.pass.cpp
    A libcxx/test/libcxx/algorithms/alg.sorting/assert.sort.invalid_comparator/bad_comparator_values.h
    A libcxx/test/libcxx/algorithms/alg.sorting/assert.sort.invalid_comparator/invalid_comparator_utilities.h
    R libcxx/test/libcxx/algorithms/alg.sorting/bad_comparator_values.h
    A libcxx/test/libcxx/language.support/support.dynamic/assert.nothrow_new_not_overridden_fno_exceptions.pass.cpp
    A libcxx/test/libcxx/language.support/support.dynamic/new_dont_return_nullptr.pass.cpp
    M libcxx/test/libcxx/selftest/modules/std-and-std.compat-module.sh.cpp
    M libcxx/test/libcxx/selftest/modules/std.compat-module.sh.cpp
    M libcxx/test/libcxx/transitive_includes/cxx03.csv
    M libcxx/test/libcxx/transitive_includes/cxx11.csv
    M libcxx/test/libcxx/transitive_includes/cxx14.csv
    M libcxx/test/libcxx/transitive_includes/cxx17.csv
    M libcxx/test/libcxx/transitive_includes/cxx20.csv
    M libcxx/test/libcxx/transitive_includes/cxx23.csv
    M libcxx/test/libcxx/transitive_includes/cxx26.csv
    M libcxx/test/libcxx/utilities/expected/expected.expected/no_unique_address.compile.pass.cpp
    M libcxx/test/libcxx/utilities/expected/expected.expected/transform_error.mandates.verify.cpp
    M libcxx/test/libcxx/utilities/expected/expected.void/no_unique_address.compile.pass.cpp
    M libcxx/test/libcxx/utilities/expected/expected.void/transform_error.mandates.verify.cpp
    A libcxx/test/libcxx/utilities/memory/ptr.align/assume_aligned.const_eval.verify.cpp
    A libcxx/test/libcxx/utilities/utility/mem.res/mem.poly.allocator.class/mem.poly.allocator.mem/assert.deallocate.pass.cpp
    R libcxx/test/libcxx/utilities/utility/mem.res/mem.poly.allocator.class/mem.poly.allocator.mem/debug.deallocate.pass.cpp
    M libcxx/test/std/diagnostics/syserr/syserr.compare/eq_error_code_error_code.pass.cpp
    M libcxx/test/std/diagnostics/syserr/syserr.errcat/syserr.errcat.derived/message.pass.cpp
    M libcxx/test/std/diagnostics/syserr/syserr.errcat/syserr.errcat.objects/system_category.pass.cpp
    A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size.except.pass.cpp
    A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_align.except.pass.cpp
    A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_align_nothrow.except.pass.cpp
    M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_align_nothrow.replace.indirect.pass.cpp
    A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_nothrow.except.pass.cpp
    M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/new.size_nothrow.replace.indirect.pass.cpp
    A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size.except.pass.cpp
    A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_align.except.pass.cpp
    A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_align_nothrow.except.pass.cpp
    M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_align_nothrow.replace.indirect.pass.cpp
    A libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_nothrow.except.pass.cpp
    M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/new.size_nothrow.replace.indirect.pass.cpp
    M libcxx/test/std/modules/std.compat.pass.cpp
    M libcxx/test/std/re/re.const/re.matchflag/match_not_eol.pass.cpp
    M libcxx/test/std/time/time.clock/time.clock.local/ostream.pass.cpp
    A libcxx/test/std/time/time.clock/time.clock.local/ostream.verify.cpp
    R libcxx/test/std/time/time.clock/time.clock.system/ostream.pass.cpp
    A libcxx/test/std/time/time.clock/time.clock.system/sys_date.ostream.pass.cpp
    A libcxx/test/std/time/time.clock/time.clock.system/sys_time.ostream.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/assign/assign.U.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/assign/assign.copy.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/assign/assign.move.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/assign/emplace.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/monadic/transform.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/monadic/transform_error.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/swap/member.swap.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/assign/assign.copy.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/assign/assign.move.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/assign/assign.unexpected.copy.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/assign/assign.unexpected.move.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/monadic/transform_error.pass.cpp
    M libcxx/test/std/utilities/expected/expected.void/swap/member.swap.pass.cpp
    M libcxx/test/std/utilities/expected/types.h
    R libcxx/test/std/utilities/format/format.arguments/format.arg/visit.pass.cpp
    R libcxx/test/std/utilities/format/format.arguments/format.arg/visit.return_type.pass.cpp
    R libcxx/test/std/utilities/format/format.arguments/format.arg/visit_format_arg.deprecated.verify.cpp
    M libcxx/test/std/utilities/format/format.arguments/format.arg/visit_format_arg.pass.cpp
    M libcxx/test/std/utilities/format/format.arguments/format.args/get.pass.cpp
    M libcxx/test/support/check_assertion.h
    M libcxx/test/support/count_new.h
    M libcxx/test/support/test.support/test_check_assertion.pass.cpp
    M libcxx/test/support/test_basic_format_arg.h
    M libcxx/test/support/test_macros.h
    M libcxx/utils/generate_feature_test_macro_components.py
    M libcxxabi/include/cxxabi.h
    M libcxxabi/lib/exceptions.exp
    M libcxxabi/src/cxa_exception.cpp
    M libcxxabi/src/stdlib_new_delete.cpp
    M lld/COFF/Writer.cpp
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/Arch/Mips.cpp
    M lld/ELF/Arch/PPC64.cpp
    M lld/ELF/Config.h
    M lld/ELF/Driver.cpp
    M lld/ELF/InputFiles.cpp
    M lld/ELF/InputFiles.h
    M lld/ELF/InputSection.cpp
    M lld/ELF/InputSection.h
    M lld/ELF/LTO.cpp
    M lld/ELF/LTO.h
    M lld/ELF/LinkerScript.cpp
    M lld/ELF/Relocations.cpp
    M lld/ELF/ScriptLexer.h
    M lld/ELF/ScriptParser.cpp
    M lld/ELF/Symbols.h
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/Target.cpp
    M lld/ELF/Writer.cpp
    M lld/MachO/Arch/ARM64.cpp
    M lld/MachO/Arch/ARM64Common.h
    M lld/MachO/Arch/ARM64_32.cpp
    M lld/MachO/Arch/X86_64.cpp
    M lld/MachO/Driver.cpp
    M lld/MachO/SyntheticSections.cpp
    M lld/MachO/SyntheticSections.h
    M lld/MachO/Target.h
    A lld/test/COFF/cfguard-weak-undef.s
    M lld/test/ELF/allow-shlib-undefined.s
    M lld/test/ELF/common-archive-lookup.s
    M lld/test/ELF/cref.s
    M lld/test/ELF/dead-reloc-in-nonalloc.s
    M lld/test/ELF/linkerscript/symbol-ordering-file2.s
    M lld/test/ELF/lto/amdgcn-oses.ll
    M lld/test/ELF/lto/cache.ll
    M lld/test/ELF/lto/comdat-mixed-archive.test
    M lld/test/ELF/lto/defsym.ll
    M lld/test/ELF/lto/emit-asm.ll
    M lld/test/ELF/lto/exclude-libs-libcall.ll
    M lld/test/ELF/lto/obj-path.ll
    M lld/test/ELF/lto/parallel-internalize.ll
    M lld/test/ELF/lto/parallel.ll
    M lld/test/ELF/lto/pseudo-probe-lto.ll
    M lld/test/ELF/lto/save-temps-eq.ll
    M lld/test/ELF/lto/thin-archivecollision.ll
    M lld/test/ELF/lto/thinlto.ll
    M lld/test/ELF/x86-64-gotpc-no-relax-err.s
    M lld/test/ELF/x86-64-zrel-zrela.s
    A lld/test/MachO/arm64-objc-stubs-dyn.s
    M lld/test/MachO/arm64-objc-stubs.s
    M lld/test/MachO/link-csu-object.s
    M lld/test/MachO/x86-64-objc-stubs.s
    A lld/test/wasm/Inputs/start-lib1.s
    A lld/test/wasm/Inputs/start-lib2.s
    A lld/test/wasm/start-lib.s
    M lld/wasm/Driver.cpp
    M lld/wasm/InputFiles.h
    M lld/wasm/Options.td
    M lld/wasm/Symbols.h
    M lldb/include/lldb/API/LLDB.h
    M lldb/include/lldb/Breakpoint/BreakpointIDList.h
    M lldb/include/lldb/Breakpoint/Watchpoint.h
    M lldb/include/lldb/Utility/Broadcaster.h
    M lldb/source/Breakpoint/BreakpointIDList.cpp
    M lldb/source/Breakpoint/BreakpointList.cpp
    M lldb/source/Breakpoint/BreakpointLocation.cpp
    M lldb/source/Breakpoint/Watchpoint.cpp
    M lldb/source/Breakpoint/WatchpointList.cpp
    M lldb/source/Core/ValueObject.cpp
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.h
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/SymbolLocator/Debuginfod/SymbolLocatorDebuginfod.cpp
    M lldb/source/Plugins/SymbolLocator/Debuginfod/SymbolLocatorDebuginfodProperties.td
    M lldb/source/Target/Process.cpp
    M lldb/source/Target/Target.cpp
    M lldb/source/Target/Thread.cpp
    M lldb/source/Target/ThreadList.cpp
    M lldb/source/Utility/Broadcaster.cpp
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/chrono/TestDataFormatterLibcxxChrono.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/chrono/main.cpp
    M llvm/cmake/modules/FindFFI.cmake
    M llvm/docs/AMDGPUUsage.rst
    M llvm/docs/Atomics.rst
    M llvm/docs/CommandGuide/llvm-profdata.rst
    M llvm/docs/CoverageMappingFormat.rst
    M llvm/docs/FatLTO.rst
    M llvm/docs/LangRef.rst
    M llvm/docs/ReleaseNotes.rst
    A llvm/docs/RemoveDIsDebugInfo.md
    M llvm/docs/UserGuides.rst
    M llvm/include/llvm/ADT/FunctionExtras.h
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/include/llvm/Analysis/VecFuncs.def
    M llvm/include/llvm/BinaryFormat/ELFRelocs/RISCV.def
    M llvm/include/llvm/Bitcode/BitcodeWriterPass.h
    M llvm/include/llvm/CodeGen/AsmPrinter.h
    M llvm/include/llvm/CodeGen/CodeGenPassBuilder.h
    M llvm/include/llvm/CodeGen/CommandFlags.h
    M llvm/include/llvm/CodeGen/GlobalISel/IRTranslator.h
    M llvm/include/llvm/CodeGen/MachineOutliner.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/CodeGen/TargetPassConfig.h
    M llvm/include/llvm/DWARFLinker/AddressesMap.h
    M llvm/include/llvm/Debuginfod/Debuginfod.h
    M llvm/include/llvm/ExecutionEngine/JITLink/aarch32.h
    M llvm/include/llvm/IR/CallingConv.h
    M llvm/include/llvm/IR/DebugInfo.h
    M llvm/include/llvm/IR/Function.h
    M llvm/include/llvm/IR/GlobalValue.h
    M llvm/include/llvm/IR/Intrinsics.td
    M llvm/include/llvm/IR/IntrinsicsAArch64.td
    M llvm/include/llvm/IR/IntrinsicsLoongArch.td
    M llvm/include/llvm/IR/IntrinsicsRISCV.td
    M llvm/include/llvm/IR/ProfileSummary.h
    M llvm/include/llvm/IR/VPIntrinsics.def
    M llvm/include/llvm/Passes/PassBuilder.h
    M llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h
    M llvm/include/llvm/ProfileData/SampleProf.h
    M llvm/include/llvm/Support/JSON.h
    M llvm/include/llvm/Support/TargetOpcodes.def
    M llvm/include/llvm/Target/CGPassBuilderOption.h
    M llvm/include/llvm/Target/TargetMachine.h
    M llvm/include/llvm/Target/TargetOptions.h
    M llvm/include/llvm/Target/TargetPfmCounters.td
    M llvm/include/llvm/TargetParser/AArch64TargetParser.h
    M llvm/include/llvm/TargetParser/ARMTargetParser.def
    M llvm/include/llvm/TargetParser/Triple.h
    M llvm/include/llvm/Transforms/IPO/EmbedBitcodePass.h
    M llvm/include/llvm/Transforms/Instrumentation/CGProfile.h
    M llvm/include/llvm/Transforms/Scalar/ConstantHoisting.h
    M llvm/lib/Analysis/TargetLibraryInfo.cpp
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriterPass.cpp
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp
    M llvm/lib/CodeGen/CommandFlags.cpp
    M llvm/lib/CodeGen/ExpandVectorPredication.cpp
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/CodeGen/MachineCopyPropagation.cpp
    M llvm/lib/CodeGen/MachineOutliner.cpp
    M llvm/lib/CodeGen/PatchableFunction.cpp
    M llvm/lib/CodeGen/SelectOptimize.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/lib/DWARFLinker/Classic/DWARFLinker.cpp
    M llvm/lib/DWARFLinker/Parallel/DWARFLinkerCompileUnit.cpp
    M llvm/lib/DWARFLinker/Parallel/DWARFLinkerImpl.cpp
    M llvm/lib/DWARFLinker/Parallel/DependencyTracker.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFContext.cpp
    M llvm/lib/Debuginfod/Debuginfod.cpp
    M llvm/lib/ExecutionEngine/JITLink/ELFLinkGraphBuilder.h
    M llvm/lib/ExecutionEngine/JITLink/ELF_aarch32.cpp
    M llvm/lib/ExecutionEngine/JITLink/aarch32.cpp
    M llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
    M llvm/lib/IR/BasicBlock.cpp
    M llvm/lib/IR/DebugInfo.cpp
    M llvm/lib/IR/Instruction.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
    M llvm/lib/Support/Windows/Path.inc
    M llvm/lib/Target/AArch64/AArch64.h
    A llvm/lib/Target/AArch64/AArch64Arm64ECCallLowering.cpp
    M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
    M llvm/lib/Target/AArch64/AArch64CallingConvention.h
    M llvm/lib/Target/AArch64/AArch64CallingConvention.td
    M llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
    M llvm/lib/Target/AArch64/AArch64FastISel.cpp
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64MCInstLower.cpp
    M llvm/lib/Target/AArch64/AArch64MCInstLower.h
    M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
    M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
    M llvm/lib/Target/AArch64/AArch64Subtarget.h
    M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
    M llvm/lib/Target/AArch64/CMakeLists.txt
    M llvm/lib/Target/AArch64/GISel/AArch64CallLowering.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/lib/Target/AArch64/SMEABIPass.cpp
    M llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.h
    M llvm/lib/Target/AArch64/Utils/AArch64SMEAttributes.cpp
    M llvm/lib/Target/AArch64/Utils/AArch64SMEAttributes.h
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/BUFInstructions.td
    M llvm/lib/Target/AMDGPU/GCNDPPCombine.cpp
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
    M llvm/lib/Target/AMDGPU/SIAnnotateControlFlow.cpp
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.td
    M llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
    M llvm/lib/Target/AMDGPU/SOPInstructions.td
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/VOP2Instructions.td
    M llvm/lib/Target/AMDGPU/VOPCInstructions.td
    M llvm/lib/Target/ARM/ARM.td
    M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
    M llvm/lib/Target/ARM/ARMSubtarget.h
    M llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp
    M llvm/lib/Target/ARM/Thumb1InstrInfo.cpp
    M llvm/lib/Target/ARM/Thumb2InstrInfo.cpp
    M llvm/lib/Target/LoongArch/LoongArch.td
    M llvm/lib/Target/LoongArch/LoongArchFloat32InstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchFloat64InstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchSubtarget.h
    M llvm/lib/Target/LoongArch/LoongArchTargetTransformInfo.cpp
    M llvm/lib/Target/LoongArch/LoongArchTargetTransformInfo.h
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.h
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchFixupKinds.h
    M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVFixupKinds.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.h
    M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
    M llvm/lib/Target/RISCV/RISCVExpandPseudoInsts.cpp
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td
    M llvm/lib/Target/RISCV/RISCVMergeBaseOffset.cpp
    M llvm/lib/Target/RISCV/RISCVProcessors.td
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    M llvm/lib/Target/TargetMachine.cpp
    M llvm/lib/Target/X86/CMakeLists.txt
    A llvm/lib/Target/X86/X86CodeGenPassBuilder.cpp
    M llvm/lib/Target/X86/X86CompressEVEX.cpp
    M llvm/lib/Target/X86/X86FixupVectorConstants.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86InstrCompiler.td
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/lib/Target/X86/X86InstrInfo.h
    M llvm/lib/Target/X86/X86InstrShiftRotate.td
    M llvm/lib/Target/X86/X86InstrUtils.td
    M llvm/lib/Target/X86/X86MCInstLower.cpp
    M llvm/lib/Target/X86/X86PfmCounters.td
    M llvm/lib/Target/X86/X86TargetMachine.h
    M llvm/lib/TargetParser/ARMTargetParser.cpp
    M llvm/lib/TargetParser/Triple.cpp
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
    M llvm/lib/Transforms/IPO/EmbedBitcodePass.cpp
    M llvm/lib/Transforms/IPO/IROutliner.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Instrumentation/CGProfile.cpp
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    M llvm/lib/Transforms/Scalar/ADCE.cpp
    M llvm/lib/Transforms/Scalar/ConstantHoisting.cpp
    M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
    M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
    M llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
    M llvm/lib/Transforms/Scalar/SROA.cpp
    M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
    M llvm/lib/Transforms/Utils/CodeExtractor.cpp
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    M llvm/lib/Transforms/Utils/Local.cpp
    M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
    M llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Utils/ValueMapper.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Analysis/CostModel/PowerPC/insert_extract.ll
    M llvm/test/Analysis/CostModel/PowerPC/load_store.ll
    M llvm/test/Analysis/CostModel/RISCV/rvv-shuffle.ll
    M llvm/test/Analysis/CostModel/RISCV/shuffle-broadcast.ll
    A llvm/test/Analysis/LoopAccessAnalysis/noalias-scope-decl.ll
    M llvm/test/Analysis/UniformityAnalysis/AMDGPU/intrinsics.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-shift-of-shifted-dbg-value-fallback.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/debug-cpp.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/debug-insts.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-dilocation.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-extract-used-by-dbg.ll
    M llvm/test/CodeGen/AArch64/arm64ec-dllimport.ll
    A llvm/test/CodeGen/AArch64/arm64ec-entry-thunks-local-linkage.ll
    A llvm/test/CodeGen/AArch64/arm64ec-entry-thunks.ll
    A llvm/test/CodeGen/AArch64/arm64ec-exit-thunks.ll
    M llvm/test/CodeGen/AArch64/arm64ec-reservedregs.ll
    M llvm/test/CodeGen/AArch64/arm64ec-varargs.ll
    A llvm/test/CodeGen/AArch64/blr-bti-preserves-operands.mir
    R llvm/test/CodeGen/AArch64/blr-bti-preserves-regmask.mir
    R llvm/test/CodeGen/AArch64/dbg-assign-tag-offset-mix-loc.ll
    R llvm/test/CodeGen/AArch64/dbg-assign-tag-offset.ll
    M llvm/test/CodeGen/AArch64/dbg-value-swift-async.ll
    M llvm/test/CodeGen/AArch64/fcmp.ll
    M llvm/test/CodeGen/AArch64/icmp.ll
    M llvm/test/CodeGen/AArch64/selectopt.ll
    M llvm/test/CodeGen/AArch64/sext.ll
    A llvm/test/CodeGen/AArch64/shift.ll
    M llvm/test/CodeGen/AArch64/sme-zt0-state.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-cvt.ll
    M llvm/test/CodeGen/AArch64/stack-protector-target.ll
    M llvm/test/CodeGen/AArch64/vec3-loads-ext-trunc-stores.ll
    M llvm/test/CodeGen/AArch64/win-alloca.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-function-args.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-addrspacecast.mir
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow-codegen.ll
    M llvm/test/CodeGen/AMDGPU/bf16.ll
    M llvm/test/CodeGen/AMDGPU/callee-frame-setup.ll
    M llvm/test/CodeGen/AMDGPU/dpp_combine_gfx11.mir
    M llvm/test/CodeGen/AMDGPU/dwarf-multi-register-use-crash.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-preserved-registers.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-return-types.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_i32_system.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_i64_system.ll
    M llvm/test/CodeGen/AMDGPU/identical-subrange-spill-infloop.ll
    M llvm/test/CodeGen/AMDGPU/indirect-call-known-callees.ll
    M llvm/test/CodeGen/AMDGPU/indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/insert-waitcnts-crash.ll
    M llvm/test/CodeGen/AMDGPU/ipra.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.tr-w32.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.tr-w64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.dbg.value.ll
    M llvm/test/CodeGen/AMDGPU/lower-work-group-id-intrinsics.ll
    M llvm/test/CodeGen/AMDGPU/mul24-pass-ordering.ll
    M llvm/test/CodeGen/AMDGPU/remove-no-kernel-id-attribute.ll
    M llvm/test/CodeGen/AMDGPU/s-getpc-b64-remat.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-overlap-wwm-reserve.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spills-split-regalloc.ll
    M llvm/test/CodeGen/AMDGPU/si-annotate-dbg-info.ll
    M llvm/test/CodeGen/AMDGPU/sibling-call.ll
    M llvm/test/CodeGen/AMDGPU/spill-sgpr-csr-live-ins.mir
    M llvm/test/CodeGen/AMDGPU/spill-sgpr-to-virtual-vgpr.mir
    M llvm/test/CodeGen/AMDGPU/spill_more_than_wavesize_csr_sgprs.ll
    M llvm/test/CodeGen/AMDGPU/stacksave_stackrestore.ll
    M llvm/test/CodeGen/AMDGPU/strictfp_f16_abi_promote.ll
    M llvm/test/CodeGen/AMDGPU/unstructured-cfg-def-use-issue.ll
    M llvm/test/CodeGen/AMDGPU/vcmpx-permlane-hazard.mir
    M llvm/test/CodeGen/AMDGPU/vgpr-large-tuple-alloc-error.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-tuple-allocation.ll
    M llvm/test/CodeGen/AMDGPU/workgroup-id-in-arch-sgprs.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll
    M llvm/test/CodeGen/ARM/stack-guard-elf.ll
    R llvm/test/CodeGen/Generic/bb-profile-dump.ll
    A llvm/test/CodeGen/LoongArch/intrinsic-frecipe-dbl.ll
    A llvm/test/CodeGen/LoongArch/intrinsic-frecipe-flt.ll
    A llvm/test/CodeGen/LoongArch/lasx/intrinsic-frecipe.ll
    A llvm/test/CodeGen/LoongArch/lasx/intrinsic-frsqrte.ll
    A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/fptosi.ll
    A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/fptoui.ll
    A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/sitofp.ll
    A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/uitofp.ll
    A llvm/test/CodeGen/LoongArch/lsx/intrinsic-frecipe.ll
    A llvm/test/CodeGen/LoongArch/lsx/intrinsic-frsqrte.ll
    A llvm/test/CodeGen/LoongArch/lsx/ir-instruction/fptosi.ll
    A llvm/test/CodeGen/LoongArch/lsx/ir-instruction/fptoui.ll
    A llvm/test/CodeGen/LoongArch/lsx/ir-instruction/sitofp.ll
    A llvm/test/CodeGen/LoongArch/lsx/ir-instruction/uitofp.ll
    M llvm/test/CodeGen/PowerPC/sms-regpress.mir
    M llvm/test/CodeGen/RISCV/fold-addi-loadstore.ll
    M llvm/test/CodeGen/RISCV/rvv/allocate-lmul-2-4-8.ll
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fmaximum-vp.ll
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fminimum-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-buildvec.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-interleave.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-interleave.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-shuffles.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-interleaved-access.ll
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-exact-vlen.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-transpose.ll
    A llvm/test/CodeGen/RISCV/rvv/fmaximum-vp.ll
    A llvm/test/CodeGen/RISCV/rvv/fminimum-vp.ll
    M llvm/test/CodeGen/RISCV/tls-models.ll
    A llvm/test/CodeGen/RISCV/zcb-regalloc-hints.ll
    M llvm/test/CodeGen/Thumb/stack_guard_remat.ll
    M llvm/test/CodeGen/X86/2009-06-12-x86_64-tail-call-conv-out-of-sync-bug.ll
    M llvm/test/CodeGen/X86/2011-10-19-widen_vselect.ll
    M llvm/test/CodeGen/X86/GlobalISel/x86-calllowering-dbg-trunc.ll
    M llvm/test/CodeGen/X86/addsub-constant-folding.ll
    M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast.ll
    M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast_from_memory.ll
    M llvm/test/CodeGen/X86/apx/compress-evex.mir
    A llvm/test/CodeGen/X86/apx/rol.ll
    A llvm/test/CodeGen/X86/apx/ror.ll
    A llvm/test/CodeGen/X86/apx/sar.ll
    A llvm/test/CodeGen/X86/apx/shl.ll
    A llvm/test/CodeGen/X86/apx/shld.ll
    A llvm/test/CodeGen/X86/apx/shr.ll
    A llvm/test/CodeGen/X86/apx/shrd.ll
    M llvm/test/CodeGen/X86/avx2-fma-fneg-combine.ll
    M llvm/test/CodeGen/X86/avx2-vperm.ll
    M llvm/test/CodeGen/X86/avx512-shuffles/partial_permute.ll
    M llvm/test/CodeGen/X86/bitreverse.ll
    M llvm/test/CodeGen/X86/combine-concatvectors.ll
    M llvm/test/CodeGen/X86/combine-sdiv.ll
    M llvm/test/CodeGen/X86/combine-subo.ll
    M llvm/test/CodeGen/X86/combine-udiv.ll
    M llvm/test/CodeGen/X86/fat-lto-section.ll
    M llvm/test/CodeGen/X86/fma-fneg-combine-2.ll
    M llvm/test/CodeGen/X86/fold-int-pow2-with-fmul-or-fdiv.ll
    M llvm/test/CodeGen/X86/fpclamptosat_vec.ll
    M llvm/test/CodeGen/X86/hoist-and-by-const-from-lshr-in-eqcmp-zero.ll
    M llvm/test/CodeGen/X86/i64-to-float.ll
    M llvm/test/CodeGen/X86/icmp-abs-C-vec.ll
    M llvm/test/CodeGen/X86/insert-into-constant-vector.ll
    M llvm/test/CodeGen/X86/masked_store_trunc.ll
    M llvm/test/CodeGen/X86/matrix-multiply.ll
    M llvm/test/CodeGen/X86/nontemporal-4.ll
    M llvm/test/CodeGen/X86/oddshuffles.ll
    M llvm/test/CodeGen/X86/omit-urem-of-power-of-two-or-zero-when-comparing-with-zero.ll
    M llvm/test/CodeGen/X86/packus.ll
    A llvm/test/CodeGen/X86/patchable-prologue-tailcall.ll
    M llvm/test/CodeGen/X86/patchable-prologue.ll
    M llvm/test/CodeGen/X86/peephole-fold-movsd.ll
    M llvm/test/CodeGen/X86/pr13577.ll
    M llvm/test/CodeGen/X86/pr63108.ll
    A llvm/test/CodeGen/X86/pr78897.ll
    M llvm/test/CodeGen/X86/psubus.ll
    M llvm/test/CodeGen/X86/ret-mmx.ll
    M llvm/test/CodeGen/X86/select-optimize.ll
    M llvm/test/CodeGen/X86/sext-vsetcc.ll
    M llvm/test/CodeGen/X86/shrink_vmul.ll
    M llvm/test/CodeGen/X86/sink-addsub-of-const.ll
    M llvm/test/CodeGen/X86/slow-pmulld.ll
    M llvm/test/CodeGen/X86/srem-seteq-vec-nonsplat.ll
    M llvm/test/CodeGen/X86/sse2.ll
    M llvm/test/CodeGen/X86/test-shrink-bug.ll
    M llvm/test/CodeGen/X86/urem-seteq-illegal-types.ll
    M llvm/test/CodeGen/X86/urem-seteq-vec-nonsplat.ll
    M llvm/test/CodeGen/X86/vec_fp_to_int.ll
    M llvm/test/CodeGen/X86/vector-blend.ll
    M llvm/test/CodeGen/X86/vector-fshl-512.ll
    M llvm/test/CodeGen/X86/vector-fshr-128.ll
    M llvm/test/CodeGen/X86/vector-fshr-512.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-2.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-4.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i64-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i64-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i64-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i64-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-4.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-4.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-8.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-4.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-8.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-4.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-8.ll
    M llvm/test/CodeGen/X86/vector-mulfix-legalize.ll
    M llvm/test/CodeGen/X86/vector-partial-undef.ll
    M llvm/test/CodeGen/X86/vector-reduce-add-mask.ll
    M llvm/test/CodeGen/X86/vector-replicaton-i1-mask.ll
    M llvm/test/CodeGen/X86/vector-shift-ashr-128.ll
    M llvm/test/CodeGen/X86/vector-shift-ashr-256.ll
    M llvm/test/CodeGen/X86/vector-shift-ashr-sub128.ll
    M llvm/test/CodeGen/X86/vector-shift-lshr-128.ll
    M llvm/test/CodeGen/X86/vector-shift-lshr-256.ll
    M llvm/test/CodeGen/X86/vector-shift-lshr-512.ll
    M llvm/test/CodeGen/X86/vector-shift-lshr-sub128.ll
    M llvm/test/CodeGen/X86/vector-shift-shl-128.ll
    M llvm/test/CodeGen/X86/vector-shift-shl-256.ll
    M llvm/test/CodeGen/X86/vector-shuffle-128-v16.ll
    M llvm/test/CodeGen/X86/vector-shuffle-256-v16.ll
    M llvm/test/CodeGen/X86/vector-shuffle-256-v32.ll
    M llvm/test/CodeGen/X86/vector-shuffle-256-v8.ll
    M llvm/test/CodeGen/X86/vector-shuffle-512-v16.ll
    M llvm/test/CodeGen/X86/vector-shuffle-512-v32.ll
    M llvm/test/CodeGen/X86/vector-shuffle-512-v64.ll
    M llvm/test/CodeGen/X86/vector-shuffle-512-v8.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx2.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-sse41.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-ssse3.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining.ll
    M llvm/test/CodeGen/X86/vector-shuffle-v1.ll
    M llvm/test/CodeGen/X86/vector-shuffle-v192.ll
    M llvm/test/CodeGen/X86/widen_arith-2.ll
    M llvm/test/CodeGen/X86/widen_arith-4.ll
    M llvm/test/CodeGen/X86/widen_arith-5.ll
    M llvm/test/CodeGen/X86/widen_arith-6.ll
    M llvm/test/CodeGen/X86/widen_shuffle-1.ll
    M llvm/test/CodeGen/X86/x86-interleaved-access.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast_from_memory.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/adce/no-delete.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/declare-to-assign/hwasan.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/declare-to-assign/long-double-x87.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/declare-to-assign/nullptr-declare.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/declare-to-assign/scalable-vector.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/declare-to-assign/set-flag-only-if-modified.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/declare-to-assign/structured-bindings.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/declare-to-assign/var-not-alloca-sized.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/declare-to-assign/vla.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/dse/dse-after-memcpyopt-merge.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/dse/shorten-offset.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/dse/shorten.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/inline/id.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/inline/inline-stores.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/inline/shared-alloca.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/inline/use-before-def.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/instcombine/do-not-remove-redundant-dbg.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/instcombine/memset.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/instcombine/remove-redundant-dbg.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/instcombine/sink-store.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/instcombine/sink.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/instcombine/store-new-type.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/instcombine/storemerge.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/licm/merge.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/licm/multi-exit.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/loop-deletion/dead-loop.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/loop-vectorize/remove-redundant-dbg.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/mem2reg/phi.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/mem2reg/single-block-alloca.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/mem2reg/single-store-alloca.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/mem2reg/store-to-part-of-alloca.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/memcpyopt/merge-stores.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/mldst-motion/diamond.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/optnone.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/parse-and-verify/instruction-type.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/parse-and-verify/roundtrip.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/parse-and-verify/verify.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/remove-redundant-fwd-scan-linked.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/remove-redundant.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/salvage-value.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/simplifycfg/empty-block.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/simplifycfg/speculated-store.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/slp-vectorizer/merge-scalars.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/after-inlining.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/alloca-single-slice.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/arglist.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/complex.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/fail-fragment.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/frag-2.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/frag.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/id.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/memcpy.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/memmove-to-from-same-alloca.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/remove-redundant-dbg.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/rewrite.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/split-pre-fragmented-store-2.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/split-pre-fragmented-store.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/store.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/unspecified-var-size.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/user-memcpy.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/var-sized-fragment.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/vec-1.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/sroa/vec-2.ll
    M llvm/test/DebugInfo/Generic/assignment-tracking/track-assignments.ll
    M llvm/test/DebugInfo/assignment-tracking/AArch64/scalable-vectors.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/DSE.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/assignment-tracking-not-enabled.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/coalesce-cfg.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/coalesce-options.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/coalesce-simple.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/dbg-phi-produces-undef.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/diamond-1.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/diamond-2.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/diamond-3.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/frag-size-zero.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/global-storage.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/large-type.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/loop-hoist.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/loop-sink.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/loop-unroll.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/lower-offset-expression.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/lower-to-value.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/mem-loc-frag-fill-cfg.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/mem-loc-frag-fill.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/negative-offset.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/nested-loop-frags.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/nested-loop-sroa.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/nested-loop.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/no-redundant-def-after-alloca.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/order-of-defs.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/remove-redundant-defs-bwd-scan.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/remove-redundant-defs-to-prevent-reordering.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/remove-undef-fragment.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/sdag-dangling-dbgassign.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/sdag-ir-salvage-assign.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/sdag-transfer-dbgassign.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/single-memory-location-2.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/single-memory-location.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/split-alloca.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/untagged-store-assignment-extra-checks.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/untagged-store-assignment-outside-variable.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/untagged-store-frag.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/use-known-value-at-early-mem-def-2.ll
    M llvm/test/DebugInfo/assignment-tracking/X86/use-known-value-at-early-mem-def.ll
    M llvm/test/DebugInfo/salvage-limit-expr-size.ll
    M llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_arm.s
    A llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_armv7plus.s
    M llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_data.s
    R llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_thumb.s
    A llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_thumbv6m.s
    A llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_thumbv7a.s
    A llvm/test/ExecutionEngine/JITLink/AArch32/ELF_relocations_thumbv7m.s
    A llvm/test/ExecutionEngine/JITLink/AArch32/ELF_stubs_arm.s
    A llvm/test/ExecutionEngine/JITLink/AArch32/ELF_stubs_multi.s
    M llvm/test/ExecutionEngine/JITLink/AArch32/ELF_stubs_thumb.s
    R llvm/test/ExecutionEngine/OrcLazy/debug-descriptor-elf-minimal.ll
    A llvm/test/ExecutionEngine/OrcLazy/debug-descriptor.ll
    R llvm/test/ExecutionEngine/OrcLazy/debug-objects-elf-minimal.ll
    A llvm/test/ExecutionEngine/OrcLazy/debug-objects.ll
    R llvm/test/Instrumentation/HWAddressSanitizer/dbg-assign-tag-offset.ll
    M llvm/test/Instrumentation/cgprofile.ll
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_dpp16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_sopp.s
    M llvm/test/MC/AMDGPU/gfx12_unsupported.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sopp.txt
    A llvm/test/MC/Disassembler/X86/apx/rcl.txt
    A llvm/test/MC/Disassembler/X86/apx/rcr.txt
    A llvm/test/MC/Disassembler/X86/apx/rol.txt
    A llvm/test/MC/Disassembler/X86/apx/ror.txt
    A llvm/test/MC/Disassembler/X86/apx/sar.txt
    A llvm/test/MC/Disassembler/X86/apx/shl.txt
    A llvm/test/MC/Disassembler/X86/apx/shld.txt
    A llvm/test/MC/Disassembler/X86/apx/shr.txt
    A llvm/test/MC/Disassembler/X86/apx/shrd.txt
    A llvm/test/MC/LoongArch/Relocations/align-non-executable.s
    M llvm/test/MC/LoongArch/Relocations/relax-addsub.s
    A llvm/test/MC/LoongArch/Relocations/relax-align.s
    M llvm/test/MC/RISCV/relocations.s
    A llvm/test/MC/RISCV/tlsdesc.s
    A llvm/test/MC/X86/apx/rcl-att.s
    A llvm/test/MC/X86/apx/rcl-intel.s
    A llvm/test/MC/X86/apx/rcr-att.s
    A llvm/test/MC/X86/apx/rcr-intel.s
    A llvm/test/MC/X86/apx/rol-att.s
    A llvm/test/MC/X86/apx/rol-intel.s
    A llvm/test/MC/X86/apx/ror-att.s
    A llvm/test/MC/X86/apx/ror-intel.s
    A llvm/test/MC/X86/apx/sar-att.s
    A llvm/test/MC/X86/apx/sar-intel.s
    A llvm/test/MC/X86/apx/shl-att.s
    A llvm/test/MC/X86/apx/shl-intel.s
    A llvm/test/MC/X86/apx/shld-att.s
    A llvm/test/MC/X86/apx/shld-intel.s
    A llvm/test/MC/X86/apx/shr-att.s
    A llvm/test/MC/X86/apx/shr-intel.s
    A llvm/test/MC/X86/apx/shrd-att.s
    A llvm/test/MC/X86/apx/shrd-intel.s
    M llvm/test/TableGen/x86-fold-tables.inc
    M llvm/test/Transforms/Attributor/nofpclass-implied-by-fcmp.ll
    M llvm/test/Transforms/EmbedBitcode/embed.ll
    M llvm/test/Transforms/HotColdSplit/invalid-dbg-assign.ll
    M llvm/test/Transforms/IROutliner/legal-debug.ll
    M llvm/test/Transforms/IndVarSimplify/iv-poison.ll
    M llvm/test/Transforms/InstCombine/and-fcmp.ll
    M llvm/test/Transforms/InstCombine/logical-select-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/logical-select.ll
    M llvm/test/Transforms/InstCombine/shift-logic.ll
    M llvm/test/Transforms/LoopStrengthReduce/X86/lsr-cond-dbg.ll
    M llvm/test/Transforms/LoopStrengthReduce/dbg-preserve-0.ll
    M llvm/test/Transforms/LoopStrengthReduce/dbg-preserve-1.ll
    M llvm/test/Transforms/LoopStrengthReduce/dbg-preserve-2.ll
    M llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-0.ll
    M llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-1.ll
    M llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-2.ll
    M llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-3.ll
    M llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-4.ll
    M llvm/test/Transforms/LoopStrengthReduce/debuginfo-scev-salvage-5.ll
    M llvm/test/Transforms/LoopStrengthReduce/optimizemax_debugloc.ll
    M llvm/test/Transforms/LoopStrengthReduce/pr12018.ll
    M llvm/test/Transforms/LoopStrengthReduce/pr51329.ll
    M llvm/test/Transforms/LoopStrengthReduce/pr51656.ll
    M llvm/test/Transforms/LoopStrengthReduce/pr52161.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/veclib-function-calls.ll
    A llvm/test/Transforms/LoopVectorize/LoongArch/defaults.ll
    A llvm/test/Transforms/LoopVectorize/LoongArch/lit.local.cfg
    A llvm/test/Transforms/PhaseOrdering/AArch64/indvars-vectorization.ll
    M llvm/test/Transforms/RewriteStatepointsForGC/base-pointers.ll
    A llvm/test/Transforms/SLPVectorizer/SystemZ/minbitwidth-non-vector-root.ll
    M llvm/test/Transforms/SROA/vector-promotion.ll
    M llvm/test/Transforms/Util/strip-nonlinetable-debuginfo-localvars.ll
    M llvm/test/tools/dsymutil/absolute_symbol.test
    M llvm/test/tools/dsymutil/arch-option.test
    M llvm/test/tools/dsymutil/archive-timestamp.test
    M llvm/test/tools/dsymutil/basic-linking.test
    M llvm/test/tools/dsymutil/debug-map-parsing.test
    M llvm/test/tools/dsymutil/dump-symtab.test
    M llvm/test/tools/dsymutil/fat-binary-output.test
    M llvm/test/tools/dsymutil/fat-header.test
    M llvm/test/tools/dsymutil/yaml-object-address-rewrite.test
    A llvm/test/tools/llc/new-pm/lit.local.cfg
    A llvm/test/tools/llc/new-pm/option-conflict.ll
    A llvm/test/tools/llc/new-pm/pipeline.ll
    A llvm/test/tools/llc/new-pm/start-stop.ll
    A llvm/test/tools/llvm-cov/Inputs/mcdc-maxbs.c
    A llvm/test/tools/llvm-cov/Inputs/mcdc-maxbs.o
    A llvm/test/tools/llvm-cov/Inputs/mcdc-maxbs.proftext
    A llvm/test/tools/llvm-cov/mcdc-maxbs.test
    M llvm/test/tools/llvm-objdump/ELF/AMDGPU/kd-gfx10.s
    M llvm/test/tools/llvm-objdump/ELF/AMDGPU/kd-gfx11.s
    M llvm/test/tools/llvm-objdump/ELF/AMDGPU/kd-gfx12.s
    M llvm/test/tools/llvm-objdump/ELF/AMDGPU/kd-gfx90a.s
    M llvm/test/tools/llvm-objdump/ELF/AMDGPU/kd-sgpr.s
    M llvm/test/tools/llvm-objdump/ELF/AMDGPU/kd-vgpr.s
    M llvm/test/tools/llvm-objdump/ELF/AMDGPU/kd-zeroed-gfx10.s
    A llvm/test/tools/llvm-profdata/merge-filter.test
    A llvm/test/tools/llvm-reduce/remove-dp-values.ll
    M llvm/tools/dsymutil/DwarfLinkerForBinary.cpp
    M llvm/tools/dsymutil/DwarfLinkerForBinary.h
    M llvm/tools/llc/CMakeLists.txt
    A llvm/tools/llc/NewPMDriver.cpp
    A llvm/tools/llc/NewPMDriver.h
    M llvm/tools/llc/llc.cpp
    M llvm/tools/lli/CMakeLists.txt
    R llvm/tools/lli/ExecutionUtils.cpp
    R llvm/tools/lli/ExecutionUtils.h
    M llvm/tools/lli/lli.cpp
    M llvm/tools/llvm-diff/lib/DifferenceEngine.cpp
    M llvm/tools/llvm-dwarfutil/DebugInfoLinker.cpp
    M llvm/tools/llvm-exegesis/lib/BenchmarkResult.cpp
    M llvm/tools/llvm-exegesis/lib/BenchmarkResult.h
    M llvm/tools/llvm-exegesis/llvm-exegesis.cpp
    M llvm/tools/llvm-jitlink/llvm-jitlink-executor/llvm-jitlink-executor.cpp
    M llvm/tools/llvm-jitlink/llvm-jitlink.cpp
    M llvm/tools/llvm-profdata/llvm-profdata.cpp
    M llvm/tools/llvm-reduce/CMakeLists.txt
    M llvm/tools/llvm-reduce/DeltaManager.cpp
    A llvm/tools/llvm-reduce/deltas/ReduceDPValues.cpp
    A llvm/tools/llvm-reduce/deltas/ReduceDPValues.h
    M llvm/tools/llvm-reduce/llvm-reduce.cpp
    M llvm/tools/opt/opt.cpp
    M llvm/unittests/Analysis/ReplaceWithVecLibTest.cpp
    M llvm/unittests/Analysis/UnrollAnalyzerTest.cpp
    M llvm/unittests/Analysis/ValueTrackingTest.cpp
    M llvm/unittests/CodeGen/CMakeLists.txt
    R llvm/unittests/CodeGen/CodeGenPassBuilderTest.cpp
    M llvm/unittests/ExecutionEngine/JITLink/AArch32Tests.cpp
    M llvm/unittests/ExecutionEngine/JITLink/EHFrameSupportTests.cpp
    M llvm/unittests/ExecutionEngine/Orc/CoreAPIsTest.cpp
    M llvm/unittests/IR/VPIntrinsicTest.cpp
    M llvm/unittests/TargetParser/TargetParserTest.cpp
    M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/bugprone/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
    M llvm/utils/gn/secondary/compiler-rt/include/BUILD.gn
    M llvm/utils/gn/secondary/compiler-rt/test/BUILD.gn
    M llvm/utils/gn/secondary/libcxx/src/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Target/X86/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llc/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/lli/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-reduce/BUILD.gn
    M llvm/utils/gn/secondary/llvm/unittests/CodeGen/BUILD.gn
    M llvm/utils/release/test-release.sh
    M mlir/include/mlir/Conversion/ArithToAMDGPU/ArithToAMDGPU.h
    M mlir/include/mlir/Conversion/Passes.td
    M mlir/include/mlir/Dialect/Arith/Utils/Utils.h
    M mlir/include/mlir/Dialect/GPU/Transforms/Passes.td
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
    M mlir/include/mlir/Dialect/OpenACC/OpenACC.h
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
    M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
    M mlir/lib/Conversion/ArithToAMDGPU/ArithToAMDGPU.cpp
    M mlir/lib/Conversion/ArithToAMDGPU/CMakeLists.txt
    M mlir/lib/Dialect/Arith/Transforms/EmulateWideInt.cpp
    M mlir/lib/Dialect/Arith/Utils/Utils.cpp
    M mlir/lib/Dialect/GPU/Transforms/SerializeToHsaco.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
    M mlir/lib/Dialect/Math/Transforms/PolynomialApproximation.cpp
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/lib/Target/LLVM/ROCDL/Target.cpp
    M mlir/lib/Target/LLVMIR/Dialect/ROCDL/ROCDLToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
    A mlir/test/Conversion/ArithToAMDGPU/8-bit-float-saturation.mlir
    M mlir/test/Conversion/ArithToAMDGPU/8-bit-floats.mlir
    M mlir/test/Dialect/OpenACC/canonicalize.mlir
    M mlir/test/Dialect/OpenACC/invalid.mlir
    M mlir/test/Dialect/OpenACC/ops.mlir
    M mlir/test/Dialect/Vector/invalid.mlir
    M mlir/test/IR/print-attr-type-aliases.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_block3d.mlir
    M mlir/test/Target/LLVMIR/llvmir-invalid.mlir
    M mlir/test/Target/LLVMIR/llvmir.mlir
    M mlir/test/lib/Dialect/Test/TestAttrDefs.td
    M mlir/test/lib/Dialect/Test/TestAttributes.cpp
    M mlir/test/mlir-cpu-runner/global-constructors.mlir
    M openmp/cmake/HandleOpenMPOptions.cmake
    M openmp/libomptarget/include/Shared/APITypes.h
    M openmp/libomptarget/include/Shared/PluginAPI.h
    M openmp/libomptarget/include/Shared/PluginAPI.inc
    M openmp/libomptarget/include/Shared/Requirements.h
    M openmp/libomptarget/include/device.h
    M openmp/libomptarget/include/rtl.h
    M openmp/libomptarget/plugins-nextgen/CMakeLists.txt
    M openmp/libomptarget/plugins-nextgen/amdgpu/dynamic_hsa/hsa_ext_amd.h
    M openmp/libomptarget/plugins-nextgen/amdgpu/src/rtl.cpp
    M openmp/libomptarget/plugins-nextgen/common/include/GlobalHandler.h
    M openmp/libomptarget/plugins-nextgen/common/include/PluginInterface.h
    M openmp/libomptarget/plugins-nextgen/common/src/PluginInterface.cpp
    M openmp/libomptarget/plugins-nextgen/cuda/src/rtl.cpp
    M openmp/libomptarget/plugins-nextgen/generic-elf-64bit/src/rtl.cpp
    M openmp/libomptarget/src/OpenMP/Mapping.cpp
    M openmp/libomptarget/src/PluginManager.cpp
    M openmp/libomptarget/src/device.cpp
    M openmp/libomptarget/src/omptarget.cpp
    M openmp/libomptarget/test/lit.cfg
    M openmp/libomptarget/test/lit.site.cfg.in
    A openmp/libomptarget/test/mapping/auto_zero_copy.cpp
    A openmp/libomptarget/test/offloading/force-usm.cpp
    M openmp/libomptarget/test/unified_shared_memory/api.c
    M openmp/libomptarget/test/unified_shared_memory/close_enter_exit.c
    M openmp/runtime/src/kmp_affinity.cpp
    M openmp/runtime/src/kmp_barrier.cpp
    M openmp/runtime/src/kmp_io.cpp
    M openmp/runtime/src/kmp_os.h
    M openmp/runtime/src/kmp_settings.cpp
    M openmp/runtime/src/kmp_wait_release.h
    M openmp/runtime/src/z_Windows_NT_util.cpp
    M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/libc_build_rules.bzl
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  Rebase, fix tests, format predicates and remove unused predicates

Created using spr 1.3.4


Compare: https://github.com/llvm/llvm-project/compare/2c80ec9ea058...3641aa4506c8


More information about the All-commits mailing list