[all-commits] [llvm/llvm-project] aab3d1: [FileCheck] Fix parsing empty global and pseudo va...

Alexander Richardson via All-commits all-commits at lists.llvm.org
Fri Mar 8 22:30:15 PST 2024


  Branch: refs/heads/users/arichardson/spr/compiler-rt-avoid-generating-coredumps-when-piped-to-a-tool
  Home:   https://github.com/llvm/llvm-project
  Commit: aab3d13179dc5a37465a0e6fbf1b9369a4e6e50f
      https://github.com/llvm/llvm-project/commit/aab3d13179dc5a37465a0e6fbf1b9369a4e6e50f
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/lib/FileCheck/FileCheck.cpp
    A llvm/test/FileCheck/empty-variable-name.txt

  Log Message:
  -----------
  [FileCheck] Fix parsing empty global and pseudo variable names (#82595)

In `Pattern::parseVariable`, for global variables (those starting with
'$') and for pseudo variables (those starting with '@') the first
character is consumed before actual variable name parsing. If the name
is empty, it leads to out-of-bound access to the corresponding
`StringRef`.

This patch adds an if statement against the case described.


  Commit: e4b15fc854b6eaebe63ba3acfcd39bf6dd7748b5
      https://github.com/llvm/llvm-project/commit/e4b15fc854b6eaebe63ba3acfcd39bf6dd7748b5
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-01 (Fri, 01 Mar 2024)

  Changed paths:
    M libc/cmake/modules/LLVMLibCHeaderRules.cmake

  Log Message:
  -----------
  [libc] Fix '/gpu' directory not being made for the declarations

Summary:
We use this extra directory for offloading languages like CUDA or
OpenMP. We made the '/gpu' directory for the regular headers but not the
others. Fix that for now.


  Commit: fb67dce1cb87e279593c27bd4122fe63bad75f04
      https://github.com/llvm/llvm-project/commit/fb67dce1cb87e279593c27bd4122fe63bad75f04
  Author: Shih-Po Hung <shihpo.hung at sifive.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    A llvm/test/Analysis/CostModel/RISCV/vector-cost-without-v.ll

  Log Message:
  -----------
  [RISCV] Fix crash when unrolling loop containing vector instructions (#83384)

When MVT is not a vector type, TCK_CodeSize should return an invalid
cost. This patch adds a check in the beginning to make sure all cost
kinds return invalid costs consistently.

Before this patch, TCK_CodeSize returns a valid cost on scalar MVT but
other cost kinds doesn't.

This fixes the issue #83294 where a loop contains vector instructions
and MVT is scalar after type legalization when the vector extension is
not enabled,


  Commit: 28b354a96054196cc3c50c2517b0509d0d316d42
      https://github.com/llvm/llvm-project/commit/28b354a96054196cc3c50c2517b0509d0d316d42
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/lib/FileCheck/FileCheck.cpp
    R llvm/test/FileCheck/empty-variable-name.txt

  Log Message:
  -----------
  Revert "[FileCheck] Fix parsing empty global and pseudo variable names" (#83657)

Reverts llvm/llvm-project#82595

See build failure
https://lab.llvm.org/buildbot/#/builders/139/builds/60549


  Commit: 597f9761c3a5ba278fa930d2fac13f156287d505
      https://github.com/llvm/llvm-project/commit/597f9761c3a5ba278fa930d2fac13f156287d505
  Author: WÁNG Xuěruì <git at xen0n.name>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/checksum.cpp
    M compiler-rt/lib/scudo/standalone/checksum.h
    M compiler-rt/lib/scudo/standalone/crc32_hw.cpp

  Log Message:
  -----------
  [scudo] Add support for LoongArch hardware CRC32 checksumming (#83113)

One has to probe for platform capability prior to use with HWCAP,
according to LoongArch documentation.


  Commit: b14220e075fe47f4d61632e80a6d0a4a955a7c97
      https://github.com/llvm/llvm-project/commit/b14220e075fe47f4d61632e80a6d0a4a955a7c97
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

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

  Log Message:
  -----------
  [lldb][X86] Fix setting target features in ClangExpressionParser (#82364)

Currently, for x86 and x86_64 triples, "+sse" and "+sse2" are appended
to `Features` vector of `TargetOptions` unconditionally. This vector is
later reset in `TargetInfo::CreateTargetInfo` and filled using info from
`FeaturesAsWritten` vector, so previous modifications of the `Features`
vector have no effect. For x86_64 triple, we append "sse2"
unconditionally in `X86TargetInfo::initFeatureMap`, so despite the
`Features` vector reset, we still have the desired sse features enabled.
The corresponding code in `X86TargetInfo::initFeatureMap` is marked as
FIXME, so we should not probably rely on it and should set desired
features properly in `ClangExpressionParser`.

This patch changes the vector the features are appended to from
`Features` to `FeaturesAsWritten`. It's not reset later and is used to
compute resulting `Features` vector.


  Commit: c4f59937cae95a576635848b36a23b0d672f71d6
      https://github.com/llvm/llvm-project/commit/c4f59937cae95a576635848b36a23b0d672f71d6
  Author: Michael Spencer <bigcheesegs at gmail.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/lib/Support/LockFileManager.cpp

  Log Message:
  -----------
  [llvm][Support] Call clear_error in LockFileManager to avoid report_fatal_error (#83655)

As per the comment in `raw_fd_ostream`'s destructor, you must call
`clear_error()` to prevent a call to `report_fatal_error()`. There's not
really a way to test this, but we did encounter it in the wild.

rdar://117347895


  Commit: bf08d0286825eb3e482bcfdc1cc7c19a28441ae7
      https://github.com/llvm/llvm-project/commit/bf08d0286825eb3e482bcfdc1cc7c19a28441ae7
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/include/llvm/IR/DIBuilder.h
    M llvm/include/llvm/IR/DebugInfoMetadata.h
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/MetadataLoader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/DIBuilder.cpp
    M llvm/lib/IR/DebugInfo.cpp
    M llvm/lib/IR/DebugInfoMetadata.cpp
    M llvm/lib/IR/LLVMContextImpl.h
    M llvm/lib/IR/Verifier.cpp
    M llvm/test/Assembler/debug-info.ll
    R llvm/test/DebugInfo/AArch64/ptrauth.ll
    M llvm/unittests/IR/MetadataTest.cpp
    M mlir/lib/Target/LLVMIR/DebugTranslation.cpp

  Log Message:
  -----------
  Revert "[Dwarf] Support `__ptrauth` qualifier in metadata nodes" (#83672)

Reverts llvm/llvm-project#82363

See a build failure related to an issue discovered by memory sanitizer
(use of uninitialized value):
https://lab.llvm.org/buildbot/#/builders/37/builds/31965


  Commit: 10f5e983a9e3162a569cbebeb32168716e391340
      https://github.com/llvm/llvm-project/commit/10f5e983a9e3162a569cbebeb32168716e391340
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
    A llvm/test/Transforms/DeadStoreElimination/batchaa-caching-new-pointers.ll

  Log Message:
  -----------
  [DSE] Delay deleting non-memory-defs until end of DSE. (#83411)

DSE uses BatchAA, which caches queries using pairs of MemoryLocations.
At the moment, DSE may remove instructions that are used as pointers in
cached MemoryLocations. If a new instruction used by a new MemoryLoation
and this instruction gets allocated at the same address as a previosuly
cached and then removed instruction, we may access an incorrect entry in
the cache.

To avoid this delay removing all instructions except MemoryDefs until
the end of DSE. This should avoid removing any values used in BatchAA's
cache.

Test case by @vporpo from
https://github.com/llvm/llvm-project/pull/83181.
(Test not precommitted because the results are non-determinstic - memset
only sometimes gets removed)

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


  Commit: ca827d53c5524409dcca5ade3949b25f38a60fef
      https://github.com/llvm/llvm-project/commit/ca827d53c5524409dcca5ade3949b25f38a60fef
  Author: Simon Pilgrim <RKSimon at users.noreply.github.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/bitcast-int-to-vector-bool-zext.ll
    M llvm/test/CodeGen/X86/bitcast-int-to-vector-bool.ll
    M llvm/test/CodeGen/X86/cmp-shiftX-maskX.ll

  Log Message:
  -----------
  [X86] Convert logicalshift(x, C) -> and(x, M) iff x is allsignbits (#83596)

If we're logical shifting an all-signbits value, then we can just mask out the shifted bits.

This helps removes some unnecessary bitcasted vXi16 shifts used for vXi8 shifts (which SimplifyDemandedBits will struggle to remove through the bitcast), and allows some AVX1 shifts of 256-bit values to stay as a YMM instruction.

Noticed in codegen from #82290


  Commit: 2a95fe481d18e273b9654322135a08d7c2937536
      https://github.com/llvm/llvm-project/commit/2a95fe481d18e273b9654322135a08d7c2937536
  Author: David Green <david.green at arm.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M flang/lib/Optimizer/Transforms/SimplifyIntrinsics.cpp
    M flang/test/Transforms/simplifyintrinsics.fir

  Log Message:
  -----------
  [Flang] Allow Intrinsic simpification with min/maxloc dim and scalar result (#81619)

This makes an adjustment to the existing fir minloc/maxloc generation
code to handle functions with a dim=1 that produce a scalar result. This
should allow us to get the same benefits as the existing generated
minmax reductions.

This is a recommit of #76194 with an extra alteration to the end of
genRuntimeMinMaxlocBody to make sure we convert the output array to the
correct type (a `box<heap<i32>>`, not `box<heap<array<1xi32>>>`) to
prevent writing the wrong type of box into it. This still allocates the
data as a `array<1xi32>`, converting it into a i32 assuming that is
safe. An alternative would be to allocate the data as a i32 and change
more of the accesses to it throughout genRuntimeMinMaxlocBody.


  Commit: 1f613bce19ea78789934b2a47be8c6a13925f0fa
      https://github.com/llvm/llvm-project/commit/1f613bce19ea78789934b2a47be8c6a13925f0fa
  Author: Hui <hui.xie1990 at gmail.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M libcxx/include/__atomic/atomic_base.h
    M libcxx/include/__atomic/atomic_flag.h
    M libcxx/include/__atomic/atomic_sync.h
    M libcxx/include/latch
    M libcxx/include/semaphore

  Log Message:
  -----------
  [libc++] refactor `cxx_atomic_wait` to make it reusable for atomic_ref (#81427)

The goal of this patch is to make `atomic`'s wait functions to be
reusable by `atomic_ref`.
https://github.com/llvm/llvm-project/pull/76647

First, this patch is built on top of
https://github.com/llvm/llvm-project/pull/80596 , to reduce the future
merge conflicts.

This patch made the following functions as "API"s to be used by
`atomic`, `atomic_flag`, `semaphore`, `latch`, `atomic_ref`

```
__atomic_wait
__atomic_wait_unless
__atomic_notify_one
__atomic_notify_all
```

These functions are made generic to support `atomic` type and
`atomic_ref`. There are two customisation points.

```
// How to load the value from the given type (with a memory order)
__atomic_load
```


```
// what is the contention address that the platform `wait` function is going to monitor
__atomic_contention_address
```


For `atomic_ref` (not implemented in this patch), the `load` and
`address` function will be different, because
- it does not use the "atomic abstraction layer" so the `load` operation
will be some gcc builtin
- the contention address will be the user's actual type that the
`atomic_ref` is pointing to


  Commit: 57f599d6443a910a213094646e7e26837a1d4417
      https://github.com/llvm/llvm-project/commit/57f599d6443a910a213094646e7e26837a1d4417
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/test/AST/Interp/literals.cpp

  Log Message:
  -----------
  [clang][Interp] Improve handling of external variables

Further down in this function, we assert that the variable has
an initializer, which didn't work for external declarations.


  Commit: a30ba2ca21b0da49631c6d0c52108e4a080a451e
      https://github.com/llvm/llvm-project/commit/a30ba2ca21b0da49631c6d0c52108e4a080a451e
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

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

  Log Message:
  -----------
  [clang][Interp][NFC] Emit diagnostic for unknown builtins

Instead of just returning false.


  Commit: b901b0d3edeaa30e363af4cb9dc76d6a7072e6cf
      https://github.com/llvm/llvm-project/commit/b901b0d3edeaa30e363af4cb9dc76d6a7072e6cf
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M clang/lib/AST/Interp/InterpBuiltin.cpp
    M clang/test/AST/Interp/builtin-functions.cpp

  Log Message:
  -----------
  [clang][Interp] Reject dummy pointers from __builtin_strcmp()

We can't load anything from them, so reject them here.


  Commit: dfb8a1531c962238a63db199dff973deec47e4ff
      https://github.com/llvm/llvm-project/commit/dfb8a1531c962238a63db199dff973deec47e4ff
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

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

  Log Message:
  -----------
  [clang][Interp][NFC] Make a local variable const


  Commit: f25debe58b61a6d66e662d60fd4c060adcd74630
      https://github.com/llvm/llvm-project/commit/f25debe58b61a6d66e662d60fd4c060adcd74630
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

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

  Log Message:
  -----------
  [clang][Interp][NFC] Remove some leftover debug output


  Commit: d89b771ef5fe39403a2ad525fa36efbc4ce2a517
      https://github.com/llvm/llvm-project/commit/d89b771ef5fe39403a2ad525fa36efbc4ce2a517
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/ARM/arm-position-independence.ll

  Log Message:
  -----------
  [ARM] Add alias tests for ROPI/RWPI

https://reviews.llvm.org/D23195 does not test aliases.


  Commit: af83a2add5687d0c2f70e538612b7e86ccbf47a5
      https://github.com/llvm/llvm-project/commit/af83a2add5687d0c2f70e538612b7e86ccbf47a5
  Author: Michał Górny <mgorny at gentoo.org>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M lld/CMakeLists.txt
    M lld/test/CMakeLists.txt
    M llvm/cmake/modules/AddLLVM.cmake

  Log Message:
  -----------
  [lld] Fixes for unitests in standalone builds (#83670)

1. Replace the obsolete `llvm_add_unittests()` CMake function with an
explicit check for `TARGET llvm_gtest`. This is more consistent with the
rest of the code, and it makes it possible to avoid checking out
`third-party` tree.
2. Add `LLDUnitTests` test dependency to standalone builds. It is
defined unconditionally, and actually necessary to ensure that unit
tests will be built.


  Commit: da591d390e7f865c846d12dc5559875eca347c28
      https://github.com/llvm/llvm-project/commit/da591d390e7f865c846d12dc5559875eca347c28
  Author: Bjorn Pettersson <bjorn.a.pettersson at ericsson.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fabs.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fneg.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-sext.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-zext.mir
    A llvm/test/TableGen/GlobalISelEmitter-multiple-output-reject.td
    M llvm/test/TableGen/GlobalISelEmitter-multiple-output.td
    M llvm/utils/TableGen/GlobalISelEmitter.cpp

  Log Message:
  -----------
  [GlobalISel][TableGen] Take first result for multi-output instructions (#81130)

Previously, tblgen would reject patterns where one of its nested
instructions produced more than one result. These arise when the
instruction definition contains 'outs' as well as 'Defs'. This patch
fixes that by always taking the first result, which is how these
situations are handled in SelectionIDAG.

Original patch: https://reviews.llvm.org/D86617
Continued as: https://github.com/llvm/llvm-project/pull/81130


  Commit: 8ec28af8eaff5acd0df3e53340159c034f08533d
      https://github.com/llvm/llvm-project/commit/8ec28af8eaff5acd0df3e53340159c034f08533d
  Author: Matthias Gehre <matthias.gehre at amd.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/PDL/IR/PDLOps.td
    M mlir/include/mlir/Dialect/PDLInterp/IR/PDLInterpOps.td
    M mlir/include/mlir/IR/PDLPatternMatch.h.inc
    M mlir/lib/Conversion/PDLToPDLInterp/PDLToPDLInterp.cpp
    M mlir/lib/Conversion/PDLToPDLInterp/Predicate.h
    M mlir/lib/Conversion/PDLToPDLInterp/PredicateTree.cpp
    M mlir/lib/Dialect/PDL/IR/PDL.cpp
    M mlir/lib/Rewrite/ByteCode.cpp
    M mlir/lib/Tools/PDLL/Parser/Parser.cpp
    M mlir/test/Conversion/PDLToPDLInterp/pdl-to-pdl-interp-matcher.mlir
    A mlir/test/Conversion/PDLToPDLInterp/use-constraint-result.mlir
    M mlir/test/Dialect/PDL/ops.mlir
    M mlir/test/Rewrite/pdl-bytecode.mlir
    M mlir/test/lib/Dialect/Transform/TestTransformDialectExtension.cpp
    M mlir/test/lib/Rewrite/TestPDLByteCode.cpp
    M mlir/test/mlir-pdll/Parser/constraint-failure.pdll
    M mlir/test/mlir-pdll/Parser/constraint.pdll
    M mlir/test/python/dialects/pdl_ops.py

  Log Message:
  -----------
  Reapply "[mlir][PDL] Add support for native constraints with results (#82760)"

with a small stack-use-after-scope fix in getConstraintPredicates()

This reverts commit c80e6edba4a9593f0587e27fa0ac825ebe174afd.


  Commit: 051e910b8b6c59fc94d019fa01ae4507b1c81498
      https://github.com/llvm/llvm-project/commit/051e910b8b6c59fc94d019fa01ae4507b1c81498
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M clang/lib/Format/FormatToken.h
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/lib/Format/TokenAnnotator.h
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/lib/Format/UnwrappedLineParser.h

  Log Message:
  -----------
  [clang-format][NFC] Replace Style.isCpp() with IsCpp (#83533)


  Commit: 60fbd6050107875956960c3ce35cf94b202d8675
      https://github.com/llvm/llvm-project/commit/60fbd6050107875956960c3ce35cf94b202d8675
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Transforms/DialectConversion.h
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/test/lib/Dialect/Test/TestPatterns.cpp

  Log Message:
  -----------
  Revert "[mlir][Transforms] Encapsulate dialect conversion options in `ConversionConfig` (#83662)

This reverts commit 5f1319bb385342c7ef4124b05b83b89ef8588ee8.

A FIR test is broken on Windows


  Commit: f505a92fc2e965f1fe2e6a25d1ff4f0d9d1297c6
      https://github.com/llvm/llvm-project/commit/f505a92fc2e965f1fe2e6a25d1ff4f0d9d1297c6
  Author: MagentaTreehouse <99200384+MagentaTreehouse at users.noreply.github.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeEmitter.cpp
    M llvm/lib/Target/AArch64/AArch64SLSHardening.cpp
    M llvm/lib/Target/ARM/ARMSLSHardening.cpp
    M llvm/lib/Target/X86/X86IndirectThunks.cpp

  Log Message:
  -----------
  [NFC] Use fold expressions to replace discarded initializer_lists (#83693)


  Commit: 205dce6029bed302f354c0bde5d8c5804f214051
      https://github.com/llvm/llvm-project/commit/205dce6029bed302f354c0bde5d8c5804f214051
  Author: Quinn Dawkins <quinn.dawkins at gmail.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

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

  Log Message:
  -----------
  [mlir][linalg] Add a folder for transpose(fill) -> fill (#83623)

This is similar to the existing folder for a linalg.copy. Transposing a
filled tensor is the same as filling the destination of the transpose.


  Commit: ea628e3d7e78728e8605080ae1ab0ad55e3df191
      https://github.com/llvm/llvm-project/commit/ea628e3d7e78728e8605080ae1ab0ad55e3df191
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    A pyproject.toml

  Log Message:
  -----------
  [Py Reformat] Exclude `third-party` from reformat (#83491)


  Commit: 0ec318e57b0c7cbc0d9c899390daf3248cbe6a53
      https://github.com/llvm/llvm-project/commit/0ec318e57b0c7cbc0d9c899390daf3248cbe6a53
  Author: Matthias Gehre <matthias.gehre at amd.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M mlir/lib/Rewrite/ByteCode.cpp

  Log Message:
  -----------
  Fix unused variable in "[mlir][PDL] Add support for native constraints with results (#82760)"


  Commit: def16bca8133a2f49127a382061aa36406862a15
      https://github.com/llvm/llvm-project/commit/def16bca8133a2f49127a382061aa36406862a15
  Author: Artem Tyurin <artem.tyurin at gmail.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M mlir/lib/Conversion/MemRefToSPIRV/MemRefToSPIRV.cpp
    M mlir/test/Conversion/MemRefToSPIRV/memref-to-spirv.mlir

  Log Message:
  -----------
  [mlir][spirv] Retain nontemporal attribute when converting memref load/store (#82119)

Fixes #77156.


  Commit: 8b26e609e032b4535b90514e22875bfaa194216c
      https://github.com/llvm/llvm-project/commit/8b26e609e032b4535b90514e22875bfaa194216c
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

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

  Log Message:
  -----------
  [RISCV] Use the VR register allocation order for VM. (#83664)


  Commit: 4dd9c2ed3258c38bad4be53f7b2f943c79acd87f
      https://github.com/llvm/llvm-project/commit/4dd9c2ed3258c38bad4be53f7b2f943c79acd87f
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitreverse-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitreverse.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctlz-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctlz.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctpop-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctpop.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-cttz-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-cttz.ll

  Log Message:
  -----------
  [RISCV] Use NewVL in splatPartsI64WithVL. (#83690)

In 7b5cf52f32c09, I added this NewVL and checked that it had been set,
but I didn't use it for the VL of the splat.


  Commit: 8fccf6bf5ccb4404cfe184ceda7c32e349e122c0
      https://github.com/llvm/llvm-project/commit/8fccf6bf5ccb4404cfe184ceda7c32e349e122c0
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

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

  Log Message:
  -----------
  [opt] Use static arrays instead of std::vector to store legacy pass names. NFC (#83634)

A std::vector causes a heap allocation and a memcpy of static
initialization data from the rodata section.

Use a static array instead so we can use the static data directly.


  Commit: d5f77e112e6352d933afa22920a4a0d3bf8d26e5
      https://github.com/llvm/llvm-project/commit/d5f77e112e6352d933afa22920a4a0d3bf8d26e5
  Author: Brad Smith <brad at comstyle.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/lib/Driver/ToolChains/DragonFly.cpp
    M clang/lib/Driver/ToolChains/FreeBSD.cpp
    M clang/lib/Driver/ToolChains/Haiku.cpp
    M clang/lib/Driver/ToolChains/NetBSD.cpp
    M clang/lib/Driver/ToolChains/OpenBSD.cpp
    M clang/lib/Driver/ToolChains/PS4CPU.cpp
    M clang/lib/Driver/ToolChains/Solaris.cpp

  Log Message:
  -----------
  [Driver] Remove duplicate -r flag usage when linking (#82715)

Bug #82010


  Commit: 6594f428de91e333c1cbea4f55e79b18d31024c4
      https://github.com/llvm/llvm-project/commit/6594f428de91e333c1cbea4f55e79b18d31024c4
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M bolt/include/bolt/Core/ParallelUtilities.h
    M lldb/include/lldb/Core/Debugger.h
    M llvm/include/llvm/Debuginfod/Debuginfod.h
    M llvm/include/llvm/Support/BalancedPartitioning.h
    M llvm/include/llvm/Support/ThreadPool.h
    M llvm/lib/Debuginfod/Debuginfod.cpp
    M llvm/lib/Support/ThreadPool.cpp
    M llvm/tools/llvm-cov/CoverageReport.h
    M llvm/tools/llvm-cov/SourceCoverageViewHTML.h
    M llvm/unittests/Support/ThreadPool.cpp
    M mlir/include/mlir/CAPI/Support.h
    M mlir/include/mlir/IR/MLIRContext.h
    M mlir/include/mlir/IR/Threading.h
    M mlir/lib/CAPI/IR/IR.cpp
    M mlir/lib/IR/MLIRContext.cpp
    M mlir/lib/Tools/mlir-opt/MlirOptMain.cpp

  Log Message:
  -----------
  Split the llvm::ThreadPool into an abstract base class and an implementation (#82094)

This decouples the public API used to enqueue tasks and wait for
completion from the actual implementation, and opens up the possibility
for clients to set their own thread pool implementation for the pool.

https://discourse.llvm.org/t/construct-threadpool-from-vector-of-existing-threads/76883


  Commit: 6b70c5d79fe44cbe01b0443454c6952c5b541585
      https://github.com/llvm/llvm-project/commit/6b70c5d79fe44cbe01b0443454c6952c5b541585
  Author: George Koehler <kernigh at gmail.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCFrameLowering.cpp
    M llvm/test/CodeGen/PowerPC/crsave.ll

  Log Message:
  -----------
  [PowerPC] provide CFI for ELF32 to unwind cr2, cr3, cr4 (#83098)

Delete the code that skips the CFI for the condition register on ELF32.
The code checked !MustSaveCR, which happened only when
Subtarget.is32BitELFABI(), where spillCalleeSavedRegisters is spilling
cr in a different way. The spill was missing CFI. After deleting this
code, a spill of cr2 to cr4 gets CFI in the same way as a spill of r14
to r31.

Fixes #83094


  Commit: 6c6ea9d2b06c57b4c35b3d4bd6cc854a7b9a4590
      https://github.com/llvm/llvm-project/commit/6c6ea9d2b06c57b4c35b3d4bd6cc854a7b9a4590
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/lib/DebugInfo/GSYM/CMakeLists.txt

  Log Message:
  -----------
  Fix BUILD_SHARED_LIBS=ON build for platforms which require explicit link of -lpthread (NFC)


  Commit: e52650cfc3aa5d134186c5a8fd6701a6fd0a1051
      https://github.com/llvm/llvm-project/commit/e52650cfc3aa5d134186c5a8fd6701a6fd0a1051
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M lldb/source/Core/Debugger.cpp

  Log Message:
  -----------
  Fix LLDB build after renaming the base class for ThreadPool to ThreadPoolInterface

The header was updated but not the implementation.


  Commit: 1a4f52c84257a2a0083abe37368c526a2f8cd928
      https://github.com/llvm/llvm-project/commit/1a4f52c84257a2a0083abe37368c526a2f8cd928
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/lib/DWARFLinker/Classic/CMakeLists.txt

  Log Message:
  -----------
  More fix BUILD_SHARED_LIBS=ON build for platforms which require explicit link of -lpthread (NFC)

Some systems requires explictly providing -lpthread when linking, I don't
have such system so it is hard to find all the missing cases.


  Commit: e29cad6b3bb1f573ad5340771faa8a01cc05cb65
      https://github.com/llvm/llvm-project/commit/e29cad6b3bb1f573ad5340771faa8a01cc05cb65
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/lib/DWARFLinker/Parallel/CMakeLists.txt

  Log Message:
  -----------
  More fix BUILD_SHARED_LIBS=ON build for platforms which require explicit link of -lpthread (NFC)

Some systems requires explictly providing -lpthread when linking, I don't
have such system so it is hard to find all the missing cases.


  Commit: 5f70f253c2b8978b50d20d37b25591b40dfe38d5
      https://github.com/llvm/llvm-project/commit/5f70f253c2b8978b50d20d37b25591b40dfe38d5
  Author: Alex Richardson <alexrichardson at google.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_posix_libcdep.cpp

  Log Message:
  -----------
  [sanitizer_common] Remove unnecessary const_cast

This used to be required because rlim was declared volatile, but commit
d657f109d7080bd51ad70e88859acf64931152fe removed that workaround.


  Commit: 67221ed886b59b2f9b96a154e56e16e27dc3b1a4
      https://github.com/llvm/llvm-project/commit/67221ed886b59b2f9b96a154e56e16e27dc3b1a4
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M llvm/lib/LTO/CMakeLists.txt

  Log Message:
  -----------
  More fix BUILD_SHARED_LIBS=ON build for platforms which require explicit link of -lpthread (NFC)

Some systems requires explictly providing -lpthread when linking, I don't
have such system so it is hard to find all the missing cases.


  Commit: c4621607245a5feed42cf9f748ff796728ef579a
      https://github.com/llvm/llvm-project/commit/c4621607245a5feed42cf9f748ff796728ef579a
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-02 (Sat, 02 Mar 2024)

  Changed paths:
    M clang/lib/Tooling/CMakeLists.txt

  Log Message:
  -----------
  More fix BUILD_SHARED_LIBS=ON build for platforms which require explicit link of -lpthread (NFC)

Some systems requires explictly providing -lpthread when linking, I don't
have such system so it is hard to find all the missing cases.


  Commit: 37293e69e6362e3559c1a4e1ac62b53f2b0edb0a
      https://github.com/llvm/llvm-project/commit/37293e69e6362e3559c1a4e1ac62b53f2b0edb0a
  Author: Shengchen Kan <shengchen.kan at intel.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/MCTargetDesc/X86BaseInfo.h
    M llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp
    M llvm/lib/Target/X86/X86ExpandPseudo.cpp
    A llvm/test/CodeGen/X86/apx/long-instruction-fixup-x32.ll
    A llvm/test/CodeGen/X86/apx/long-instruction-fixup.ll

  Log Message:
  -----------
  [X86][CodeGen] Support long instruction fixup for APX NDD instructions (#83578)

RFC:
https://discourse.llvm.org/t/rfc-support-long-instruction-fixup-for-x86/76539


  Commit: 3f18f6a2cfecb080f006477c46d3626102841a17
      https://github.com/llvm/llvm-project/commit/3f18f6a2cfecb080f006477c46d3626102841a17
  Author: Quinn Dawkins <quinn.dawkins at gmail.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

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

  Log Message:
  -----------
  [mlir][linalg] Enable fusion by expansion of reduction and named ops (#83473)

This adds support for expansion of named linalg ops and linalg ops with
reduction iterators. This improves the ability to make fusion decisions
WRT reduction operations. To recover the previous behavior, users of the
patterns can add a control function to restrict propagation of reshape
by expansion through linalg ops with reduction iterators.

For named linalg ops, this always converts the named op into a generic.


  Commit: 800de14fab136f8e17c04cc783e0f8f2b305333b
      https://github.com/llvm/llvm-project/commit/800de14fab136f8e17c04cc783e0f8f2b305333b
  Author: David Green <david.green at arm.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M llvm/include/llvm/TargetParser/AArch64TargetParser.h
    M llvm/include/llvm/TargetParser/ARMTargetParser.def
    M llvm/include/llvm/TargetParser/ARMTargetParser.h
    M llvm/unittests/TargetParser/TargetParserTest.cpp

  Log Message:
  -----------
  [ARM][AArch64] Reformat target parser. NFC (#82601)

This is something we generally tend to avoid due to it confusing the git
history, but with the new github formatting bots being more noisy we
keep running into issues with the existing formatting when adding or
adjusting CPUs. This patch formats the code to make sure we are in a
good state going forward.


  Commit: eb3b063995d6b4f8f3bc22eeecbf239ffaecc29f
      https://github.com/llvm/llvm-project/commit/eb3b063995d6b4f8f3bc22eeecbf239ffaecc29f
  Author: AMS21 <AMS21.github at gmail.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/google/ExplicitConstructorCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    A clang-tools-extra/test/clang-tidy/checkers/google/explicit-constructor-cxx20.cpp

  Log Message:
  -----------
  [clang-tidy] Improve `google-explicit-constructor` checks handling of `explicit(bool)` (#82689)

We now treat `explicit(false)` the same way we treat `noexcept(false)`
in the noexcept checks, which is ignoring it.

Also introduced a new warning message if a constructor has an `explicit`
declaration which evaluates to false and no longer emit a faulty FixIt.

Fixes #81121


  Commit: 22f34ea3b05537235956c99fe942aa95b88762c0
      https://github.com/llvm/llvm-project/commit/22f34ea3b05537235956c99fe942aa95b88762c0
  Author: Jacques Pienaar <jpienaar at google.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Query/Matcher/ErrorBuilder.h
    M mlir/include/mlir/Query/Matcher/MatchersInternal.h
    M mlir/lib/Query/CMakeLists.txt
    M mlir/lib/Query/Matcher/Diagnostics.cpp
    M mlir/lib/Query/Matcher/Parser.cpp
    M mlir/lib/Query/Matcher/Parser.h
    M mlir/lib/Query/Matcher/RegistryManager.cpp
    M mlir/lib/Query/Matcher/RegistryManager.h
    M mlir/lib/Query/Query.cpp
    A mlir/test/mlir-query/function-extraction.mlir

  Log Message:
  -----------
  Reapply "[mlir-query] Add function extraction feature to mlir-query"

Fix build deps.

This reverts commit de55c2f869925a3ed7f26e168424021c6bc46799.


  Commit: a5d3a1dbc8c9bd1ea76550a4bac44d25b1e43a5e
      https://github.com/llvm/llvm-project/commit/a5d3a1dbc8c9bd1ea76550a4bac44d25b1e43a5e
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M libcxx/include/fstream

  Log Message:
  -----------
  [libc++] Refactors fstream open. (#76617)

This moves the duplicated code to one new function.

This is a preparation to fix
https://github.com/llvm/llvm-project/issues/60509


  Commit: 732a5cba8c739ed40a7280b5d74ca717910c2c4c
      https://github.com/llvm/llvm-project/commit/732a5cba8c739ed40a7280b5d74ca717910c2c4c
  Author: Jacques Pienaar <jpienaar at google.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Query/Matcher/ErrorBuilder.h
    M mlir/include/mlir/Query/Matcher/MatchersInternal.h
    M mlir/lib/Query/CMakeLists.txt
    M mlir/lib/Query/Matcher/Diagnostics.cpp
    M mlir/lib/Query/Matcher/Parser.cpp
    M mlir/lib/Query/Matcher/Parser.h
    M mlir/lib/Query/Matcher/RegistryManager.cpp
    M mlir/lib/Query/Matcher/RegistryManager.h
    M mlir/lib/Query/Query.cpp
    R mlir/test/mlir-query/function-extraction.mlir

  Log Message:
  -----------
  Revert "Reapply "[mlir-query] Add function extraction feature to mlir-query""

Commit fails on sanitizers.

This reverts commit 22f34ea3b05537235956c99fe942aa95b88762c0.


  Commit: 5b4759f9fd1419abc69e656c40f04a0fd9483d2a
      https://github.com/llvm/llvm-project/commit/5b4759f9fd1419abc69e656c40f04a0fd9483d2a
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/test/CodeGen/X86/2006-04-27-ISelFoldingBug.ll
    M llvm/test/CodeGen/X86/2007-08-09-IllegalX86-64Asm.ll
    M llvm/test/CodeGen/X86/2007-12-18-LoadCSEBug.ll
    M llvm/test/CodeGen/X86/2008-02-18-TailMergingBug.ll
    M llvm/test/CodeGen/X86/avx-cmp.ll
    M llvm/test/CodeGen/X86/cmp.ll
    M llvm/test/CodeGen/X86/dagcombine-and-setcc.ll
    M llvm/test/CodeGen/X86/div-rem-pair-recomposition-unsigned.ll
    M llvm/test/CodeGen/X86/inline-spiller-impdef-on-implicit-def-regression.ll
    M llvm/test/CodeGen/X86/lsr-addrecloops.ll
    M llvm/test/CodeGen/X86/movmsk-cmp.ll
    M llvm/test/CodeGen/X86/or-branch.ll
    M llvm/test/CodeGen/X86/peephole-na-phys-copy-folding.ll
    M llvm/test/CodeGen/X86/pr33747.ll
    M llvm/test/CodeGen/X86/pr37025.ll
    M llvm/test/CodeGen/X86/pr38795.ll
    M llvm/test/CodeGen/X86/setcc-logic.ll
    M llvm/test/CodeGen/X86/swifterror.ll
    M llvm/test/CodeGen/X86/tail-dup-merge-loop-headers.ll
    M llvm/test/CodeGen/X86/tail-opts.ll
    M llvm/test/CodeGen/X86/tailcall-extract.ll
    M llvm/test/CodeGen/X86/test-shrink-bug.ll
    M llvm/test/CodeGen/X86/x86-shrink-wrap-unwind.ll

  Log Message:
  -----------
  Revert "[X86] Don't always separate conditions in `(br (and/or cond0, cond1))` into separate branches"

This has been buggy for a while.

Reverts #81689
This reverts commit ae76dfb74701e05e5ab4be194e20e49f10768e46.


  Commit: 58b44c8102afb0e76d1cb70d4a5d089f70d2f657
      https://github.com/llvm/llvm-project/commit/58b44c8102afb0e76d1cb70d4a5d089f70d2f657
  Author: Jacques Pienaar <jpienaar at google.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Query/Matcher/ErrorBuilder.h
    M mlir/include/mlir/Query/Matcher/MatchersInternal.h
    M mlir/lib/Query/CMakeLists.txt
    M mlir/lib/Query/Matcher/Diagnostics.cpp
    M mlir/lib/Query/Matcher/Parser.cpp
    M mlir/lib/Query/Matcher/Parser.h
    M mlir/lib/Query/Matcher/RegistryManager.cpp
    M mlir/lib/Query/Matcher/RegistryManager.h
    M mlir/lib/Query/Query.cpp
    A mlir/test/mlir-query/function-extraction.mlir

  Log Message:
  -----------
  Reapply "Reapply "[mlir-query] Add function extraction feature to mlir-query""

Fix ASAN by erasing the op extracted post printing.

This reverts commit 732a5cba8c739ed40a7280b5d74ca717910c2c4c.


  Commit: 3ca73e03aaf516ed10df2ec79f92f73d9216c884
      https://github.com/llvm/llvm-project/commit/3ca73e03aaf516ed10df2ec79f92f73d9216c884
  Author: Jacques Pienaar <jpienaar at google.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M mlir/lib/Query/Query.cpp

  Log Message:
  -----------
  [mlir-query] Attempt to fix gcc7 build

I haven't tested via gcc7, but this should address the error reported.


  Commit: 03f150bb5688be72ae4dfb43fbe6795aae493e6d
      https://github.com/llvm/llvm-project/commit/03f150bb5688be72ae4dfb43fbe6795aae493e6d
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    R .arcconfig
    R .arclint
    M llvm/docs/Contributing.rst
    M llvm/docs/DeveloperPolicy.rst
    R llvm/docs/Phabricator.rst
    R llvm/docs/Phabricator_premerge_results.png
    R llvm/docs/Phabricator_premerge_unit_tests.png
    M llvm/docs/UserGuides.rst
    R utils/arcanist/clang-format.sh

  Log Message:
  -----------
  Removes arcanist and Phabricator information. (#82115)

Removes old arcanist configuration files and documentation of
Phabricator. This only removes the data that seems save to remove.


  Commit: 5f058398ab7a6c2cf3555daf190d3d13d68f78f5
      https://github.com/llvm/llvm-project/commit/5f058398ab7a6c2cf3555daf190d3d13d68f78f5
  Author: David Green <david.green at arm.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M llvm/lib/Target/ARM/ARMInstrNEON.td
    M llvm/test/CodeGen/ARM/aes-erratum-fix.ll
    A llvm/test/CodeGen/ARM/aes.ll

  Log Message:
  -----------
  [ARM] Mark AESD and AESE instructions as commutative.

Similar to #83390, this marks AESD and AESE as commutative, as the logic of the
instructions starts as a XOR between the two operands.


  Commit: 0c89427b99f6f6d7c217c70ff880ca097340f9a4
      https://github.com/llvm/llvm-project/commit/0c89427b99f6f6d7c217c70ff880ca097340f9a4
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-03-03 (Sun, 03 Mar 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:
  -----------
  Reland "[clang][modules] Print library module manifest path." (#82160)

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

This reverts commit 82f424f766be00b037a706a835d0a0663a2680f1.

Disables the tests on non-X86 platforms as suggested.


  Commit: 55357160d0e151c32f86e1d6683b4bddbb706aa1
      https://github.com/llvm/llvm-project/commit/55357160d0e151c32f86e1d6683b4bddbb706aa1
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M libcxx/include/__type_traits/remove_cv.h
    M libcxx/include/__type_traits/remove_cvref.h

  Log Message:
  -----------
  [libc++] Use GCC type traits builtins for remove_cv and remove_cvref (#81386)

They have been added recently to GCC without support for mangling. This
patch uses them in structs and adds aliases to these structs instead of
the builtins directly.


  Commit: 0c90e8837a9e5f27985ccaf85120083db9e1b43e
      https://github.com/llvm/llvm-project/commit/0c90e8837a9e5f27985ccaf85120083db9e1b43e
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M libcxx/src/iostream.cpp

  Log Message:
  -----------
  [libc++][NFC] Replace _ALIGNAS_TYPE with alignas in iostream.cpp


  Commit: 33de5a316caa3c9b07ee1ccc7fbc3434247ff787
      https://github.com/llvm/llvm-project/commit/33de5a316caa3c9b07ee1ccc7fbc3434247ff787
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__filesystem/path.h
    M libcxx/include/__functional/bind.h
    M libcxx/include/__functional/hash.h
    M libcxx/include/__functional/identity.h
    A libcxx/include/__fwd/functional.h
    R libcxx/include/__fwd/hash.h
    M libcxx/include/__thread/id.h
    M libcxx/include/__thread/support/pthread.h
    M libcxx/include/__type_traits/is_reference_wrapper.h
    M libcxx/include/__type_traits/unwrap_ref.h
    M libcxx/include/experimental/propagate_const
    M libcxx/include/filesystem
    M libcxx/include/libcxx.imp
    M libcxx/include/module.modulemap.in
    M libcxx/include/optional
    M libcxx/include/type_traits
    M libcxx/test/libcxx/transitive_includes/cxx23.csv
    M libcxx/test/libcxx/transitive_includes/cxx26.csv
    M libcxx/utils/generate_iwyu_mapping.py

  Log Message:
  -----------
  [libc++] Rename __fwd/hash.h to __fwd/functional.h and add reference_wrapper (#81445)

We forward declare `reference_wrapper` in multiple places already. This
moves the declaration to the canonical place and removes unnecessary
includes of `__functional/reference_wrapper.h`.


  Commit: 09b34b998d9d84fa4740c1f2821699250fc318cb
      https://github.com/llvm/llvm-project/commit/09b34b998d9d84fa4740c1f2821699250fc318cb
  Author: Aiden Grossman <agrossman154 at yahoo.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M .github/workflows/build-ci-container.yml

  Log Message:
  -----------
  [Github] Make CI container build more reliable (#83707)


  Commit: 5105f1551b4bc800f564e7c105fc95e2c51f1239
      https://github.com/llvm/llvm-project/commit/5105f1551b4bc800f564e7c105fc95e2c51f1239
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

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

  Log Message:
  -----------
  [gn build] Port 33de5a316caa


  Commit: 2435dcd83a32c63aef91c82cb19b08604ba96b64
      https://github.com/llvm/llvm-project/commit/2435dcd83a32c63aef91c82cb19b08604ba96b64
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

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

  Log Message:
  -----------
  [VPlan] Add initial pattern match implementation for VPInstruction. (#80563)

Add an initial version of a pattern match for VPValues and recipes,
starting with VPInstruction.

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


  Commit: 3dd6750027cd168fce5fd9894b0bac0739652cf5
      https://github.com/llvm/llvm-project/commit/3dd6750027cd168fce5fd9894b0bac0739652cf5
  Author: David Majnemer <david.majnemer at gmail.com>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/CodeGen/ValueTypes.h
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/GISel/AArch64PostLegalizerLowering.cpp
    M llvm/test/Analysis/CostModel/AArch64/reduce-fadd.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/lower-neon-vector-fcmp.mir
    M llvm/test/CodeGen/AArch64/implicitly-set-zero-high-64-bits.ll
    M llvm/test/CodeGen/AArch64/neon-compare-instructions.ll
    M llvm/test/CodeGen/AArch64/round-fptosi-sat-scalar.ll
    M llvm/test/CodeGen/AArch64/vector-fcopysign.ll

  Log Message:
  -----------
  [AArch64] Add more complete support for BF16

We can use a small amount of integer arithmetic to round FP32 to BF16
and extend BF16 to FP32.

While a number of operations still require promotion, this can be
reduced for some rather simple operations like abs, copysign, fneg but
these can be done in a follow-up.

A few neat optimizations are implemented:
- round-inexact-to-odd is used for F64 to BF16 rounding.
- quieting signaling NaNs for f32 -> bf16 tries to detect if a prior
  operation makes it unnecessary.


  Commit: b29301cd40441b5eb8cef9356429fb081e6b6a72
      https://github.com/llvm/llvm-project/commit/b29301cd40441b5eb8cef9356429fb081e6b6a72
  Author: Po-yao Chang <poyaoc97 at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libcxx/include/__format/parser_std_format_spec.h
    M libcxx/test/std/containers/container.adaptors/container.adaptors.format/format.functions.tests.h
    M libcxx/test/std/containers/sequences/vector.bool/vector.bool.fmt/format.functions.tests.h
    M libcxx/test/std/utilities/format/format.range/format.range.fmtmap/format.functions.tests.h
    M libcxx/test/std/utilities/format/format.range/format.range.fmtset/format.functions.tests.h
    M libcxx/test/std/utilities/format/format.range/format.range.fmtstr/format.functions.tests.h
    M libcxx/test/std/utilities/format/format.range/format.range.formatter/format.functions.tests.h
    M libcxx/test/std/utilities/format/format.tuple/format.functions.tests.h

  Log Message:
  -----------
  [libc++][format] Handle range-underlying-spec (#81914)

An immediate colon signifeis that the range-format-spec contains only
range-underlying-spec.

This patch allows this code to compile and run:
```c++
std::println("{::<<9?}", std::span<const char>{"Hello", sizeof "Hello"});
```


  Commit: 5f058aa211995d2f0df2a0e063532832569cb7a8
      https://github.com/llvm/llvm-project/commit/5f058aa211995d2f0df2a0e063532832569cb7a8
  Author: Lu Weining <luweining at loongson.cn>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
    M llvm/test/CodeGen/LoongArch/atomicrmw-uinc-udec-wrap.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/atomic-cmpxchg.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/atomicrmw-fp.ll

  Log Message:
  -----------
  [LoongArch] Override LoongArchTargetLowering::getExtendForAtomicCmpSwapArg (#83656)

This patch aims to solve Firefox issue:
https://bugzilla.mozilla.org/show_bug.cgi?id=1882301

Similar to 616289ed2922. Currently LoongArch uses an ll.[wd]/sc.[wd]
loop for ATOMIC_CMP_XCHG. Because the comparison in the loop is
full-width (i.e. the `bne` instruction), we must sign extend the input
comparsion argument.

Note that LoongArch ISA manual V1.1 has introduced compare-and-swap
instructions. We would change the implementation (return `ANY_EXTEND`)
when we support them.


  Commit: 8d1046ae49fdf7585f70cfbb35bcfc46725d9b29
      https://github.com/llvm/llvm-project/commit/8d1046ae49fdf7585f70cfbb35bcfc46725d9b29
  Author: Chen Zheng <czhengsz at cn.ibm.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

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

  Log Message:
  -----------
  [PowerPC] adjust cost for extract i64 from vector on P9 and above (#82963)

https://godbolt.org/z/Ma347Tx1W


  Commit: 61c283db4be0c8ff1832afa754a9a6b45dcf2b06
      https://github.com/llvm/llvm-project/commit/61c283db4be0c8ff1832afa754a9a6b45dcf2b06
  Author: Yeting Kuo <46629943+yetingk at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/ScalarizeMaskedMemIntrin.cpp
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-compressstore-fp.ll
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-compressstore-int.ll
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-expandload-fp.ll
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-expandload-int.ll

  Log Message:
  -----------
  [ScalarizeMaskedMemIntrin] Use pointer alignment from pointer of masked.compressstore/expandload. (#83519)

Previously we used Align(1) for all scalarized load/stores from
masked.compressstore/expandload.
For targets not supporting unaligned accesses, it make backend need to
split
aligned large width loads/stores to byte loads/stores.
To solve this performance issue, this patch preserves the alignment of
base
pointer after scalarizing.


  Commit: 9606655fbb03b1cf1c69d624c7320630e85f33e6
      https://github.com/llvm/llvm-project/commit/9606655fbb03b1cf1c69d624c7320630e85f33e6
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/test/Transforms/test-legalizer.mlir
    M mlir/test/lib/Dialect/Test/TestOps.td

  Log Message:
  -----------
  [mlir][Transforms] Fix use-after-free when accessing replaced block args (#83646)

This commit fixes a bug in a dialect conversion. Currently, when a block
is replaced via a signature conversion, the block is erased during the
"commit" phase. This is problematic because the block arguments may
still be referenced internal data structures of the dialect conversion
(`mapping`). Blocks should be treated same as ops: they should be erased
during the "cleanup" phase.

Note: The test case fails without this fix when running with ASAN, but
may pass when running without ASAN.


  Commit: 2b5cd8be3af43e5aa5b76b6aeb1edd3141b803ca
      https://github.com/llvm/llvm-project/commit/2b5cd8be3af43e5aa5b76b6aeb1edd3141b803ca
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M clang/include/clang/Driver/Driver.h
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChains/AIX.cpp
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/lib/Driver/ToolChains/BareMetal.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/lib/Driver/ToolChains/DragonFly.cpp
    M clang/lib/Driver/ToolChains/Fuchsia.cpp
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/lib/Driver/ToolChains/Hexagon.cpp
    M clang/lib/Driver/ToolChains/Linux.cpp
    M clang/lib/Driver/ToolChains/MSVC.cpp
    M clang/lib/Driver/ToolChains/MinGW.cpp
    M clang/lib/Driver/ToolChains/MipsLinux.cpp
    M clang/lib/Driver/ToolChains/OHOS.cpp
    M clang/lib/Driver/ToolChains/WebAssembly.cpp
    M clang/lib/Driver/ToolChains/ZOS.cpp

  Log Message:
  -----------
  [Driver] Remove InstallDir and getInstalledDir. NFC

Follow-up to #80527.


  Commit: ff72c83b017ba636be13750c7f96cd87fc22c465
      https://github.com/llvm/llvm-project/commit/ff72c83b017ba636be13750c7f96cd87fc22c465
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrVecCompiler.td
    M llvm/test/CodeGen/X86/avx512bf16-vl-intrinsics.ll
    M llvm/test/CodeGen/X86/bfloat.ll

  Log Message:
  -----------
  [X86] Add missing subvector_subreg_lowering for BF16 (#83720)

Fixes: #83358


  Commit: 938ddbf349276c6ded6ef2d65432f41c512a86c6
      https://github.com/llvm/llvm-project/commit/938ddbf349276c6ded6ef2d65432f41c512a86c6
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

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

  Log Message:
  -----------
  [Driver,Darwin] Simplify libc++ include path after #80527. NFC

My #80527 mentioned that `InstalledDir` was weird in the
-canonical-prefixes mode. #70817 was a workaround to find the libc++
include path for a symlinked clang. After #80527, `InstalledDir` was
identical to `Dir` and was subsequently removed, the code change #70817
can be reverted.


  Commit: ccc48d45b832def14c8bc1849cf64c805892368d
      https://github.com/llvm/llvm-project/commit/ccc48d45b832def14c8bc1849cf64c805892368d
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/half-constrained.ll

  Log Message:
  -----------
  [X86][NFC] Replace X32 check prefixes with X86

We try to only use X32 for gnux32 triple tests.


  Commit: b0c158bd947c360a4652eb0de3a4794f46deb88b
      https://github.com/llvm/llvm-project/commit/b0c158bd947c360a4652eb0de3a4794f46deb88b
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M compiler-rt/lib/builtins/CMakeLists.txt
    A compiler-rt/lib/builtins/extendbfsf2.c
    M compiler-rt/lib/builtins/fp_extend.h
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
    M llvm/include/llvm/IR/RuntimeLibcalls.def
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    A llvm/test/CodeGen/X86/bfloat-constrained.ll

  Log Message:
  -----------
  [SelectionDAG] Add `STRICT_BF16_TO_FP` and `STRICT_FP_TO_BF16` (#80056)

This patch adds the support for `STRICT_BF16_TO_FP` and
`STRICT_FP_TO_BF16`.


  Commit: e6e53ca8470d719882539359ebe3ad8b442a8cb0
      https://github.com/llvm/llvm-project/commit/e6e53ca8470d719882539359ebe3ad8b442a8cb0
  Author: Nathan Ridge <zeratul976 at hotmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang-tools-extra/clangd/HeuristicResolver.cpp
    M clang-tools-extra/clangd/HeuristicResolver.h
    M clang-tools-extra/clangd/unittests/FindTargetTests.cpp

  Log Message:
  -----------
  [clangd] [HeuristicResolver] Protect against infinite recursion on DependentNameTypes (#83542)

When resolving names inside templates that implement recursive
compile-time functions (e.g. waldo<N>::type is defined in terms
of waldo<N-1>::type), HeuristicResolver could get into an infinite
recursion, specifically one where resolveDependentNameType() can
be called recursively with the same DependentNameType*.

To guard against this, HeuristicResolver tracks, for each external
call into a HeuristicResolver function, the set of DependentNameTypes
that it has seen, and bails if it sees the same DependentNameType again.

To implement this, a helper class HeuristicResolverImpl is introduced
to store state that persists for the duration of an external call into
HeuristicResolver (but does not persist between such calls).

Fixes https://github.com/clangd/clangd/issues/1951


  Commit: 2c5d01c2cfa80fd734b94833bdf7b5b3f6f2ebb0
      https://github.com/llvm/llvm-project/commit/2c5d01c2cfa80fd734b94833bdf7b5b3f6f2ebb0
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M compiler-rt/lib/builtins/CMakeLists.txt
    R compiler-rt/lib/builtins/extendbfsf2.c
    M compiler-rt/lib/builtins/fp_extend.h
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
    M llvm/include/llvm/IR/RuntimeLibcalls.def
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    R llvm/test/CodeGen/X86/bfloat-constrained.ll

  Log Message:
  -----------
  Revert "[SelectionDAG] Add `STRICT_BF16_TO_FP` and `STRICT_FP_TO_BF16` (#80056)"

This reverts commit b0c158bd947c360a4652eb0de3a4794f46deb88b.

The changes in `compiler-rt` broke tests.


  Commit: 8300f30a9234ee46b2b941e8b07cb7d104c846cb
      https://github.com/llvm/llvm-project/commit/8300f30a9234ee46b2b941e8b07cb7d104c846cb
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M compiler-rt/lib/builtins/CMakeLists.txt
    A compiler-rt/lib/builtins/extendbfsf2.c
    M compiler-rt/lib/builtins/fp_extend.h
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
    M llvm/include/llvm/IR/RuntimeLibcalls.def
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    A llvm/test/CodeGen/X86/bfloat-constrained.ll

  Log Message:
  -----------
  [SelectionDAG] Add `STRICT_BF16_TO_FP` and `STRICT_FP_TO_BF16` (#80056)

This patch adds the support for `STRICT_BF16_TO_FP` and
`STRICT_FP_TO_BF16`.


  Commit: aa6ebf9be124664945f32f2be1167e6453788f40
      https://github.com/llvm/llvm-project/commit/aa6ebf9be124664945f32f2be1167e6453788f40
  Author: Daniel Martinez <danielpedromartinez at duck.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M openmp/libomptarget/include/Shared/SourceInfo.h
    M openmp/libomptarget/include/omptarget.h
    M openmp/libomptarget/plugins-nextgen/common/include/RPC.h

  Log Message:
  -----------
  Replace some C headers with C++ ones (#82697)

#81434

Replaced some C headers with C++ ones

Co-authored-by: Daniel Martinez <danielmartinez at cock.li>


  Commit: 23bc5b6392c61980d24cc23a61a020f7aaf858bf
      https://github.com/llvm/llvm-project/commit/23bc5b6392c61980d24cc23a61a020f7aaf858bf
  Author: David Majnemer <david.majnemer at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

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

  Log Message:
  -----------
  [AArch64] Mark bf16 as custom for truncating stores & add a comment

While we don't use SVE2 as a fallback for missing NEON instructions for
BF16, it is confusing to break symmetry with fp16.

While we are here, add a comment explaining how BF16 immediates work.


  Commit: 43222bd3091db5403e3320d23a241a534c1eefec
      https://github.com/llvm/llvm-project/commit/43222bd3091db5403e3320d23a241a534c1eefec
  Author: Michal Paszkowski <michal at paszkowski.org>
  Date:   2024-03-03 (Sun, 03 Mar 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.h
    M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
    M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    M llvm/lib/Target/SPIRV/SPIRVMetadata.cpp
    M llvm/lib/Target/SPIRV/SPIRVMetadata.h
    M llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.h
    M llvm/test/CodeGen/SPIRV/function/alloca-load-store.ll
    M llvm/test/CodeGen/SPIRV/half_no_extension.ll
    M llvm/test/CodeGen/SPIRV/instructions/undef-nested-composite-store.ll
    M llvm/test/CodeGen/SPIRV/instructions/undef-simple-composite-store.ll
    M llvm/test/CodeGen/SPIRV/opaque_pointers.ll
    M llvm/test/CodeGen/SPIRV/opencl/basic/get_global_offset.ll
    R llvm/test/CodeGen/SPIRV/opencl/metadata/kernel_arg_type_function_metadata.ll
    R llvm/test/CodeGen/SPIRV/opencl/metadata/kernel_arg_type_module_metadata.ll
    M llvm/test/CodeGen/SPIRV/opencl/vload2.ll
    A llvm/test/CodeGen/SPIRV/opencl/vstore2.ll
    A llvm/test/CodeGen/SPIRV/passes/SPIRVEmitIntrinsics-TargetExtType-arg-no-spv_assign_type.ll
    A llvm/test/CodeGen/SPIRV/passes/SPIRVEmitIntrinsics-no-divergent-spv_assign_ptr_type.ll
    A llvm/test/CodeGen/SPIRV/passes/SPIRVEmitIntrinsics-no-duplicate-spv_assign_type.ll
    M llvm/test/CodeGen/SPIRV/pointers/getelementptr-kernel-arg-char.ll
    A llvm/test/CodeGen/SPIRV/pointers/kernel-argument-builtin-vload-type-discrapency.ll
    A llvm/test/CodeGen/SPIRV/pointers/kernel-argument-pointer-type-deduction-mismatch.ll
    A llvm/test/CodeGen/SPIRV/pointers/kernel-argument-pointer-type-deduction-no-metadata.ll
    A llvm/test/CodeGen/SPIRV/pointers/ptr-argument-byref.ll
    A llvm/test/CodeGen/SPIRV/pointers/ptr-argument-byval.ll
    A llvm/test/CodeGen/SPIRV/pointers/store-operand-ptr-to-struct.ll
    A llvm/test/CodeGen/SPIRV/pointers/two-bitcast-or-param-users.ll
    R llvm/test/CodeGen/SPIRV/pointers/two-bitcast-users.ll
    M llvm/test/CodeGen/SPIRV/pointers/two-subsequent-bitcasts.ll
    M llvm/test/CodeGen/SPIRV/sitofp-with-bool.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpenCL/atomic_cmpxchg.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpenCL/atomic_legacy.ll
    M llvm/test/CodeGen/SPIRV/transcoding/spirv-private-array-initialization.ll
    M llvm/test/CodeGen/SPIRV/uitofp-with-bool.ll

  Log Message:
  -----------
  [SPIR-V] Do not use OpenCL metadata for ptr element type resolution (#82678)

This pull request aims to remove any dependency on OpenCL/SPIR-V type
information in LLVM IR metadata. While, using metadata might simplify
and prettify the resulting SPIR-V output (and restore some of the
information missed in the transformation to opaque pointers), the
overall methodology for resolving kernel parameter types is highly
inefficient.

The high-level strategy is to assign kernel parameter types in this order:

1. Resolving the types using builtin function calls as mangled names
must contain type information or by looking up builtin definition in
SPIRVBuiltins.td. Then:

- Assigning the type temporarily using an intrinsic and later setting
the right SPIR-V type in SPIRVGlobalRegistry after IRTranslation
 - Inserting a bitcast
2. Defaulting to LLVM IR types (in case of pointers the generic i8*
type or types from byval/byref attributes)

In case of type incompatibility (e.g. parameter defined initially as
sampler_t and later used as image_t) the error will be found early on
before IRTranslation (in the SPIRVEmitIntrinsics pass).


  Commit: 354deba10a99136a3204dfa8128e53cd6e9558a7
      https://github.com/llvm/llvm-project/commit/354deba10a99136a3204dfa8128e53cd6e9558a7
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M flang/lib/Optimizer/Transforms/MemoryAllocation.cpp

  Log Message:
  -----------
  [flang] Fix use-after-free in `MemoryAllocation.cpp` (#83768)

`AllocaOpConversion` takes an `ArrayRef<Operation *>`, but the
underlying `SmallVector<Operation *>` was dead by the time the pattern
ran.


  Commit: a282109411596ef814aefeec735a2965d6aa4573
      https://github.com/llvm/llvm-project/commit/a282109411596ef814aefeec735a2965d6aa4573
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Transforms/DialectConversion.h
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/test/lib/Dialect/Test/TestPatterns.cpp

  Log Message:
  -----------
  [mlir][Transforms] Encapsulate dialect conversion options in `ConversionConfig` (#83754)

This commit adds a new `ConversionConfig` struct that allows users to
customize the dialect conversion. This configuration is similar to
`GreedyRewriteConfig` for the greedy pattern rewrite driver.

A few existing options are moved to this objects, simplifying the
dialect conversion API.

This is a re-upload of #82250. The Windows build breakage was fixed in #83768.

This reverts commit 60fbd6050107875956960c3ce35cf94b202d8675.


  Commit: 3a146d5720fb9857cebc17fbc2d42fb589647680
      https://github.com/llvm/llvm-project/commit/3a146d5720fb9857cebc17fbc2d42fb589647680
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    A llvm/test/tools/llvm-mca/AMDGPU/gfx940-mfma.s

  Log Message:
  -----------
  AMDGPU: Partially re-add scheduling test for gfx940

31295bbe83c3ea9d8a3372efe34342a299d1018a reverted the original patch.
Submit part of the test that happens to not hit the sanitizer error,
which covers the instructions I more need test coverage for.


  Commit: 8715f256911786520bb727ce067098d7082ac45c
      https://github.com/llvm/llvm-project/commit/8715f256911786520bb727ce067098d7082ac45c
  Author: Exile <2094247798 at qq.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

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

  Log Message:
  -----------
  [clang][StaticAnalyzer] fix function evalCall() typo in CheckerDocumentation (#83677)

```bool evalCall(const CallEvent &Call, CheckerContext &C)``` is corret form.

Co-authored-by: miaozhiyuan <miaozhiyuan at feysh.com>


  Commit: 63725ab1196ac50509ad382fc12c56f6d8b5d874
      https://github.com/llvm/llvm-project/commit/63725ab1196ac50509ad382fc12c56f6d8b5d874
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    A llvm/test/CodeGen/RISCV/rvv/pr83017.ll

  Log Message:
  -----------
  [RISCV] Add test for aliasing miscompile fixed by #83017. NFC

Previously we incorrectly removed the scalar load store pair here assuming it
was dead, when it actually aliased with the memset.  This showed up as a
miscompile on SPEC CPU 2017 when compiling with -mrvv-vector-bits, and was only
triggered by the changes in #75531.  This was fixed in #83017, but this patch
adds a test case for this specific miscompile.

For reference, the incorrect codegen was:

	vsetvli	a1, zero, e8, m4, ta, ma
	vmv.v.i	v8, 0
	vs4r.v	v8, (a0)
	addi	a1, a0, 80
	vsetivli	zero, 16, e8, m1, ta, ma
	vmv.v.i	v8, 0
	vs1r.v	v8, (a1)
	addi	a0, a0, 64
	vs1r.v	v8, (a0)


  Commit: c7fdd8c11e54585dc9d15d63de9742067e0506b9
      https://github.com/llvm/llvm-project/commit/c7fdd8c11e54585dc9d15d63de9742067e0506b9
  Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/include/llvm/ADT/GenericConvergenceVerifier.h
    M llvm/include/llvm/CodeGen/FunctionLoweringInfo.h
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    A llvm/include/llvm/CodeGen/MachineConvergenceVerifier.h
    M llvm/include/llvm/CodeGen/SelectionDAGISel.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/IR/GenericConvergenceVerifierImpl.h
    M llvm/include/llvm/Support/TargetOpcodes.def
    M llvm/include/llvm/Target/Target.td
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/lib/CodeGen/CMakeLists.txt
    A llvm/lib/CodeGen/MachineConvergenceVerifier.cpp
    M llvm/lib/CodeGen/MachineVerifier.cpp
    M llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
    M llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/lib/CodeGen/ValueTypes.cpp
    M llvm/lib/IR/ConvergenceVerifier.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    A llvm/test/CodeGen/AMDGPU/convergence-tokens.ll
    M llvm/test/CodeGen/AMDGPU/isel-amdgpu-cs-chain-cc.ll
    M llvm/test/CodeGen/AMDGPU/kernel-vgpr-spill-mubuf-with-voffset.ll
    M llvm/test/CodeGen/AMDGPU/need-fp-from-vgpr-spills.ll
    M llvm/test/CodeGen/AMDGPU/no-source-locations-in-prologue.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-spills-split-regalloc.ll
    M llvm/test/CodeGen/AMDGPU/stacksave_stackrestore.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-liverange-ir.ll
    M llvm/test/CodeGen/AMDGPU/vgpr_constant_to_sgpr.ll
    M llvm/test/CodeGen/AMDGPU/whole-wave-register-spill.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved.ll
    M llvm/test/CodeGen/PowerPC/fmf-propagation.ll
    A llvm/test/MachineVerifier/convergencectrl/AMDGPU/basic.mir
    A llvm/test/MachineVerifier/convergencectrl/AMDGPU/cycles.mir
    A llvm/test/MachineVerifier/convergencectrl/AMDGPU/lit.local.cfg
    A llvm/test/MachineVerifier/convergencectrl/AMDGPU/mixed2.mir
    A llvm/test/MachineVerifier/convergencectrl/AMDGPU/region-nesting.mir
    M llvm/test/TableGen/GlobalISelCombinerEmitter/builtins/match-table-replacerreg.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-imms.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-intrinsics.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-patfrag-root.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-variadics.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table.td

  Log Message:
  -----------
  Restore "Implement convergence control in MIR using SelectionDAG (#71785)"

Original commit 79889734b940356ab3381423c93ae06f22e772c9.
Perviously reverted in commit a2afcd5721869d1d03c8146bae3885b3385ba15e.

LLVM function calls carry convergence control tokens as operand bundles, where
the tokens themselves are produced by convergence control intrinsics. This patch
implements convergence control tokens in MIR as follows:

1. Introduce target-independent ISD opcodes and MIR opcodes for convergence
   control intrinsics.
2. Model token values as untyped virtual registers in MIR.

The change also introduces an additional ISD opcode CONVERGENCECTRL_GLUE and a
corresponding machine opcode with the same spelling. This glues the convergence
control token to SDNodes that represent calls to intrinsics. The glued token is
later translated to an implicit argument in the MIR.

The lowering of calls to user-defined functions is target-specific. On AMDGPU,
the convergence control operand bundle at a non-intrinsic call is translated to
an explicit argument to the SI_CALL_ISEL instruction. Post-selection adjustment
converts this explicit argument to an implicit argument on the SI_CALL
instruction.


  Commit: 3d14e85578ab4f91bfe74497c69ad5dec3007621
      https://github.com/llvm/llvm-project/commit/3d14e85578ab4f91bfe74497c69ad5dec3007621
  Author: Ben Shi <2283975856 at qq.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AVR/AVRInstrInfo.td
    M llvm/lib/Target/AVR/AVRRegisterInfo.td

  Log Message:
  -----------
  [AVR][NFC] Reformat target description files (#83755)


  Commit: a015f591766e4e3a3a23bbab7ca5dfec8f8deb18
      https://github.com/llvm/llvm-project/commit/a015f591766e4e3a3a23bbab7ca5dfec8f8deb18
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M flang/test/Fir/memory-allocation-opt.fir

  Log Message:
  -----------
  [flang] disable memory-allocation-opt.fir test on windows (#83535)

It is randomly failing in windows pre-merge checks and causing noise in
Github PRs.

Not clear why it is crashing on windows, issue opened:
https://github.com/llvm/llvm-project/issues/83534


  Commit: 408d4e131ef7b30c3bc419f5219f7ca20ca9ac1d
      https://github.com/llvm/llvm-project/commit/408d4e131ef7b30c3bc419f5219f7ca20ca9ac1d
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M flang/include/flang/Optimizer/CodeGen/CodeGen.h
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp

  Log Message:
  -----------
  [flang][NFC] Expose FIR to LLVM patterns (#83492)

The FIR dialect has been initiated before many interfaces have been
introduced to MLIR. This patch expose the FIR to LLVM patterns in a
`populateFIRToLLVMConversionPatterns` function. The idea is to be able
to add the `ConvertToLLVMPatternInterface`. This is not directly
possible since the FIR dialect does not currently use the table
infrastructure for its definition.

Follow up patches will move the FIR dialect definition to table gen and
then implement the interface.


  Commit: 96b2c3bde72ec6b681b03370f9650cfd03e66753
      https://github.com/llvm/llvm-project/commit/96b2c3bde72ec6b681b03370f9650cfd03e66753
  Author: Shengchen Kan <shengchen.kan at intel.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp
    A llvm/test/MC/X86/apx/long-instruction-err.s

  Log Message:
  -----------
  [X86][MC] Report error when the instruction length exceeds 15 bytes (#83708)

The instruction-size limit of 15 bytes still applies to APX
instructions.

Note that it is possible for an EVEX-encoded legacy instruction to reach
the 15-byte instruction length limit: 4
bytes of EVEX prefix + 1 byte of opcode + 1 byte of ModRM + 1 byte of
SIB + 4 bytes of displacement + 4 bytes of immediate = 15 bytes in
total, e.g.

```
addq    $184, -96, %rax   # encoding:
[0x62,0xf4,0xfc,0x18,0x81,0x04,0x25,0xa0,0xff,0xff,0xff,0xb8,0x00,0x00,0x00]
```

If we added a segment prefix like fs, the length would be 16.

In such a case, no additional (ASIZE or segment override) prefix can be
used.

To help users find this issue earlier, especially for assembler users,
we change
the internal compiler error to error in this patch.

Diagnostic is aligned with GAS
https://sourceware.org/bugzilla/show_bug.cgi?id=31323


  Commit: 7af4e8bcc354d2bd7e46ecf547172b1f19ddde3e
      https://github.com/llvm/llvm-project/commit/7af4e8bcc354d2bd7e46ecf547172b1f19ddde3e
  Author: Balázs Kéri <balazs.keri at ericsson.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/docs/analyzer/checkers.rst
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/test/Analysis/analyzer-config.c

  Log Message:
  -----------
  [clang][analyzer] Change default value of checker option in unix.StdCLibraryFunctions. (#80457)

Default value of checker option `ModelPOSIX` is changed to `true`.
Documentation is updated.


  Commit: db76af28f600a2607152096cf623560705f0215f
      https://github.com/llvm/llvm-project/commit/db76af28f600a2607152096cf623560705f0215f
  Author: Jacques Pienaar <jpienaar at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/lib/Query/Query.cpp

  Log Message:
  -----------
  [mlir-query] Fix ambiguous overload

gcc7 fix didn't work (but unfortunately didn't get a notification and
forgot to check), this should hopefully address the ambiguous overload.
I can't repro locally/trying to create docker image for testing.


  Commit: da5966e0c102f03ab853b906377814675db3623c
      https://github.com/llvm/llvm-project/commit/da5966e0c102f03ab853b906377814675db3623c
  Author: Balázs Kéri <balazs.keri at ericsson.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/docs/analyzer/checkers.rst
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/test/Analysis/analyzer-config.c

  Log Message:
  -----------
  Revert "[clang][analyzer] Change default value of checker option in unix.StdCLibraryFunctions. (#80457)"

This reverts commit 7af4e8bcc354d2bd7e46ecf547172b1f19ddde3e.


  Commit: aaf5c818b3b84a49f0c14879c141c7770f0fcf4b
      https://github.com/llvm/llvm-project/commit/aaf5c818b3b84a49f0c14879c141c7770f0fcf4b
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

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

  Log Message:
  -----------
  [mlir][Transforms][NFC] Simplify `BlockTypeConversionRewrite` (#83286)

When a block signature is converted during dialect conversion, a
`BlockTypeConversionRewrite` object is stored in the stack of rewrites.
Such an object represents multiple steps:
- Splitting the old block, i.e., creating a new block and moving all
operations over.
- Rewriting block arguments.
- Erasing the old block.

We have dedicated `IRRewrite` objects that represent "creating a block",
"moving an op" and "erasing a block". This commit reuses those rewrite
objects, so that there is less work to do in
`BlockTypeConversionRewrite::rollback` and
`BlockTypeConversionRewrite::commit`/`cleanup`.

Note: This change is in preparation of adding listener support to the
dialect conversion. The less work is done in a `commit` function, the
fewer notifications will have to be sent.


  Commit: 71c2a132b2713c568ef41b0d18f92c4fa8ee73a6
      https://github.com/llvm/llvm-project/commit/71c2a132b2713c568ef41b0d18f92c4fa8ee73a6
  Author: sinan <sinan.lin at linux.alibaba.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M bolt/lib/Core/Relocation.cpp
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    M bolt/unittests/Core/BinaryContext.cpp

  Log Message:
  -----------
  [BOLT] support AArch64 JUMP26 createRelocation (#83531)

Add R_AARCH64_JUMP26 implementation for createRelocation, which
could significantly reduce the number of failed scan-refs cases if we
perform bolt on a selective range of functions.


  Commit: 310a278812319a7cae86239c975738019b5d90a3
      https://github.com/llvm/llvm-project/commit/310a278812319a7cae86239c975738019b5d90a3
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

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

  Log Message:
  -----------
  [mlir][Transforms][NFC] Simplify handling of erased IR (#83423)

The dialect conversion uses a `SingleEraseRewriter` to ensure that an
op/block is not erased twice. This can happen during the "commit" phase
when an unresolved materialization is inserted into a block and the
enclosing op is erased by the user. In that case, the unresolved
materialization should not be erased a second time later in the "commit"
phase.

This problem cannot happen during "rollback", so ops/block can be erased
directly without using the rewriter. With this change, the
`SingleEraseRewriter` is used only during "commit"/"cleanup". At that
point, the dialect conversion is guaranteed to succeed and no rollback
can happen. Therefore, it is not necessary to store the number of erased
IR objects (because we will never "reset" the rewriter to previous a
previous state).


  Commit: c6565f22bedc5074dd2b47f62ea6569ca9906c94
      https://github.com/llvm/llvm-project/commit/c6565f22bedc5074dd2b47f62ea6569ca9906c94
  Author: Ingo Müller <ingomueller at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

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

  Log Message:
  -----------
  [mlir][bazel] Remove defines of obsolete MLIR_GPU_TO_CUBIN_PASS_ENABLE. (#83006)

This macro is obsolete since the landing of #82486 but was forgotten to
be removed from the BUILD files.


  Commit: 5dc9e87c8cae7842edcaa4dd01308873109208da
      https://github.com/llvm/llvm-project/commit/5dc9e87c8cae7842edcaa4dd01308873109208da
  Author: NagyDonat <donat.nagy at ericsson.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

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

  Log Message:
  -----------
   [analyzer] Improve some comments in ArrayBoundCheckerV2 (NFC) (#83545)

This comment-only change fixes a typo, clarifies some comments and
includes some thoughts about the difficulties in resolving a certain
FIXME.


  Commit: ded5de11faca916e0434df2e43653559d564c2df
      https://github.com/llvm/llvm-project/commit/ded5de11faca916e0434df2e43653559d564c2df
  Author: Dani <daniel.kiss at arm.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/include/llvm/IR/AutoUpgrade.h
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/Linker/IRMover.cpp
    M llvm/test/LTO/AArch64/link-branch-target-enforcement.ll
    A llvm/test/LTO/AArch64/link-sign-return-address.ll
    M llvm/test/Linker/link-arm-and-thumb.ll

  Log Message:
  -----------
  [llvm][AArch64] Autoupgrade function attributes from Module attributes. (#82763)

sign-return-address and similar module attributes should be propagated to
the function level before got merged because module flags may contradict and
this information is not recoverable.
Generated code will match with the normal linking flow.

Refactored version of  (#80640).
Run the attribute copy only during IRMove.


  Commit: f7d4236adf8e0865e734216626c378345f673ca5
      https://github.com/llvm/llvm-project/commit/f7d4236adf8e0865e734216626c378345f673ca5
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libc/src/__support/FPUtil/ManipulationFunctions.h
    M libc/src/__support/FPUtil/NormalFloat.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/sqrt.h
    M libc/src/__support/float_to_string.h
    M libc/src/__support/macros/properties/types.h
    M libc/src/__support/str_to_float.h
    M libc/test/src/__support/FPUtil/fpbits_test.cpp
    M libc/test/src/__support/str_to_long_double_test.cpp
    M libc/test/src/math/smoke/nanl_test.cpp
    M libc/test/src/stdio/sprintf_test.cpp
    M libc/test/src/stdio/sscanf_test.cpp
    M libc/test/src/stdlib/strtold_test.cpp

  Log Message:
  -----------
  [libc][NFC] Rename `LIBC_LONG_DOUBLE_IS_` macros (#83399)

Umbrella bug #83182


  Commit: 982e9022ca4abaad58c693d2b0aba0e908ee2d39
      https://github.com/llvm/llvm-project/commit/982e9022ca4abaad58c693d2b0aba0e908ee2d39
  Author: Mirko Brkušanin <Mirko.Brkusanin at amd.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-singlethread.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-volatile.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-wavefront.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-workgroup.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-singlethread.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-volatile.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-wavefront.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-workgroup.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-singlethread.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-volatile.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-wavefront.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-workgroup.ll

  Log Message:
  -----------
  [AMDGPU] Add GFX12 memory legalizer tests (#83814)


  Commit: cad6ad2759a782c48193f83886488dacc9f330e3
      https://github.com/llvm/llvm-project/commit/cad6ad2759a782c48193f83886488dacc9f330e3
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/test/Transforms/Inline/X86/call-abi-compatibility.ll

  Log Message:
  -----------
  [Inline] Add test for #67054 (NFC)


  Commit: 540d255167742b6464a01f052d31c704fc4dd5aa
      https://github.com/llvm/llvm-project/commit/540d255167742b6464a01f052d31c704fc4dd5aa
  Author: Vyacheslav Levytskyy <89994100+VyacheslavLevytskyy at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/CMakeLists.txt
    M llvm/lib/Target/SPIRV/SPIRV.h
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
    A llvm/lib/Target/SPIRV/SPIRVPostLegalizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVTargetMachine.cpp
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/add.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/and.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fadd.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fmax.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fmaximum.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fmin.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fminimum.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fmul.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/mul.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/or.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/smax.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/smin.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/umax.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/umin.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/xor.ll

  Log Message:
  -----------
  [SPIRV] Add vector reduction instructions (#82786)

This PR is to add vector reduction instructions according to
https://llvm.org/docs/GlobalISel/GenericOpcode.html#vector-reduction-operations
and widen in such a way a range of successful supported conversions,
covering new cases of vector reduction instructions which IRTranslator
is unable to resolve.

By legalizing vector reduction instructions we introduce a new
instruction patterns that should be addressed, including patterns that
are delegated to pre-legalize step. To address this problem, a new pass
is added that is to bring newly generated instructions after
legalization to an aspect required by instruction selection.

Expected overheads for existing cases is minimal, because a new pass is
working only with newly introduced instructions, otherwise it's just a
additional code traverse without any actions.


  Commit: ecc3bdaae14a02acc879c018e21d58a83329dc6e
      https://github.com/llvm/llvm-project/commit/ecc3bdaae14a02acc879c018e21d58a83329dc6e
  Author: Vyacheslav Levytskyy <89994100+VyacheslavLevytskyy at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
    A llvm/test/CodeGen/SPIRV/bitcast.ll

  Log Message:
  -----------
  [SPIR-V] Fix bitcast legalization/instruction selection in SPIR-V Backend (#83139)

This PR is to fix a way how SPIR-V Backend describes legality of
OpBitcast instruction and how it is validated on a step of instruction
selection. Instead of checking a size of virtual registers (that makes
no sense due to lack of guarantee of direct relations between size of
virtual register and bit width associated with the type size), this PR
allows to legalize OpBitcast without size check and postpones validation
to the instruction selection step.

As an example, let's consider the next example that was copied as is
from a bigger test suite:

```
  %355:id(s16) = G_BITCAST %301:id(s32)
  %303:id(s16) = ASSIGN_TYPE %355:id(s16), %349:type(s32)
  %644:fid(s32) = G_FMUL %645:fid, %646:fid
  %301:id(s32) = ASSIGN_TYPE %644:fid(s32), %40:type(s32)
```

Without the PR this leads to a crash with complains to an illegal
bitcast, because %355 is s16 and %301 is s32. However, we must check not
virtual registers in this case, but types of %355 and %301, i.e.,
%349:type(s32) and %40:type(s32), which are perfectly well compatible in
a sense of OpBitcast in this case.

In a test case that is a part of this PR OpBitcast is legal, being
applied for `OpTypeInt 16` and `OpTypeFloat 16`, but would not be
legalized without this PR due to virtual registers defined as having
size 16 and 32.


  Commit: 67d5ba907789a187165b96d7862e3c67efdd7ac1
      https://github.com/llvm/llvm-project/commit/67d5ba907789a187165b96d7862e3c67efdd7ac1
  Author: Vyacheslav Levytskyy <89994100+VyacheslavLevytskyy at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    M llvm/lib/Target/SPIRV/SPIRVSubtarget.cpp
    M llvm/test/CodeGen/SPIRV/exec_mode_float_control_khr.ll

  Log Message:
  -----------
  [SPIR-V] Add support for SPV_KHR_float_controls (#83418)

This PR is to add explicit support for SPV_KHR_float_controls
(https://github.com/KhronosGroup/SPIRV-Registry/blob/main/extensions/KHR/SPV_KHR_float_controls.asciidoc).
This extension is included into SPIR-V after version 1.4, but in case of
lower versions it is to be included explicitly and OpExtension must be
present in the module with `OpExtension "SPV_KHR_float_controls"`.

This PR fixes this issue and fixes the test case
test/CodeGen/SPIRV/exec_mode_float_control_khr.ll to account for a
version lower than 1.4.


  Commit: 5c54f729018cb04b3cd42fcbef019f3479c9f9e8
      https://github.com/llvm/llvm-project/commit/5c54f729018cb04b3cd42fcbef019f3479c9f9e8
  Author: Kareem Ergawy <kareem.ergawy at amd.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A mlir/test/Target/LLVMIR/openmp-firstprivate.mlir

  Log Message:
  -----------
   [MLIR][OpenMP] Extend omp.private materialization support: `firstprivate` (#82164)

Extends current support for delayed privatization during translation to
LLVM IR. This adds support for one-block `firstprivate` `omp.private`
ops.


  Commit: eaf0d82529f30fd53b453886676821d67ccfe9af
      https://github.com/llvm/llvm-project/commit/eaf0d82529f30fd53b453886676821d67ccfe9af
  Author: Niwin Anto <niwinantop at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
    M llvm/test/Transforms/LoopVectorize/no-fold-tail-by-masking-iv-external-uses.ll

  Log Message:
  -----------
  [LV] Disable fold tail by masking when IV is used outside (#81609)

When induction variable are used outside the loop body, tail folding
by masking mis-compiles, because for users outside of the loop the
final value of the induction is computed separately from the vector
loop.

Fixes https://github.com/llvm/llvm-project/issues/76069
Fixes https://github.com/llvm/llvm-project/issues/51677


  Commit: 8f30b62395ff9a41fd66ef0f3a98bceffa0bf121
      https://github.com/llvm/llvm-project/commit/8f30b62395ff9a41fd66ef0f3a98bceffa0bf121
  Author: Vyacheslav Levytskyy <89994100+VyacheslavLevytskyy at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
    M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    M llvm/lib/Target/SPIRV/SPIRVSubtarget.cpp
    M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_bfloat16_conversion/bfloat16-conv-negative1.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_bfloat16_conversion/bfloat16-conv-negative2.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_bfloat16_conversion/bfloat16-conv-negative3.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_bfloat16_conversion/bfloat16-conv-negative4.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_bfloat16_conversion/bfloat16-conv.ll

  Log Message:
  -----------
  [SPIR-V] Add support for the SPIR-V extension SPV_INTEL_bfloat16_conversion (#83443)

This PR is to add support for the SPIR-V extension
SPV_INTEL_bfloat16_conversion
(https://github.com/KhronosGroup/SPIRV-Registry/blob/main/extensions/INTEL/SPV_INTEL_bfloat16_conversion.asciidoc)
and OpenCL extension cl_intel_bfloat16_conversions
(https://registry.khronos.org/OpenCL/extensions/intel/cl_intel_bfloat16_conversions.html).


  Commit: 00e4a4197137410129d4725ffb82bae9ce44bdde
      https://github.com/llvm/llvm-project/commit/00e4a4197137410129d4725ffb82bae9ce44bdde
  Author: James Westwood <james.westwood at arm.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp
    M llvm/lib/Target/ARM/ARMFrameLowering.cpp
    M llvm/lib/Target/ARM/ARMSubtarget.cpp
    M llvm/lib/Target/ARM/ARMSubtarget.h
    M llvm/lib/Target/ARM/Thumb1FrameLowering.cpp
    A llvm/test/CodeGen/Thumb2/pacbti-m-frame-chain.ll

  Log Message:
  -----------
  [ARM] R11 not pushed adjacent to link register with PAC-M and AAPCS frame chain fix (#82801)

When code for M class architecture was compiled with AAPCS and PAC
enabled, the frame pointer, r11, was not pushed to the stack adjacent to
the link register. Due to PAC being enabled, r12 was placed between r11
and lr. This patch fixes this by adding an extra case to the already
existing code that splits the GPR push in two when R11 is the frame
pointer and certain paremeters are met. The differential revision for
this previous change can be found here:
https://reviews.llvm.org/D125649. This now ensures that r11 and lr are
pushed in a separate push instruction to the other GPRs when PAC and
AAPCS are enabled, meaning the frame pointer and link register are now
pushed onto the stack adjacent to each other.


  Commit: 7d55a3ba92368be55b392c20d623fde6ac82d86d
      https://github.com/llvm/llvm-project/commit/7d55a3ba92368be55b392c20d623fde6ac82d86d
  Author: cor3ntin <corentinjabot at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/docs/conf.py
    M flang/docs/conf.py
    M llvm/docs/conf.py

  Log Message:
  -----------
  [Docs] Allow building man pages without myst_parser (#82402)

The man pages do not depend on the doc present in markdown files, so
they can be built without myst_parser.
Doing so might allow llvm distributions to have less development
dependencies.

As we do not have the ennvironment to test these configuration, this
capability is provided on a best-effort basis.

This restores a capability accidentally lost in #65664.


  Commit: c089fa5a729e217d0c0d4647656386dac1a1b135
      https://github.com/llvm/llvm-project/commit/c089fa5a729e217d0c0d4647656386dac1a1b135
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

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

  Log Message:
  -----------
  [clang][Interp] Fix assertion in InitElem{,Pop} ops

... when the pointer is an unknown size array.


  Commit: e4882d83d77f9d6a5198ecb7faabd5bf2ce4b730
      https://github.com/llvm/llvm-project/commit/e4882d83d77f9d6a5198ecb7faabd5bf2ce4b730
  Author: Sirraide <aeternalmail at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/Decl.cpp
    A clang/test/Layout/dump-complete-invalid.cpp
    M clang/test/Layout/dump-complete.cpp

  Log Message:
  -----------
  [Clang] [Sema] Do not crash on dependent or invalid record decls when `-fdump-record-layouts-complete` is passed (#83688)

We no longer try to compute and dump the layout of types in cases where that isn’t possible.

This fixes #83684 and #83671.


  Commit: 906580bad3a68e3877f4ff7ac2b7fc1b7ee84fd5
      https://github.com/llvm/llvm-project/commit/906580bad3a68e3877f4ff7ac2b7fc1b7ee84fd5
  Author: Qiu Chaofan <qiucofan at cn.ibm.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/test/CodeGen/PowerPC/builtins-ppc-xlcompat-rotate.c
    M llvm/include/llvm/IR/IntrinsicsPowerPC.td
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/test/CodeGen/PowerPC/rldimi.ll
    M llvm/test/CodeGen/PowerPC/rlwimi.ll
    M llvm/test/CodeGen/PowerPC/rlwinm.ll

  Log Message:
  -----------
  [PowerPC] Add intrinsics for rldimi/rlwimi/rlwnm (#82968)

These builtins are already there in Clang, however current codegen may
produce suboptimal results due to their complex behavior. Implement them
as intrinsics to ensure expected instructions are emitted.


  Commit: 6b62a9135a28bd001263e5a9db08d4cff1123126
      https://github.com/llvm/llvm-project/commit/6b62a9135a28bd001263e5a9db08d4cff1123126
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/include/llvm/IR/Instructions.h
    M llvm/include/llvm/Transforms/Utils/Local.h
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/Transforms/CFGuard/CFGuard.cpp
    M llvm/lib/Transforms/Scalar/Reg2Mem.cpp
    M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
    M llvm/lib/Transforms/Utils/BreakCriticalEdges.cpp
    M llvm/lib/Transforms/Utils/CallPromotionUtils.cpp
    M llvm/lib/Transforms/Utils/CanonicalizeFreezeInLoops.cpp
    M llvm/lib/Transforms/Utils/CodeExtractor.cpp
    M llvm/lib/Transforms/Utils/DemoteRegToStack.cpp
    M llvm/lib/Transforms/Utils/EntryExitInstrumenter.cpp
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    M llvm/lib/Transforms/Utils/Local.cpp
    M llvm/lib/Transforms/Utils/LoopConstrainer.cpp
    M llvm/lib/Transforms/Utils/LoopRotationUtils.cpp
    M llvm/lib/Transforms/Utils/LoopSimplify.cpp
    M llvm/lib/Transforms/Utils/LoopUnroll.cpp
    M llvm/lib/Transforms/Utils/LoopUnrollAndJam.cpp
    M llvm/lib/Transforms/Utils/LowerGlobalDtors.cpp
    M llvm/lib/Transforms/Utils/LowerInvoke.cpp
    M llvm/lib/Transforms/Utils/LowerMemIntrinsics.cpp
    M llvm/lib/Transforms/Utils/LowerSwitch.cpp
    M llvm/lib/Transforms/Utils/MatrixUtils.cpp
    M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
    M llvm/lib/Transforms/Utils/SCCPSolver.cpp
    M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Utils/SimplifyIndVar.cpp
    M llvm/lib/Transforms/Utils/StripGCRelocates.cpp
    M llvm/lib/Transforms/Utils/UnifyLoopExits.cpp
    M llvm/tools/bugpoint/Miscompilation.cpp
    M llvm/unittests/IR/InstructionsTest.cpp

  Log Message:
  -----------
  [RemoveDIs] Reapply 3fda50d3915, insert instructions using iterators

I'd reverted this in 6c7805d5d1 after a bad stage. Original commit
messsage follows:

[NFC][RemoveDIs] Bulk update utilities to insert with iterators

As part of the RemoveDIs project we need LLVM to insert instructions using
iterators wherever possible, so that the iterators can carry a bit of
debug-info. This commit implements some of that by updating the contents of
llvm/lib/Transforms/Utils to always use iterator-versions of instruction
constructors.

There are two general flavours of update:
 * Almost all call-sites just call getIterator on an instruction
 * Several make use of an existing iterator (scenarios where the code is
   actually significant for debug-info)
The underlying logic is that any call to getFirstInsertionPt or similar
APIs that identify the start of a block need to have that iterator passed
directly to the insertion function, without being converted to a bare
Instruction pointer along the way.

I've also switched DemotePHIToStack to take an optional iterator: it needs
to take an iterator, and having a no-insert-location behaviour appears to
be important. The constructors for ICmpInst and FCmpInst have been updated
too. They're the only instructions that take block _references_ rather than
pointers for certain calls, and a future patch is going to make use of
default-null block insertion locations.

All of this should be NFC.


  Commit: 6e36cebc17417f88e70b4e87c9f177036b1443f4
      https://github.com/llvm/llvm-project/commit/6e36cebc17417f88e70b4e87c9f177036b1443f4
  Author: cor3ntin <corentinjabot at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/docs/conf.py
    A clang/docs/ghlinks.py

  Log Message:
  -----------
  [Clang][Docs] Simpler syntax for Github links. (#82746)

Github links in release notes are often invalid rST, clutter the release
notes and are annoying to write.

This introduces a sphynx plugin that rewrites
 `#GH<NUMBER>` to a link to the corresponding issue.


  Commit: 530f0e64ec11327879c44f2fd55c7c28efdbaa2d
      https://github.com/llvm/llvm-project/commit/530f0e64ec11327879c44f2fd55c7c28efdbaa2d
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.h
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    M llvm/test/CodeGen/AMDGPU/immv216.ll
    M llvm/test/CodeGen/AMDGPU/inline-constraints.ll
    M llvm/test/CodeGen/AMDGPU/shrink-add-sub-constant.ll

  Log Message:
  -----------
  [AMDGPU] Replace `isInlinableLiteral16` with specific version (#81345)


  Commit: 46d7876957deb817b48a5fa8a854b5a47a6a0653
      https://github.com/llvm/llvm-project/commit/46d7876957deb817b48a5fa8a854b5a47a6a0653
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/examples/BrainF/BrainF.cpp
    M llvm/examples/Fibonacci/fibonacci.cpp

  Log Message:
  -----------
  Follow up to 6b62a9135a2, fix llvm-examples build

This is due to the {I,F}CmpInst constructor being normalised to take a
pointer to a block rather than a reference (unlike any other Instruction).


  Commit: d9ae4a63ca875f3569e7a0b41bcc7352e3133e34
      https://github.com/llvm/llvm-project/commit/d9ae4a63ca875f3569e7a0b41bcc7352e3133e34
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libc/src/__support/FPUtil/dyadic_float.h

  Log Message:
  -----------
  [libc][NFC] Fix typo in dyadic_float.h (#83846)


  Commit: 27ce5121ee875c337dd0f977b00afcb756977f62
      https://github.com/llvm/llvm-project/commit/27ce5121ee875c337dd0f977b00afcb756977f62
  Author: Mirko Brkušanin <Mirko.Brkusanin at amd.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-nontemporal.ll

  Log Message:
  -----------
  [AMDGPU] Fix setting nontemporal in memory legalizer (#83815)

Iterator MI can advance in insertWait() but we need original instruction
to set temporal hint. Just move it before handling volatile.


  Commit: b3c2c5a834b32fad1f24aad074d1b4cf719f69f5
      https://github.com/llvm/llvm-project/commit/b3c2c5a834b32fad1f24aad074d1b4cf719f69f5
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/include/llvm/IR/DebugProgramInstruction.h
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/DebugProgramInstruction.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/test/DebugInfo/print-non-instruction-debug-info.ll

  Log Message:
  -----------
  [RemoveDIs][DebugInfo] Verifier and printing fixes for DPLabel (#83242)

`DPLabel`, the RemoveDI version of `llvm.dbg.label`, was landed recently
at the same time the RemoveDIs IR printing and verifier patches were
landing. The patches were updated to not miscompile, but did not have
full-featured and correct support for DPLabel built in; this patch makes
the remaining set of changes to enable DPLabel support.


  Commit: 1e429ff1439e0b26f4299faa8a29ed1947743fa3
      https://github.com/llvm/llvm-project/commit/1e429ff1439e0b26f4299faa8a29ed1947743fa3
  Author: cor3ntin <corentinjabot at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst

  Log Message:
  -----------
  [Clang][Docs] Fix issue number

Fix typo introduced by 6e36cebc17417f88e70b4e87c9f177036b1443f4


  Commit: c1d8d0aa156f651ee48414fa002e9608d6998763
      https://github.com/llvm/llvm-project/commit/c1d8d0aa156f651ee48414fa002e9608d6998763
  Author: Krystian Stasiowski <sdkrystian at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Sema/Scope.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/Scope.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/test/CXX/temp/temp.res/temp.local/p6.cpp

  Log Message:
  -----------
  Reapply "[Clang][Sema] Diagnose function/variable templates that shadow their own template parameters (#78274)" (#79683)

Reapplies #78274 with the addition of a default-error warning
(`strict-primary-template-shadow`) that is issued for instances of
shadowing which were previously accepted prior to this patch.

I couldn't find an established convention for naming diagnostics related
to compatibility with previous versions of clang, so I just used the
prefix `ext_compat_`.


  Commit: bbeb946652f2830b3211dcd8c6836bce4dbdd188
      https://github.com/llvm/llvm-project/commit/bbeb946652f2830b3211dcd8c6836bce4dbdd188
  Author: Balázs Kéri <balazs.keri at ericsson.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/docs/analyzer/checkers.rst
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/test/Analysis/analyzer-config.c
    M clang/test/Analysis/std-c-library-functions.c

  Log Message:
  -----------
  [clang][analyzer] Change value of checker option in unix.StdCLibraryFunctions (second try). (#80457)

Default value of checker option `ModelPOSIX` is changed to `true`.
Documentation is updated.

This is a re-apply of commit 7af4e8bcc354d2bd7e46ecf547172b1f19ddde3e
that was reverted because a test failure (this is fixed now).


  Commit: 52a460f9d4640ddc04e65161c78958bdabaae2b2
      https://github.com/llvm/llvm-project/commit/52a460f9d4640ddc04e65161c78958bdabaae2b2
  Author: NagyDonat <donat.nagy at ericsson.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallDescription.h
    M clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
    M clang/lib/StaticAnalyzer/Core/CallDescription.cpp
    M clang/unittests/StaticAnalyzer/CallDescriptionTest.cpp

  Log Message:
  -----------
  [analyzer] Refactor CallDescription match mode (NFC) (#83432)

The class `CallDescription` is used to define patterns that are used for
matching `CallEvent`s. For example, a
`CallDescription{{"std", "find_if"}, 3}`
matches a call to `std::find_if` with 3 arguments.

However, these patterns are somewhat fuzzy, so this pattern could also
match something like `std::__1::find_if` (with an additional namespace
layer), or, unfortunately, a `CallDescription` for the well-known
function `free()` can match a C++ method named `free()`:
https://github.com/llvm/llvm-project/issues/81597

To prevent this kind of ambiguity this commit introduces the enum
`CallDescription::Mode` which can limit the pattern matching to
non-method function calls (or method calls etc.). After this NFC change,
one or more follow-up commits will apply the right pattern matching
modes in the ~30 checkers that use `CallDescription`s.

Note that `CallDescription` previously had a `Flags` field which had
only two supported values:
 - `CDF_None` was the default "match anything" mode,
 - `CDF_MaybeBuiltin` was a "match only C library functions and accept
some inexact matches" mode.
This commit preserves `CDF_MaybeBuiltin` under the more descriptive
name `CallDescription::Mode::CLibrary` (or `CDM::CLibrary`).

Instead of this "Flags" model I'm switching to a plain enumeration
becasue I don't think that there is a natural usecase to combine the
different matching modes. (Except for the default "match anything" mode,
which is currently kept for compatibility, but will be phased out in the
follow-up commits.)


  Commit: 07f8efa22e0d0254e4d6c696f07256bfe514038e
      https://github.com/llvm/llvm-project/commit/07f8efa22e0d0254e4d6c696f07256bfe514038e
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libc/include/llvm-libc-types/float128.h
    M libc/src/__support/macros/properties/types.h

  Log Message:
  -----------
  [libc][NFC] Don't expose how `float16` and `float128` types are provided (#83818)

Umbrella bug #83182


  Commit: c54064de80e93494d1d44550b56ce8f2f3cf9c4b
      https://github.com/llvm/llvm-project/commit/c54064de80e93494d1d44550b56ce8f2f3cf9c4b
  Author: Pranav Bhandarkar <pranav.bhandarkar at amd.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td

  Log Message:
  -----------
  [mlir][OpenMP][NFC] - Minor fix in OpenMP ops documentation (#83598)

This patch is a minor formatting fix in the OpenMP ops documentation
wherein the examples section in ``omp.private`` was breaking out into a
top level list item.


  Commit: f407f2df2ced195264d1a81df84143dc87c0cd24
      https://github.com/llvm/llvm-project/commit/f407f2df2ced195264d1a81df84143dc87c0cd24
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/test/tools/llvm-mca/AMDGPU/gfx940-mfma.s

  Log Message:
  -----------
  AMDGPU: Test a few more cycle counts for mfma ops


  Commit: 13a78fd1ac886b3119574bbffb327489f335e713
      https://github.com/llvm/llvm-project/commit/13a78fd1ac886b3119574bbffb327489f335e713
  Author: Tuan Chuong Goh <chuong.goh at arm.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64PostLegalizerLowering.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/legalize-select.mir
    M llvm/test/CodeGen/AArch64/shufflevector.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Re-commit Legalize G_SHUFFLE_VECTOR for Odd-Sized Vectors (#83038)

Legalize smaller/larger than legal vectors with i8 and i16 element sizes.
Vectors with elements smaller than i8 will get widened to i8 elements.


  Commit: 89827863a3a65947e1665b436ca8dd1fbdb042fb
      https://github.com/llvm/llvm-project/commit/89827863a3a65947e1665b436ca8dd1fbdb042fb
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

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

  Log Message:
  -----------
  [SLP][NFC]Make canVectorizeLoads member of BoUpSLP class, NFC.


  Commit: d0521484c854adf082936824c99f9db101363cb8
      https://github.com/llvm/llvm-project/commit/d0521484c854adf082936824c99f9db101363cb8
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libcxx/utils/libcxx/test/format.py

  Log Message:
  -----------
  [libc++] Remove leftover .fail.cpp matcher in Lit test format (#83583)

This should have been removed in 8dcb8ea75cef, which removed support for
.fail.cpp tests in the libc++ test suite.


  Commit: f010b1bef4dda2c7082cbb41dbabf1f149cce306
      https://github.com/llvm/llvm-project/commit/f010b1bef4dda2c7082cbb41dbabf1f149cce306
  Author: Mitch Phillips <mitchp at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/include/llvm/ADT/GenericConvergenceVerifier.h
    M llvm/include/llvm/CodeGen/FunctionLoweringInfo.h
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    R llvm/include/llvm/CodeGen/MachineConvergenceVerifier.h
    M llvm/include/llvm/CodeGen/SelectionDAGISel.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/IR/GenericConvergenceVerifierImpl.h
    M llvm/include/llvm/Support/TargetOpcodes.def
    M llvm/include/llvm/Target/Target.td
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/lib/CodeGen/CMakeLists.txt
    R llvm/lib/CodeGen/MachineConvergenceVerifier.cpp
    M llvm/lib/CodeGen/MachineVerifier.cpp
    M llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
    M llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/lib/CodeGen/ValueTypes.cpp
    M llvm/lib/IR/ConvergenceVerifier.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    R llvm/test/CodeGen/AMDGPU/convergence-tokens.ll
    M llvm/test/CodeGen/AMDGPU/isel-amdgpu-cs-chain-cc.ll
    M llvm/test/CodeGen/AMDGPU/kernel-vgpr-spill-mubuf-with-voffset.ll
    M llvm/test/CodeGen/AMDGPU/need-fp-from-vgpr-spills.ll
    M llvm/test/CodeGen/AMDGPU/no-source-locations-in-prologue.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-spills-split-regalloc.ll
    M llvm/test/CodeGen/AMDGPU/stacksave_stackrestore.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-liverange-ir.ll
    M llvm/test/CodeGen/AMDGPU/vgpr_constant_to_sgpr.ll
    M llvm/test/CodeGen/AMDGPU/whole-wave-register-spill.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved.ll
    M llvm/test/CodeGen/PowerPC/fmf-propagation.ll
    R llvm/test/MachineVerifier/convergencectrl/AMDGPU/basic.mir
    R llvm/test/MachineVerifier/convergencectrl/AMDGPU/cycles.mir
    R llvm/test/MachineVerifier/convergencectrl/AMDGPU/lit.local.cfg
    R llvm/test/MachineVerifier/convergencectrl/AMDGPU/mixed2.mir
    R llvm/test/MachineVerifier/convergencectrl/AMDGPU/region-nesting.mir
    M llvm/test/TableGen/GlobalISelCombinerEmitter/builtins/match-table-replacerreg.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-imms.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-intrinsics.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-patfrag-root.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-variadics.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table.td

  Log Message:
  -----------
  Revert "Restore "Implement convergence control in MIR using SelectionDAG (#71785)""

This reverts commit c7fdd8c11e54585dc9d15d63de9742067e0506b9.

Reason: Broke the sanitizer buildbots. See the comments at
https://github.com/llvm/llvm-project/pull/71785
for more information.


  Commit: 89e41e2965b2b38a4aa1ad7757684566679ef762
      https://github.com/llvm/llvm-project/commit/89e41e2965b2b38a4aa1ad7757684566679ef762
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/lib/AST/Interp/InterpBuiltin.cpp
    M clang/test/AST/Interp/complex.cpp

  Log Message:
  -----------
  [clang][Interp] Implement __builtin_complex


  Commit: 03f852f704c343abc4a36db194027461b7b35afa
      https://github.com/llvm/llvm-project/commit/03f852f704c343abc4a36db194027461b7b35afa
  Author: Graham Hunter <graham.hunter at arm.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/AArch64/sve-intrinsics.ll
    M llvm/test/Transforms/LoopUnroll/AArch64/scalable-vec-ins-ext.ll

  Log Message:
  -----------
  [AArch64] Improve cost model for legal subvec insert/extract (#81135)

Currently we model subvector inserts and extracts as shuffles,
potentially going as far as scalarizing. If the types are legal then
they can just be simple zip/unzip operations, or possible even no-ops.
Change the cost to a relatively small one to ensure that simple loops
featuring such operations between fixed and scalable vector types that
are effectively the same at a given sve width can be unrolled and
further optimized.


  Commit: 2a65941a7964644930dcf97559f73f8e5b81738e
      https://github.com/llvm/llvm-project/commit/2a65941a7964644930dcf97559f73f8e5b81738e
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

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

  Log Message:
  -----------
  [gn] port 8300f30a9234


  Commit: cedb9704bda4f4f9622ba60a18135d70569d0582
      https://github.com/llvm/llvm-project/commit/cedb9704bda4f4f9622ba60a18135d70569d0582
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

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

  Log Message:
  -----------
  [VPlan] Verify CFG invariants first (NFCI).

Verifying CFG invariants of a block before verifying its contents allows
contents verification to rely on the CFG invariants (e.g. that there's a
vector loop region that can be retrieved).

This avoids extra checks in
https://github.com/llvm/llvm-project/pull/76172.


  Commit: c240aca7a8a71f7218724aeb6c040289b51057dc
      https://github.com/llvm/llvm-project/commit/c240aca7a8a71f7218724aeb6c040289b51057dc
  Author: Kazushi (Jam) Marukawa <marukawa at nec.com>
  Date:   2024-03-05 (Tue, 05 Mar 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 "Reland "[clang][modules] Print library module manifest path." (#82160)"

This reverts commit 0c89427b99f6f6d7c217c70ff880ca097340f9a4.


  Commit: de92615d68ff3ae206d5059f35a6e4ded8b38297
      https://github.com/llvm/llvm-project/commit/de92615d68ff3ae206d5059f35a6e4ded8b38297
  Author: Hongyu Chen <46539970+yugier at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/ExecutionEngine/CMakeLists.txt
    M llvm/lib/ExecutionEngine/IntelJITEvents/CMakeLists.txt
    M llvm/lib/ExecutionEngine/IntelJITEvents/IntelJITEventListener.cpp
    R llvm/lib/ExecutionEngine/IntelJITEvents/IntelJITEventsWrapper.h
    R llvm/lib/ExecutionEngine/IntelJITEvents/ittnotify_config.h
    R llvm/lib/ExecutionEngine/IntelJITEvents/ittnotify_types.h
    R llvm/lib/ExecutionEngine/IntelJITEvents/jitprofiling.c
    R llvm/lib/ExecutionEngine/IntelJITEvents/jitprofiling.h
    A llvm/lib/ExecutionEngine/IntelJITProfiling/CMakeLists.txt
    A llvm/lib/ExecutionEngine/IntelJITProfiling/IntelJITEventsWrapper.h
    A llvm/lib/ExecutionEngine/IntelJITProfiling/ittnotify_config.h
    A llvm/lib/ExecutionEngine/IntelJITProfiling/ittnotify_types.h
    A llvm/lib/ExecutionEngine/IntelJITProfiling/jitprofiling.c
    A llvm/lib/ExecutionEngine/IntelJITProfiling/jitprofiling.h
    M llvm/tools/llvm-jitlistener/llvm-jitlistener.cpp

  Log Message:
  -----------
  [ExecutionEngine] Move IntelJITEventsWrapper to its own library. NFC (#81825)

Split IntelJITEventsWrapper away from IntelJITEvents and rename it into
IntelJITProfiling.
NFC


  Commit: bc9c6c0c65e267a1a84e4eede81099d8ceb37558
      https://github.com/llvm/llvm-project/commit/bc9c6c0c65e267a1a84e4eede81099d8ceb37558
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/lib/AST/CMakeLists.txt
    M clang/lib/AST/Interp/ByteCodeEmitter.cpp
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    R clang/lib/AST/Interp/ByteCodeGenError.cpp
    R clang/lib/AST/Interp/ByteCodeGenError.h
    M clang/lib/AST/Interp/ByteCodeStmtGen.cpp
    M clang/lib/AST/Interp/Context.cpp
    M clang/lib/AST/Interp/Context.h
    M clang/lib/AST/Interp/EvalEmitter.cpp

  Log Message:
  -----------
  [clang][Interp][NFC] Remove ByteCodeGenError

Unused.


  Commit: 17efdad2296a2757813e4f11d0575ee6fb826e39
      https://github.com/llvm/llvm-project/commit/17efdad2296a2757813e4f11d0575ee6fb826e39
  Author: Hongyu Chen <46539970+yugier at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    A llvm/include/llvm/ExecutionEngine/Orc/Debugging/VTuneSupportPlugin.h
    A llvm/include/llvm/ExecutionEngine/Orc/TargetProcess/JITLoaderVTune.h
    M llvm/lib/ExecutionEngine/Orc/Debugging/CMakeLists.txt
    A llvm/lib/ExecutionEngine/Orc/Debugging/VTuneSupportPlugin.cpp
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/CMakeLists.txt
    A llvm/lib/ExecutionEngine/Orc/TargetProcess/JITLoaderVTune.cpp
    A llvm/test/ExecutionEngine/JITLink/x86-64/ELF_vtune.s
    M llvm/test/ExecutionEngine/JITLink/x86-64/lit.local.cfg
    M llvm/tools/llvm-jitlink/llvm-jitlink.cpp

  Log Message:
  -----------
  [ORC][JITLink] Add Intel VTune support to JITLink (#81826)

This patch adds two plugins: VTuneSupportPlugin.cpp and
JITLoaderVTune.cpp. The testing is done in a manner similar to
llvm-jitlistener. Currently, we only support the old version of Intel
VTune API.

This pull request is stacked on top of
https://github.com/llvm/llvm-project/pull/81825


  Commit: 57a720872128ea21e8ed22cdd9ae4c62154e6fb1
      https://github.com/llvm/llvm-project/commit/57a720872128ea21e8ed22cdd9ae4c62154e6fb1
  Author: ykhatav <yashasvi.khatavkar at intel.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

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

  Log Message:
  -----------
  Fix a use-after-move bug in DWARFVerifier constructor (#83621)

Resolve a use-after-move bug for the parameter "DumpOpts" in the
DWARFVerifier constructor.


  Commit: f83858f87c5d7a634af717f18a7a53ed5ddde3bd
      https://github.com/llvm/llvm-project/commit/f83858f87c5d7a634af717f18a7a53ed5ddde3bd
  Author: Mingming Liu <mingmingl at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

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

  Log Message:
  -----------
  [nfc][InstrProfiling]Compute a boolean state as a constant and use it everywhere (#83756)


  Commit: af9c5ca820499b932e23d7644e90ea5ff04c3c5f
      https://github.com/llvm/llvm-project/commit/af9c5ca820499b932e23d7644e90ea5ff04c3c5f
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

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

  Log Message:
  -----------
  [gn build] Port 17efdad2296a


  Commit: e6dff54f362f9bcae2a3dd8b0bf7aa6fc9f11017
      https://github.com/llvm/llvm-project/commit/e6dff54f362f9bcae2a3dd8b0bf7aa6fc9f11017
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

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

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


  Commit: 252f3c98db1383ee0e1f25020d488ffb7b4ac392
      https://github.com/llvm/llvm-project/commit/252f3c98db1383ee0e1f25020d488ffb7b4ac392
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    A lldb/test/API/lang/cpp/gmodules/pch-chain/Makefile
    A lldb/test/API/lang/cpp/gmodules/pch-chain/TestPchChain.py
    A lldb/test/API/lang/cpp/gmodules/pch-chain/base-pch.h
    A lldb/test/API/lang/cpp/gmodules/pch-chain/main.cpp
    A lldb/test/API/lang/cpp/gmodules/pch-chain/pch.h

  Log Message:
  -----------
  [lldb][test] Add test for chained PCH debugging (#83582)

Adds a test-case for debugging a program with a
pch chain, that is, the main executable depends
on a pch that itself included another pch.

Currently clang doesn't emit the sekeleton CUs
required for LLDB to track all types on the pch chain. Thus this test is
XFAILed for now.


  Commit: bd7bce2c8465e9cb36a823846a52c9f553502575
      https://github.com/llvm/llvm-project/commit/bd7bce2c8465e9cb36a823846a52c9f553502575
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Sema/DeclSpec.h
    M clang/include/clang/Sema/ParsedAttr.h
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Sema/ParsedAttr.cpp
    A clang/test/Parser/cxx-declarator-attribute-crash.cpp

  Log Message:
  -----------
  Fix null-deref thanks to an attribute on a global declarator chunk (#83611)

This was reported (sort of) in a PR: #77703. The problem is that a
declarator 'owns' an attributes allocation via an `AttributePool`.
However, this example tries to copy a DeclaratorChunk from one
Declarator to another, so when the temporary Declarator goes out of
scope, it deletes the attribute it has tried to pass on via the chunk.

This patch ensures that we copy the 'ownership' of the attribute
correctly, and adds an assert to catch any other casess where this
happens.

Additionally, this was put in as a bug report, so this
Fixes #83611


  Commit: 87e7140f72ba46330efb8d9110c2a4a1e6e94900
      https://github.com/llvm/llvm-project/commit/87e7140f72ba46330efb8d9110c2a4a1e6e94900
  Author: Mingming Liu <mingmingl at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

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

  Log Message:
  -----------
  [nfc][InstrProfiling]For comdat setting helper function, move comment closer to the code (#83757)


  Commit: 2e0693abbcf844c138adfa29fc70ea07681e373f
      https://github.com/llvm/llvm-project/commit/2e0693abbcf844c138adfa29fc70ea07681e373f
  Author: Aart Bik <39774503+aartbik at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/test/Integration/Dialect/SparseTensor/GPU/CUDA/sparse-gemm-lib.mlir
    M mlir/test/Integration/Dialect/SparseTensor/GPU/CUDA/sparse-matmul-lib.mlir
    M mlir/test/Integration/Dialect/SparseTensor/GPU/CUDA/sparse-sampled-matmul-lib.mlir
    M mlir/test/Integration/Dialect/SparseTensor/GPU/CUDA/sparse-sddmm-lib.mlir

  Log Message:
  -----------
  [mlir][sparse][gpu] migration to sparse_tensor.print (#83510)

Continuous efforts #83357 for our sparse CUDA tests


  Commit: 379e55ea40cbc5ae8b4a16d96236f6a88bd0a649
      https://github.com/llvm/llvm-project/commit/379e55ea40cbc5ae8b4a16d96236f6a88bd0a649
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst

  Log Message:
  -----------
  Fix release note bug reference from bd7bce2c8465e9cb


  Commit: ac783addc4dd5bda557cc07b90c08bab2d110ec3
      https://github.com/llvm/llvm-project/commit/ac783addc4dd5bda557cc07b90c08bab2d110ec3
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

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

  Log Message:
  -----------
  [LV] Use SmallVector::resize instead of push_back/emplace_back in a loop. NFC (#83696)

This should be more efficient since the vector can know how much
additional space to reserve before creating the new elements.


  Commit: 0097fd2b068e374b02571b391bd4a0a84e8ed3e2
      https://github.com/llvm/llvm-project/commit/0097fd2b068e374b02571b391bd4a0a84e8ed3e2
  Author: Félix-Antoine Constantin <60141446+felix642 at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/UnusedReturnValueCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/UnusedReturnValueCheck.h
    M clang-tools-extra/clang-tidy/hicpp/IgnoredRemoveResultCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/unused-return-value.rst
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/unused-return-value-custom.cpp

  Log Message:
  -----------
  [clang-tidy] bugprone-unused-return-value config now supports regexes (#82952)

The parameter `CheckedFunctions` now supports regexes

Fixes #63107


  Commit: 98418c27bc17946990e5980d56ef98ae82da8770
      https://github.com/llvm/llvm-project/commit/98418c27bc17946990e5980d56ef98ae82da8770
  Author: Jake Egan <Jake.egan at ibm.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libcxx/test/std/input.output/iostream.objects/narrow.stream.objects/cin.sh.cpp
    M libcxx/test/std/input.output/iostream.objects/wide.stream.objects/wcin-imbue.sh.cpp
    M libcxx/test/std/input.output/iostream.objects/wide.stream.objects/wcin.sh.cpp

  Log Message:
  -----------
  [libc++][AIX] Use input redirection instead of piping for cin tests (#83184)

When echo is used for piping, lit uses the system echo rather than the
builtin echo. The system echo on AIX doesn't support the `-n` option,
which causes these tests to fail. Use input redirection, so the builtin
echo can be used.


  Commit: 56754478e7184a68e88ccc578ffd31097da85d15
      https://github.com/llvm/llvm-project/commit/56754478e7184a68e88ccc578ffd31097da85d15
  Author: Kirill Stoimenov <kstoimenov at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    A llvm/test/Instrumentation/HWAddressSanitizer/pgo-opt-out-no-ps.ll
    A llvm/test/Instrumentation/HWAddressSanitizer/pgo-opt-out.ll

  Log Message:
  -----------
  Reapply "[HWASAN] Implement selective instrumentation based on profiling information (#83503)"

Added REQUIRES: asserts, which should fix the build problem.

This reverts commit f6f79d46e580b34b2c98bd9bda7ede3a38f43f77.


  Commit: c996023f9a288f12f97de8e1a2b8fbb28d2ed0c3
      https://github.com/llvm/llvm-project/commit/c996023f9a288f12f97de8e1a2b8fbb28d2ed0c3
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libc/config/baremetal/arm/headers.txt
    M libc/config/baremetal/riscv/headers.txt
    M libc/config/darwin/arm/headers.txt
    M libc/config/darwin/x86_64/headers.txt
    M libc/config/gpu/headers.txt
    M libc/config/linux/aarch64/headers.txt
    M libc/config/linux/arm/headers.txt
    M libc/config/linux/riscv/headers.txt
    M libc/config/linux/x86_64/headers.txt
    M libc/include/CMakeLists.txt
    M libc/include/llvm-libc-macros/CMakeLists.txt
    A libc/include/llvm-libc-macros/stdint-macros.h
    A libc/include/stdint.h.def
    M libc/spec/stdc.td
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc] Provide an implementation of the 'stdint.h' header (#83353)

Summary:
I've noticed one problem is that the user includes `stdint.h` the
compiler will do `#include_next <stdint.h>` potentially into a
conflicting implementation on systems with multiple headers installed.
The `clang` header is standards compliant and works with `clang` and
`gcc` which are both of our targets, so I simply copied it here. This
has the effect of including `stdint.h` on clang / LLVM libc behaving the
same as `-ffreestanding`.


  Commit: 32e2294b8abba6b70356aa37b65acf155506d457
      https://github.com/llvm/llvm-project/commit/32e2294b8abba6b70356aa37b65acf155506d457
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libc/src/__support/GPU/CMakeLists.txt

  Log Message:
  -----------
  [libc][NFC] Clean up GPU utilities directory after rework (#83692)

Summary:
This CMake can be cleaned up now that the AMDGPU and NVPTX builds do not
share a CMake invocation.


  Commit: 1da5db97cbf3451da05788b1d35b8a107a7f6a69
      https://github.com/llvm/llvm-project/commit/1da5db97cbf3451da05788b1d35b8a107a7f6a69
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M lldb/source/Symbol/Symtab.cpp
    M lldb/test/Shell/SymbolFile/Breakpad/symtab-sorted-by-size.test

  Log Message:
  -----------
  [lldb] Use sort-ordering for indexes when sorting by size (#83889)

Use sort-ordering for indexes when sorting by size. This addresses
Jason's post commit review feedback.


  Commit: 53a656d9a4032b842ad0c59489353e17daa54531
      https://github.com/llvm/llvm-project/commit/53a656d9a4032b842ad0c59489353e17daa54531
  Author: Alexander Richardson <alexrichardson at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/utils/not/not.cpp

  Log Message:
  -----------
  [utils/not] Disable coredumps when --crash is passed

We are expecting a crash, so it is unlikely that a coredump is going to
be particularly useful. For debugging the program can always be run without
the `not --crash` wrapper.

Reviewed By: jh7370

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


  Commit: 081882eb9ca63ae9582399beb8b76c1d135d7062
      https://github.com/llvm/llvm-project/commit/081882eb9ca63ae9582399beb8b76c1d135d7062
  Author: AtariDreams <83477269+AtariDreams at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/test/Transforms/InstCombine/maximum.ll
    M llvm/test/Transforms/InstCombine/maxnum.ll

  Log Message:
  -----------
  [InstCombine] Remove m_OneUse requirement for max, but not min (#81505)

If it is ever determined that min doesn't need one-use, then we can
remove the one-use requirement entirely.


  Commit: b32845cb94a81e6fd8b01a8631e3d276c9fc9e35
      https://github.com/llvm/llvm-project/commit/b32845cb94a81e6fd8b01a8631e3d276c9fc9e35
  Author: AMS21 <AMS21.github at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/UseAfterMoveCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/use-after-move.rst
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/use-after-move.cpp

  Log Message:
  -----------
  [clang-tidy] Let `bugprone-use-after-move` also handle calls to `std::forward` (#82673)

Add support for std::forward.

Fixes #82023


  Commit: 503075e4d4a9c1b3754b21ee9ec41f176e54fd83
      https://github.com/llvm/llvm-project/commit/503075e4d4a9c1b3754b21ee9ec41f176e54fd83
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M lldb/test/API/driver/quit_speed/TestQuitWithProcess.py
    M lldb/test/API/functionalities/progress_reporting/TestTrimmedProgressReporting.py
    M lldb/test/API/terminal/TestSTTYBeforeAndAfter.py

  Log Message:
  -----------
  [lldb][test][NFC] Narrow scope of `import pexpect`

We do not run `pexpect` based tests on Windows, but there are still cases where those tests run `import pexpect` outside of the scope where the test is skipped. By moving the import statement to a different scope, those tests can run even when `pexpect` truly isn't installed.

Tangentially related: TestSTTYBeforeAndAfter.py is using a manual `@expectedFailureAll` for windows instead of the common `@skipIfWindows`. If `pexepect` is generally expected to not be available, we should not bother running the test at all.


  Commit: a81a7b9962f093f603d3890822e253120e074d13
      https://github.com/llvm/llvm-project/commit/a81a7b9962f093f603d3890822e253120e074d13
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/utils/git/code-format-helper.py

  Log Message:
  -----------
  [Py Reformat] Exclude `third-party` in `code-format-helper.py` (#83872)

Follow-up from PR #83491. `Darker`'s configuration is ignored because of the way we invoke it - with an explicit list of files. We need to filter it in `code-format-helper.py`.


  Commit: a4951eca40c070e020aa5d2689c08177fbeb780d
      https://github.com/llvm/llvm-project/commit/a4951eca40c070e020aa5d2689c08177fbeb780d
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/test/CodeGen/X86/2006-04-27-ISelFoldingBug.ll
    M llvm/test/CodeGen/X86/2007-08-09-IllegalX86-64Asm.ll
    M llvm/test/CodeGen/X86/2007-12-18-LoadCSEBug.ll
    M llvm/test/CodeGen/X86/2008-02-18-TailMergingBug.ll
    M llvm/test/CodeGen/X86/avx-cmp.ll
    M llvm/test/CodeGen/X86/block-placement.ll
    M llvm/test/CodeGen/X86/div-rem-pair-recomposition-unsigned.ll
    M llvm/test/CodeGen/X86/inline-spiller-impdef-on-implicit-def-regression.ll
    M llvm/test/CodeGen/X86/movmsk-cmp.ll
    M llvm/test/CodeGen/X86/or-branch.ll
    M llvm/test/CodeGen/X86/peephole-na-phys-copy-folding.ll
    M llvm/test/CodeGen/X86/pr33747.ll
    M llvm/test/CodeGen/X86/pr37025.ll
    M llvm/test/CodeGen/X86/pr38795.ll
    M llvm/test/CodeGen/X86/setcc-logic.ll
    M llvm/test/CodeGen/X86/swifterror.ll
    M llvm/test/CodeGen/X86/tail-dup-merge-loop-headers.ll
    M llvm/test/CodeGen/X86/tail-opts.ll
    M llvm/test/CodeGen/X86/test-shrink-bug.ll
    M llvm/test/CodeGen/X86/x86-shrink-wrap-unwind.ll

  Log Message:
  -----------
  Recommit "[X86] Don't always separate conditions in `(br (and/or cond0, cond1))` into separate branches" (2nd Try)

Changes in Recommit:
    1) Fix non-determanism by using `SmallMapVector` instead of
       `SmallPtrSet`.
    2) Fix bug in dependency pruning where we discounted the actual
       `and/or` combining the two conditions. This lead to over pruning.

Closes #81689


  Commit: df5252165524fbcabbd7287a8d923b5139247114
      https://github.com/llvm/llvm-project/commit/df5252165524fbcabbd7287a8d923b5139247114
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/examples/ParallelJIT/ParallelJIT.cpp

  Log Message:
  -----------
  [RemoveDIs] Follow up to 6b62a9135a2, fix a ICmpInst constructor call

Seemingly I either missed this on a buildbot or otherwise didn't
cover this :(


  Commit: f32c6b28b84130dc77e0e69d6d3b692aec933280
      https://github.com/llvm/llvm-project/commit/f32c6b28b84130dc77e0e69d6d3b692aec933280
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M lldb/unittests/Process/ProcessEventDataTest.cpp

  Log Message:
  -----------
  [lldb/Test] Fix oversight in ProcessEventDataTest::SetUp (NFC) (#83895)

This patch addresses an oversight in `ProcessEventDataTest::SetUp`
unittest to ensure the Debugger is initialized properly.

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


  Commit: abe4677d9f8ab82f722f29dbf57952052accd70b
      https://github.com/llvm/llvm-project/commit/abe4677d9f8ab82f722f29dbf57952052accd70b
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    A llvm/test/Transforms/InstCombine/pr82877.ll

  Log Message:
  -----------
  [InstCombine] Fix infinite loop due to incorrect `DoesConsume` (#82973)

When a call to `getFreelyInvertedImpl` with a select/phi node fails,
`DoesConsume` should not be changed.

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


  Commit: 79e8f29ab06560d159389d940c35c563e0c8640e
      https://github.com/llvm/llvm-project/commit/79e8f29ab06560d159389d940c35c563e0c8640e
  Author: Alexander M <iammorjj at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M lldb/bindings/lua/CMakeLists.txt

  Log Message:
  -----------
  [lldb/lua] Fix Lua building on Windows (#83871)

Add `liblldb` dependency and use correct extension for compiled Lua
module.

Replace 'Python' with 'Lua' in install path name.

Fixes #55075.


  Commit: 0597644a6466ae9148b0b41cb8f95d5022e045c2
      https://github.com/llvm/llvm-project/commit/0597644a6466ae9148b0b41cb8f95d5022e045c2
  Author: Congcong Cai <congcongcai0907 at 163.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/test/Interfaces/TilingInterface/lower-to-loops-using-interface.mlir

  Log Message:
  -----------
  [mlir][transform] replace original op to loop ops (#83537)


  Commit: 930e7ff9aee24140e8c11f6527ba0e3e2208b55c
      https://github.com/llvm/llvm-project/commit/930e7ff9aee24140e8c11f6527ba0e3e2208b55c
  Author: David Majnemer <david.majnemer at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/f16-instructions.ll
    M llvm/test/CodeGen/AArch64/fabs.ll
    M llvm/test/CodeGen/AArch64/fcopysign.ll
    M llvm/test/CodeGen/AArch64/fneg.ll
    M llvm/test/CodeGen/AArch64/vector-fcopysign.ll

  Log Message:
  -----------
  [AArch64] Optimize abs, neg and copysign for fp16/bf16

We can use bitwise arithmetic to implement these, making them
considerably faster than legalization via promotion.


  Commit: 1c9125cdd5eb8f3e949313a57ff736d87b540546
      https://github.com/llvm/llvm-project/commit/1c9125cdd5eb8f3e949313a57ff736d87b540546
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/MIMGInstructions.td

  Log Message:
  -----------
  AMDGPU: Proper use of HasImageInsts in vimage inst definitions, NFC (#83884)

This work corrects a few inappropriate uses of HasImageInsts predicate
in vimage instruction definitions.

In MnemonicAlias for VIMAGE_Atomic_gfx12_Renamed, we also need
HasImageInsts to be in the "Requires" predicate list for the alias to
depend on whether or not the GPU has image instruction support.

For nested uses of "let OtherPredicates = ..." around vimage instruction
definitions, the inner assignment will override the outer one. This
makes the outermost "let OtherPredicates = [HasImageInsts]" unused when
we have an inner assignment. As a result, HasImageInsts is not actually
used for some vimage instructions. To resove this issue, we propogate
the predicates in an outer assignment into the inner one.

We should avoid using nested "let SubtargetPredicate = ...". However, we
can always put the predicate into OtherPtredicates list.


  Commit: 3b5965e633bf6f945436dc8ac33bbb37ace4acf1
      https://github.com/llvm/llvm-project/commit/3b5965e633bf6f945436dc8ac33bbb37ace4acf1
  Author: PeterChou1 <peter.chou at mail.utoronto.ca>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/docs/ClangFormatStyleOptions.rst
    M clang/docs/tools/dump_format_style.py
    M clang/include/clang/Format/Format.h

  Log Message:
  -----------
  [clang-format][doc] fix documentation for clang-format (#83415)

Fixes typo in documentation for clang-format 

Fixes #83207.


  Commit: 72cf95df2f69a1c023ef404298f3cce2e6b44d86
      https://github.com/llvm/llvm-project/commit/72cf95df2f69a1c023ef404298f3cce2e6b44d86
  Author: Michal Paszkowski <michal at paszkowski.org>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

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

  Log Message:
  -----------
  [SPIR-V] Fix warning -Wsometimes-uninitialized (#83901)


  Commit: 93e423f19fc5317ee208f77d8f36e677db124cc8
      https://github.com/llvm/llvm-project/commit/93e423f19fc5317ee208f77d8f36e677db124cc8
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libc/test/include/stdbit_test.cpp

  Log Message:
  -----------
  [libc][test] update constants used in stdbit test (#83893)

Either:
- I forgot my alphabet (that E comes before F).
- My juvenile inner brain finds unsigned literal constants with the sequence FU
  funny.

¿Por qué no los dos?


  Commit: be3eeea7beb7dc701554a67773669c91367e7a81
      https://github.com/llvm/llvm-project/commit/be3eeea7beb7dc701554a67773669c91367e7a81
  Author: David Majnemer <david.majnemer at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

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

  Log Message:
  -----------
  [AArch64] Use SHLLv4i16 to shift+widen BF16 to F32.


  Commit: bb97c992834a24632629dec4ec79ea7ffd1261fa
      https://github.com/llvm/llvm-project/commit/bb97c992834a24632629dec4ec79ea7ffd1261fa
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/lib/Parse/ParseOpenACC.cpp
    M clang/lib/Sema/SemaOpenACC.cpp
    M clang/test/ParserOpenACC/parse-clauses.c
    M clang/test/ParserOpenACC/parse-constructs.c
    M clang/test/SemaOpenACC/compute-construct-ast.cpp
    M clang/test/SemaOpenACC/no-branch-in-out.c
    M clang/test/SemaOpenACC/no-branch-in-out.cpp
    M clang/test/SemaOpenACC/parallel-assoc-stmt-inst.cpp
    M clang/test/SemaOpenACC/parallel-loc-and-stmt.c

  Log Message:
  -----------
  [OpenACC] Enable serial/kernels Compute Constructs

So far, all the work we've done for compute constructs has only used
'parallel'.  This patch does the work to enable the same logic for
'serial' and 'kernels' constructs as well, since they are the same
semantic behavior.


  Commit: e10dc60ad742f37e61fd6cf13e1b7d48d7f341d9
      https://github.com/llvm/llvm-project/commit/e10dc60ad742f37e61fd6cf13e1b7d48d7f341d9
  Author: Aart Bik <39774503+aartbik at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorAttrDefs.td
    M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorType.h
    M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp

  Log Message:
  -----------
  [mlir][sparse][nfc] fixed typo in "translate" (#83891)


  Commit: 2e93ee6a2389cc65faf9739cd7a6c438d5e05a9e
      https://github.com/llvm/llvm-project/commit/2e93ee6a2389cc65faf9739cd7a6c438d5e05a9e
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M third-party/benchmark/.ycm_extra_conf.py
    M third-party/benchmark/AUTHORS
    M third-party/benchmark/CMakeLists.txt
    M third-party/benchmark/CONTRIBUTORS
    M third-party/benchmark/README.md
    M third-party/benchmark/WORKSPACE
    M third-party/benchmark/bindings/python/build_defs.bzl
    M third-party/benchmark/bindings/python/google_benchmark/__init__.py
    M third-party/benchmark/bindings/python/google_benchmark/benchmark.cc
    M third-party/benchmark/bindings/python/google_benchmark/example.py
    R third-party/benchmark/bindings/python/pybind11.BUILD
    M third-party/benchmark/bindings/python/python_headers.BUILD
    R third-party/benchmark/bindings/python/requirements.txt
    M third-party/benchmark/cmake/CXXFeatureCheck.cmake
    M third-party/benchmark/cmake/GetGitVersion.cmake
    M third-party/benchmark/cmake/GoogleTest.cmake
    M third-party/benchmark/cmake/Modules/FindPFM.cmake
    M third-party/benchmark/cmake/benchmark.pc.in
    M third-party/benchmark/docs/AssemblyTests.md
    M third-party/benchmark/docs/_config.yml
    M third-party/benchmark/docs/dependencies.md
    M third-party/benchmark/docs/index.md
    M third-party/benchmark/docs/perf_counters.md
    M third-party/benchmark/docs/releasing.md
    M third-party/benchmark/docs/tools.md
    M third-party/benchmark/docs/user_guide.md
    M third-party/benchmark/include/benchmark/benchmark.h
    R third-party/benchmark/requirements.txt
    M third-party/benchmark/setup.py
    M third-party/benchmark/src/CMakeLists.txt
    M third-party/benchmark/src/benchmark.cc
    M third-party/benchmark/src/benchmark_api_internal.cc
    M third-party/benchmark/src/benchmark_api_internal.h
    M third-party/benchmark/src/benchmark_main.cc
    M third-party/benchmark/src/benchmark_name.cc
    M third-party/benchmark/src/benchmark_register.cc
    M third-party/benchmark/src/benchmark_register.h
    M third-party/benchmark/src/benchmark_runner.cc
    M third-party/benchmark/src/benchmark_runner.h
    M third-party/benchmark/src/check.h
    M third-party/benchmark/src/colorprint.cc
    M third-party/benchmark/src/commandlineflags.cc
    M third-party/benchmark/src/commandlineflags.h
    M third-party/benchmark/src/complexity.cc
    M third-party/benchmark/src/complexity.h
    M third-party/benchmark/src/console_reporter.cc
    M third-party/benchmark/src/counter.cc
    M third-party/benchmark/src/csv_reporter.cc
    M third-party/benchmark/src/cycleclock.h
    M third-party/benchmark/src/internal_macros.h
    M third-party/benchmark/src/json_reporter.cc
    M third-party/benchmark/src/log.h
    M third-party/benchmark/src/perf_counters.cc
    M third-party/benchmark/src/perf_counters.h
    M third-party/benchmark/src/re.h
    M third-party/benchmark/src/reporter.cc
    R third-party/benchmark/src/sleep.cc
    R third-party/benchmark/src/sleep.h
    M third-party/benchmark/src/statistics.cc
    M third-party/benchmark/src/statistics.h
    M third-party/benchmark/src/string_util.cc
    M third-party/benchmark/src/string_util.h
    M third-party/benchmark/src/sysinfo.cc
    M third-party/benchmark/src/thread_manager.h
    M third-party/benchmark/src/timers.cc
    M third-party/benchmark/test/AssemblyTests.cmake
    M third-party/benchmark/test/CMakeLists.txt
    M third-party/benchmark/test/args_product_test.cc
    M third-party/benchmark/test/basic_test.cc
    M third-party/benchmark/test/benchmark_gtest.cc
    M third-party/benchmark/test/benchmark_name_gtest.cc
    M third-party/benchmark/test/benchmark_random_interleaving_gtest.cc
    M third-party/benchmark/test/benchmark_setup_teardown_test.cc
    M third-party/benchmark/test/benchmark_test.cc
    M third-party/benchmark/test/clobber_memory_assembly_test.cc
    M third-party/benchmark/test/complexity_test.cc
    M third-party/benchmark/test/diagnostics_test.cc
    M third-party/benchmark/test/donotoptimize_assembly_test.cc
    M third-party/benchmark/test/donotoptimize_test.cc
    M third-party/benchmark/test/filter_test.cc
    M third-party/benchmark/test/fixture_test.cc
    M third-party/benchmark/test/link_main_test.cc
    M third-party/benchmark/test/map_test.cc
    M third-party/benchmark/test/memory_manager_test.cc
    M third-party/benchmark/test/multiple_ranges_test.cc
    M third-party/benchmark/test/options_test.cc
    M third-party/benchmark/test/output_test.h
    M third-party/benchmark/test/output_test_helper.cc
    M third-party/benchmark/test/perf_counters_gtest.cc
    M third-party/benchmark/test/perf_counters_test.cc
    M third-party/benchmark/test/register_benchmark_test.cc
    M third-party/benchmark/test/reporter_output_test.cc
    M third-party/benchmark/test/skip_with_error_test.cc
    M third-party/benchmark/test/spec_arg_test.cc
    M third-party/benchmark/test/statistics_gtest.cc
    M third-party/benchmark/test/string_util_gtest.cc
    M third-party/benchmark/test/user_counters_tabular_test.cc
    M third-party/benchmark/test/user_counters_test.cc
    M third-party/benchmark/test/user_counters_thousands_test.cc
    M third-party/benchmark/tools/compare.py
    M third-party/benchmark/tools/gbench/Inputs/test1_run1.json
    M third-party/benchmark/tools/gbench/Inputs/test1_run2.json
    M third-party/benchmark/tools/gbench/__init__.py
    M third-party/benchmark/tools/gbench/report.py
    M third-party/benchmark/tools/gbench/util.py
    M third-party/benchmark/tools/requirements.txt
    M third-party/benchmark/tools/strip_asm.py

  Log Message:
  -----------
  Update Benchmark (#83488)

Addresses the `third-party/benchmark` part of #81859 (by happening to remove `requirements.txt`)


  Commit: d95e6d027486876559f1a2a96c33b8ad93cc0ae4
      https://github.com/llvm/llvm-project/commit/d95e6d027486876559f1a2a96c33b8ad93cc0ae4
  Author: Guray Ozen <guray.ozen at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    A mlir/test/Integration/GPU/CUDA/sm90/python/lit.local.cfg
    A mlir/test/Integration/GPU/CUDA/sm90/python/matmul.py
    A mlir/test/Integration/GPU/CUDA/sm90/python/tools/lit.local.cfg
    A mlir/test/Integration/GPU/CUDA/sm90/python/tools/matmulBuilder.py
    A mlir/test/Integration/GPU/CUDA/sm90/python/tools/nvgpucompiler.py

  Log Message:
  -----------
  [mlir] GEMM Hopper Tensor Core Integration Test (#81478)


  Commit: 922a431e10fa28519eb5d62e094f19b1008612a1
      https://github.com/llvm/llvm-project/commit/922a431e10fa28519eb5d62e094f19b1008612a1
  Author: Alan Zhao <ayzhao at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/test/tools/llvm-profdata/binary-ids-padding.test
    M llvm/test/tools/llvm-profdata/large-binary-id-size.test
    M llvm/test/tools/llvm-profdata/malformed-not-space-for-another-header.test
    M llvm/test/tools/llvm-profdata/malformed-num-counters-zero.test
    M llvm/test/tools/llvm-profdata/malformed-ptr-to-counter-array.test
    M llvm/test/tools/llvm-profdata/misaligned-binary-ids-size.test
    M llvm/test/tools/llvm-profdata/raw-32-bits-be.test
    M llvm/test/tools/llvm-profdata/raw-32-bits-le.test
    M llvm/test/tools/llvm-profdata/raw-64-bits-be.test
    M llvm/test/tools/llvm-profdata/raw-64-bits-le.test
    M llvm/test/tools/llvm-profdata/raw-two-profiles.test

  Log Message:
  -----------
  [profdata][nfc] Disable several tests on Windows (#83907)

Several profdata tests pass the byte 012 to printf. This causes these
tests to fail when using GnuWin32's version of printf because printf
will detect that 012 is the LF character and will prepend the byte 015
(CR) in front of LF.

This change is required after
https://github.com/llvm/llvm-project/pull/82711 which bumped the version
number.


  Commit: aec6a04b8e99b42eca431fc0b56947937d3a14c2
      https://github.com/llvm/llvm-project/commit/aec6a04b8e99b42eca431fc0b56947937d3a14c2
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M third-party/benchmark/.ycm_extra_conf.py
    M third-party/benchmark/AUTHORS
    M third-party/benchmark/CMakeLists.txt
    M third-party/benchmark/CONTRIBUTORS
    M third-party/benchmark/README.md
    M third-party/benchmark/WORKSPACE
    M third-party/benchmark/bindings/python/build_defs.bzl
    M third-party/benchmark/bindings/python/google_benchmark/__init__.py
    M third-party/benchmark/bindings/python/google_benchmark/benchmark.cc
    M third-party/benchmark/bindings/python/google_benchmark/example.py
    A third-party/benchmark/bindings/python/pybind11.BUILD
    M third-party/benchmark/bindings/python/python_headers.BUILD
    A third-party/benchmark/bindings/python/requirements.txt
    M third-party/benchmark/cmake/CXXFeatureCheck.cmake
    M third-party/benchmark/cmake/GetGitVersion.cmake
    M third-party/benchmark/cmake/GoogleTest.cmake
    M third-party/benchmark/cmake/Modules/FindPFM.cmake
    M third-party/benchmark/cmake/benchmark.pc.in
    M third-party/benchmark/docs/AssemblyTests.md
    M third-party/benchmark/docs/_config.yml
    M third-party/benchmark/docs/dependencies.md
    M third-party/benchmark/docs/index.md
    M third-party/benchmark/docs/perf_counters.md
    M third-party/benchmark/docs/releasing.md
    M third-party/benchmark/docs/tools.md
    M third-party/benchmark/docs/user_guide.md
    M third-party/benchmark/include/benchmark/benchmark.h
    A third-party/benchmark/requirements.txt
    M third-party/benchmark/setup.py
    M third-party/benchmark/src/CMakeLists.txt
    M third-party/benchmark/src/benchmark.cc
    M third-party/benchmark/src/benchmark_api_internal.cc
    M third-party/benchmark/src/benchmark_api_internal.h
    M third-party/benchmark/src/benchmark_main.cc
    M third-party/benchmark/src/benchmark_name.cc
    M third-party/benchmark/src/benchmark_register.cc
    M third-party/benchmark/src/benchmark_register.h
    M third-party/benchmark/src/benchmark_runner.cc
    M third-party/benchmark/src/benchmark_runner.h
    M third-party/benchmark/src/check.h
    M third-party/benchmark/src/colorprint.cc
    M third-party/benchmark/src/commandlineflags.cc
    M third-party/benchmark/src/commandlineflags.h
    M third-party/benchmark/src/complexity.cc
    M third-party/benchmark/src/complexity.h
    M third-party/benchmark/src/console_reporter.cc
    M third-party/benchmark/src/counter.cc
    M third-party/benchmark/src/csv_reporter.cc
    M third-party/benchmark/src/cycleclock.h
    M third-party/benchmark/src/internal_macros.h
    M third-party/benchmark/src/json_reporter.cc
    M third-party/benchmark/src/log.h
    M third-party/benchmark/src/perf_counters.cc
    M third-party/benchmark/src/perf_counters.h
    M third-party/benchmark/src/re.h
    M third-party/benchmark/src/reporter.cc
    A third-party/benchmark/src/sleep.cc
    A third-party/benchmark/src/sleep.h
    M third-party/benchmark/src/statistics.cc
    M third-party/benchmark/src/statistics.h
    M third-party/benchmark/src/string_util.cc
    M third-party/benchmark/src/string_util.h
    M third-party/benchmark/src/sysinfo.cc
    M third-party/benchmark/src/thread_manager.h
    M third-party/benchmark/src/timers.cc
    M third-party/benchmark/test/AssemblyTests.cmake
    M third-party/benchmark/test/CMakeLists.txt
    M third-party/benchmark/test/args_product_test.cc
    M third-party/benchmark/test/basic_test.cc
    M third-party/benchmark/test/benchmark_gtest.cc
    M third-party/benchmark/test/benchmark_name_gtest.cc
    M third-party/benchmark/test/benchmark_random_interleaving_gtest.cc
    M third-party/benchmark/test/benchmark_setup_teardown_test.cc
    M third-party/benchmark/test/benchmark_test.cc
    M third-party/benchmark/test/clobber_memory_assembly_test.cc
    M third-party/benchmark/test/complexity_test.cc
    M third-party/benchmark/test/diagnostics_test.cc
    M third-party/benchmark/test/donotoptimize_assembly_test.cc
    M third-party/benchmark/test/donotoptimize_test.cc
    M third-party/benchmark/test/filter_test.cc
    M third-party/benchmark/test/fixture_test.cc
    M third-party/benchmark/test/link_main_test.cc
    M third-party/benchmark/test/map_test.cc
    M third-party/benchmark/test/memory_manager_test.cc
    M third-party/benchmark/test/multiple_ranges_test.cc
    M third-party/benchmark/test/options_test.cc
    M third-party/benchmark/test/output_test.h
    M third-party/benchmark/test/output_test_helper.cc
    M third-party/benchmark/test/perf_counters_gtest.cc
    M third-party/benchmark/test/perf_counters_test.cc
    M third-party/benchmark/test/register_benchmark_test.cc
    M third-party/benchmark/test/reporter_output_test.cc
    M third-party/benchmark/test/skip_with_error_test.cc
    M third-party/benchmark/test/spec_arg_test.cc
    M third-party/benchmark/test/statistics_gtest.cc
    M third-party/benchmark/test/string_util_gtest.cc
    M third-party/benchmark/test/user_counters_tabular_test.cc
    M third-party/benchmark/test/user_counters_test.cc
    M third-party/benchmark/test/user_counters_thousands_test.cc
    M third-party/benchmark/tools/compare.py
    M third-party/benchmark/tools/gbench/Inputs/test1_run1.json
    M third-party/benchmark/tools/gbench/Inputs/test1_run2.json
    M third-party/benchmark/tools/gbench/__init__.py
    M third-party/benchmark/tools/gbench/report.py
    M third-party/benchmark/tools/gbench/util.py
    M third-party/benchmark/tools/requirements.txt
    M third-party/benchmark/tools/strip_asm.py

  Log Message:
  -----------
  Revert "Update Benchmark (#83488)"

This reverts commit 2e93ee6a2389cc65faf9739cd7a6c438d5e05a9e.

buildbot failures, e.g.
`/third-party/benchmark/cmake/pthread_affinity.cpp`


  Commit: 6325dd57318bc4640dded8f59cadd315aa8185ae
      https://github.com/llvm/llvm-project/commit/6325dd57318bc4640dded8f59cadd315aa8185ae
  Author: Natalie Chouinard <sudonatalie at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/test/CodeGenHLSL/semantics/DispatchThreadID.hlsl
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/SV_DispatchThreadID.ll

  Log Message:
  -----------
  [HLSL][SPIR-V] Add SV_DispatchThreadID semantic support (#82536)

Add SPIR-V backend support for the HLSL SV_DispatchThreadID semantic
attribute, which is lowered to a @llvm.dx.thread.id intrinsic in LLVM
IR. In the SPIR-V backend, this is now correctly translated to a
`GlobalInvocationId` builtin variable.

Fixes #82534


  Commit: df9ba13579e298fcb57aa59c5c187ce6729881d6
      https://github.com/llvm/llvm-project/commit/df9ba13579e298fcb57aa59c5c187ce6729881d6
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/ScalarEvolution.h
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp

  Log Message:
  -----------
  [LV] Handle scalable VFs in optimizeForVFAndUF (#82669)

Given a scalable VF of the form <NumElts * VScale>, this patch adds the
ability to discharge a backedge test for a loop whose trip count is
between (NumElts, MinVScale*NumElts).

A couple of notes on this:
* Annoyingly, I could not figure out to write a test for this case. My
attempt is checked in as test32_i8 in f67ef1a, but LV uses a fixed
vector in that case, and ignored the force flags.
* This depends on 9eb5f94f to avoid appearing like a regression. Since
SCEV doesn't know any upper bound on vscale without the vscale_range
attribute (it doesn't query TTI), the ranges overflow on the multiply.
Arguably, this is fixing a bug in the current LV code since in theory
vscale can be large enough to overflow for real, but no actual target is
going to see that case.


  Commit: eaa0d3b1336b82df01ff50dfbe50bb8cdd7ada87
      https://github.com/llvm/llvm-project/commit/eaa0d3b1336b82df01ff50dfbe50bb8cdd7ada87
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libc/test/src/stdbit/stdc_has_single_bit_uc_test.cpp
    M libc/test/src/stdbit/stdc_has_single_bit_ui_test.cpp
    M libc/test/src/stdbit/stdc_has_single_bit_ul_test.cpp
    M libc/test/src/stdbit/stdc_has_single_bit_ull_test.cpp
    M libc/test/src/stdbit/stdc_has_single_bit_us_test.cpp

  Log Message:
  -----------
  [libc][test][stdbit] fix has_single_bit test names (#83904)

This was copy+pasted from count_ones without updating the test name completely.


  Commit: a5b797172cc902db166e9a695716fb81405f86e4
      https://github.com/llvm/llvm-project/commit/a5b797172cc902db166e9a695716fb81405f86e4
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    A third-party/benchmark/.pre-commit-config.yaml
    M third-party/benchmark/.ycm_extra_conf.py
    M third-party/benchmark/AUTHORS
    M third-party/benchmark/CMakeLists.txt
    M third-party/benchmark/CONTRIBUTORS
    A third-party/benchmark/MODULE.bazel
    M third-party/benchmark/README.md
    M third-party/benchmark/WORKSPACE
    A third-party/benchmark/WORKSPACE.bzlmod
    A third-party/benchmark/bazel/benchmark_deps.bzl
    M third-party/benchmark/bindings/python/build_defs.bzl
    M third-party/benchmark/bindings/python/google_benchmark/__init__.py
    M third-party/benchmark/bindings/python/google_benchmark/benchmark.cc
    M third-party/benchmark/bindings/python/google_benchmark/example.py
    A third-party/benchmark/bindings/python/google_benchmark/version.py
    A third-party/benchmark/bindings/python/nanobind.BUILD
    R third-party/benchmark/bindings/python/pybind11.BUILD
    M third-party/benchmark/bindings/python/python_headers.BUILD
    R third-party/benchmark/bindings/python/requirements.txt
    M third-party/benchmark/cmake/CXXFeatureCheck.cmake
    M third-party/benchmark/cmake/GetGitVersion.cmake
    M third-party/benchmark/cmake/GoogleTest.cmake
    M third-party/benchmark/cmake/Modules/FindPFM.cmake
    M third-party/benchmark/cmake/benchmark.pc.in
    A third-party/benchmark/cmake/pthread_affinity.cpp
    M third-party/benchmark/docs/AssemblyTests.md
    M third-party/benchmark/docs/_config.yml
    A third-party/benchmark/docs/assets/images/icon.png
    A third-party/benchmark/docs/assets/images/icon.xcf
    A third-party/benchmark/docs/assets/images/icon_black.png
    A third-party/benchmark/docs/assets/images/icon_black.xcf
    M third-party/benchmark/docs/dependencies.md
    M third-party/benchmark/docs/index.md
    M third-party/benchmark/docs/perf_counters.md
    A third-party/benchmark/docs/python_bindings.md
    A third-party/benchmark/docs/reducing_variance.md
    M third-party/benchmark/docs/releasing.md
    M third-party/benchmark/docs/tools.md
    M third-party/benchmark/docs/user_guide.md
    M third-party/benchmark/include/benchmark/benchmark.h
    A third-party/benchmark/include/benchmark/export.h
    A third-party/benchmark/pyproject.toml
    R third-party/benchmark/requirements.txt
    M third-party/benchmark/setup.py
    M third-party/benchmark/src/CMakeLists.txt
    M third-party/benchmark/src/benchmark.cc
    M third-party/benchmark/src/benchmark_api_internal.cc
    M third-party/benchmark/src/benchmark_api_internal.h
    M third-party/benchmark/src/benchmark_main.cc
    M third-party/benchmark/src/benchmark_name.cc
    M third-party/benchmark/src/benchmark_register.cc
    M third-party/benchmark/src/benchmark_register.h
    M third-party/benchmark/src/benchmark_runner.cc
    M third-party/benchmark/src/benchmark_runner.h
    A third-party/benchmark/src/check.cc
    M third-party/benchmark/src/check.h
    M third-party/benchmark/src/colorprint.cc
    M third-party/benchmark/src/commandlineflags.cc
    M third-party/benchmark/src/commandlineflags.h
    M third-party/benchmark/src/complexity.cc
    M third-party/benchmark/src/complexity.h
    M third-party/benchmark/src/console_reporter.cc
    M third-party/benchmark/src/counter.cc
    M third-party/benchmark/src/csv_reporter.cc
    M third-party/benchmark/src/cycleclock.h
    M third-party/benchmark/src/internal_macros.h
    M third-party/benchmark/src/json_reporter.cc
    M third-party/benchmark/src/log.h
    M third-party/benchmark/src/perf_counters.cc
    M third-party/benchmark/src/perf_counters.h
    M third-party/benchmark/src/re.h
    M third-party/benchmark/src/reporter.cc
    R third-party/benchmark/src/sleep.cc
    R third-party/benchmark/src/sleep.h
    M third-party/benchmark/src/statistics.cc
    M third-party/benchmark/src/statistics.h
    M third-party/benchmark/src/string_util.cc
    M third-party/benchmark/src/string_util.h
    M third-party/benchmark/src/sysinfo.cc
    M third-party/benchmark/src/thread_manager.h
    M third-party/benchmark/src/timers.cc
    M third-party/benchmark/test/AssemblyTests.cmake
    M third-party/benchmark/test/CMakeLists.txt
    M third-party/benchmark/test/args_product_test.cc
    M third-party/benchmark/test/basic_test.cc
    M third-party/benchmark/test/benchmark_gtest.cc
    A third-party/benchmark/test/benchmark_min_time_flag_iters_test.cc
    A third-party/benchmark/test/benchmark_min_time_flag_time_test.cc
    M third-party/benchmark/test/benchmark_name_gtest.cc
    M third-party/benchmark/test/benchmark_random_interleaving_gtest.cc
    M third-party/benchmark/test/benchmark_setup_teardown_test.cc
    M third-party/benchmark/test/benchmark_test.cc
    M third-party/benchmark/test/clobber_memory_assembly_test.cc
    M third-party/benchmark/test/complexity_test.cc
    M third-party/benchmark/test/diagnostics_test.cc
    M third-party/benchmark/test/donotoptimize_assembly_test.cc
    M third-party/benchmark/test/donotoptimize_test.cc
    M third-party/benchmark/test/filter_test.cc
    M third-party/benchmark/test/fixture_test.cc
    M third-party/benchmark/test/link_main_test.cc
    M third-party/benchmark/test/map_test.cc
    M third-party/benchmark/test/memory_manager_test.cc
    A third-party/benchmark/test/min_time_parse_gtest.cc
    M third-party/benchmark/test/multiple_ranges_test.cc
    M third-party/benchmark/test/options_test.cc
    M third-party/benchmark/test/output_test.h
    M third-party/benchmark/test/output_test_helper.cc
    M third-party/benchmark/test/perf_counters_gtest.cc
    M third-party/benchmark/test/perf_counters_test.cc
    M third-party/benchmark/test/register_benchmark_test.cc
    M third-party/benchmark/test/reporter_output_test.cc
    M third-party/benchmark/test/skip_with_error_test.cc
    M third-party/benchmark/test/spec_arg_test.cc
    A third-party/benchmark/test/spec_arg_verbosity_test.cc
    M third-party/benchmark/test/statistics_gtest.cc
    M third-party/benchmark/test/string_util_gtest.cc
    A third-party/benchmark/test/time_unit_gtest.cc
    M third-party/benchmark/test/user_counters_tabular_test.cc
    M third-party/benchmark/test/user_counters_test.cc
    M third-party/benchmark/test/user_counters_thousands_test.cc
    M third-party/benchmark/tools/compare.py
    M third-party/benchmark/tools/gbench/Inputs/test1_run1.json
    M third-party/benchmark/tools/gbench/Inputs/test1_run2.json
    A third-party/benchmark/tools/gbench/Inputs/test5_run0.json
    A third-party/benchmark/tools/gbench/Inputs/test5_run1.json
    M third-party/benchmark/tools/gbench/__init__.py
    M third-party/benchmark/tools/gbench/report.py
    M third-party/benchmark/tools/gbench/util.py
    A third-party/benchmark/tools/libpfm.BUILD.bazel
    M third-party/benchmark/tools/requirements.txt
    M third-party/benchmark/tools/strip_asm.py

  Log Message:
  -----------
  Reapply "Update Benchmark (#83488)" (#83916)

This reverts commit aec6a04b8e99b42eca431fc0b56947937d3a14c2.

(google/benchmark still at hash 1576991177ba97a4b2ff6c45950f1fa6e9aa678c as it was in #83488. Also reapplied same extra local diffs)

Verified locally.


  Commit: 8848258f7bf67fbaf49213a2fb7edb8a3c2f0493
      https://github.com/llvm/llvm-project/commit/8848258f7bf67fbaf49213a2fb7edb8a3c2f0493
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/SROA.cpp
    M llvm/test/Transforms/SROA/phi-and-select.ll
    M llvm/test/Transforms/SROA/phi-gep.ll

  Log Message:
  -----------
  [SROA] Unfold gep of index phi (round 2) (#83494)

If a gep has only one phi as one of its operands and the remaining
indexes are constant, we can unfold `gep ptr, (phi idx1, idx2)` to `phi
((gep ptr, idx1), (gep ptr, idx2))`.

Take care not to unfold recursive phis.

Followup to #80983.

This was initially was #83087. Initial PR did not handle allocas in
entry block that weren't at the beginning of the function, causing GEPs
to be inserted after the first chunk of allocas but potentially before
an alloca not at the beginning. Insert GEPs at the end of the entry
block instead since constants/arguments/static allocas can all be used
there.


  Commit: 691fc7cdcc3679c5fb7963147a9c358ff9019ab7
      https://github.com/llvm/llvm-project/commit/691fc7cdcc3679c5fb7963147a9c358ff9019ab7
  Author: Aart Bik <39774503+aartbik at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp
    M mlir/test/Integration/Dialect/SparseTensor/CPU/block.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/block_majors.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/dense_output.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/dense_output_bf16.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/dense_output_f16.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_insert_3d.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_loose.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matmul.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matmul_slice.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matrix_ops.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_print.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_re_im.mlir
    M mlir/test/Integration/Dialect/SparseTensor/GPU/CUDA/sparse-gemm-lib.mlir
    M mlir/test/Integration/Dialect/SparseTensor/GPU/CUDA/sparse-sampled-matmul-lib.mlir
    M mlir/test/Integration/Dialect/SparseTensor/GPU/CUDA/sparse-sddmm-lib.mlir

  Log Message:
  -----------
  [mlir][sparse] add dim/lvl information to sparse_tensor.print (#83913)

More information is more testing!
Also adjusts already migrated integration tests


  Commit: 8cc8fdaf5c2e799bc758919365bae601e59c03fc
      https://github.com/llvm/llvm-project/commit/8cc8fdaf5c2e799bc758919365bae601e59c03fc
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/itofp.ll

  Log Message:
  -----------
  [AArch64] Also promote vector bf16 INT_TP_FP to f32

This mirrors the scalar version.


  Commit: 52b69aa32f5280ce600fbfea1c16a6f17a979c4d
      https://github.com/llvm/llvm-project/commit/52b69aa32f5280ce600fbfea1c16a6f17a979c4d
  Author: Peiming Liu <36770114+PeimingLiu at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorStorageLayout.h
    M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorType.h
    M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseAssembler.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorCodegen.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Sparsification.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/CodegenUtils.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/CodegenUtils.h
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/LoopEmitter.h
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorLevel.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorLevel.h
    A mlir/test/Dialect/SparseTensor/sparse_batch.mlir
    M mlir/test/Dialect/SparseTensor/sparse_conv_2d_slice_based.mlir

  Log Message:
  -----------
  [mlir][sparse] support sparsifying batch levels (#83898)


  Commit: 10ccde30e784622cfb16940f7dddd4bb3a94ce44
      https://github.com/llvm/llvm-project/commit/10ccde30e784622cfb16940f7dddd4bb3a94ce44
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/include/clang/InstallAPI/Frontend.h
    M clang/include/clang/InstallAPI/Visitor.h
    M clang/lib/InstallAPI/Frontend.cpp
    M clang/lib/InstallAPI/Visitor.cpp
    M clang/test/InstallAPI/objcclasses.test
    M llvm/include/llvm/TextAPI/Record.h
    M llvm/lib/TextAPI/RecordsSlice.cpp

  Log Message:
  -----------
  [InstallAPI] Collect symbols from ObjC Ivars (#83632)


  Commit: 3bc0ff28a4349f5b2836413fd2cc786997f388be
      https://github.com/llvm/llvm-project/commit/3bc0ff28a4349f5b2836413fd2cc786997f388be
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

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

  Log Message:
  -----------
  [Analysis] Move `DomConditionCache::findAffectedValues` to a new file; NFC


  Commit: 6ee46aba0695bd004e5b229b73dabe8fd5a70513
      https://github.com/llvm/llvm-project/commit/6ee46aba0695bd004e5b229b73dabe8fd5a70513
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Analysis/AssumptionCache.cpp
    M llvm/lib/Analysis/ValueTracking.cpp

  Log Message:
  -----------
  [Analysis] Share `findAffectedValues` between DomConditionCache and AssumptionCache; NFC


  Commit: db3bbe03f1c93100434a1394d293d13d4e5c1a2e
      https://github.com/llvm/llvm-project/commit/db3bbe03f1c93100434a1394d293d13d4e5c1a2e
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Analysis/ValueTracking/numsignbits-from-assume.ll
    M llvm/test/Transforms/InstCombine/fpclass-from-dom-cond.ll

  Log Message:
  -----------
  [Analysis] Unify most of the tracking between AssumptionCache and DomConditionCache

This helps cover some missing cases in both and hopefully serves as
creating an easier framework for extending general condition based
analysis.

Closes #83161


  Commit: 82cc2a67014deb1ad7509eeb287ffd8e7fa1ea1b
      https://github.com/llvm/llvm-project/commit/82cc2a67014deb1ad7509eeb287ffd8e7fa1ea1b
  Author: Petr Hosek <phosek at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libc/config/baremetal/api.td
    M libc/config/baremetal/arm/entrypoints.txt
    M libc/config/baremetal/arm/headers.txt
    M libc/config/baremetal/riscv/entrypoints.txt
    M libc/config/baremetal/riscv/headers.txt

  Log Message:
  -----------
  [libc] Include stdfix.h in baremetal targets (#83900)

Fixed-point arithmetic support is targeted towards baremetal targets.


  Commit: 6fd27d5b0321f65c8a09624e456e33874ae3730b
      https://github.com/llvm/llvm-project/commit/6fd27d5b0321f65c8a09624e456e33874ae3730b
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libcxx/docs/Contributing.rst
    M libcxx/include/CMakeLists.txt
    A libcxx/include/module.modulemap
    R libcxx/include/module.modulemap.in
    M libcxx/test/libcxx/lint/lint_headers.sh.py
    M libcxx/utils/libcxx/header_information.py

  Log Message:
  -----------
  [libc++] Don't generate the modulemap file (#80352)

We actually didn't generate anything in that file, so generating it via
CMake is useless.


  Commit: 4d80df0922ef7e48d53d4ae382977d8a2ff34ce0
      https://github.com/llvm/llvm-project/commit/4d80df0922ef7e48d53d4ae382977d8a2ff34ce0
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libcxx/include/iosfwd
    M libcxx/modules/std/iosfwd.inc

  Log Message:
  -----------
  [libc++] Do not forward-declare syncstream outside experimental (#82511)

We only define the classes in `<syncstream>` when experimental library
features are enabled, but we would forward-declare them in `<iosfwd>`
even when they are disabled. This led to confusing error messages about
being unable to instantiate an undefined template.


  Commit: 5174b3802575425dcbc58680ccce10961fdb8b67
      https://github.com/llvm/llvm-project/commit/5174b3802575425dcbc58680ccce10961fdb8b67
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libcxx/include/__config
    M libcxx/include/__iterator/wrap_iter.h
    M libcxx/include/array
    M libcxx/include/string_view

  Log Message:
  -----------
  [libc++] Use __wrap_iter in string_view and array in the unstable ABI (#74482)

std::string_view and std::array iterators don't have to be raw pointers,
and in fact other implementations don't represent them as raw pointers.
Them being raw pointers in libc++ makes it easier for users to write
non-portable code. This is bad in itself, but this is even worse when
considering efforts like hardening where we want an easy ability to
swap for a different iterator type. If users depend on iterators being
raw pointers, this becomes a build break.

Hence, this patch enables the use of __wrap_iter in the unstable ABI,
creating a long term path towards making this the default. This patch
may break code that assumes these iterators are raw pointers for
people compiling with the unstable ABI.

This patch also removes several assumptions that array iterators are
raw pointers in the code base and in the test suite.


  Commit: 40081a45a14f7aa6249fa034d961549c0b1762a0
      https://github.com/llvm/llvm-project/commit/40081a45a14f7aa6249fa034d961549c0b1762a0
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M libcxx/include/atomic

  Log Message:
  -----------
  [libc++] Fix diagnostic for <stdatomic.h> before C++23 (#83351)

We normally try to issue a reasonable diagnostic when mixing
<stdatomic.h> and <atomic> before C++23. However, after granularizing
the <atomic> header, the check and the #error message was moved to
*after* the point where mixing both causes problems. When mixing both
headers, we would hence get the diagnostic burried under a pile of
previous diagnostics in e.g. __atomic/kill_dependency.h.

This patch moves the check earlier to restore the intended behavior. It
also switches from `#ifdef kill_dependency` to an explicit check of the
inclusion of the header and the Standard version, which seems to be more
reliable than checking whether a macro is defined.


  Commit: 07b1aebced8015c62d4ce0afe07358049afae5b1
      https://github.com/llvm/llvm-project/commit/07b1aebced8015c62d4ce0afe07358049afae5b1
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/cmake/modules/AddLLVM.cmake
    M llvm/cmake/modules/HandleLLVMOptions.cmake
    M runtimes/CMakeLists.txt

  Log Message:
  -----------
  [LLVM][NFC] Ignore including the GNUInstallDirs on the GPU (#83910)

Summary:
I've begun treating GPU runtimes builds as cross-compiling with the LLVM
infrastructure. However, we include a lot of random stuff that the GPU
build isn't prepared to handle. This currently emits a warning, and
while it's not striclty necessary, is annoying. This patch suppresses it
by not including the standard GNU install directory resources when used
from the GPU.


  Commit: 5000e4c2527ae53bf7c1a609f739a97cdc522bbe
      https://github.com/llvm/llvm-project/commit/5000e4c2527ae53bf7c1a609f739a97cdc522bbe
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M lldb/examples/python/crashlog.py
    A lldb/test/Shell/ScriptInterpreter/Python/Crashlog/Inputs/altered_threadState.crash
    A lldb/test/Shell/ScriptInterpreter/Python/Crashlog/altered_threadState.test

  Log Message:
  -----------
  [lldb/crashlog] Fix breaking changes in textual report format (#83861)

This patch should address some register parsing issue in the legacy
report format.

rdar://107210149

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


  Commit: 488ac3d5ef31237e38de6da627a619459e0ca19a
      https://github.com/llvm/llvm-project/commit/488ac3d5ef31237e38de6da627a619459e0ca19a
  Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M lldb/test/API/functionalities/breakpoint/breakpoint_options/TestBreakpointOptions.py

  Log Message:
  -----------
  [lldb] Enable a test that was never enabled (#83925)

According to the git log (d9442afba1bd6), this test has never been
enabled/disabled, it was checked in without being called anywhere. But
it passes and it is useful, so this commit enables it.


  Commit: 05390df497535b26879a7a96e03a76af26c8bcd3
      https://github.com/llvm/llvm-project/commit/05390df497535b26879a7a96e03a76af26c8bcd3
  Author: Aart Bik <ajcbik at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_abs.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_binary.mlir

  Log Message:
  -----------
  [mlir][sparse] migration to sparse_tensor.print (#83926)

Continuing the efforts started in #83357


  Commit: 8e56fb824a43d54208d44a403366faa5d633ee8b
      https://github.com/llvm/llvm-project/commit/8e56fb824a43d54208d44a403366faa5d633ee8b
  Author: isuckatcs <65320245+isuckatcs at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 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/CrtpConstructorAccessibilityCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/CrtpConstructorAccessibilityCheck.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    A clang-tools-extra/docs/clang-tidy/checks/bugprone/crtp-constructor-accessibility.rst
    M clang-tools-extra/docs/clang-tidy/checks/list.rst
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/crtp-constructor-accessibility.cpp

  Log Message:
  -----------
  [clang-tidy] CRTP Constructor Accessibility Check (#82403)

Detects error-prone Curiously Recurring Template Pattern usage, when the CRTP
can be constructed outside itself and the derived class.


  Commit: 1ebbf97316729e38b3189c6c55516266a7909121
      https://github.com/llvm/llvm-project/commit/1ebbf97316729e38b3189c6c55516266a7909121
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/cmake/modules/AddLLVM.cmake

  Log Message:
  -----------
  [LLVM] Partially revert GPU change to include dirs

Summary:
Turns out that we need this for the header install directory. I didn't
notice because I had old values cached. Revert for now until I think of
a better way to suppress the error.


  Commit: bdfebc310e67c8e96909e155669277ab75d784ba
      https://github.com/llvm/llvm-project/commit/bdfebc310e67c8e96909e155669277ab75d784ba
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/masked_compressstore_isel.ll

  Log Message:
  -----------
  [X86] Use update_mir_test_checks.py to generate CHECK lines in masked_compressstore_isel.ll. NFC


  Commit: 8d6e867eb2de32ce28ece972c91405db976192c3
      https://github.com/llvm/llvm-project/commit/8d6e867eb2de32ce28ece972c91405db976192c3
  Author: Patrick O'Neill <102189596+patrick-rivos at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
    M llvm/lib/Transforms/Utils/LoopUtils.cpp
    A llvm/test/Transforms/LoopStrengthReduce/lsr-unreachable-bb-phi-node.ll

  Log Message:
  -----------
  [LSR][term-fold] Ensure the simple recurrence is from the current loop (#83085)

If the phi node found by matchSimpleRecurrence is not from the current
loop, then isAlmostDeadIV panics. With this patch we bail out early.

Signed-off-by: Patrick O'Neill <patrick at rivosinc.com>

---------

Signed-off-by: Patrick O'Neill <patrick at rivosinc.com>


  Commit: 57592e9ae78e16ffe4f2a2cd3190c422bcdba5a0
      https://github.com/llvm/llvm-project/commit/57592e9ae78e16ffe4f2a2cd3190c422bcdba5a0
  Author: michele-scandale <michele.scandale at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/BuiltinsBase.td

  Log Message:
  -----------
  [Clang] Fixes of builtin definitions after PR #68324. (#81022)

This commit addresses few differences between the `Builtins.def` file
before the refactoring done in PR #68324 and the currently generated
`Builtins.inc` file.


  Commit: 81617f85009b4bf5f7eb45f9ff0db53dc1bdf310
      https://github.com/llvm/llvm-project/commit/81617f85009b4bf5f7eb45f9ff0db53dc1bdf310
  Author: Brad Smith <brad at comstyle.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/FreeBSD.cpp
    M clang/lib/Driver/ToolChains/Fuchsia.cpp
    M clang/lib/Driver/ToolChains/Haiku.cpp
    M clang/lib/Driver/ToolChains/NetBSD.cpp
    M clang/lib/Driver/ToolChains/OpenBSD.cpp
    M clang/test/Driver/freebsd.c
    M clang/test/Driver/fuchsia.c
    M clang/test/Driver/haiku.c
    M clang/test/Driver/netbsd.c
    M clang/test/Driver/openbsd.c

  Log Message:
  -----------
  [Driver][RISCV] Forward --no-relax option to linker for RISC-V on *BS… (#83216)

…D, Fuchsia and Haiku

Based on https://github.com/llvm/llvm-project/pull/76432


  Commit: 3e40c96d8970f8a52a1f711b4f28aec5cb13e89e
      https://github.com/llvm/llvm-project/commit/3e40c96d8970f8a52a1f711b4f28aec5cb13e89e
  Author: AtariDreams <83477269+AtariDreams at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/test/CodeGen/X86/pr59305.ll

  Log Message:
  -----------
  [X86] Resolve FIXME: Add FPCW as a rounding control register (#82452)

To prevent tests from breaking, another fix had to be made: Now, we
check if the instruction after a waiting instruction is a call, and if
so, we insert the wait.


  Commit: 275fe3ae2dced8275a1dd85a4f892fee99d322e2
      https://github.com/llvm/llvm-project/commit/275fe3ae2dced8275a1dd85a4f892fee99d322e2
  Author: Aart Bik <ajcbik at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_complex_ops.mlir

  Log Message:
  -----------
  [mlir][sparse] support complex type for sparse_tensor.print (#83934)

With an integration test example


  Commit: a5c90e48b6f11bc6db7344503589648f76b16d80
      https://github.com/llvm/llvm-project/commit/a5c90e48b6f11bc6db7344503589648f76b16d80
  Author: wanglei <wanglei at loongson.cn>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchSubtarget.h
    M llvm/test/CodeGen/LoongArch/alloca.ll
    M llvm/test/CodeGen/LoongArch/alsl.ll
    M llvm/test/CodeGen/LoongArch/atomicrmw-uinc-udec-wrap.ll
    M llvm/test/CodeGen/LoongArch/bitreverse.ll
    M llvm/test/CodeGen/LoongArch/branch-relaxation.ll
    M llvm/test/CodeGen/LoongArch/bswap-bitreverse.ll
    M llvm/test/CodeGen/LoongArch/bswap.ll
    M llvm/test/CodeGen/LoongArch/bytepick.ll
    M llvm/test/CodeGen/LoongArch/calling-conv-common.ll
    M llvm/test/CodeGen/LoongArch/calling-conv-lp64d.ll
    M llvm/test/CodeGen/LoongArch/calling-conv-lp64s.ll
    M llvm/test/CodeGen/LoongArch/can-not-realign-stack.ll
    M llvm/test/CodeGen/LoongArch/cfr-pseudo-copy.mir
    M llvm/test/CodeGen/LoongArch/ctlz-cttz-ctpop.ll
    M llvm/test/CodeGen/LoongArch/fcopysign.ll
    M llvm/test/CodeGen/LoongArch/get-setcc-result-type.ll
    M llvm/test/CodeGen/LoongArch/ghc-cc.ll
    M llvm/test/CodeGen/LoongArch/intrinsic-memcpy.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/and.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/ashr.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/atomic-cmpxchg.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/atomicrmw-fp.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/atomicrmw-minmax.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/atomicrmw.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/double-convert.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/float-convert.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/load-store.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/lshr.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/mul.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/shl.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/sub.ll
    M llvm/test/CodeGen/LoongArch/lasx/build-vector.ll
    M llvm/test/CodeGen/LoongArch/lasx/fma-v4f64.ll
    M llvm/test/CodeGen/LoongArch/lasx/fma-v8f32.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/add.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/and.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/ashr.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/fadd.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/fcmp.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/fdiv.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/fmul.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/fsub.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/icmp.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/insertelement.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/lshr.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/mul.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/or.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/sdiv.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/shl.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/sub.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/udiv.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/xor.ll
    M llvm/test/CodeGen/LoongArch/lasx/mulh.ll
    M llvm/test/CodeGen/LoongArch/lasx/vselect.ll
    M llvm/test/CodeGen/LoongArch/lsx/build-vector.ll
    M llvm/test/CodeGen/LoongArch/lsx/fma-v2f64.ll
    M llvm/test/CodeGen/LoongArch/lsx/fma-v4f32.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/add.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/and.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/ashr.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/extractelement.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/fadd.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/fcmp.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/fdiv.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/fmul.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/fsub.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/icmp.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/insertelement.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/lshr.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/mul.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/or.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/sdiv.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/shl.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/sub.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/udiv.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/xor.ll
    M llvm/test/CodeGen/LoongArch/lsx/mulh.ll
    M llvm/test/CodeGen/LoongArch/lsx/vselect.ll
    M llvm/test/CodeGen/LoongArch/preferred-alignments.ll
    M llvm/test/CodeGen/LoongArch/rotl-rotr.ll
    M llvm/test/CodeGen/LoongArch/select-to-shiftand.ll
    M llvm/test/CodeGen/LoongArch/shift-masked-shamt.ll
    M llvm/test/CodeGen/LoongArch/shrinkwrap.ll
    M llvm/test/CodeGen/LoongArch/smul-with-overflow.ll
    M llvm/test/CodeGen/LoongArch/soft-fp-to-int.ll
    M llvm/test/CodeGen/LoongArch/spill-ra-without-kill.ll
    M llvm/test/CodeGen/LoongArch/spill-reload-cfr.ll
    M llvm/test/CodeGen/LoongArch/tail-calls.ll
    M llvm/test/CodeGen/LoongArch/unaligned-access.ll
    M llvm/test/CodeGen/LoongArch/vararg.ll
    M llvm/test/CodeGen/LoongArch/vector-fp-imm.ll
    M llvm/test/CodeGen/LoongArch/zext-with-load-is-free.ll
    M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/loongarch_generated_funcs.ll.generated.expected
    M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/loongarch_generated_funcs.ll.nogenerated.expected

  Log Message:
  -----------
  [LoongArch] Switch to the Machine Scheduler (#83759)

The SelectionDAG scheduling preference now becomes source order
scheduling (machine scheduler generates better code -- even without
there being a machine model defined for LoongArch yet).

Most of the test changes are trivial instruction reorderings and
differing register allocations, without any obvious performance impact.

This is similar to commit: 3d0fbafd0bce43bb9106230a45d1130f7a40e5ec


  Commit: 6f5c4f2eacf24cecfc0faf0a204137ce65eecc2d
      https://github.com/llvm/llvm-project/commit/6f5c4f2eacf24cecfc0faf0a204137ce65eecc2d
  Author: Balaji V. Iyer <43187390+bviyer at users.noreply.github.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
    M mlir/lib/Dialect/Vector/Transforms/VectorLinearize.cpp
    M mlir/test/Dialect/Vector/linearize.mlir
    M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp

  Log Message:
  -----------
  [mlir][vector]Add Vector bitwidth target to Linearize Vectorizable and Constant Ops (#83314)

Added a new flag `targetVectorBitwidth` to capture bit-width input.


  Commit: ccf0c8da1a0e6eea5e31fd5872ac864bf7005147
      https://github.com/llvm/llvm-project/commit/ccf0c8da1a0e6eea5e31fd5872ac864bf7005147
  Author: Maksim Panchenko <maks at fb.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M bolt/lib/Rewrite/LinuxKernelRewriter.cpp
    A bolt/test/X86/linux-exceptions.s

  Log Message:
  -----------
  [BOLT] Add reading support for Linux kernel exception table (#83100)

Read Linux exception table and ignore functions with exceptions for now.
Proper support requires an introduction of new control flow since some
instructions with memory access can cause a control flow change.

Hence looking at disassembly or CFG with exceptions annotations is
valuable for code analysis, delay marking functions with exceptions as
non-simple until immediately before emitting the code.


  Commit: 1a67dee089130f06c9c60dccc1463a37d7b4fce8
      https://github.com/llvm/llvm-project/commit/1a67dee089130f06c9c60dccc1463a37d7b4fce8
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    R llvm/include/llvm/ExecutionEngine/Orc/Debugging/VTuneSupportPlugin.h
    R llvm/include/llvm/ExecutionEngine/Orc/TargetProcess/JITLoaderVTune.h
    M llvm/lib/ExecutionEngine/Orc/Debugging/CMakeLists.txt
    R llvm/lib/ExecutionEngine/Orc/Debugging/VTuneSupportPlugin.cpp
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/CMakeLists.txt
    R llvm/lib/ExecutionEngine/Orc/TargetProcess/JITLoaderVTune.cpp
    R llvm/test/ExecutionEngine/JITLink/x86-64/ELF_vtune.s
    M llvm/test/ExecutionEngine/JITLink/x86-64/lit.local.cfg
    M llvm/tools/llvm-jitlink/llvm-jitlink.cpp

  Log Message:
  -----------
  Revert "[ORC][JITLink] Add Intel VTune support to JITLink (#81826)"

This reverts commit 17efdad2296a2757813e4f11d0575ee6fb826e39. It introduces a layering violation: https://github.com/llvm/llvm-project/pull/81826#issuecomment-1977455140


  Commit: 564b81db8541468ce296d3bdcacab05b9581297c
      https://github.com/llvm/llvm-project/commit/564b81db8541468ce296d3bdcacab05b9581297c
  Author: MalaySanghiIntel <148750629+MalaySanghiIntel at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
    M llvm/lib/Target/X86/GISel/X86RegisterBankInfo.cpp
    M llvm/lib/Target/X86/GISel/X86RegisterBankInfo.h
    M llvm/lib/Target/X86/X86GenRegisterBankInfo.def
    M llvm/lib/Target/X86/X86RegisterBanks.td
    A llvm/test/CodeGen/X86/GlobalISel/regbankselect-x87.ll
    M llvm/test/CodeGen/X86/GlobalISel/x86_64-fallback.ll

  Log Message:
  -----------
  Add support for x87 registers on GISel register selection (#83528)

We handle 3 register classes for x87 - rfp32, rfp64 and rfp80.
1. X87 registers are assigned a pseudo register class. We need a new
register bank for these classes.
2. We add bank information and enums for these.
3. Legalizer is updated to allow 32b and 64b even in absence of SSE.
This is required because with SSE enabled, x86 doesn't use fp stack and
instead uses SSE registers.
4. Functions in X86RegisterBankInfo need to decide whether to use the
pseudo classes or SSE-enabled classes. I add MachineInstr as an argument
to static helper function getPartialMappingIdx to this end.

Add/Update tests.


  Commit: 377feaea8c6b2b55adfc56210159986eb5e37c46
      https://github.com/llvm/llvm-project/commit/377feaea8c6b2b55adfc56210159986eb5e37c46
  Author: Shengchen Kan <shengchen.kan at intel.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.h

  Log Message:
  -----------
  [X86][NFC] Clang-format X86DisassemblerDecoder.h

This is to extract NFC in #83863 into a separate commit.


  Commit: 65a8e3a400f23eaa1270a5a000e262df954a4ef6
      https://github.com/llvm/llvm-project/commit/65a8e3a400f23eaa1270a5a000e262df954a4ef6
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

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

  Log Message:
  -----------
  [MLIR] Fix crash in notifyBlockInserted() debug output (NFC)

notifyBlockInserted can be called when inserting a block in a region before
the op is built (like when building a scf::ForOp). This make us defensive
by checking the parent op before printing it.


  Commit: 0fbe45bdb909ee4c1a928cc1da030f8b09860431
      https://github.com/llvm/llvm-project/commit/0fbe45bdb909ee4c1a928cc1da030f8b09860431
  Author: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/test/Preprocessor/riscv-target-features.c
    M llvm/docs/RISCVUsage.rst
    M llvm/lib/Support/RISCVISAInfo.cpp
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/test/CodeGen/RISCV/attributes.ll
    M llvm/test/MC/RISCV/attribute-arch.s
    M llvm/unittests/Support/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISCV] Add support of Sscofpmf (#83831)

This is used in profile, but somehow we missed it.


  Commit: 9dab2e3064a2ad4d5ce65832d605787dc394cb72
      https://github.com/llvm/llvm-project/commit/9dab2e3064a2ad4d5ce65832d605787dc394cb72
  Author: Youngsuk Kim <joseph942010 at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaInit.cpp
    M clang/test/Analysis/stack-addr-ps.c

  Log Message:
  -----------
  [clang][Sema] Warn on return of pointer/reference to compound literal (#83741)

Emit a warning if pointer/reference to compound literal is returned from
a function.

In C, compound literals in block scope are lvalues that have automatic
storage duration. In C++, compound literals in block scope are
temporaries.

In either case, returning a pointer/reference to a compound literal can
cause a use-after-free bug.

Fixes #8678


  Commit: 7cd32688042988d2d02f791dd106286a67041b63
      https://github.com/llvm/llvm-project/commit/7cd32688042988d2d02f791dd106286a67041b63
  Author: Shengchen Kan <shengchen.kan at intel.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/MCTargetDesc/X86InstPrinterCommon.cpp
    M llvm/utils/TableGen/X86RecognizableInstr.cpp

  Log Message:
  -----------
  [X86][TableGen] Fix the mnemonic table for CMPCCXADD

The mnemonic of CMPCCXADD is `cmp${cond}xadd` and the condition code
is in the middle of mnemonic. When generating the function name for
CMPCCXADD, the substring `xadd` should be kept.

Before this patch, the name is `isCMPCC`. After this patch, the name
is `isCMPCCXADD`.


  Commit: cec2073f8e82c2d72a7246300aaa7b2a85ca4012
      https://github.com/llvm/llvm-project/commit/cec2073f8e82c2d72a7246300aaa7b2a85ca4012
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

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

  Log Message:
  -----------
  [clang][Interp] Diagnose comparisions against weak function pointers


  Commit: d016712b2cbeecf13c0d558c7c8932fd66e14847
      https://github.com/llvm/llvm-project/commit/d016712b2cbeecf13c0d558c7c8932fd66e14847
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M utils/bazel/llvm-project-overlay/llvm/enum_targets_gen.bzl
    M utils/bazel/llvm-project-overlay/mlir/tblgen.bzl

  Log Message:
  -----------
  [bzl] Remove obsolete `output_to_genfiles = True` (#83944)

The [bazel docs](https://bazel.build/rules/lib/globals/bzl#rule)
discourage setting this. The comments about being necessary for headers
or genrules seem to be obsolete, at least for the LLVM tree itself.

The effect of this is that generated files will go to `bazel-bin`
instead of `bazel-genfiles`.

One external use was fixed here:
https://github.com/google/jax/commit/32bb3b06132b4256cd8674fb98bce057dc968610.


  Commit: 662d821d44420566cd0bb649f30d7689562bdb88
      https://github.com/llvm/llvm-project/commit/662d821d44420566cd0bb649f30d7689562bdb88
  Author: Aart Bik <ajcbik at google.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_insert_1d.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_insert_2d.mlir

  Log Message:
  -----------
  [mlir][sparse] migrate datastructure tests to sparse_tensor.print (#83956)

Continuing the efforts started in llvm#83357


  Commit: ed6275868bd38ef87dac24ecec7a6f55129bd96d
      https://github.com/llvm/llvm-project/commit/ed6275868bd38ef87dac24ecec7a6f55129bd96d
  Author: Felix (Ting Wang) <Ting.Wang.SH at ibm.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/PowerPC/aix-tls-xcoff-reloc.ll

  Log Message:
  -----------
  [PowerPC][NFC] Update aix-tls-xcoff-reloc.ll (#83764)

Update test case changed by #66316


  Commit: 0c4736338596d6e527e286b7b551af4bb8b63a55
      https://github.com/llvm/llvm-project/commit/0c4736338596d6e527e286b7b551af4bb8b63a55
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/test/Transforms/InstCombine/canonicalize-clamp-like-pattern-between-negative-and-positive-thresholds.ll
    M llvm/test/Transforms/InstCombine/nested-select.ll

  Log Message:
  -----------
  [InstCombine] Simplify nested selects with implied condition (#83739)

This patch does the following simplification:
```
sel1 = select cond1, X, Y 
sel2 = select cond2, sel1, Z
-->
sel2 = select cond2, X, Z if cond2 implies cond1
sel2 = select cond2, Y, Z if cond2 implies !cond1
```
Alive2: https://alive2.llvm.org/ce/z/9A_arU

It cannot be done in CVP/SCCP since we should guarantee that `cond2` is
not an undef.


  Commit: 3cb999c413b7e934828936ae2314b50a84205e89
      https://github.com/llvm/llvm-project/commit/3cb999c413b7e934828936ae2314b50a84205e89
  Author: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/docs/RISCVUsage.rst
    M llvm/lib/Target/RISCV/RISCVFeatures.td

  Log Message:
  -----------
  [RISCV] Remove note of Sscofpmf and add a newline after FeatureStdExtSscofpmf (#83958)

To address comments after committing #83831.


  Commit: 80f9458cf30d13eef21b09042ea590945c5e64db
      https://github.com/llvm/llvm-project/commit/80f9458cf30d13eef21b09042ea590945c5e64db
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M libcxx/docs/FeatureTestMacroTable.rst
    M libcxx/docs/ReleaseNotes/19.rst
    M libcxx/docs/Status/Cxx2cPapers.csv
    M libcxx/include/sstream
    M libcxx/include/version
    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
    A libcxx/test/std/input.output/string.streams/helper_concepts.h
    A libcxx/test/std/input.output/string.streams/helper_string_macros.h
    A libcxx/test/std/input.output/string.streams/helper_types.h
    A libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/string_view.alloc.pass.cpp
    A libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/string_view.mode.alloc.pass.cpp
    A libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/string_view.mode.pass.cpp
    A libcxx/test/std/input.output/string.streams/istringstream/istringstream.members/str.string_view.pass.cpp
    A libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/string_view.alloc.pass.cpp
    A libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/string_view.mode.alloc.pass.cpp
    A libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/string_view.mode.pass.cpp
    A libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.members/str.string_view.pass.cpp
    A libcxx/test/std/input.output/string.streams/stringbuf/stringbuf.cons/string_view.alloc.pass.cpp
    A libcxx/test/std/input.output/string.streams/stringbuf/stringbuf.cons/string_view.mode.alloc.pass.cpp
    A libcxx/test/std/input.output/string.streams/stringbuf/stringbuf.cons/string_view.mode.pass.cpp
    A libcxx/test/std/input.output/string.streams/stringbuf/stringbuf.members/str.string_view.pass.cpp
    A libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/string_view.alloc.pass.cpp
    A libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/string_view.mode.alloc.pass.cpp
    A libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/string_view.mode.pass.cpp
    A libcxx/test/std/input.output/string.streams/stringstream/stringstream.members/str.string_view.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/sstream.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    M libcxx/utils/generate_feature_test_macro_components.py

  Log Message:
  -----------
  [libc++][sstream] P2495R3: Interfacing `stringstream`s with `string_view` (#80552)

Implements P2495R3 <https://wg21.link/P2495R3>
- https://eel.is/c++draft/version.syn#headerref:%3csstream%3e
- https://eel.is/c++draft/stringbuf
- https://eel.is/c++draft/stringbuf.general
- https://eel.is/c++draft/stringbuf.cons
- https://eel.is/c++draft/stringbuf.members
- https://eel.is/c++draft/istringstream
- https://eel.is/c++draft/istringstream.general
- https://eel.is/c++draft/istringstream.cons
- https://eel.is/c++draft/istringstream.members
- https://eel.is/c++draft/ostringstream
- https://eel.is/c++draft/ostringstream.general
- https://eel.is/c++draft/ostringstream.cons
- https://eel.is/c++draft/ostringstream.members
- https://eel.is/c++draft/stringstream
- https://eel.is/c++draft/stringstream.general
- https://eel.is/c++draft/stringstream.cons
- https://eel.is/c++draft/stringstream.members

References:
- https://eel.is/c++draft/string.streams


  Commit: 9b672de9976084872fbca764898ed722dea1dd9b
      https://github.com/llvm/llvm-project/commit/9b672de9976084872fbca764898ed722dea1dd9b
  Author: Francesco Petrogalli <francesco.petrogalli at apple.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    A clang/test/TableGen/target-builtins-prototype-parser.td
    M clang/utils/TableGen/ClangBuiltinsEmitter.cpp

  Log Message:
  -----------
  [clang][Builtins] Parse clang extended vectors types. (#83584)

Clang extended vector types are mangled as follows:

    '_ExtVector<' <lanes> ',' <scalar type> '>'

This is used to defetmine the builtins signature for builtins that
use parameters defined as

    typedef <scalar type> ext_vector_type_<lanes>_<scalar type> __attribute__((ext_vector_type(<lanes>)))

or 

    template <unsigned N, class T>
    using _ExtVector __attribute__((ext_vector_type(N))) = T;

For example:

    typedef double ext_vector_type_4_double __attribute__((ext_vector_type(4)))


  Commit: 90e9e962e18fc4304c6aba81de2bb53069bcd358
      https://github.com/llvm/llvm-project/commit/90e9e962e18fc4304c6aba81de2bb53069bcd358
  Author: Andrei Golubev <andrey.golubev at intel.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Pass/Pass.h
    M mlir/tools/mlir-tblgen/PassGen.cpp

  Log Message:
  -----------
  [mlir][NFC] Apply rule of five to *Pass classes  (#80998)

Define all special member functions for mlir::Pass, mlir::OperationPass,
mlir::PassWrapper and PassGen types since these classes explicitly
specify copy-ctor. This, subsequently, should silence static analysis
checkers that report rule-of-3 / rule-of-5 violations.

Given the nature of the types, however, mark other special member
functions deleted: the semantics of a Pass type object seems to be that
it is only ever created by being wrapped in a smart pointer, so the
special member functions are never to be used externally (except for the
copy-ctor - it is "special" since it is a "delegating" ctor for derived
pass types to use during cloning - see https://reviews.llvm.org/D104302
for details).

Deleting other member functions means that `Pass x(std::move(y))` - that
used to silently work (via copy-ctor) - would fail to compile now. Yet,
as the copy ctors through the hierarchy are under 'protected' access,
the issue is unlikely to appear in practice.

Co-authored-by: Asya Pronina <anastasiya.pronina at intel.com>
Co-authored-by: Harald Rotuna <harald.razvan.rotuna at intel.com>


  Commit: a36b73e5a7f5b2f4b65f67544922be35bf81a67e
      https://github.com/llvm/llvm-project/commit/a36b73e5a7f5b2f4b65f67544922be35bf81a67e
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/lib/Analysis/Presburger/Barvinok.cpp

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


  Commit: 991541814459bbee94db178a1328d344b2869d59
      https://github.com/llvm/llvm-project/commit/991541814459bbee94db178a1328d344b2869d59
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/lib/Analysis/Presburger/Barvinok.cpp

  Log Message:
  -----------
  Apply clang-tidy fixes for modernize-use-emplace in Barvinok.cpp (NFC)


  Commit: 2db8b9413862a159cd77ba47eda56abcda1b6dfd
      https://github.com/llvm/llvm-project/commit/2db8b9413862a159cd77ba47eda56abcda1b6dfd
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Analysis/Presburger/Barvinok.h
    M mlir/lib/Analysis/Presburger/Barvinok.cpp

  Log Message:
  -----------
  Apply clang-tidy fixes for performance-unnecessary-value-param in Barvinok.cpp (NFC)


  Commit: 1934fc6a0cad62cb80d66834e5481cb17f517802
      https://github.com/llvm/llvm-project/commit/1934fc6a0cad62cb80d66834e5481cb17f517802
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/lib/Analysis/Presburger/Barvinok.cpp

  Log Message:
  -----------
  Apply clang-tidy fixes for readability-container-size-empty in Barvinok.cpp (NFC)


  Commit: 1837579bbc9c5e0b49a54e60d99eed3d38b47d3b
      https://github.com/llvm/llvm-project/commit/1837579bbc9c5e0b49a54e60d99eed3d38b47d3b
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-04 (Mon, 04 Mar 2024)

  Changed paths:
    M mlir/lib/Analysis/Presburger/IntegerRelation.cpp

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


  Commit: 46f65e45e0f5ce4cc0edabceebee681231d24687
      https://github.com/llvm/llvm-project/commit/46f65e45e0f5ce4cc0edabceebee681231d24687
  Author: Congcong Cai <congcongcai0907 at 163.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M mlir/lib/IR/PatternMatch.cpp
    A mlir/test/Transforms/gh-77420.mlir

  Log Message:
  -----------
  [mlir]use correct iterator when eraseOp (#83444)

#66771 introduce `llvm::post_order(&r.front())` which is equal to
`r.front().getSuccessor(...)`.
It will visit the succ block of current block. But actually here need to
visit all block of region in reverse order.
Fixes: #77420.


  Commit: eaa9ef678c63bf392ec2d5b736605db7ea7e7338
      https://github.com/llvm/llvm-project/commit/eaa9ef678c63bf392ec2d5b736605db7ea7e7338
  Author: Jinyang He <hejinyang at loongson.cn>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M lld/ELF/Arch/LoongArch.cpp
    A lld/test/ELF/loongarch-reloc-leb128.s

  Log Message:
  -----------
  [lld][LoongArch] Support the R_LARCH_{ADD,SUB}_ULEB128 relocation types (#81133)

For a label difference like `.uleb128 A-B`, MC generates a pair of
R_LARCH_{ADD,SUB}_ULEB128 if A-B cannot be folded as a constant. GNU
assembler generates a pair of relocations in more cases (when A or B is
in a code section with linker relaxation). It is similar to RISCV.

R_LARCH_{ADD,SUB}_ULEB128 relocations are created by Clang and GCC in
`.gcc_except_table` and other debug sections with linker relaxation
enabled. On LoongArch, first read the buf and count the available space.
Then add or sub the value. Finally truncate the expected value and fill
it into the available space.


  Commit: 0e337c67c8b9b0e04fb47712faba204c8d999af7
      https://github.com/llvm/llvm-project/commit/0e337c67c8b9b0e04fb47712faba204c8d999af7
  Author: MalaySanghiIntel <148750629+MalaySanghiIntel at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

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

  Log Message:
  -----------
  Replace copy with a reference. (#82485)

These are relatively larger structures and we don't update them so ref
should be fine


  Commit: 3105cfe783d861e63c647469cc3a6c9b91f8bb4a
      https://github.com/llvm/llvm-project/commit/3105cfe783d861e63c647469cc3a6c9b91f8bb4a
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/FileCheck/FileCheck.cpp
    A llvm/test/FileCheck/empty-variable-name.txt

  Log Message:
  -----------
  [FileCheck] Fix parsing empty global and pseudo variable names (#83667)

Reland #82595 with fixes of build failures related to colored output.
See https://lab.llvm.org/buildbot/#/builders/139/builds/60549
Use `%ProtectFileCheckOutput` to avoid colored output.
Original commit message below.

In `Pattern::parseVariable`, for global variables (those starting with '$')
and for pseudo variables (those starting with '@') the first character is
consumed before actual variable name parsing. If the name is empty, it
leads to out-of-bound access to the corresponding `StringRef`.

This patch adds an if statement against the case described.


  Commit: ad5aea3712860f8173ea64773014f5b48fd08542
      https://github.com/llvm/llvm-project/commit/ad5aea3712860f8173ea64773014f5b48fd08542
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M flang/test/Fir/memory-allocation-opt.fir

  Log Message:
  -----------
  Revert "[flang] disable memory-allocation-opt.fir test on windows" (#83822)

Reverts llvm/llvm-project#83535
Bug fixed by https://github.com/llvm/llvm-project/pull/83768


  Commit: 74dfded444ed97c1fe93cc541de1fcdd3a7f62ab
      https://github.com/llvm/llvm-project/commit/74dfded444ed97c1fe93cc541de1fcdd3a7f62ab
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M flang/docs/Extensions.md
    M flang/lib/Lower/ConvertExprToHLFIR.cpp
    M flang/test/Lower/HLFIR/structure-constructor.f90

  Log Message:
  -----------
  [flang] Deallocate structure constructor allocatable components (#83824)

Allocatable components of structure constructors were not deallocated.
Deallocate them without calling final subroutines.
This was already properly done for array constructors.


  Commit: 2984699a3d9266926302d65dc57993f875be67e5
      https://github.com/llvm/llvm-project/commit/2984699a3d9266926302d65dc57993f875be67e5
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M flang/lib/Lower/ConvertCall.cpp
    A flang/test/HLFIR/assumed-type-actual-args.f90

  Log Message:
  -----------
  [flang] Implement passing of assumed-type actual arguments. (#83851)

Passing `TYPE(*)`actual to `TYPE(*)` dummy was left TODO. Implement it.
The difference with other actual arguments is that `TYPE(*)` are not
represented as Fortran::evaluate::Expr<T>, so inquiries on
evaluate::Expr<T> must be updated to use evaluate::ActualArgument or
also handle semantics::Symbol case (except in portion of the code where
`TYPE(*)` is impossible, where asserts are added).


  Commit: 9a894e7d84892489826375f94c08ab16ccacc4bb
      https://github.com/llvm/llvm-project/commit/9a894e7d84892489826375f94c08ab16ccacc4bb
  Author: Shourya Goel <shouryagoel10000 at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/utils/git/github-automation.py

  Log Message:
  -----------
  [Github Automation] Allow colon after cherry-pick command (#81002)

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

Removed unsupported branch command and changed Regex to
accept /cherry-pick: command.


  Commit: ff66e9b7e2fad71d1c65e884d6f94fb6ea5bdc21
      https://github.com/llvm/llvm-project/commit/ff66e9b7e2fad71d1c65e884d6f94fb6ea5bdc21
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/docs/Frontend/PerformanceTips.rst

  Log Message:
  -----------
  [Docs] Update frontend perfomance tips about loads/stores (#83833)

This contains two updates:

* Generalize the "no loads stores of aggregates" to "no values of
aggregate type" in general, and be clearer about the exceptions where it
is okay to use them.
 * Mention that you should not load/store non-byte-size types.


  Commit: d773c00e52f1acd68267c6f2f5bfa269b73810a0
      https://github.com/llvm/llvm-project/commit/d773c00e52f1acd68267c6f2f5bfa269b73810a0
  Author: cor3ntin <corentinjabot at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaExpr.cpp
    M clang/test/SemaCXX/cxx2a-consteval-default-params.cpp
    M clang/test/SemaCXX/source_location.cpp

  Log Message:
  -----------
  [Clang] Fix looking for immediate calls in default arguments. (#80690)

Due to improper use of RecursiveASTVisitor.

Fixes #80630


  Commit: 690bf64f077a281d434537b0907c9fc170123dcc
      https://github.com/llvm/llvm-project/commit/690bf64f077a281d434537b0907c9fc170123dcc
  Author: Amirreza Ashouri <ar.ashouri999 at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/test/Sema/static-assert.c
    M clang/test/SemaCXX/type-traits-nonobject.cpp

  Log Message:
  -----------
  [clang] Support `__is_trivially_copyable(int()&)==false` (#81298)

IMHO it would be productive to make a similar change for `typeid`, in
`ParseCXXTypeid`, in order to improve Clang's error message for
https://godbolt.org/z/oKKWxeYra
But that might be better done by adding a new DeclaratorContext
specifically for TypeidArg, instead of pretending that the argument to
`typeid` is a template argument, because I don't know what else that
change might affect.

Fixes #77585


  Commit: 686223376b43bf8489aed18262c60f8dbffdddbd
      https://github.com/llvm/llvm-project/commit/686223376b43bf8489aed18262c60f8dbffdddbd
  Author: Yeting Kuo <46629943+yetingk at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/docs/LangRef.rst

  Log Message:
  -----------
  [LangRef] Add aligned attribute description into masked.compress/expandload sections. (#83808)

Align attribute has already been used for masked.compress/expandload in
commit #83519, #83763 and #83516.


  Commit: 88414c8862c58fa4e708a092acb87bd0687121ce
      https://github.com/llvm/llvm-project/commit/88414c8862c58fa4e708a092acb87bd0687121ce
  Author: Balazs Benics <benicsbalazs at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
    M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp

  Log Message:
  -----------
  [analyzer][NFC] Remove dead code (#83968)

Remove the unused method `CoreEngine::ExecuteWorkListWithInitialState`.


  Commit: c5d16e76892dc9dc733a844e46bf03c9c6e1d759
      https://github.com/llvm/llvm-project/commit/c5d16e76892dc9dc733a844e46bf03c9c6e1d759
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

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

  Log Message:
  -----------
  [IR] Update comment in Verifier::visitPHINode

Since svn r133708 visitPHINode no longer has to check basic block
argument types. Better 13 years late than never!


  Commit: 16f2a1fb97de0b0f57b025b1d9e79b1798a2c38f
      https://github.com/llvm/llvm-project/commit/16f2a1fb97de0b0f57b025b1d9e79b1798a2c38f
  Author: Adrian Kuegel <akuegel at google.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M mlir/include/mlir/IR/BuiltinAttributeInterfaces.h
    M mlir/lib/Bindings/Python/TransformInterpreter.cpp

  Log Message:
  -----------
  [mlir] Apply ClangTidy findings

move constructors should be marked noexcept


  Commit: 56abb8d5355420cf7f66183f2d526009471b4fcc
      https://github.com/llvm/llvm-project/commit/56abb8d5355420cf7f66183f2d526009471b4fcc
  Author: Graham Hunter <graham.hunter at arm.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

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

  Log Message:
  -----------
  [AArch64] Be stricter about insert/extract index

Post-commit fixup patch for a request on
https://github.com/llvm/llvm-project/pull/81135


  Commit: 0709eeb583bd6cc029019c6ec2b3e210ff6d402d
      https://github.com/llvm/llvm-project/commit/0709eeb583bd6cc029019c6ec2b3e210ff6d402d
  Author: Adrian Kuegel <akuegel at google.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M mlir/include/mlir/IR/BuiltinAttributeInterfaces.h

  Log Message:
  -----------
  [mlir] Followup fix, added noexcept in wrong place


  Commit: b585c43dccb2c608f698419a9c8d7645d3120fdb
      https://github.com/llvm/llvm-project/commit/b585c43dccb2c608f698419a9c8d7645d3120fdb
  Author: Kiran Chandramohan <kiran.chandramohan at arm.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    A flang/test/Lower/OpenMP/workshare.f90

  Log Message:
  -----------
  [Flang][OpenMP] : Add a temporary lowering for workshare directive (#78268)

As a temporary solution, lower workshare to the single directive


  Commit: a668846202bcc34b1742f300ba1eb1a0e64fa36d
      https://github.com/llvm/llvm-project/commit/a668846202bcc34b1742f300ba1eb1a0e64fa36d
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    A llvm/test/CodeGen/RISCV/rvv/pr83920.ll

  Log Message:
  -----------
  [DAGCombiner] Handle extending EXTRACT_VECTOR_ELTs in calculateByteProvider (#83963)

An EXTRACT_VECTOR_ELT can extend the element to the width of its result
type, leaving the high bits undefined. Previously if we attempted to
query the bytes in these high bits we would recurse and hit an
assertion. This fixes it by bailing if the index is outside of the
vector element size.

I think the assertion Index < ByteWidth may still be incorrect, since
ByteWidth is calculated from Op.getValueSizeInBits(). I believe this
should be Op.getScalarValueSizeInBits() whenever VectorIndex is set
since we're querying the element now, not the vector. But I couldn't
think of a test case to trigger it. It can be addressed in a follow-up
patch.

Fixes #83920


  Commit: 762f762504967efbe159db5c737154b989afc9bb
      https://github.com/llvm/llvm-project/commit/762f762504967efbe159db5c737154b989afc9bb
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/BUFInstructions.td

  Log Message:
  -----------
  [AMDGPU] Rename get_MUBUF_ps and use it for MTBUF too. NFC. (#83991)

This allows removing a couple of MTBUF helper (multi)classes.


  Commit: 923ddf65f4e21ec67018cf56e823895de18d83bc
      https://github.com/llvm/llvm-project/commit/923ddf65f4e21ec67018cf56e823895de18d83bc
  Author: AtariDreams <83477269+AtariDreams at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/test/CodeGenObjC/constant-non-fragile-ivar-offset.m

  Log Message:
  -----------
  [ObjC] Check entire chain of superclasses to see if class layout is statically known (#81335)

As of now, we only check if a class directly inherits from NSObject to
determine if said class has fixed offsets and can therefore "opt-out"
from the non-fragile ABI for ivars.

However, if an NSObject subclass has fixed offsets, then so must the
subclasses of that subclass, so this allows us to optimize instances of
subclasses of subclasses that inherit from NSObject and so on.

To determine this, we need to find that the compiler can see the
implementation of each intermediate class, as that means it is
statically linked.

Fixes: #81369


  Commit: 191f7678f7a76436b2b368d2c15f5ed61b9c5e2d
      https://github.com/llvm/llvm-project/commit/191f7678f7a76436b2b368d2c15f5ed61b9c5e2d
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/2007-03-15-GEP-Idx-Sink.ll

  Log Message:
  -----------
  [X86] 2007-03-15-GEP-Idx-Sink.ll - regenerate test checks


  Commit: 49f95052c8cd6e611bd46e5d2730b432f1df6815
      https://github.com/llvm/llvm-project/commit/49f95052c8cd6e611bd46e5d2730b432f1df6815
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/pr59305.ll

  Log Message:
  -----------
  [X86] pr59305.ll - replace "X86-64" check prefix with "X64"


  Commit: d1d2932cb1dc24e0c8149f07b75599981ac405a7
      https://github.com/llvm/llvm-project/commit/d1d2932cb1dc24e0c8149f07b75599981ac405a7
  Author: martinboehme <mboehme at google.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/unittests/Support/RegexTest.cpp

  Log Message:
  -----------
  [Support][NFC] Add test documenting that empty `Regex` pattern matches nothing. (#83849)

I was wondering about this when I recently used `Regex`, and I thought
it would
be nice to have a test documenting this behavior.


  Commit: 20895965b2ed1bd037c64430dba98245ffa1232b
      https://github.com/llvm/llvm-project/commit/20895965b2ed1bd037c64430dba98245ffa1232b
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/test/CodeGen/NVPTX/i16x2-instructions.ll

  Log Message:
  -----------
  [NVPTX] Remove sub.s16x2 instruction

According to the PTX ISA this doesn't exist (and ptxas rejects it)

See https://github.com/pytorch/pytorch/issues/118589


  Commit: 94a0dd5a1960e1ace0a161228f91c2e18865d061
      https://github.com/llvm/llvm-project/commit/94a0dd5a1960e1ace0a161228f91c2e18865d061
  Author: SahilPatidar <89641424+SahilPatidar at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/test/Transforms/InstCombine/cast-int-fcmp-eq-0.ll
    M llvm/test/Transforms/InstCombine/clamp-to-minmax.ll
    M llvm/test/Transforms/InstCombine/sitofp.ll

  Log Message:
  -----------
  [InstCombine] Fix Failure to convert vector fp comparisons that can be represented as integers #82241 (#83274)

Resolve #82241

---------

Co-authored-by: SahilPatidar <patidarsahil at 2001gmail.com>


  Commit: de1f33873beff93063577195e1214a9509e229e0
      https://github.com/llvm/llvm-project/commit/de1f33873beff93063577195e1214a9509e229e0
  Author: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/include/llvm/Target/TargetSchedule.td
    M llvm/test/TableGen/MacroFusion.td
    M llvm/utils/TableGen/MacroFusionPredicatorEmitter.cpp

  Log Message:
  -----------
  [TableGen] Fix wrong codegen of BothFusionPredicateWithMCInstPredicate (#83990)

We should generate the `MCInstPredicate` twice, one with `FirstMI`
and another with `SecondMI`.


  Commit: 4693efe19c1cbb19ecac61e46802ffe74bd1a7ce
      https://github.com/llvm/llvm-project/commit/4693efe19c1cbb19ecac61e46802ffe74bd1a7ce
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/BUFInstructions.td

  Log Message:
  -----------
  [AMDGPU] Remove Base_MUBUF_Real_Atomic_gfx11. NFC. (#83994)

This class only existed to set the dlc bit for GFX11 atomics. It is
simpler to set dlc for all loads/stores/atomics in the base class.


  Commit: 67a7a5e89d31cc332f2d782c30623dd3ddbd0862
      https://github.com/llvm/llvm-project/commit/67a7a5e89d31cc332f2d782c30623dd3ddbd0862
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/BUFInstructions.td

  Log Message:
  -----------
  [AMDGPU] Only use the BUF Base_ prefix for multiple architectures. NFC.

The Base_ prefix seems redundant on a class that is only used for GFX11.


  Commit: 90e97e71060cea8cb8bc4099d724d1fe9912cfc4
      https://github.com/llvm/llvm-project/commit/90e97e71060cea8cb8bc4099d724d1fe9912cfc4
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M libc/cmake/modules/LLVMLibCTestRules.cmake

  Log Message:
  -----------
  [libc] Disable verbose logging messages on hermetic tests (#83954)

Summary:
The other test locations only give these messages when we are in verbose
logging mode. The average user does not care about which tests are not
being built, and most platforms will have missing tests.


  Commit: 341d674b6f1863d027ed30c44a14cd32599eb42d
      https://github.com/llvm/llvm-project/commit/341d674b6f1863d027ed30c44a14cd32599eb42d
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SchedA510.td
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseN2.td
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseV1.td
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseV2.td
    M llvm/lib/Target/AArch64/SVEInstrFormats.td
    M llvm/test/CodeGen/AArch64/sve-fixed-length-mask-opt.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-gather.ll
    M llvm/test/CodeGen/AArch64/sve-fp-int-min-max.ll
    M llvm/test/CodeGen/AArch64/sve-gather-scatter-dag-combine.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-ff-gather-loads-32bit-scaled-offsets.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-ff-gather-loads-32bit-unscaled-offsets.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-ff-gather-loads-64bit-scaled-offset.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-ff-gather-loads-64bit-unscaled-offset.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-ff-gather-loads-vector-base-imm-offset.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-ff-gather-loads-vector-base-scalar-offset.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-ffr-manipulation.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-loads-ff.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-loads-nf.ll
    M llvm/test/CodeGen/AArch64/sve-ldnf1.mir
    M llvm/test/CodeGen/AArch64/sve-masked-gather-legalize.ll
    M llvm/test/CodeGen/AArch64/sve-ptest-removal-rdffr.mir
    M llvm/test/tools/llvm-mca/AArch64/A64FX/A64FX-sve-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A510-sve-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-sve-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-sve-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-sve-instructions.s

  Log Message:
  -----------
  [LLVM][AArch64][CodeGen] Mark FFR as a reserved register. (#83437)

This allows the removal of FFR related psuedo nodes that only existed to
work round machine verifier failures.


  Commit: c00c901f1cb714ebd053de5c6af564dc81754d3e
      https://github.com/llvm/llvm-project/commit/c00c901f1cb714ebd053de5c6af564dc81754d3e
  Author: Atousa Duprat <atousa.p at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/Interp/Interp.h
    M clang/test/AST/Interp/c.c
    M clang/test/C/drs/dr0xx.c
    M clang/test/C/drs/dr2xx.c
    M clang/test/Sema/integer-overflow.c
    M clang/test/Sema/switch-1.c
    M clang/test/SemaCXX/enum.cpp
    M clang/test/SemaCXX/integer-overflow.cpp
    M clang/test/SemaObjC/integer-overflow.m
    M clang/test/SemaObjC/objc-literal-nsnumber.m
    M llvm/include/llvm/ADT/APInt.h
    M llvm/include/llvm/ADT/StringExtras.h
    M llvm/lib/Support/APInt.cpp
    M llvm/unittests/ADT/APIntTest.cpp

  Log Message:
  -----------
  [clang] Use separator for large numeric values in overflow diagnostic (#80939)

Add functionality to APInt::toString() that allows it to insert
separators between groups of digits, using the C++ literal
separator ' between groups.

Fixes issue #58228

Reviewers:  @AaronBallman, @cjdb, @tbaederr


  Commit: d95a0d7c0ff324c1e84606d26591416e6bf02984
      https://github.com/llvm/llvm-project/commit/d95a0d7c0ff324c1e84606d26591416e6bf02984
  Author: Yeting Kuo <46629943+yetingk at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/test/CodeGen/X86/masked_compressstore_isel.ll
    A llvm/test/CodeGen/X86/masked_expandload_isel.ll

  Log Message:
  -----------
  [DAG] Teach SelectionDAGBuilder to read parameter alignment of compressstore/expandload. (#83763)

Previously SelectionDAGBuilder used ABI alignment for
compressstore/expandload. This patch allows SelectionDAGBuilder to use
parameter alignment like vp intrinsics. This does not follow the
original code to default use vector type alignment, since it is possible
implemented to unaligned vector alignment.


  Commit: d51fcd4ed86ac6075c8a25b053c2b66051feaf62
      https://github.com/llvm/llvm-project/commit/d51fcd4ed86ac6075c8a25b053c2b66051feaf62
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    A llvm/test/Transforms/InstCombine/pr83931.ll
    M llvm/test/Transforms/InstCombine/select.ll
    M llvm/test/Transforms/InstCombine/vscale_cmp.ll

  Log Message:
  -----------
  [InstCombine] Handle scalable splat in `getFlippedStrictnessPredicateAndConstant` (#83980)

This patch adds support for canonicalization of icmp with a scalable
splat. Some optimizations assume that `icmp pred X, APInt C` is in
canonical form.

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


  Commit: e84182af919d136d74b75ded4d599b38fb47dfb0
      https://github.com/llvm/llvm-project/commit/e84182af919d136d74b75ded4d599b38fb47dfb0
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/test/Transforms/Inline/X86/call-abi-compatibility.ll

  Log Message:
  -----------
  [X86][Inline] Skip inline asm in inlining target feature check (#83820)

When inlining across functions with different target features, we
perform roughly two checks:
 1. The caller features must be a superset of the callee features.
2. Calls in the callee cannot use types where the target features would
change the call ABI (e.g. by changing whether something is passed in a
zmm or two ymm registers). The latter check is very crude right now.

The latter check currently also catches inline asm "calls". I believe
that inline asm should be excluded from this check, as it is independent
from the usual call ABI, and instead governed by the inline asm
constraint string.

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


  Commit: 894f52fc0d4adbe8782e97ce7dd100da02abf020
      https://github.com/llvm/llvm-project/commit/894f52fc0d4adbe8782e97ce7dd100da02abf020
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/BUFInstructions.td

  Log Message:
  -----------
  [AMDGPU] Use BUF multiclasses to reduce repetition. NFC. (#84003)

Define BUF Real instructions with this general pattern for all
architectures (not just GFX11):

  multiclass Something_Real_gfx11<...> {
    defvar ps = !cast<Pseudo>(NAME);
    def _gfx11 : ...;
  }

This allows removing a huge amount of repetition in the definitions of
individual Real instructions, where they would have to !cast their own
name to a Pseudo and pass that in as a class argument.


  Commit: a642eb89bdaf10c6b4994fc1187de27b441236ed
      https://github.com/llvm/llvm-project/commit/a642eb89bdaf10c6b4994fc1187de27b441236ed
  Author: Krystian Stasiowski <sdkrystian at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    A clang/test/SemaTemplate/unqual-unresolved-using-value.cpp

  Log Message:
  -----------
  [Clang][Sema] Fix crash when using name of UnresolvedUsingValueDecl with template arguments (#83842)

The following snippet causes a crash:
```
template<typename T>
struct A : T {
  using T::f;
  void f();

  void g() {
    f<int>(); // crash here
  }
};
```
This happens because we cast the result of `getAsTemplateNameDecl` as a
`TemplateDecl` in `Sema::ClassifyName`, which we cannot do for an
`UnresolvedUsingValueDecl`. This patch fixes the crash by considering a name
to be that of a template if _any_ function declaration is found per [temp.names] p3.3.


  Commit: 0d8e16a0967cfd2dbcd00c7bb7a56f476c0e64fb
      https://github.com/llvm/llvm-project/commit/0d8e16a0967cfd2dbcd00c7bb7a56f476c0e64fb
  Author: Balazs Benics <benicsbalazs at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/lib/StaticAnalyzer/Checkers/CheckerDocumentation.cpp

  Log Message:
  -----------
  [analyzer][NFC] Make CheckerDocumentation checker in-sync with actual checker callbacks (#83973)

In PR #83677 I was surprised to see that outdated checker callback
signatures are a problem. It turns out, we need the `registerChecker...`
function to invoke the `Mgr.registerChecker<>()` which would instantiate
the `_register` calls, that would take the address of the defined
checker callbacks. Consequently, if the expected signatures mismatch, it
won't compile from now on, so we have static guarantee that this issue
never pops up again.

Given we need the `register` call, at this point we could just hook this
checker into the `debug` package and make it never registered. It
shouldn't hurt anyone :)


  Commit: 4ce737bfd6fd0aafb436eb220c3e724bfc831db4
      https://github.com/llvm/llvm-project/commit/4ce737bfd6fd0aafb436eb220c3e724bfc831db4
  Author: Douglas Deslauriers <48334845+vapdrs at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/lib/Sema/SemaChecking.cpp
    A clang/test/SemaCXX/warn-unsequenced-paren-list-init.cpp

  Log Message:
  -----------
  [clang] Sequence C++20 Parenthesized List Init (#83476)

Parenthesized list intializers are sequenced operations, see C++20
[decl.init]p16.5 and [decl.init]p16.6.2.2 for more details.

Fixes #83474


  Commit: 4cf8b298cf1837e75243a299ddefd59e6ed80e1b
      https://github.com/llvm/llvm-project/commit/4cf8b298cf1837e75243a299ddefd59e6ed80e1b
  Author: bcahoon <59846893+bcahoon at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
    A llvm/test/CodeGen/AMDGPU/promote-alloca-non-constant-index.ll

  Log Message:
  -----------
  [AMDGPU][PromoteAlloca] Correctly handle a variable vector index (#83597)

The promote alloca to vector transformation assumes that the
vector index is a constant value. If it is not a constant, then
either an assert occurs or the tranformation generates an
incorrect index.


  Commit: d9b435c24ddddcc8148fd97b42f6bb1124e52307
      https://github.com/llvm/llvm-project/commit/d9b435c24ddddcc8148fd97b42f6bb1124e52307
  Author: Weining Lu <luweining at loongson.cn>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M lld/test/ELF/loongarch-reloc-leb128.s

  Log Message:
  -----------
  [lld][test] Fix sanitizer buildbot failure

Buildbot failure:
https://lab.llvm.org/buildbot/#/builders/5/builds/41530/steps/9/logs/stdio


  Commit: a1a590ef120c273b5c278f2412c4c4eac5280f23
      https://github.com/llvm/llvm-project/commit/a1a590ef120c273b5c278f2412c4c4eac5280f23
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/VectorUtils.h
    M llvm/lib/Analysis/VectorUtils.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    A llvm/test/Transforms/InstCombine/pr83947.ll

  Log Message:
  -----------
  [InstCombine] Fix miscompilation in PR83947 (#83993)

https://github.com/llvm/llvm-project/blob/762f762504967efbe159db5c737154b989afc9bb/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp#L394-L407

Comment from @topperc:
> This transforms assumes the mask is a non-zero splat. We only know its
a splat and not provably all 0s. The mask is a constexpr that includes
the address of the global variable. We can't resolve the constant
expression to an exact value.

Fixes #83947.


  Commit: b2c16e7ff48a41eead168e1b95ed0c7813dd3b9c
      https://github.com/llvm/llvm-project/commit/b2c16e7ff48a41eead168e1b95ed0c7813dd3b9c
  Author: James Westwood <james.westwood at arm.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp
    M llvm/lib/Target/ARM/ARMFrameLowering.cpp
    M llvm/lib/Target/ARM/ARMSubtarget.cpp
    M llvm/lib/Target/ARM/ARMSubtarget.h
    M llvm/lib/Target/ARM/Thumb1FrameLowering.cpp
    R llvm/test/CodeGen/Thumb2/pacbti-m-frame-chain.ll

  Log Message:
  -----------
  Revert "[ARM] R11 not pushed adjacent to link register with PAC-M and… (#84019)

… AAPCS frame chain fix (#82801)"

This reverts commit 00e4a4197137410129d4725ffb82bae9ce44bdde. This patch
was found to cause miscompilations and compilation failures.


  Commit: f3be8427288a8888a0343e5f9ea7bf6573897ae5
      https://github.com/llvm/llvm-project/commit/f3be8427288a8888a0343e5f9ea7bf6573897ae5
  Author: Ingo Müller <ingomueller at google.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M mlir/CMakeLists.txt
    M mlir/include/mlir/Config/mlir-config.h.cmake
    M mlir/lib/Dialect/GPU/Transforms/ModuleToBinary.cpp
    M mlir/lib/Target/LLVM/ROCDL/Target.cpp
    M mlir/unittests/Target/LLVM/SerializeROCDLTarget.cpp
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir] Expose MLIR_ROCM_CONVERSIONS_ENABLED in mlir-config.h. (#83977)

This is a follow up of #83004, which made the same change for
`MLIR_CUDA_CONVERSIONS_ENABLED`. As the previous PR, this PR commit
exposes mentioned CMake variable through `mlir-config.h` and uses the
macro that is introduced with the same name. This replaces the macro
`MLIR_ROCM_CONVERSIONS_ENABLED`, which the CMake files previously
defined manually.


  Commit: 1c2b79add6ec913441a3420ba13c03de0e20fd4f
      https://github.com/llvm/llvm-project/commit/1c2b79add6ec913441a3420ba13c03de0e20fd4f
  Author: Alexey Bataev <5361294+alexey-bataev at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/RISCV/strided-loads-vectorized.ll

  Log Message:
  -----------
  [SLP]Add runtime stride support for strided loads.

Added support for runtime strides.

Reviewers: preames, RKSimon

Reviewed By: preames

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


  Commit: a64975f9660e02f5f6688f8bcc55daf9eaa99fda
      https://github.com/llvm/llvm-project/commit/a64975f9660e02f5f6688f8bcc55daf9eaa99fda
  Author: Fehr Mathieu <mathieu.fehr at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

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

  Log Message:
  -----------
  [mlir][irdl] Add support for basic structural constraints in tblgen-to-irdl (#82862)


  Commit: fac791d4e1d879c19bfbbbfa89dc4186f56af34c
      https://github.com/llvm/llvm-project/commit/fac791d4e1d879c19bfbbbfa89dc4186f56af34c
  Author: Benoit Jacob <jacob.benoit.1 at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/CMakeLists.txt

  Log Message:
  -----------
  Export `LLVM_VERSION_MAJOR` CMake variable as a directory property (#83346)

This allows users who include `llvm-project` as a subrepository to
access the `LLVM_VERSION_MAJOR` variable on par with if they were
relying on an installed LLVM and `FindLLVM.cmake`. They just need to do
something like:

```
  get_directory_property(LLVM_VERSION_MAJOR DIRECTORY "third_party/llvm-project/llvm" LLVM_VERSION_MAJOR)
```

Context: https://github.com/openxla/iree/pull/16606 -- like other
projects with similar needs that I found by some googling, our
work-around had been to rely on the CMake cached variable
`CLANG_EXECUTABLE_VERSION`. Being cached, it over time inevitably ended
up having a wrong value.


  Commit: a691f65a845d6d5e639a83e8240a2543663c103a
      https://github.com/llvm/llvm-project/commit/a691f65a845d6d5e639a83e8240a2543663c103a
  Author: Oleksandr "Alex" Zinenko <zinenko at google.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M mlir/python/mlir/dialects/arith.py
    M mlir/test/python/dialects/arith_dialect.py

  Log Message:
  -----------
  [mlir][py] better support for arith.constant construction (#83259)

Arithmetic constants for vector types can be constructed from objects
implementing Python buffer protocol such as `array.array`. Note that
until Python 3.12, there is no typing support for buffer protocol
implementers, so the annotations use array explicitly.


  Commit: 2fe81edef6f0b35abffbbc59b649b30ea9c15a62
      https://github.com/llvm/llvm-project/commit/2fe81edef6f0b35abffbbc59b649b30ea9c15a62
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/ValueTracking.h
    M llvm/include/llvm/IR/Dominators.h
    M llvm/include/llvm/Transforms/Scalar/Reassociate.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Transforms/Coroutines/CoroElide.cpp
    M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
    M llvm/lib/Transforms/Coroutines/Coroutines.cpp
    M llvm/lib/Transforms/IPO/ArgumentPromotion.cpp
    M llvm/lib/Transforms/IPO/Attributor.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp
    M llvm/lib/Transforms/IPO/GlobalOpt.cpp
    M llvm/lib/Transforms/IPO/IROutliner.cpp
    M llvm/lib/Transforms/IPO/OpenMPOpt.cpp
    M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
    M llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
    M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/KCFI.cpp
    M llvm/lib/Transforms/ObjCARC/ObjCARC.cpp
    M llvm/lib/Transforms/ObjCARC/ObjCARC.h
    M llvm/lib/Transforms/ObjCARC/ObjCARCContract.cpp
    M llvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp
    M llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
    M llvm/lib/Transforms/Scalar/DivRemPairs.cpp
    M llvm/lib/Transforms/Scalar/GVN.cpp
    M llvm/lib/Transforms/Scalar/GuardWidening.cpp
    M llvm/lib/Transforms/Scalar/IndVarSimplify.cpp
    M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
    M llvm/lib/Transforms/Scalar/JumpThreading.cpp
    M llvm/lib/Transforms/Scalar/LICM.cpp
    M llvm/lib/Transforms/Scalar/LoopFlatten.cpp
    M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
    M llvm/lib/Transforms/Scalar/LoopLoadElimination.cpp
    M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
    M llvm/lib/Transforms/Scalar/NaryReassociate.cpp
    M llvm/lib/Transforms/Scalar/NewGVN.cpp
    M llvm/lib/Transforms/Scalar/PlaceSafepoints.cpp
    M llvm/lib/Transforms/Scalar/Reassociate.cpp
    M llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
    M llvm/lib/Transforms/Scalar/SROA.cpp
    M llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp
    M llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
    M llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp

  Log Message:
  -----------
  [NFC][RemoveDIs] Insert instruction using iterators in Transforms/

As part of the RemoveDIs project we need LLVM to insert instructions using
iterators wherever possible, so that the iterators can carry a bit of
debug-info. This commit implements some of that by updating the contents of
llvm/lib/Transforms/Utils to always use iterator-versions of instruction
constructors.

There are two general flavours of update:
 * Almost all call-sites just call getIterator on an instruction
 * Several make use of an existing iterator (scenarios where the code is
   actually significant for debug-info)
The underlying logic is that any call to getFirstInsertionPt or similar
APIs that identify the start of a block need to have that iterator passed
directly to the insertion function, without being converted to a bare
Instruction pointer along the way.

Noteworthy changes:
 * FindInsertedValue now takes an optional iterator rather than an
   instruction pointer, as we need to always insert with iterators,
 * I've added a few iterator-taking versions of some value-tracking and
   DomTree methods -- they just unwrap the iterator. These are purely
   convenience methods to avoid extra syntax in some passes.
 * A few calls to getNextNode become std::next instead (to keep in the
   theme of using iterators for positions),
 * SeparateConstOffsetFromGEP has it's insertion-position field changed.
   Noteworthy because it's not a purely localised spelling change.

All this should be NFC.


  Commit: a41bcb3930534ef1525b4fc30e53e818b39e2b60
      https://github.com/llvm/llvm-project/commit/a41bcb3930534ef1525b4fc30e53e818b39e2b60
  Author: Weining Lu <luweining at loongson.cn>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M lld/ELF/Arch/LoongArch.cpp

  Log Message:
  -----------
  [lld][LoongArch] Fix handleUleb128


  Commit: 6409c21857373bbb5563b37c3bacc066ad633658
      https://github.com/llvm/llvm-project/commit/6409c21857373bbb5563b37c3bacc066ad633658
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/ScalarEvolutionExpander.h
    A llvm/test/Transforms/LoopStrengthReduce/X86/pr83404.ll

  Log Message:
  -----------
  [SCEVExpander] Use PoisoningVH for OrigFlags

It's common to delete some instructions after using SCEVExpander,
while it is still live (but will not be used afterwards). In that
case, the AssertingVH may trigger. Replace it with a PoisoningVH
so that we only detect the case where the SCEVExpander actually is
used in a problematic fashion after the instruction removal.

The alternative would be to add clear() calls to more code paths.

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


  Commit: 08e036e734fe842cde9af13fceb8bb3d951b56a6
      https://github.com/llvm/llvm-project/commit/08e036e734fe842cde9af13fceb8bb3d951b56a6
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    A llvm/test/Transforms/PhaseOrdering/X86/pr67803.ll

  Log Message:
  -----------
  [PhaseOrdering][X86] Add test coverage for #67803


  Commit: da63746bdfaf8a077131d932d04c1e349e715536
      https://github.com/llvm/llvm-project/commit/da63746bdfaf8a077131d932d04c1e349e715536
  Author: Natalie Chouinard <sudonatalie at google.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M .github/workflows/containers/github-action-ci/stage2.Dockerfile

  Log Message:
  -----------
  [infra] Add git to Linux container (#82687)

Fixes #82646


  Commit: ec7062d9d822df42dee6dccada13f42798976f3c
      https://github.com/llvm/llvm-project/commit/ec7062d9d822df42dee6dccada13f42798976f3c
  Author: David Goldman <dallasftball at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

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

  Log Message:
  -----------
  [clangd] Add metric for rename decl kind (#83867)

This will give us insight into what users are renaming in practice - for
instance, try to gauge the impact of the ObjC rename support.


  Commit: 88d82b747cdc521686e6bbc108b021753842a902
      https://github.com/llvm/llvm-project/commit/88d82b747cdc521686e6bbc108b021753842a902
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M libc/src/__support/blockstore.h
    M libc/src/__support/integer_to_string.h
    M libc/src/__support/math_extras.h
    M libc/src/math/generic/hypotf.cpp
    M libc/src/string/memory_utils/op_generic.h
    M libc/src/string/memory_utils/op_x86.h
    M libc/src/string/memory_utils/utils.h
    M libc/src/string/memory_utils/x86_64/inline_memcpy.h
    M libc/src/string/memory_utils/x86_64/inline_memset.h

  Log Message:
  -----------
  [libc] fix more readability-identifier-naming lints (#83914)

Found via:

    $ ninja -k2000 libc-lint 2>&1 | grep readability-identifier-naming

Auto fixed via:

    $ clang-tidy -p build/compile_commands.json \
      -checks="-*,readability-identifier-naming" \
      <filename> --fix

This doesn't fix all instances, just the obvious simple cases where it makes
sense to change the identifier names.  Subsequent PRs will fix up the
stragglers.


  Commit: 640c85748ec823e91a3cd412829f644cf4f10ffc
      https://github.com/llvm/llvm-project/commit/640c85748ec823e91a3cd412829f644cf4f10ffc
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M libc/src/string/memory_utils/op_generic.h
    M libc/src/string/memory_utils/utils.h

  Log Message:
  -----------
  [libc] fix readability-identifier-naming in memory_utils/utils.h (#83919)

Fixes:

    libc/src/string/memory_utils/utils.h:345:13: warning: invalid case style
    for member 'offset_' [readability-identifier-naming]

Having a trailing underscore for members is a google3 style, not LLVM style.
Removing the underscore is insufficient, as we would then have 2 members with
the same identifier which is not allowed (it is a compile time error). Remove
the getter, and just access the renamed member that's now made public.


  Commit: 2aa22ca2ca4c7cd709665624ccc51be4676c6fd3
      https://github.com/llvm/llvm-project/commit/2aa22ca2ca4c7cd709665624ccc51be4676c6fd3
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M libc/src/__support/UInt.h
    M libc/src/string/memory_utils/op_generic.h

  Log Message:
  -----------
  [libc] suppress readability-identifier-naming for std::numeric_limits interfaces (#83921)

These templates are made to match the ergonomics of std::numeric_limits.
Because our style for constexpr variables is ALL_CAPS, we must silence the
linter for these manually.

Link:
https://clang.llvm.org/extra/clang-tidy/#suppressing-undesired-diagnostics


  Commit: 169824ba401d87707d72634cb7c2db48667b8fbe
      https://github.com/llvm/llvm-project/commit/169824ba401d87707d72634cb7c2db48667b8fbe
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/AArch64/getelementptr.ll
    A llvm/test/Transforms/SLPVectorizer/AArch64/getelementptr2.ll

  Log Message:
  -----------
  [SLP][NFC]SPlit test/Transforms/SLPVectorizer/AArch64/getelementptr.ll,
NFC.


  Commit: 3b84b6f1763159dbcdc487b201aa46a5c1c7b074
      https://github.com/llvm/llvm-project/commit/3b84b6f1763159dbcdc487b201aa46a5c1c7b074
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    A llvm/test/Analysis/CostModel/X86/shuffle-concat_subvector-codesize.ll
    A llvm/test/Analysis/CostModel/X86/shuffle-concat_subvector-latency.ll
    A llvm/test/Analysis/CostModel/X86/shuffle-concat_subvector-sizelatency.ll
    A llvm/test/Analysis/CostModel/X86/shuffle-concat_subvector.ll

  Log Message:
  -----------
  [CostModel][X86] Add test coverage for 'concat subvector' style shuffles

Shows 2 major issues:
 - SSE should be free as it splits everything to 128-bit
 - Negative costs for 128 -> 512 concat shuffles


  Commit: afb05cd6469215232bd83e7cfbe59d2e1852567f
      https://github.com/llvm/llvm-project/commit/afb05cd6469215232bd83e7cfbe59d2e1852567f
  Author: agozillon <Andrew.Gozillon at amd.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    A flang/docs/OpenMP-declare-target.md
    M flang/docs/index.md
    M flang/include/flang/Lower/OpenMP.h
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/OpenMP/Utils.h
    A flang/test/Lower/OpenMP/declare-target-deferred-marking.f90

  Log Message:
  -----------
  [Flang][MLIR][OpenMP] Create a deferred declare target marking process for Bridge.cpp (#78502)

This patch seeks to create a process that happens on module finalization
for OpenMP, in which a list of operations that had declare target
directives applied to them and were not generated at the time of
processing the original declare target directive are re-checked to apply
the appropriate declare target semantics.

This works by maintaining a vector of declare target related data inside
of the FIR converter, in this case the symbol and the two relevant
unsigned integers representing the enumerators. This vector is added to
via a new function called from Bridge.cpp, insertDeferredDeclareTargets,
which happens prior to the processing of the directive (similarly to
getDeclareTargetFunctionDevice currently for requires), it effectively
checks if the Operation the declare target directive is applied to
currently exists, if it doesn't it appends to the vector. This is a
seperate function to the processing of the declare target via the
overloaded genOMP as we unfortunately do not have access to the list
without passing it through every call, as the AbstractConverter we pass
will not allow access to it (I've seen no other cases of casting it to a
FirConverter, so I opted to not do that).

The list is then processed at the end of the module in the
finalizeOpenMPLowering function in Bridge by calling a new function
markDelayedDeclareTargetFunctions which marks the latently generated
operations. In certain cases, some still will not be generated, e.g. if
an interface is defined, marked as declare target, but has no definition
or usage in the module then it will not be emitted to the module, so due
to these cases we must silently ignore when an operation has not been
found via it's symbol.

The main use-case for this (although, I imagine there is others) is for
processing interfaces that have been declared in a module with a declare
target directive but do not have their implementation defined in the
same module. For example, inside of a seperate C++ module that will be
linked in. In cases where the interface is called inside of a target
region it'll be marked as used on device appropriately (although,
realistically a user should explicitly mark it to match the
corresponding definition), however, in cases where it's used in a
non-clear manner through something like a function pointer passed to an
external call we require this explicit marking, which this patch adds
support for (currently will cause the compiler to crash).

This patch also adds documentation on the declare target process and 
mechanisms within the compiler currently.


  Commit: 7df43ccf08e40468354d0564f9bcd7dfe681590b
      https://github.com/llvm/llvm-project/commit/7df43ccf08e40468354d0564f9bcd7dfe681590b
  Author: Vadim D <36827317+vvd170501 at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaInit.cpp
    M clang/test/SemaCXX/cxx2a-initializer-aggregates.cpp

  Log Message:
  -----------
  [clang] Add -Wmissing-designated-field-initializers (#81364)

#56628 changed the behavior of `-Wmissing-field-initializers`, which
introduces many new warnings in C++ code that uses partial designated
initializers. If such code is being built with `-Wextra -Werror`, this
change will break the build.

This PR adds a new flag that allows to disable these new warnings and
keep the old ones, as was suggested by @AaronBallman in the original
issue:
https://github.com/llvm/llvm-project/issues/56628#issuecomment-1761510850

Fixes  #68933


  Commit: e49479b881f856e0473b2b3f0e6489feeddf2418
      https://github.com/llvm/llvm-project/commit/e49479b881f856e0473b2b3f0e6489feeddf2418
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/BUFInstructions.td

  Log Message:
  -----------
  [AMDGPU] Remove unneeded BUF _impl multiclasses. NFC. (#84034)

Remove MUBUF_Real_gfx11_impl and others. By converting the underlying
class MUBUF_Real_gfx11 into a multiclass, the _impl wrapper is no longer
needed.


  Commit: 26058e68ea24602e0b7f4e7baa0e17c7db75a623
      https://github.com/llvm/llvm-project/commit/26058e68ea24602e0b7f4e7baa0e17c7db75a623
  Author: elhewaty <mohamedatef1698 at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

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

  Log Message:
  -----------
  [DAG] select (sext m), (add X, C), X --> (add X, (and C, (sext m)))) (#83640)

- [DAG][X86] Add tests for Folding select m, add(X, C), X --> add (X, and(C, m))(NFC)
- [DAG][X86] Fold select (sext m), (add X, C), X --> (add X, (and C, (sext m))))
- Fixes: https://github.com/llvm/llvm-project/issues/66101


  Commit: 6b5888c27f2d7cfc5fce582500a12a7eda16a7e2
      https://github.com/llvm/llvm-project/commit/6b5888c27f2d7cfc5fce582500a12a7eda16a7e2
  Author: Yuta Mukai <mukai.yuta at fujitsu.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    A llvm/test/CodeGen/AArch64/ldp-stp-unknown-size.mir

  Log Message:
  -----------
  [AArch64] Verify ldp/stp alignment stricter (#83948)

When ldp-aligned-only/stp-aligned-only is specified, modified to cancel
ldp/stp transformation if MachineMemOperand is not present or the access
size is unknown.
In the previous implementation, the test passed when there was no
MachineMemOperand. Also, if the size was unknown, an incorrect value was
used or an assertion failed. (But actually, if there is no
MachineMemOperand, it will be excluded from the target by
isCandidateToMergeOrPair() before reaching the part.)

A statistic NumFailedAlignmentCheck is added. NumPairCreated is modified
so that it only counts if it is not cancelled.


  Commit: a8cb9db5f59dc97c9b3d0370a5879539e7b233d8
      https://github.com/llvm/llvm-project/commit/a8cb9db5f59dc97c9b3d0370a5879539e7b233d8
  Author: Ulrich Weigand <ulrich.weigand at de.ibm.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/SystemZ/CMakeLists.txt
    M llvm/lib/Target/SystemZ/SystemZTargetMachine.cpp
    A llvm/lib/Target/SystemZ/SystemZTargetObjectFile.cpp
    A llvm/lib/Target/SystemZ/SystemZTargetObjectFile.h

  Log Message:
  -----------
  [SystemZ] Use proper relocation for TLS variable debug info (#83975)

Debug info refering to a TLS variable via DW_OP_GNU_push_tls_address
needs to use a R_390_TLS_LDO64 relocation instead of R_390_64.

Fixed by adding a SystemZELFTargetObjectFile override class and proving
a getDebugThreadLocalSymbol implementation.


  Commit: 1e828f838cc0f15074f3dbbb04929c06ef0c9729
      https://github.com/llvm/llvm-project/commit/1e828f838cc0f15074f3dbbb04929c06ef0c9729
  Author: Jeffrey Byrnes <Jeffrey.Byrnes at amd.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/SROA.cpp
    M llvm/test/Transforms/SROA/vector-promotion.ll

  Log Message:
  -----------
  [SROA]: Only defer trying partial sized ptr or ptr vector types

Change-Id: Ic77f87290905addadd5819dff2d0c62f031022ab


  Commit: f33f66be7dc586a597437d7ce7619d87e8637209
      https://github.com/llvm/llvm-project/commit/f33f66be7dc586a597437d7ce7619d87e8637209
  Author: Jeremy Morse <jeremy.morse at sony.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
    M llvm/lib/Target/ARM/MVEGatherScatterLowering.cpp
    M llvm/lib/Target/PowerPC/PPCBoolRetToInt.cpp
    M llvm/lib/Target/RISCV/RISCVGatherScatterLowering.cpp
    M llvm/lib/Target/X86/X86LowerAMXIntrinsics.cpp
    M polly/lib/CodeGen/BlockGenerators.cpp

  Log Message:
  -----------
  [NFC][RemoveDIs] Always use iterators for inserting PHIs

It's becoming potentially unsafe to insert a PHI instruction using a plain
Instruction pointer. Switch all the remaining sites that create and insert
PHIs to use iterators instead. For example, the code in
ComplexDeinterleavingPass.cpp is definitely at-risk of mixing PHIs and
debug-info.


  Commit: f836048a2b452f5f2a8440c9f5945ee1a7bcdac2
      https://github.com/llvm/llvm-project/commit/f836048a2b452f5f2a8440c9f5945ee1a7bcdac2
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

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

  Log Message:
  -----------
  [gn] port 6fd27d5b0321f (no more module.modulemap.in)


  Commit: 1b1aea79194117d8f1729ef9c8f80454aea381fe
      https://github.com/llvm/llvm-project/commit/1b1aea79194117d8f1729ef9c8f80454aea381fe
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SOPInstructions.td

  Log Message:
  -----------
  AMDGPU: Make s_wait_samplecnt(_bvhcnt) dependent on hasImageInsts, NFC (#83932)


  Commit: a730ed7c1a4a35f5219df720ffb0ba6122d64fe4
      https://github.com/llvm/llvm-project/commit/a730ed7c1a4a35f5219df720ffb0ba6122d64fe4
  Author: Alexey Bataev <5361294+alexey-bataev at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/AArch64/ext-trunc.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/getelementptr2.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/reduce-add-i64.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/reductions.ll
    M llvm/test/Transforms/SLPVectorizer/X86/PR35777.ll
    M llvm/test/Transforms/SLPVectorizer/X86/int-bitcast-minbitwidth.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-multiuse-with-insertelement.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-transformed-operand.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minimum-sizes.ll
    M llvm/test/Transforms/SLPVectorizer/X86/phi-undef-input.ll
    M llvm/test/Transforms/SLPVectorizer/X86/resched.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reused-reductions-with-minbitwidth.ll
    M llvm/test/Transforms/SLPVectorizer/X86/store-insertelement-minbitwidth.ll
    M llvm/test/Transforms/SLPVectorizer/alt-cmp-vectorize.ll

  Log Message:
  -----------
  [SLP]Improve minbitwidth analysis.

This improves overall analysis for minbitwidth in SLP. It allows to
analyze the trees with store/insertelement root nodes. Also, instead of
using single minbitwidth, detected from the very first analysis stage,
it tries to detect the best one for each trunc/ext subtree in the graph
and use it for the subtree.
Results in better code and less vector register pressure.

Metric: size..text

Program                                                                                                                                                size..text
                                                                                                                                                       results     results0    diff
                                                                      test-suite :: SingleSource/Benchmarks/Adobe-C++/simple_types_loop_invariant.test    92549.00    92609.00  0.1%
                                                                                  test-suite :: External/SPEC/CINT2017speed/625.x264_s/625.x264_s.test   663381.00   663493.00  0.0%
                                                                                   test-suite :: External/SPEC/CINT2017rate/525.x264_r/525.x264_r.test   663381.00   663493.00  0.0%
                                                                                               test-suite :: MultiSource/Benchmarks/Bullet/bullet.test   307182.00   307214.00  0.0%
                                                                             test-suite :: External/SPEC/CFP2017speed/638.imagick_s/638.imagick_s.test  1394420.00  1394484.00  0.0%
                                                                              test-suite :: External/SPEC/CFP2017rate/538.imagick_r/538.imagick_r.test  1394420.00  1394484.00  0.0%
                                                                                test-suite :: External/SPEC/CFP2017rate/510.parest_r/510.parest_r.test  2040257.00  2040273.00  0.0%

                                                                              test-suite :: External/SPEC/CFP2017rate/526.blender_r/526.blender_r.test 12396098.00 12395858.00 -0.0%
                                                                                         test-suite :: External/SPEC/CINT2006/445.gobmk/445.gobmk.test   909944.00   909768.00 -0.0%

SingleSource/Benchmarks/Adobe-C++/simple_types_loop_invariant - 4 scalar
instructions remain scalar (good).
Spec2017/x264 - the whole function idct4x4dc is vectorized using <16
x i16> instead of <16 x i32>, also zext/trunc are removed. In other
places last vector zext/sext removed and replaced by
extractelement + scalar zext/sext pair.
MultiSource/Benchmarks/Bullet/bullet - reduce or <4 x i32> replaced by
reduce or <4 x i8>
Spec2017/imagick - Removed extra zext from 2 packs of the operations.
Spec2017/parest - Removed extra zext, replaced by extractelement+scalar
zext
Spec2017/blender - the whole bunch of vector zext/sext replaced by
extractelement+scalar zext/sext, some extra code vectorized in smaller
types.
Spec2006/gobmk - fixed cost estimation, some small code remains scalar.

Reviewers: RKSimon

Reviewed By: RKSimon

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


  Commit: 643b31dbe8a515e007a0f1b2e1072c34e461b778
      https://github.com/llvm/llvm-project/commit/643b31dbe8a515e007a0f1b2e1072c34e461b778
  Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Sema/Sema.h
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Sema/SemaChecking.cpp
    A clang/test/CodeGenHLSL/builtins/mad.hlsl
    A clang/test/SemaHLSL/BuiltIns/mad-errors.hlsl
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/lib/Target/DirectX/DXIL.td
    A llvm/test/CodeGen/DirectX/fmad.ll
    A llvm/test/CodeGen/DirectX/imad.ll
    A llvm/test/CodeGen/DirectX/umad.ll

  Log Message:
  -----------
  [HLSL] implement `mad` intrinsic (#83826)

This change implements #83736
The dot product lowering needs a tertiary multipy add operation. DXIL
has three mad opcodes for `fmad`(46), `imad`(48), and `umad`(49). Dot
product in DXIL only uses `imad`\ `umad`, but for completeness and
because the hlsl `mad` intrinsic requires it `fmad` was also included.
Two new intrinsics were needed to be created to complete this change.
the `fmad` case already supported by llvm via `fmuladd` intrinsic.

- `hlsl_intrinsics.h` - exposed mad api call.
- `Builtins.td` - exposed a `mad` builtin.
- `Sema.h` - make `tertiary` calls check for float types optional. 
- `CGBuiltin.cpp` - pick the intrinsic for singed\unsigned & float also
reuse `int_fmuladd`.
- `SemaChecking.cpp` - type checks for `__builtin_hlsl_mad`. 
- `IntrinsicsDirectX.td` create the two new intrinsics for
`imad`\`umad`/
- `DXIL.td` - create the llvm intrinsic to  `DXIL` opcode mapping.

---------

Co-authored-by: Farzon Lotfi <farzon at farzon.com>


  Commit: 06fea93341ae7d0d0faa82c4c8704591963c2d8c
      https://github.com/llvm/llvm-project/commit/06fea93341ae7d0d0faa82c4c8704591963c2d8c
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/TextAPI/Platform.cpp

  Log Message:
  -----------
  [TextAPI] add missing platforms for translating triples to tapi targets


  Commit: b2ca23aed802abc43ed216ce9bf4c80c056a04c0
      https://github.com/llvm/llvm-project/commit/b2ca23aed802abc43ed216ce9bf4c80c056a04c0
  Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    A clang/test/CodeGenHLSL/builtins/exp.hlsl
    A clang/test/CodeGenHLSL/builtins/exp2.hlsl
    A clang/test/SemaHLSL/BuiltIns/exp-errors.hlsl
    M llvm/lib/Target/DirectX/DXIL.td
    A llvm/test/CodeGen/DirectX/exp2.ll

  Log Message:
  -----------
  [HLSL] implement exp intrinsic (#83832)

This change implements: #70072

- `hlsl_intrinsics.h` - add the `exp` api
- `DXIL.td` - add the llvm intrinsic to DXIL opcode lowering mapping.
- This change reuses llvm's existing intrinsic
`__builtin_elementwise_exp` \ `int_exp` & `__builtin_elementwise_exp2` \
`int_exp2`
- This PR is part 1 of 2.
- Part 2 requires an intrinsic to instructions lowering.
Part2 will expand `int_exp` to 
```
A = Builder.CreateFMul(log2eConst, val);
int_exp2(A)
```
just like we do in
[TranslateExp](https://github.com/microsoft/DirectXShaderCompiler/blob/main/lib/HLSL/HLOperationLower.cpp#L2220C1-L2236C2)


  Commit: 2807ea6b8047780b5e66a122faf09fae786c917b
      https://github.com/llvm/llvm-project/commit/2807ea6b8047780b5e66a122faf09fae786c917b
  Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/include/clang/Basic/Builtins.td
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/Headers/hlsl/hlsl_basic_types.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Sema/SemaChecking.cpp
    A clang/test/CodeGenHLSL/builtins/any.hlsl
    A clang/test/SemaHLSL/BuiltIns/any-errors.hlsl
    M llvm/include/llvm/IR/IntrinsicsDirectX.td

  Log Message:
  -----------
  [HLSL] implement the any intrinsic (#83903)

This PR implements the frontend for #70076
This PR is part 1 of 2.
Part 2 requires an intrinsic to instructions lowering.

- `Builtins.td` - add an `any` builtin
- `CGBuiltin.cpp` add the builtin to intrinsic lowering
- `hlsl_basic_types.h` -add the `bool` vectors since that is an input
for any
- `hlsl_intrinsics.h` - add the `any`  api
- `SemaChecking.cpp` - addy `any` builtin checking
- `IntrinsicsDirectX.td` - add the llvm intrinsic


  Commit: 9f67f19614e952ede385a59bb62f7b57771ca4c3
      https://github.com/llvm/llvm-project/commit/9f67f19614e952ede385a59bb62f7b57771ca4c3
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/utils/gn/secondary/compiler-rt/lib/scudo/BUILD.gn
    R llvm/utils/gn/secondary/compiler-rt/lib/scudo/standalone/benchmarks/BUILD.gn
    R llvm/utils/gn/secondary/third-party/benchmark/BUILD.gn

  Log Message:
  -----------
  [gn] Remove ScudoBenchmarks

It's the only thing depending on third-party/benchmark.
The recent third-party/benchmark uprev made it not build in the
GN build, so remove ScudoBenchmarks until someone feels motivated
to update the third-party/benchmark BUILD.gn file.


  Commit: 233f750c3dad14e330f5358e8dbcc6c30e805edb
      https://github.com/llvm/llvm-project/commit/233f750c3dad14e330f5358e8dbcc6c30e805edb
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M flang/lib/Evaluate/check-expression.cpp
    M flang/test/Semantics/init01.f90

  Log Message:
  -----------
  [flang] Catch more bad pointer initialization targets (#83731)

A pointer variable initialization or pointer component default
initialization cannot reference another pointer.

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


  Commit: 041638c4294a9a8375851e0add1ab2c99412c032
      https://github.com/llvm/llvm-project/commit/041638c4294a9a8375851e0add1ab2c99412c032
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/stdbit.rst
    M libc/include/llvm-libc-macros/stdbit-macros.h
    M libc/spec/stdc.td
    M libc/src/stdbit/CMakeLists.txt
    A libc/src/stdbit/stdc_bit_width_uc.cpp
    A libc/src/stdbit/stdc_bit_width_uc.h
    A libc/src/stdbit/stdc_bit_width_ui.cpp
    A libc/src/stdbit/stdc_bit_width_ui.h
    A libc/src/stdbit/stdc_bit_width_ul.cpp
    A libc/src/stdbit/stdc_bit_width_ul.h
    A libc/src/stdbit/stdc_bit_width_ull.cpp
    A libc/src/stdbit/stdc_bit_width_ull.h
    A libc/src/stdbit/stdc_bit_width_us.cpp
    A libc/src/stdbit/stdc_bit_width_us.h
    M libc/test/include/stdbit_test.cpp
    M libc/test/src/stdbit/CMakeLists.txt
    A libc/test/src/stdbit/stdc_bit_width_uc_test.cpp
    A libc/test/src/stdbit/stdc_bit_width_ui_test.cpp
    A libc/test/src/stdbit/stdc_bit_width_ul_test.cpp
    A libc/test/src/stdbit/stdc_bit_width_ull_test.cpp
    A libc/test/src/stdbit/stdc_bit_width_us_test.cpp

  Log Message:
  -----------
  [libc][stdbit] implement stdc_bit_width (C23) (#83892)


  Commit: aa4e3d594a0cfc01f1260378552dccc0943a9268
      https://github.com/llvm/llvm-project/commit/aa4e3d594a0cfc01f1260378552dccc0943a9268
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

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

  Log Message:
  -----------
  [gn build] Port 1a67dee08913


  Commit: 97e9780e4cca0dd2e47ac6ba8462fa965b32da76
      https://github.com/llvm/llvm-project/commit/97e9780e4cca0dd2e47ac6ba8462fa965b32da76
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

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

  Log Message:
  -----------
  [gn build] Port 8e56fb824a43


  Commit: caad3794f081321e7c9f370ebe69f297fc13097e
      https://github.com/llvm/llvm-project/commit/caad3794f081321e7c9f370ebe69f297fc13097e
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

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

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


  Commit: ee044d5e651787c5d73b37b2cbb7ca6444bb0502
      https://github.com/llvm/llvm-project/commit/ee044d5e651787c5d73b37b2cbb7ca6444bb0502
  Author: Michael Spencer <bigcheesegs at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/lib/Frontend/CompilerInstance.cpp
    R clang/test/Modules/Inputs/config.h
    M clang/test/Modules/Inputs/module.modulemap
    M clang/test/Modules/config_macros.m

  Log Message:
  -----------
  [clang] Diagnose config_macros before building modules (#83641)

Before this patch, if a module fails to build because of a missing
config_macro, the user will never see the config macro warning. This
patch diagnoses this before building, and each subsequent time a module
is imported.

rdar://123921931


  Commit: 083d8aa03aca55b88098a91e41e41a8e321a5721
      https://github.com/llvm/llvm-project/commit/083d8aa03aca55b88098a91e41e41a8e321a5721
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

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

  Log Message:
  -----------
  [SLP][NFC]Use TargetTransformInfo:: instead of TTI:: in BoUpSLP to avoid
some compilers confusion.


  Commit: 1b812f9cd64c14ab7600626c147da88f21e0217c
      https://github.com/llvm/llvm-project/commit/1b812f9cd64c14ab7600626c147da88f21e0217c
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M lldb/source/Host/common/Host.cpp

  Log Message:
  -----------
  [lldb] Log to system log instead of stderr from Host::SystemLog (#83366)

Currently, calls to Host::SystemLog print to stderr on all host
platforms except Darwin. This severely limits its value on the command
line, where we don't want to overload the user with log messages. Switch
to using the syslog function on POSIX systems to send messages to the
system logger instead of stdout.

On Darwin systems this sends the log message to os_log, which matches
what we do today. Nevertheless I kept the current implementation that
uses os_log directly as it gives us more freedom.

I'm not sure if there's an equivalent on Windows, so I kept the existing
behavior of logging to stderr.


  Commit: 3cef82d60796b1f18deebf0d844f38d6e85cd4e7
      https://github.com/llvm/llvm-project/commit/3cef82d60796b1f18deebf0d844f38d6e85cd4e7
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M flang/lib/Semantics/check-declarations.cpp
    M flang/test/Semantics/declarations06.f90

  Log Message:
  -----------
  [flang] Fix bogus error message about invalid polymorphic entity (#83733)

The check for declarations of polymorphic entities was emitting a bogus
error for one (or more) layers of pointers to procedures returning
pointers to polymorphic types.

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


  Commit: 61c06775c96a93bf2b6ac0145b78b4ecb1a858b6
      https://github.com/llvm/llvm-project/commit/61c06775c96a93bf2b6ac0145b78b4ecb1a858b6
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/include/llvm/Support/KnownBits.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/CodeGen/GlobalISel/GISelKnownBits.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/Support/KnownBits.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/unittests/Support/KnownBitsTest.cpp

  Log Message:
  -----------
  [KnownBits] Add API for `nuw` flag in `computeForAddSub`; NFC


  Commit: 17162b61c2e6968482fab928f89bdca8b4ac06d9
      https://github.com/llvm/llvm-project/commit/17162b61c2e6968482fab928f89bdca8b4ac06d9
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/include/llvm/Support/KnownBits.h
    M llvm/lib/Support/KnownBits.cpp
    M llvm/test/CodeGen/AArch64/sve-cmp-folds.ll
    M llvm/test/CodeGen/AArch64/sve-extract-element.ll
    M llvm/test/CodeGen/AMDGPU/ds-sub-offset.ll
    M llvm/test/Transforms/InstCombine/fold-log2-ceil-idiom.ll
    M llvm/test/Transforms/InstCombine/icmp-sub.ll
    M llvm/test/Transforms/InstCombine/sub.ll
    M llvm/unittests/Support/KnownBitsTest.cpp

  Log Message:
  -----------
  [KnownBits] Make `nuw` and `nsw` support in `computeForAddSub` optimal

Just some improvements that should hopefully strengthen analysis.

Closes #83580


  Commit: 9a20612d960bbcbf6bd59d2d94400574a3cccde0
      https://github.com/llvm/llvm-project/commit/9a20612d960bbcbf6bd59d2d94400574a3cccde0
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M flang/lib/Evaluate/intrinsics.cpp
    M flang/test/Semantics/null01.f90

  Log Message:
  -----------
  [flang] NULL(NULL(NULL(...(NULL()...))) means NULL() (#83738)

When the actual MOLD= argument of a reference to the intrinsic function
NULL is itself just NULL() (possibly nested), treat the MOLD= as if it
had not been present.

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


  Commit: d35f2c439a12b8e97e1bad02b6cc4349c9914345
      https://github.com/llvm/llvm-project/commit/d35f2c439a12b8e97e1bad02b6cc4349c9914345
  Author: Martin Wehking <martin.wehking at codeplay.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

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

  Log Message:
  -----------
  Remove constant local variable (#83850)

Remove isThisReturn, which always has the value false.
Replace its uses with false directly.


  Commit: 069aee0793064b800f130e740e37dd7d264b7802
      https://github.com/llvm/llvm-project/commit/069aee0793064b800f130e740e37dd7d264b7802
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M flang/include/flang/Semantics/type.h
    M flang/lib/Semantics/check-select-type.cpp
    M flang/lib/Semantics/type.cpp
    A flang/test/Semantics/selecttype04.f90

  Log Message:
  -----------
  [flang] Rework F'2023 constraint C1167 checking (#83888)

The code that verifies that the type in a TYPE IS or CLASS IS clause is
a match or an extension of the type of the SELECT TYPE selector needs
rework to avoid emitting a bogus error for a test.

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


  Commit: cc7544e230f8943e52b779d7f1e4392fd30a0c1a
      https://github.com/llvm/llvm-project/commit/cc7544e230f8943e52b779d7f1e4392fd30a0c1a
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    R third-party/benchmark/WORKSPACE
    M third-party/update_benchmark.sh

  Log Message:
  -----------
  [benchmark] Delete WORKSPACE bzl files (#84013)

As like 48d868493fa74025e7768afacdbbbd3ea9c82468, `WORKSPACE` is another
bazel-specific file that is unused. LLVM's bazel configuration is
entirely in `utils/bazel`.


  Commit: a9304edf20756dd63f896a98bad89e9eac54aebd
      https://github.com/llvm/llvm-project/commit/a9304edf20756dd63f896a98bad89e9eac54aebd
  Author: Thomas Preud'homme <thomas.preudhomme at arm.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M mlir/include/mlir/IR/ValueRange.h
    M mlir/lib/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation.cpp
    M mlir/lib/Dialect/ControlFlow/Transforms/BufferDeallocationOpInterfaceImpl.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Fusion.cpp
    M mlir/lib/IR/OperationSupport.cpp
    M mlir/lib/Transforms/Utils/CFGToSCF.cpp

  Log Message:
  -----------
  Fix remaining build failures with GCC 8.3 (#83266)

When compiling for GCC 8.x (< 8.4), SFINAE is disabled for
iterator_range constructor causing ambiguous resolution to construct an
OperandRange from a MutableOperatorRange, even in the presence of a
static_cast<OperatorRange>. This adds an explicit conversion method to
lift the ambiguity.

Tested with a full MLIR build with GCC 8.3.


  Commit: 13cd0a905beab77fc31e08282c466246aae7eda6
      https://github.com/llvm/llvm-project/commit/13cd0a905beab77fc31e08282c466246aae7eda6
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

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

  Log Message:
  -----------
  [flang] Skim usage before marking unknown module externals as subrout… (#83897)

…ines

Name resolution needs to delay its default determination of module
external procedures as subroutines until after it has skimmed the
execution parts of module procedures.

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


  Commit: b3b408bbb379a1cfdac66a71534d86c23a9cf3f1
      https://github.com/llvm/llvm-project/commit/b3b408bbb379a1cfdac66a71534d86c23a9cf3f1
  Author: Petr Hosek <phosek at google.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/cmake/caches/Fuchsia-stage2.cmake

  Log Message:
  -----------
  [Fuchsia] Include baremetal ARM builtins and libc (#83949)

For now we only include the armv6m-unknown-eabi target but we plan to
include more targets in the future (including multilibs).


  Commit: 83ca78deb9075e764f89fad83af926357eb78967
      https://github.com/llvm/llvm-project/commit/83ca78deb9075e764f89fad83af926357eb78967
  Author: Peter Klausler <35819229+klausler at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M flang/include/flang/Semantics/symbol.h
    M flang/lib/Semantics/check-declarations.cpp
    M flang/lib/Semantics/mod-file.cpp
    M flang/lib/Semantics/resolve-names-utils.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/symbol.cpp
    M flang/lib/Semantics/tools.cpp
    A flang/test/Semantics/modfile64.f90

  Log Message:
  -----------
  [flang] Emit "raw" name for procedure interface in module file (#83915)

Save both the raw procedure interface symbol as well as the result of
passing it through GetUltimate() and BypassGeneric() in symbol table
entries with ProcEntityDetails. The raw symbol of the interface needs to
be the one used for emitting procedure symbols to module files.

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


  Commit: 2f343fc1574f36b3b5ff1acf63407c53dcdac331
      https://github.com/llvm/llvm-project/commit/2f343fc1574f36b3b5ff1acf63407c53dcdac331
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M lldb/tools/driver/Driver.cpp

  Log Message:
  -----------
  [lldb] Print a message when background tasks take a while to complete (#82799)

When terminating the debugger, we wait for all background tasks to
complete. Given that there's no way to interrupt those treads, this can
take a while. When that happens, the debugger appears to hang at exit.

The above situation is unfortunately not uncommon when background
downloading of dSYMs is enabled (`symbols.auto-download background`).
Even when calling dsymForUUID with a reasonable timeout, it can take a
while to complete.

This patch improves the user experience by printing a message from the
driver when it takes more than one (1) second to terminate the debugger.


  Commit: c8b3edcddd221a5007565507fb16a07a027d32bc
      https://github.com/llvm/llvm-project/commit/c8b3edcddd221a5007565507fb16a07a027d32bc
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

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

  Log Message:
  -----------
  Revert "[SLP][NFC]Use TargetTransformInfo:: instead of TTI:: in BoUpSLP to avoid"

This reverts commit 083d8aa03aca55b88098a91e41e41a8e321a5721.


  Commit: aae152f1be1db1b4760c7464a3accd3d72b5f4bd
      https://github.com/llvm/llvm-project/commit/aae152f1be1db1b4760c7464a3accd3d72b5f4bd
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/AArch64/ext-trunc.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/getelementptr2.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/reduce-add-i64.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/reductions.ll
    M llvm/test/Transforms/SLPVectorizer/X86/PR35777.ll
    M llvm/test/Transforms/SLPVectorizer/X86/int-bitcast-minbitwidth.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-multiuse-with-insertelement.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-transformed-operand.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minimum-sizes.ll
    M llvm/test/Transforms/SLPVectorizer/X86/phi-undef-input.ll
    M llvm/test/Transforms/SLPVectorizer/X86/resched.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reused-reductions-with-minbitwidth.ll
    M llvm/test/Transforms/SLPVectorizer/X86/store-insertelement-minbitwidth.ll
    M llvm/test/Transforms/SLPVectorizer/alt-cmp-vectorize.ll

  Log Message:
  -----------
  Revert "[SLP]Improve minbitwidth analysis."

This reverts commit a730ed7c1a4a35f5219df720ffb0ba6122d64fe4 to fix
compile time issue.


  Commit: 64faa52b1ef7778d1cde9a7191fbd0a167e9dfd8
      https://github.com/llvm/llvm-project/commit/64faa52b1ef7778d1cde9a7191fbd0a167e9dfd8
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M .clang-tidy

  Log Message:
  -----------
  Disable clang-tidy misc-include-cleaner (#83945)

This does not apply well to LLVM which intentionally rely on forward
declarations. Also depending on the config flags passed to CMake the
result can be different.


  Commit: b6ca602658c101b783540418130ac5fadc0b2360
      https://github.com/llvm/llvm-project/commit/b6ca602658c101b783540418130ac5fadc0b2360
  Author: Aart Bik <ajcbik at google.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M mlir/test/Integration/Dialect/SparseTensor/CPU/concatenate_dim_0.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_block_matmul.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_complex32.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_complex64.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_ds.mlir

  Log Message:
  -----------
  [mlir][sparse] migrate tests to sparse_tensor.print (#84055)

Continuing the efforts started in #83357


  Commit: b8c6252bc19e05fc968c6504b69f5fed208f32d4
      https://github.com/llvm/llvm-project/commit/b8c6252bc19e05fc968c6504b69f5fed208f32d4
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M libcxxabi/src/CMakeLists.txt

  Log Message:
  -----------
  [libc++abi] Always re-export std:: exception types from libc++abi (#84031)

We always provide the std:: exception types, even when exceptions are
disabled. This is a bit counter-intuitive, but these exception types are
just normal types at the end of the day so we made the decision to
always provide their definition. Failure to re-export these types would
cause libc++ to fail to link on Apple platforms when exceptions are
disabled.


  Commit: eccc71783c4a7682e4cc876f62feca74889fb192
      https://github.com/llvm/llvm-project/commit/eccc71783c4a7682e4cc876f62feca74889fb192
  Author: Neumann Hon <neumann.hon at ibm.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCObjectFileInfo.h
    M llvm/lib/MC/MCObjectFileInfo.cpp
    M llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp

  Log Message:
  -----------
  [SystemZ] [z/OS] Emit offset to PPA2 in separate MCSection (#84043)

The ppa2list section isn't really part of the ppa2 section. The ppa2list
section contains the offset to the ppa2, and must be created with a
special section name (specifically, C_@@QPPA2). The binder searches for
a section with this name, then uses this value to locate the ppa2.

In GOFF terms, these are entirely separate sections; the PPA2 section
isn't even really a section but rather belongs to the code section. On
the other hand, the ppa2list section is a section in its own right and
resides in a separate TXT record.


  Commit: 4a4fb930a539c91eb4e9d8b1ea427a7cef72d054
      https://github.com/llvm/llvm-project/commit/4a4fb930a539c91eb4e9d8b1ea427a7cef72d054
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M bolt/include/bolt/Core/ParallelUtilities.h
    M bolt/lib/Core/ParallelUtilities.cpp
    M bolt/lib/Passes/IdenticalCodeFolding.cpp
    M bolt/lib/Rewrite/DWARFRewriter.cpp
    M llvm/tools/llvm-reduce/deltas/Delta.cpp
    M mlir/lib/ExecutionEngine/AsyncRuntime.cpp

  Log Message:
  -----------
  Use the new ThreadPoolInterface base class instead of the concrete implementation (NFC) (#84056)


  Commit: 13bb726be31c1e48cea946217badceb5b3d9db95
      https://github.com/llvm/llvm-project/commit/13bb726be31c1e48cea946217badceb5b3d9db95
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

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

  Log Message:
  -----------
  [OpenACC] Fix typo in StmtOpenACC.cpp header.


  Commit: 9faca1e4015582534028f9a5cd14eed7063dbedd
      https://github.com/llvm/llvm-project/commit/9faca1e4015582534028f9a5cd14eed7063dbedd
  Author: rohit-rao <rohitrao at google.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

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

  Log Message:
  -----------
  [compiler-rt/darwin] Disable building sanitizers on platforms without fork(). (#83485)

The watchOS and tvOS sanitizers do not compile with publicly-available
SDKs, failing on calls such as fork() and posix_spawn(). Updating the
darwin_test_archs test program to include a call to fork() allows cmake
to exclude those platforms when compiling runtimes. This allows public
builds to enable watchOS/tvOS and compile builtins but not sanitizers.


  Commit: 7de6f61a9da3b73a729413a41477d400d9f08b84
      https://github.com/llvm/llvm-project/commit/7de6f61a9da3b73a729413a41477d400d9f08b84
  Author: bwlodarcz <bertrand.wlodarczyk at intel.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

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

  Log Message:
  -----------
  [SPIR-V] Memory leak fix in SPIRVEmitIntrinsics (#83015)

The architecture of SPIRVEmitIntrinsics is build in such way that every
private method is called by one main function runOnFunction which then
calls private methods. Private member IRB is allocated in runOnFunction
method but it's not freed. Due to that every time when IR function
contains intrinsics to emit, runOnFunction is entered and memory is
leaked on exit. It's especially true when there are two or more IR
functions to emit. IRB is set to nullptr during construction of object
and it's left without pointing resource until runOnFunction is entered.
This also create possibility of simple mistake when private method is
called but there is no resource pointed. Change requires passing
IRBuilder by reference to private methods. The visit* functions create
it's own IRBuilder thus IRB is eliminated from class scope. In addition
there is a small performance improvement because IRBuilder is not
allocated by heap.


  Commit: a5095b9892123fb41fd894a1b08fa45c6b3c7f03
      https://github.com/llvm/llvm-project/commit/a5095b9892123fb41fd894a1b08fa45c6b3c7f03
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/vle_vid-vfcvt.ll

  Log Message:
  -----------
  [RISCV] Add test for incorrect FP build vector lowering. NFC

The lowering is not distinquishing -2147483648.0 and 2147483648.0.


  Commit: 5a5266248d4f7af101ad5a54960cbd814599a8d6
      https://github.com/llvm/llvm-project/commit/5a5266248d4f7af101ad5a54960cbd814599a8d6
  Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/include/clang/Basic/Builtins.td
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Sema/SemaChecking.cpp
    A clang/test/CodeGenHLSL/builtins/rcp.hlsl
    A clang/test/SemaHLSL/BuiltIns/rcp-errors.hlsl
    M llvm/include/llvm/IR/IntrinsicsDirectX.td

  Log Message:
  -----------
  [HLSL] implement the rcp  intrinsic (#83857)

This PR implements the frontend for llvm#70100
This PR is part 1 of 2.
Part 2 requires an intrinsic to instructions lowering.


- `Builtins.td` - add an `rcp` builtin
- `CGBuiltin.cpp` - add the builtin to intrinsic lowering
-  `hlsl_intrinsics.h` - add the `rcp`  api
- `SemaChecking.cpp` - reuse frac's sema checks
- `IntrinsicsDirectX.td` - add the llvm intrinsic


  Commit: 50d848d0761e052e203136f3de9a332bd619595a
      https://github.com/llvm/llvm-project/commit/50d848d0761e052e203136f3de9a332bd619595a
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/runtime/CMakeLists.txt
    M flang/runtime/Float128Math/CMakeLists.txt
    R flang/runtime/Float128Math/cabs.cpp
    A flang/runtime/Float128Math/complex-math.c
    A flang/runtime/Float128Math/complex-math.h
    M flang/runtime/Float128Math/exponent.cpp
    M flang/runtime/Float128Math/fraction.cpp
    M flang/runtime/Float128Math/math-entries.h
    M flang/runtime/Float128Math/mod-real.cpp
    M flang/runtime/Float128Math/modulo-real.cpp
    M flang/runtime/Float128Math/nearest.cpp
    M flang/runtime/Float128Math/rrspacing.cpp
    M flang/runtime/Float128Math/scale.cpp
    M flang/runtime/Float128Math/set-exponent.cpp
    M flang/runtime/Float128Math/spacing.cpp
    M flang/runtime/numeric.cpp
    A flang/test/Lower/Intrinsics/acos_complex16.f90
    A flang/test/Lower/Intrinsics/acosh_complex16.f90
    A flang/test/Lower/Intrinsics/asin_complex16.f90
    A flang/test/Lower/Intrinsics/asinh_complex16.f90
    A flang/test/Lower/Intrinsics/atan_complex16.f90
    A flang/test/Lower/Intrinsics/atanh_complex16.f90
    A flang/test/Lower/Intrinsics/cos_complex16.f90
    A flang/test/Lower/Intrinsics/cosh_complex16.f90
    A flang/test/Lower/Intrinsics/exp_complex16.f90
    A flang/test/Lower/Intrinsics/log_complex16.f90
    R flang/test/Lower/Intrinsics/missing-math-runtime.f90
    A flang/test/Lower/Intrinsics/pow_complex16.f90
    A flang/test/Lower/Intrinsics/sin_complex16.f90
    A flang/test/Lower/Intrinsics/sinh_complex16.f90
    A flang/test/Lower/Intrinsics/sqrt_complex16.f90
    A flang/test/Lower/Intrinsics/tan_complex16.f90
    A flang/test/Lower/Intrinsics/tanh_complex16.f90

  Log Message:
  -----------
  [flang] Added lowering and runtime for COMPLEX(16) intrinsics. (#83874)

For `LDBL_MANT_DIG == 113` targets the FortranFloat128Math library
is just an interface library that provides sources and compilation
options to be used for building FortranRuntime - there are not extra
dependencies on other libraries, so it can be a part of FortranRuntime,
which helps to avoid extra linking steps in the compiler driver.
Targets with __float128 support in libc will also use this path.
Other targets, where the math support comes from
FLANG_RUNTIME_F128_MATH_LIB,
FortranFloat128Math is built as a standalone static library,
and the compiler driver needs to conduct the linking.

Flang APIs for COMPLEX(16) are just thin C wrappers around
the C math functions. Flang uses C _Complex ABI for passing/returning
COMPLEX values, so the runtime is aligned to this.


  Commit: bf631c63d01057321c070520a56a150ede32e47d
      https://github.com/llvm/llvm-project/commit/bf631c63d01057321c070520a56a150ede32e47d
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/DSDIRInstructions.td

  Log Message:
  -----------
  AMDGPU: Copy SubtargetPredicate from pseudo for DSDIR_Real (#84057)


  Commit: 201572e34b2cb0861a60e00fd7dc2965e6af1587
      https://github.com/llvm/llvm-project/commit/201572e34b2cb0861a60e00fd7dc2965e6af1587
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/CallLowering.cpp
    M llvm/lib/Target/AArch64/AArch64FastISel.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64CallLowering.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/test/CodeGen/AArch64/call-rv-marker.ll
    M llvm/test/CodeGen/AArch64/nonlazybind.ll

  Log Message:
  -----------
  [AArch64] Implement -fno-plt for SelectionDAG/GlobalISel

Clang sets the nonlazybind attribute for certain ObjC features. The
AArch64 SelectionDAG implementation for non-intrinsic calls
(46e36f0953aabb5e5cd00ed8d296d60f9f71b424) is behind a cl option.

GCC implements -fno-plt for a few ELF targets. In Clang, -fno-plt also
sets the nonlazybind attribute. For SelectionDAG, make the cl option not
affect ELF so that non-intrinsic calls to a dso_preemptable function use
GOT. Adjust AArch64TargetLowering::LowerCall to handle intrinsic calls.

For FastISel, change `fastLowerCall` to bail out when a call is due to
-fno-plt.

For GlobalISel, handle non-intrinsic calls in CallLowering::lowerCall
and intrinsic calls in AArch64CallLowering::lowerCall (where the
target-independent CallLowering::lowerCall is not called).
The GlobalISel test in `call-rv-marker.ll` is therefore updated.

Note: the current -fno-plt -fpic implementation does not use GOT for a
preemptable function.

Link: #78275

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


  Commit: f51ade25b9205efee09a4915031848cebe772805
      https://github.com/llvm/llvm-project/commit/f51ade25b9205efee09a4915031848cebe772805
  Author: Maksim Panchenko <maks at fb.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M bolt/lib/Rewrite/LinuxKernelRewriter.cpp
    A bolt/test/X86/linux-parainstructions.s

  Log Message:
  -----------
  [BOLT] Add reading support for Linux kernel .parainstructions section (#83965)

Read .parainstruction section and mark call instructions with ParaSite
annotations.


  Commit: e96c0c1d5e0a9916098b1a31acb006ea6c1108fb
      https://github.com/llvm/llvm-project/commit/e96c0c1d5e0a9916098b1a31acb006ea6c1108fb
  Author: Quentin Dian <dianqk at dianqk.net>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

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

  Log Message:
  -----------
   [InstCombine] Fix shift calculation in InstCombineCasts (#84027)

Fixes #84025.


  Commit: 58d8805ff9f0a9947ac122b463c00d6c0656eae6
      https://github.com/llvm/llvm-project/commit/58d8805ff9f0a9947ac122b463c00d6c0656eae6
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

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

  Log Message:
  -----------
  [RISCV] Always use signed APSInt in getExactInteger. (#84070)

We were setting based on whether the FP value is positive/negative, but
we really want to know whether the resulting integer will be treated as
a signed or unsigned value. Since we use SINT_TO_FP to convert the
integer to FP, we should always used signed here.

Without this we convert +2147483648.0 to an integer 0x80000000 and
convert it using sint_to_fp which produces -2147483648.0.


  Commit: e77a473601314cc7e7aa912579982a38326d334c
      https://github.com/llvm/llvm-project/commit/e77a473601314cc7e7aa912579982a38326d334c
  Author: Lang Hames <lhames at Langs-MacBook-Pro.local>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/MachOBuilder.h
    M llvm/include/llvm/ExecutionEngine/Orc/MachOPlatform.h
    M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp

  Log Message:
  -----------
  [ORC][MachO] Simplify use of LC_BUILD_VERSION in JITDylib headers.

API clients can now set a MachO::HeaderOptions::BuildVersionOpts field to have
MachOPlatform add an LC_BUILD_VERSION load command to the Mach header for each
JITDylib.

No testcase yet. In the future we'll try to add a MachO parser to the ORC
runtime and extra test options to llvm-jitlink for this.

This commit also incidentally fixes a bug in the MachOBuilder class that lead to
a delegation cycle.


  Commit: d6c52c1e2d16ef79737c5666db46e872e943c18a
      https://github.com/llvm/llvm-project/commit/d6c52c1e2d16ef79737c5666db46e872e943c18a
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/EXPInstructions.td
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/SOPInstructions.td

  Log Message:
  -----------
  AMDGPU: Define HasExpOrExportInsts for export instruction definitions. (#84083)


  Commit: 6f11c95d06d51e98e635d08cd3143fb88b58b6a9
      https://github.com/llvm/llvm-project/commit/6f11c95d06d51e98e635d08cd3143fb88b58b6a9
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    R llvm/test/CodeGen/AArch64/ldp-stp-unknown-size.mir

  Log Message:
  -----------
  Revert "[AArch64] Verify ldp/stp alignment stricter" (#84096)

Reverts llvm/llvm-project#83948

This broke the ASan buildbot:
https://lab.llvm.org/buildbot/#/builders/168/builds/19054/steps/10/logs/stdio


  Commit: 55c466da2f2f0baa509eb709b8de8926bd498b9b
      https://github.com/llvm/llvm-project/commit/55c466da2f2f0baa509eb709b8de8926bd498b9b
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/test/CodeGen/X86/bfloat.ll

  Log Message:
  -----------
  [X86][AVX512BF16] Add a few missing insert/extract patterns

These are really the same as the f16 (and i16) instructions, but we need
them for any type that can occur.


  Commit: 0207270494cda484f80abd3b654c871dc4cf8099
      https://github.com/llvm/llvm-project/commit/0207270494cda484f80abd3b654c871dc4cf8099
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/mgather-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/mscatter-sdnode.ll

  Log Message:
  -----------
  [RISCV] Don't remove extends for i1 indices in mgather/mscatter (#83951)


  Commit: 6c39e3fa113d2956cb5b5f6769d2ad9a266377e5
      https://github.com/llvm/llvm-project/commit/6c39e3fa113d2956cb5b5f6769d2ad9a266377e5
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/Sema/riscv-vector-float64-check.c

  Log Message:
  -----------
  [clang][RISCV] Reorder sema check for RVV type (#83553)

Currently using the command `clang -cc1 -triple riscv64` to compile the
code below:
```
#include <riscv_vector.h>
void foo() {
  vfloat64m1_t f64m1;
}
```
would get the error message "RISC-V type 'vfloat64m1_t' ... requires the
'zve64x' extension"
which is supposed to be "RISC-V type 'vfloat64m1_t' ... requires the
'zve64d' extension".


  Commit: 2a1b09fee4b4b22f4f7189695ce3e858b91a8d69
      https://github.com/llvm/llvm-project/commit/2a1b09fee4b4b22f4f7189695ce3e858b91a8d69
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/docs/RISCVUsage.rst

  Log Message:
  -----------
  [RISCV][SiFive] Add RISCVUsage for SiFive Intelligence Extensions (#84010)


  Commit: 11f74cd4bb487e956c92132b4991e8cde1dd1a81
      https://github.com/llvm/llvm-project/commit/11f74cd4bb487e956c92132b4991e8cde1dd1a81
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/test/Driver/riscv-arch.c
    M llvm/lib/Support/RISCVISAInfo.cpp
    M llvm/unittests/Support/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISCV] Improve error message when the extension is not supported (#83989)

If the "march" has some extension with version that is not supported, it
returns the error message like: "error: invalid arch name 'some_arch',
unsupported version number 2.0 for extension 'some_arch'", which is not
precise enough, it should return the message that only tells users "the
extension is not supported".


  Commit: aeda1a6e800e0dd6c91c0332b4db95094ad5b301
      https://github.com/llvm/llvm-project/commit/aeda1a6e800e0dd6c91c0332b4db95094ad5b301
  Author: wanglei <wanglei at loongson.cn>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/test/CodeGen/LoongArch/intrinsic-la32.c
    M clang/test/CodeGen/LoongArch/intrinsic-la64.c

  Log Message:
  -----------
  [Clang][LoongArch] Precommit test for fix wrong return value type of __iocsrrd_h. NFC


  Commit: 8b326d59467b941831942c651c585055b3d512e4
      https://github.com/llvm/llvm-project/commit/8b326d59467b941831942c651c585055b3d512e4
  Author: Qizhi Hu <836744285 at qq.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/cppcoreguidelines/MissingStdForwardCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/missing-std-forward.cpp

  Log Message:
  -----------
  [clang-tidy] fix false negative in cppcoreguidelines-missing-std-forward (#83987)

Try to fix https://github.com/llvm/llvm-project/issues/83845
When `std::forward` is invoked in a function, make sure it uses correct
parameter by checking if the bounded `var` equals the parameter.

Co-authored-by: huqizhi <836744285 at qq.com>


  Commit: 889d99a50f38150570f6fca903d61ee9770bd932
      https://github.com/llvm/llvm-project/commit/889d99a50f38150570f6fca903d61ee9770bd932
  Author: Kolya Panchenko <87679760+nikolaypanchenko at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 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/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.h
    M llvm/lib/Transforms/Scalar/ScalarizeMaskedMemIntrin.cpp

  Log Message:
  -----------
  [TTI] Add alignment argument to TTI for compress/expand support (#83516)

Since `llvm.compressstore` and `llvm.expandload` do require memory
access, it's essential for some target to check if alignment is good to
be able to lower them to target-specific instructions


  Commit: 31c304ba7ba8bb5c236072df55640154ea49b588
      https://github.com/llvm/llvm-project/commit/31c304ba7ba8bb5c236072df55640154ea49b588
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/test/Analysis/ScalarEvolution/2008-11-18-Stride1.ll
    M llvm/test/Analysis/ScalarEvolution/2008-11-18-Stride2.ll
    M llvm/test/Analysis/ScalarEvolution/exhaustive-trip-counts.ll
    M llvm/test/Analysis/ScalarEvolution/exponential-behavior.ll
    M llvm/test/Analysis/ScalarEvolution/load-with-range-metadata.ll
    M llvm/test/Analysis/ScalarEvolution/max-trip-count-address-space.ll
    M llvm/test/Analysis/ScalarEvolution/pr25369.ll
    M llvm/test/Analysis/ScalarEvolution/shift-op.ll
    M llvm/test/Analysis/ScalarEvolution/sle.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-pow2.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-switch.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-unknown-stride.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count12.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count13.ll

  Log Message:
  -----------
  [SCEV] Migrate some tests to be autogenerated

In advance of a change which needs to update these.  This batch was the
"easy" ones, I'll be landing the harder set a few a time for easier
review.


  Commit: 716042a63f26cd020eb72960f72fa97b9a197382
      https://github.com/llvm/llvm-project/commit/716042a63f26cd020eb72960f72fa97b9a197382
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M bolt/lib/Core/ParallelUtilities.cpp
    M bolt/tools/merge-fdata/merge-fdata.cpp
    M clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
    M clang-tools-extra/clang-include-fixer/find-all-symbols/tool/FindAllSymbolsMain.cpp
    M clang/lib/Tooling/AllTUsExecution.cpp
    M clang/tools/clang-scan-deps/ClangScanDeps.cpp
    M lld/MachO/Writer.cpp
    M lldb/source/Core/Debugger.cpp
    M llvm/docs/ORCv2.rst
    M llvm/examples/SpeculativeJIT/SpeculativeJIT.cpp
    M llvm/include/llvm/ExecutionEngine/Orc/LLJIT.h
    M llvm/include/llvm/Support/ThreadPool.h
    M llvm/lib/CodeGen/ParallelCG.cpp
    M llvm/lib/DWARFLinker/Classic/DWARFLinker.cpp
    M llvm/lib/DWARFLinker/Parallel/DWARFLinkerImpl.cpp
    M llvm/lib/DebugInfo/GSYM/DwarfTransformer.cpp
    M llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/LTO/LTOBackend.cpp
    M llvm/lib/LTO/ThinLTOCodeGenerator.cpp
    M llvm/lib/Support/BalancedPartitioning.cpp
    M llvm/tools/dsymutil/dsymutil.cpp
    M llvm/tools/llvm-cov/CodeCoverage.cpp
    M llvm/tools/llvm-cov/CoverageExporterJson.cpp
    M llvm/tools/llvm-cov/CoverageReport.cpp
    M llvm/tools/llvm-debuginfod/llvm-debuginfod.cpp
    M llvm/tools/llvm-profdata/llvm-profdata.cpp
    M llvm/tools/llvm-reduce/deltas/Delta.cpp
    M llvm/unittests/ADT/LazyAtomicPointerTest.cpp
    M llvm/unittests/Debuginfod/HTTPServerTests.cpp
    M llvm/unittests/Support/ParallelTest.cpp
    M llvm/unittests/Support/ThreadPool.cpp
    M llvm/unittests/Support/ThreadSafeAllocatorTest.cpp
    M mlir/include/mlir/IR/MLIRContext.h
    M mlir/lib/CAPI/IR/Support.cpp
    M mlir/lib/ExecutionEngine/AsyncRuntime.cpp
    M mlir/lib/IR/MLIRContext.cpp

  Log Message:
  -----------
  Rename llvm::ThreadPool -> llvm::DefaultThreadPool (NFC) (#83702)

The base class llvm::ThreadPoolInterface will be renamed
llvm::ThreadPool in a subsequent commit.

This is a breaking change: clients who use to create a ThreadPool must
now create a DefaultThreadPool instead.


  Commit: 2f479b811274fede36535e34ecb545ac22e399c3
      https://github.com/llvm/llvm-project/commit/2f479b811274fede36535e34ecb545ac22e399c3
  Author: wanglei <wanglei at loongson.cn>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/lib/Headers/larchintrin.h
    M clang/test/CodeGen/LoongArch/intrinsic-la32.c
    M clang/test/CodeGen/LoongArch/intrinsic-la64.c

  Log Message:
  -----------
  [Clang][LoongArch] Fix wrong return value type of __iocsrrd_h (#84100)

relate:
https://gcc.gnu.org/pipermail/gcc-patches/2024-February/645016.html


  Commit: 987fe6fa507adb28602e84b471e6fe309830e361
      https://github.com/llvm/llvm-project/commit/987fe6fa507adb28602e84b471e6fe309830e361
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/test/Analysis/ScalarEvolution/max-trip-count.ll
    M llvm/test/Analysis/ScalarEvolution/pr34538.ll

  Log Message:
  -----------
  [SCEV] Migrate a couple tests to be auto generated

A few notes:
* pr34538.ll has bitrotten.  The original test printed the analysis after transforms in some cases, but this appears to been lost during migration to new pass manager.  Remove the now redundant pass invocations and simplify the test setup.


  Commit: d32bcbf6a7f5beb63ce435c2bea737d33d5b7468
      https://github.com/llvm/llvm-project/commit/d32bcbf6a7f5beb63ce435c2bea737d33d5b7468
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M lldb/source/Core/Debugger.cpp

  Log Message:
  -----------
  [lldb] Fix build failure in Debugger.cpp (NFC)

llvm-project/lldb/source/Core/Debugger.cpp:107:14:
error: no type named 'DefaultThreadPoolThreadPool' in namespace 'llvm'
static llvm::DefaultThreadPoolThreadPool *g_thread_pool = nullptr;
       ~~~~~~^
1 error generated.


  Commit: f439c7137373575b5d8e7a2e7056b8dd59e62a26
      https://github.com/llvm/llvm-project/commit/f439c7137373575b5d8e7a2e7056b8dd59e62a26
  Author: wanglei <wanglei at loongson.cn>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/ProfileData/InstrProf.cpp

  Log Message:
  -----------
  [InstrProf][NFC] Fix -Wimplicit-fallthrough warning in InstrProf.cpp after #82711


  Commit: 49ec8b747c83b8dec8317614c30e5610d133790e
      https://github.com/llvm/llvm-project/commit/49ec8b747c83b8dec8317614c30e5610d133790e
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/VINTERPInstructions.td

  Log Message:
  -----------
  AMDGPU: Define and Use HasInterpInsts for interp inst definitions (#84102)


  Commit: 85388a06b6022d0a7bc984bcaff86cf96f045338
      https://github.com/llvm/llvm-project/commit/85388a06b6022d0a7bc984bcaff86cf96f045338
  Author: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/include/llvm/TargetParser/RISCVTargetParser.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/lib/TargetParser/RISCVTargetParser.cpp
    M llvm/unittests/Target/RISCV/CMakeLists.txt
    R llvm/unittests/Target/RISCV/RISCVBaseInfoTest.cpp
    M llvm/unittests/TargetParser/CMakeLists.txt
    A llvm/unittests/TargetParser/RISCVTargetParserTest.cpp

  Log Message:
  -----------
  [RISCV] Move RISCVVType namespace to TargetParser (#83222)

Clang and some middle-end optimizations may need these helper
functions.

This can reduce some duplications.


  Commit: 96fc54828a0e72e60f90d237e571b47cad5bab87
      https://github.com/llvm/llvm-project/commit/96fc54828a0e72e60f90d237e571b47cad5bab87
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M mlir/python/mlir/dialects/arith.py
    M mlir/test/python/dialects/arith_dialect.py

  Log Message:
  -----------
  Revert "[mlir][py] better support for arith.constant construction" (#84103)

Reverts llvm/llvm-project#83259

This broke an integration test on Windows


  Commit: 929ceec70578c24b47018e7cf11ed3bd99896515
      https://github.com/llvm/llvm-project/commit/929ceec70578c24b47018e7cf11ed3bd99896515
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/unittests/Target/RISCV/BUILD.gn
    M llvm/utils/gn/secondary/llvm/unittests/TargetParser/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 85388a06b602


  Commit: 0fa04b6e2cd2169a8e3d22ae879394dbf07c0466
      https://github.com/llvm/llvm-project/commit/0fa04b6e2cd2169a8e3d22ae879394dbf07c0466
  Author: Ye Luo <yeluo at anl.gov>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M openmp/libomptarget/plugins-nextgen/amdgpu/CMakeLists.txt

  Log Message:
  -----------
  [libomptarget] Fix libomptarget.rtl.amdgpu.so installation

If AMD GPUs don't exist when building libomptarget, the early return causes skipping the plugin installation.


  Commit: ae709c192953be2af61f47e91a3ec9f8d5ffb027
      https://github.com/llvm/llvm-project/commit/ae709c192953be2af61f47e91a3ec9f8d5ffb027
  Author: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/MCA/CMakeLists.txt

  Log Message:
  -----------
  [RISCV] Add TargetParser to MCA (#84109)

This fixes buildbot failures:
https://lab.llvm.org/buildbot/#/builders/57/builds/33206


  Commit: 403b9cf1bb29d550c419ac5ecd2f764bf5cfa3c0
      https://github.com/llvm/llvm-project/commit/403b9cf1bb29d550c419ac5ecd2f764bf5cfa3c0
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils.h
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
    M llvm/lib/Transforms/Utils/Mem2Reg.cpp
    M llvm/test/CodeGen/WebAssembly/ref-type-mem2local.ll

  Log Message:
  -----------
  [WebAssembly] Use RefTypeMem2Local instead of Mem2Reg (#83196)

When reference-types feature is enabled, forcing mem2reg unconditionally
even in `-O0` has some problems described in #81575. This uses
RefTypeMem2Local pass added in #81965 instead. This also removes
`IsForced` parameter added in

https://github.com/llvm/llvm-project/commit/890146b19206827bc48ee1ae1dc1534ff2ff18d7
given that we don't need it anymore.

This may still hurt debug info related to reference type variables a
little during the backend transformation given that they are not stored
in memory anymore, but reference type variables are presumably rare and
it would be still a lot less damage than forcing mem2reg on the whole
program. Also this fixes the EH problem described in #81575.

Fixes #81575.


  Commit: 433b71188da9649a9040f0db5338c65369fa3e90
      https://github.com/llvm/llvm-project/commit/433b71188da9649a9040f0db5338c65369fa3e90
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang/lib/Driver/Driver.cpp
    M clang/test/Driver/cuda-detect.cu
    M clang/test/Driver/cuda-march.cu
    M clang/test/Driver/cuda-omp-unsupported-debug-options.cu
    M clang/test/Driver/cuda-options.cu
    M clang/test/Driver/cuda-ptxas-path.cu
    M clang/test/Driver/dwarf-target-version-clamp.cu

  Log Message:
  -----------
  [CUDA] Correctly set CUDA default architecture (#84017)

Summary:
We already had a special CUDA default that better tracked the state as
of modern CUDA installations. Recently this was bumped up to `sm_52`,
but there was a location that wasn't respecting this. Fix that.


  Commit: a30233f5765071c8b269189758e8b907e19c4724
      https://github.com/llvm/llvm-project/commit/a30233f5765071c8b269189758e8b907e19c4724
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M libc/CMakeLists.txt
    M libc/cmake/modules/prepare_libc_gpu_build.cmake

  Log Message:
  -----------
  [libc] Fix standalone cross compiling build for the GPU (#84042)

Summary:
This patch fixes some issues with building the GPU target manually
without the runtimes bootstrapping build. This fixes the install
directory and sets the default namespace to something more sensible if
not set. Also I got rid of the check on `-mcpu=native`. it was a neat
trick, but CMake in its INFINITE wisdom does not allow you to set link
flags on the compiler flag check. So I just went with the old tool
usage.


  Commit: 0f3628a93749433df51b763ff675152d82a25973
      https://github.com/llvm/llvm-project/commit/0f3628a93749433df51b763ff675152d82a25973
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
    M llvm/lib/Target/AMDGPU/SISchedule.td
    A llvm/test/tools/llvm-mca/AMDGPU/gfx90a-mfma.s
    M llvm/test/tools/llvm-mca/AMDGPU/gfx940-mfma.s

  Log Message:
  -----------
  AMDGPU: Correct cycle counts for f64 mfma on gfx940 (#83782)


  Commit: 5549b0173661155d4ca9acf4958fe6dce34c2cd5
      https://github.com/llvm/llvm-project/commit/5549b0173661155d4ca9acf4958fe6dce34c2cd5
  Author: Nathan Ridge <zeratul976 at hotmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang-tools-extra/clangd/ClangdServer.cpp
    M clang-tools-extra/clangd/IncludeCleaner.cpp
    M clang-tools-extra/clangd/IncludeCleaner.h
    M clang-tools-extra/clangd/ParsedAST.cpp
    M clang-tools-extra/clangd/unittests/IncludeCleanerTests.cpp

  Log Message:
  -----------
  [clangd] Make all calls to format::getStyle() go through getFormatStyleForFile() (#82948)


  Commit: d1aec79a2ce077e49da7699c4ca2dee239d0a249
      https://github.com/llvm/llvm-project/commit/d1aec79a2ce077e49da7699c4ca2dee239d0a249
  Author: Nathan Ridge <zeratul976 at hotmail.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang-tools-extra/clangd/FindSymbols.cpp
    M clang-tools-extra/clangd/unittests/FindSymbolsTests.cpp

  Log Message:
  -----------
  [clangd] Remove calls to getFileLoc() in declToSym() (#83532)

toHalfOpenFileRange() already handles translating macro locations to
file locations, and it can provide a better result by knowing about both
ends of the range.

Fixes https://github.com/clangd/clangd/issues/1941


  Commit: b930b14d5d8084425cec75f2037746ab99768c0f
      https://github.com/llvm/llvm-project/commit/b930b14d5d8084425cec75f2037746ab99768c0f
  Author: Kai Sasaki <lewuathe at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M mlir/lib/Conversion/ComplexToStandard/ComplexToStandard.cpp
    M mlir/test/Conversion/ComplexToStandard/convert-to-standard.mlir

  Log Message:
  -----------
  [mlir][complex] Support fast math flag in converting complex.atan2 op (#82101)

When converting complex.atan2 op to standard, we need to keep the fast
math flag given to the op.

See:
https://discourse.llvm.org/t/rfc-fastmath-flags-support-in-complex-dialect/71981


  Commit: 7bad74e66756ca2fd1fe4f5864e7123fb4553d78
      https://github.com/llvm/llvm-project/commit/7bad74e66756ca2fd1fe4f5864e7123fb4553d78
  Author: Qwinci <32550582+Qwinci at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
    M clang/lib/Sema/SemaCodeComplete.cpp

  Log Message:
  -----------
  [clangd] Show argument names for function pointer struct fields (#69011)

Show argument names in signature help when calling a function pointer
struct field.


  Commit: 5fb331106dbcfba21f82b2a84c22a65ee9d4d014
      https://github.com/llvm/llvm-project/commit/5fb331106dbcfba21f82b2a84c22a65ee9d4d014
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

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

  Log Message:
  -----------
  [RISCV] Use uint32_t for NumOfVReg in getVLENFactoredAmount. (#84110)

The rest of the code pretty much assumed this anyway.


  Commit: 2a13422b8bcee449405e3ebff957b4020805f91c
      https://github.com/llvm/llvm-project/commit/2a13422b8bcee449405e3ebff957b4020805f91c
  Author: AtariDreams <83477269+AtariDreams at users.noreply.github.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/ReachingDefAnalysis.cpp
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIOptimizeExecMasking.cpp
    M llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
    M llvm/lib/Target/ARM/Thumb1FrameLowering.cpp
    M llvm/lib/Target/SystemZ/SystemZElimCompare.cpp
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
    M llvm/lib/Target/SystemZ/SystemZShortenInst.cpp
    M llvm/lib/Target/X86/X86FloatingPoint.cpp
    M llvm/test/CodeGen/AArch64/arm64-shrink-wrapping.ll
    M llvm/test/CodeGen/AArch64/stack-probing-no-scratch-reg.mir
    M llvm/test/CodeGen/Thumb/PR35481.ll

  Log Message:
  -----------
  Convert many LivePhysRegs uses to LiveRegUnits (#83905)


  Commit: 3f7aa042b657671319f994ad3fb7c3eb79a6fe00
      https://github.com/llvm/llvm-project/commit/3f7aa042b657671319f994ad3fb7c3eb79a6fe00
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

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

  Log Message:
  -----------
  [nfc] Fix RTTI for `InstrProf` intrinsics (#83511)


  Commit: 9e759f3523e9e7fa955e4af58a6b4f63634dcb24
      https://github.com/llvm/llvm-project/commit/9e759f3523e9e7fa955e4af58a6b4f63634dcb24
  Author: David Majnemer <david.majnemer at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64FastISel.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/arm64-convert-v4f64.ll
    M llvm/test/CodeGen/AArch64/arm64-fast-isel-conversion-fallback.ll
    M llvm/test/CodeGen/AArch64/cvt-fp-int-fp.ll
    M llvm/test/CodeGen/AArch64/itofp.ll

  Log Message:
  -----------
  [AArch64] Fix fptoi/itofp for bf16

There were a number of issues that needed to be addressed:
- i64 to bf16 did not correctly round
- strict rounding needed to yield a chain
- fastisel did not have logic to bail on bf16


  Commit: eceb24c439b7a0ae5545ae2f6279e6f36e0b627e
      https://github.com/llvm/llvm-project/commit/eceb24c439b7a0ae5545ae2f6279e6f36e0b627e
  Author: Visoiu Mistrih Francis <890283+francisvm at users.noreply.github.com>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/test/Transforms/ConstantHoisting/RISCV/immediates.ll

  Log Message:
  -----------
  [RISCV] Hoist immediate addresses from loads/stores (#83644)

In case of loads/stores from an immediate address, avoid rematerializing
the constant for every block and allow consthoist to hoist it to the
entry block.


  Commit: 228c737b3c2fdc22a431b65df3b9ec528db5e67f
      https://github.com/llvm/llvm-project/commit/228c737b3c2fdc22a431b65df3b9ec528db5e67f
  Author: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/test/Transforms/InstCombine/RISCV/riscv-vsetvli-knownbits.ll
    A llvm/test/Transforms/InstCombine/RISCV/riscv-vsetvlimax-knownbits.ll

  Log Message:
  -----------
  [RISCV] Add tests for vsetvli/vsetvlimax with different SEW/LMUL


  Commit: 60822637bf007cbaf7401a6ec25cdf2ea7b7edbd
      https://github.com/llvm/llvm-project/commit/60822637bf007cbaf7401a6ec25cdf2ea7b7edbd
  Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/include/llvm/ADT/GenericConvergenceVerifier.h
    M llvm/include/llvm/CodeGen/FunctionLoweringInfo.h
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    A llvm/include/llvm/CodeGen/MachineConvergenceVerifier.h
    M llvm/include/llvm/CodeGen/SelectionDAGISel.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/IR/GenericConvergenceVerifierImpl.h
    M llvm/include/llvm/Support/TargetOpcodes.def
    M llvm/include/llvm/Target/Target.td
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/lib/CodeGen/CMakeLists.txt
    A llvm/lib/CodeGen/MachineConvergenceVerifier.cpp
    M llvm/lib/CodeGen/MachineVerifier.cpp
    M llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
    M llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/lib/CodeGen/ValueTypes.cpp
    M llvm/lib/IR/ConvergenceVerifier.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    A llvm/test/CodeGen/AMDGPU/convergence-tokens.ll
    M llvm/test/CodeGen/AMDGPU/isel-amdgpu-cs-chain-cc.ll
    M llvm/test/CodeGen/AMDGPU/kernel-vgpr-spill-mubuf-with-voffset.ll
    M llvm/test/CodeGen/AMDGPU/need-fp-from-vgpr-spills.ll
    M llvm/test/CodeGen/AMDGPU/no-source-locations-in-prologue.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-spills-split-regalloc.ll
    M llvm/test/CodeGen/AMDGPU/stacksave_stackrestore.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-liverange-ir.ll
    M llvm/test/CodeGen/AMDGPU/vgpr_constant_to_sgpr.ll
    M llvm/test/CodeGen/AMDGPU/whole-wave-register-spill.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved.ll
    M llvm/test/CodeGen/PowerPC/fmf-propagation.ll
    A llvm/test/MachineVerifier/convergencectrl/AMDGPU/basic.mir
    A llvm/test/MachineVerifier/convergencectrl/AMDGPU/cycles.mir
    A llvm/test/MachineVerifier/convergencectrl/AMDGPU/lit.local.cfg
    A llvm/test/MachineVerifier/convergencectrl/AMDGPU/mixed2.mir
    A llvm/test/MachineVerifier/convergencectrl/AMDGPU/region-nesting.mir
    M llvm/test/TableGen/GlobalISelCombinerEmitter/builtins/match-table-replacerreg.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-imms.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-intrinsics.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-patfrag-root.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-variadics.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table.td

  Log Message:
  -----------
  Restore "Implement convergence control in MIR using SelectionDAG (#71785)"

This restores commit c7fdd8c11e54585dc9d15d63de9742067e0506b9.
Previously reverted in f010b1bef4dda2c7082cbb41dbabf1f149cce306.

LLVM function calls carry convergence control tokens as operand bundles, where
the tokens themselves are produced by convergence control intrinsics. This patch
implements convergence control tokens in MIR as follows:

1. Introduce target-independent ISD opcodes and MIR opcodes for convergence
   control intrinsics.
2. Model token values as untyped virtual registers in MIR.

The change also introduces an additional ISD opcode CONVERGENCECTRL_GLUE and a
corresponding machine opcode with the same spelling. This glues the convergence
control token to SDNodes that represent calls to intrinsics. The glued token is
later translated to an implicit argument in the MIR.

The lowering of calls to user-defined functions is target-specific. On AMDGPU,
the convergence control operand bundle at a non-intrinsic call is translated to
an explicit argument to the SI_CALL_ISEL instruction. Post-selection adjustment
converts this explicit argument to an implicit argument on the SI_CALL
instruction.


  Commit: 95b52ecb7881014089a5282d308fab4eb8237f20
      https://github.com/llvm/llvm-project/commit/95b52ecb7881014089a5282d308fab4eb8237f20
  Author: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/InstCombine/RISCV/riscv-vsetvli-knownbits.ll
    M llvm/test/Transforms/InstCombine/RISCV/riscv-vsetvlimax-knownbits.ll

  Log Message:
  -----------
  [RISCV] Take SEW/LMUL into account for value tracking of vsetvli[max] (#82163)

So that we can benefit from some instcombine optimizations.

This PR contains two commits: the first is for adding tests and the
second is for the optimization.


  Commit: 6bf61283ed0c4e05ef29d9cd935e82fe2dd72a99
      https://github.com/llvm/llvm-project/commit/6bf61283ed0c4e05ef29d9cd935e82fe2dd72a99
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

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

  Log Message:
  -----------
  [gn build] Port 60822637bf00


  Commit: 5ff3f6604b3a060376db74e454b5609de35b75e1
      https://github.com/llvm/llvm-project/commit/5ff3f6604b3a060376db74e454b5609de35b75e1
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M lld/test/ELF/linkerscript/wildcards.s

  Log Message:
  -----------
  [ELF] Improve wildcard tests for input section descriptions


  Commit: d3e79e4cc33b89c61a8763a130f60a443eed4775
      https://github.com/llvm/llvm-project/commit/d3e79e4cc33b89c61a8763a130f60a443eed4775
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-05 (Tue, 05 Mar 2024)

  Changed paths:
    M lld/test/ELF/linkerscript/wildcards.s

  Log Message:
  -----------
  [ELF] Improve wildcard test


  Commit: d3df2a834cf6febb44c699d109b9e7f622194837
      https://github.com/llvm/llvm-project/commit/d3df2a834cf6febb44c699d109b9e7f622194837
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/Module.h
    M clang/lib/Basic/Module.cpp
    M clang/lib/Sema/SemaModule.cpp
    A clang/test/Modules/transitive-import.cppm

  Log Message:
  -----------
  [C++20] [Modules] Handle transitive import in the module properly

Close https://github.com/llvm/llvm-project/issues/84002

Per [module.import]p7:

> Additionally, when a module-import-declaration in a module unit of
> some module M imports another module unit U of M, it also imports all
> translation units imported by non-exported module-import-declarations
> in the module unit purview of U.

However, we only tried to implement it during the implicit import of
primary module interface for module implementation unit.

Also we didn't implement the last sentence from [module.import]p7
completely:

> These rules can in turn lead to the importation of yet more
> translation units.

This patch tries to care the both issues.


  Commit: bec7ad9fd6bceb6521448b24faddb01bc52de3a7
      https://github.com/llvm/llvm-project/commit/bec7ad9fd6bceb6521448b24faddb01bc52de3a7
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/vwadd-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vwmul-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vwsub-sdnode.ll

  Log Message:
  -----------
  [RISCV] Add tests for vw{add,sub,mul} with nested extend. NFC

These test cases show (op (ext a), (ext b)) patterns where the dest EEW is
more than 2 * source EEW. These could be lowered into widening ops where we
still have extend the operands, but at a smaller EEW.


  Commit: 7a0acccd81df268dc7ad4c0358c42552789f19b4
      https://github.com/llvm/llvm-project/commit/7a0acccd81df268dc7ad4c0358c42552789f19b4
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    A clang/test/CXX/drs/dr438.cpp
    A clang/test/CXX/drs/dr439.cpp
    A clang/test/CXX/drs/dr441.cpp
    A clang/test/CXX/drs/dr462.cpp
    A clang/test/CXX/drs/dr492.cpp
    M clang/test/CXX/drs/dr4xx.cpp
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  [clang] Add some CodeGen tests for CWG 4xx issues (#83715)

This patch covers the following defect reports:
[CWG438](https://cplusplus.github.io/CWG/issues/438.html) "Possible flaw
in wording for multiple accesses to object between sequence points",
[CWG439](https://cplusplus.github.io/CWG/issues/439.html) "Guarantees on
casting pointer back to cv-qualified version of original type",
[CWG441](https://cplusplus.github.io/CWG/issues/441.html) "Ordering of
static reference initialization",
[CWG462](https://cplusplus.github.io/CWG/issues/462.html) "Lifetime of
temporaries bound to comma expressions",
[CWG492](https://cplusplus.github.io/CWG/issues/492.html) "`typeid`
constness inconsistent with example".

[CWG475](https://cplusplus.github.io/CWG/issues/475.html) "When is
`std::uncaught_exception()` true? (take 2)" requires a libc++abi test.
As for [CWG454](https://cplusplus.github.io/CWG/issues/454.html) "When
is a definition of a static data member required?", I don't feel
confident in my understanding of it, so skipping over it.


  Commit: 9f45c5e1a65a1abf4920b617d36ed05e73c04bea
      https://github.com/llvm/llvm-project/commit/9f45c5e1a65a1abf4920b617d36ed05e73c04bea
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/test/Transforms/InstCombine/select.ll

  Log Message:
  -----------
  [InstCombine] Fix infinite loop in select equivalence fold (#84036)

When replacing with a non-constant, it's possible that the result of the
simplification is actually more complicated than the original, and may
result in an infinite combine loop.

Mitigate the issue by requiring that either the replacement or
simplification result is constant, which should ensure that it's
simpler. While this check is crude, it does not appear to cause
optimization regressions in real-world code in practice.

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


  Commit: 6cdf596c52f028ea7d150e0696f967fbff443ccf
      https://github.com/llvm/llvm-project/commit/6cdf596c52f028ea7d150e0696f967fbff443ccf
  Author: hanbeom <kese111 at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/Local.h
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Utils/Local.cpp
    M llvm/test/Transforms/InstCombine/phi-select-constant.ll
    M llvm/test/Transforms/InstCombine/pr63791.ll
    M llvm/test/Transforms/InstCombine/sink_to_unreachable.ll
    M llvm/test/Transforms/InstCombine/unreachable-code.ll

  Log Message:
  -----------
  [InstCombine] If inst in unreachable refers to an inst change it to poison (#78444)

Instructions in unreachable basic blocks are removed, but terminators
are not. In this case, even instructions that are only referenced by
a terminator, such as a return instruction, cannot be processed
properly.

This patch changes the operand of a return instruction in an
unreachable basic block to poison if it refers to the instruction,
allowing the instruction to be properly processed.

Fixes #65107.


  Commit: aced81c0a5bf30dda99fde2e28364426de4c18d3
      https://github.com/llvm/llvm-project/commit/aced81c0a5bf30dda99fde2e28364426de4c18d3
  Author: Mariya Podchishchaeva <mariya.podchishchaeva at intel.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/Expr.h
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/TokenKinds.def
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Sema/DeclSpec.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaInit.cpp
    M clang/lib/Sema/SemaOverload.cpp
    A clang/test/C/C2x/n3018.c
    A clang/test/Parser/c23-constexpr.c
    A clang/test/Sema/constexpr.c
    M clang/www/c_status.html

  Log Message:
  -----------
  [C23] Implement N3018: The constexpr specifier for object definitions (#73099)

The implementation mostly reuses C++ code paths where possible,
including narrowing check in order to provide diagnostic messages in
case initializer for constexpr variable is not exactly representable in
target type.

The following won't work due to lack of support for other features:
- Diagnosing of underspecified declarations involving constexpr
- Constexpr attached to compound literals

Also due to lack of support for char8_t some of examples with utf-8
strings don't work properly.

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


  Commit: 6e27dd47e1fc17cf661b568901fe7392ed1b8f2b
      https://github.com/llvm/llvm-project/commit/6e27dd47e1fc17cf661b568901fe7392ed1b8f2b
  Author: Ingo Müller <ingomueller at google.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M mlir/lib/Dialect/GPU/CMakeLists.txt
    M mlir/lib/Dialect/GPU/Transforms/SerializeToHsaco.cpp

  Log Message:
  -----------
  [mlir][gpu] Replace MLIR_GPU_TO_HSACO_PASS_ENABLE by more generic one. (#84001)

This is another follow-up of #83004. The PR replaces the macro
`MLIR_GPU_TO_HSACO_PASS_ENABLE` with the more generic macro
`MLIR_ENABLE_ROCM_CONVERSIONS`. Until now, the former has been defined
if and only if the latter evaluated to true in CMake. However, the
former was not defined when the latter evaluated to false, in which case
a warning was raised if compiled with `-Wundef`. Using a single macro
relies on the `#cmakedefine01` mechanism that ensures the macro is
always set to either 0 or 1.


  Commit: d70254a623d7c23c493cc793756a5a9d758b0a14
      https://github.com/llvm/llvm-project/commit/d70254a623d7c23c493cc793756a5a9d758b0a14
  Author: Ingo Müller <ingomueller at google.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M mlir/lib/Target/LLVM/NVVM/Target.cpp
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir][nvvm] Add missing include to llvm-config.h. (#83998)

This is another follow-up of #83004. `NVVM/Target.cpp` uses the macro
`MLIR_NVPTXCOMPILER_ENABLED`, which is defined in `llvm-config.h` but
did not include that file, yielding a warning when compiled with
`-Wundef`. This PR adds the include.

~~This is another follow-up of #83004, which made the same change for
`MLIR_CUDA_CONVERSIONS_ENABLED`. As the previous PR, this PR commit
exposes mentioned CMake variable through `mlir-config.h` and uses the
macro that is introduced with the same name. This replaces the macro
`MLIR_NVPTXCOMPILER_ENABLED`, which the CMake files previously defined
manually.~~


  Commit: 0e5bde021252f68b378b31fd64a885a8b28aad65
      https://github.com/llvm/llvm-project/commit/0e5bde021252f68b378b31fd64a885a8b28aad65
  Author: Adrian Kuegel <akuegel at google.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M mlir/include/mlir/IR/BuiltinAttributeInterfaces.h
    M mlir/lib/Bindings/Python/TransformInterpreter.cpp

  Log Message:
  -----------
  [mlir] Remove noexcept again from move constructors.

LLVM does not have the corresponding ClangTidy check enabled, so we
should not be fixing such findings.


  Commit: 52d5b8e02d258e4c32864eb1bb943cfae119b1d6
      https://github.com/llvm/llvm-project/commit/52d5b8e02d258e4c32864eb1bb943cfae119b1d6
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.ll
    A llvm/test/CodeGen/AMDGPU/verifier-sdwa-cvt.mir

  Log Message:
  -----------
  [AMDGPU] Don't form sext/abs/neg fp8 cvt (#83843)

gfx940 does not allow abs/sext/neg on v_cvt_fp8/bf8 & pk variants.

Fixes SWDEV-447468


  Commit: 471a6128901747130ae11ce87b6e0095f862ed9a
      https://github.com/llvm/llvm-project/commit/471a6128901747130ae11ce87b6e0095f862ed9a
  Author: Jacques Pienaar <jpienaar at google.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M mlir/test/mlir-tblgen/rewriter-errors.td
    M mlir/tools/mlir-tblgen/RewriterGen.cpp

  Log Message:
  -----------
  [mlir][drr] Add warning for simple case of mismatched variadic. (#84040)

When a variadic argument is expected but not provided the compilation
fails later with a difficult to follow compilation error. Add a simple
check to catch one such case.

This is not yet general as it doesn't yet check leaf nodes.


  Commit: ac74d9ec0f73898713dd6e0d33f148c13a51875d
      https://github.com/llvm/llvm-project/commit/ac74d9ec0f73898713dd6e0d33f148c13a51875d
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

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

  Log Message:
  -----------
  [clang][NFC] Regroup declarations in `Sema` (#82217)

This patch regroups declarations in `Sema` based on the file they are
implemented in (e.g. `SemaChecking.cpp`). This allows to logically split
`Sema` in 42 groups. No physical separation is done (e.g. splitting
`Sema` into multiple classes). Table of contents added at the very
beginning of `Sema`. Grouping is reflected in Doxygen commands, so
structure of API reference of `Sema` is also significantly improved
([example from official
documentation](https://www.doxygen.nl/manual/examples/memgrp/html/class_memgrp___test.html),
[comparison of Sema API
reference](https://github.com/llvm/llvm-project/pull/82217#issuecomment-1954567763)).

While grouping is intentional, as well as each group consisting of
`public` declarations followed by `private` ones (without changing
access in-between), exact contents and order of declarations of each
group is partially carried over from old structure, partially accidental
due to time constrains to do the regrouping over the weekend (`Sema` is
just enormously big). Data members and inline function definitions in
`Sema.h` complicate the matter, since it's not obvious which group they
belong to. Further work is expected to refine contents and order of
declarations.

What is also intentional is some kind of layering, where Concepts group
follows template groups, and ObjC, code completion, CUDA, HLSL, OpenACC,
OpenMP, and SYCL are all placed at the end of the file, after C and C++
parts of `Sema`.

I used `clang-query` to verify that access specifiers were preserved
during the process (https://gcc.godbolt.org/z/9johffY9T, thank you
@ilya-biryukov). Only the following 3 member types were converted from
`private` to `public` because of limitations of the new grouping:
`DeclareTargetContextInfo`, `TypoExprState`, `SatisfactionStackEntryTy`.

Member initializer list of `Sema` in `Sema.cpp` is rewritten to reflect
new order of data members in order to avoid `-Wreorder-ctor`.

Since this patch touches almost every line in `Sema.h`, it was
considered appropriate to run clang-format on the whole file, and not
just on changed lines.


  Commit: 20459ddc82514249501c3517583c4ec8dd23cecd
      https://github.com/llvm/llvm-project/commit/20459ddc82514249501c3517583c4ec8dd23cecd
  Author: Jonathan Schilling <130992531+jons-pf at users.noreply.github.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M openmp/tools/archer/ompt-tsan.cpp

  Log Message:
  -----------
  [openmp] Clarify error message if TSan is missing (#70916)

For an uninformed user, the error message might refer to a missing "TSan
stopping operation", rather than indicating that TSan is missing **and
therefore** operation is stopped.


  Commit: 92529eb4aeb2dbb706aedebc1ed9fc4f8045231a
      https://github.com/llvm/llvm-project/commit/92529eb4aeb2dbb706aedebc1ed9fc4f8045231a
  Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/CodeGen/attr-target-version.c
    M clang/test/Sema/attr-target-version.c

  Log Message:
  -----------
  [FMV] Allow target version definitions in any order. (#83887)

This patch fixes #71698. It allows defining the default target version
prior to other version definitions without raising semantic errors.


  Commit: e85470232ba2fa49aaee83240741de0bc82a3ffa
      https://github.com/llvm/llvm-project/commit/e85470232ba2fa49aaee83240741de0bc82a3ffa
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M .github/CODEOWNERS

  Log Message:
  -----------
  Subscribe @Endilll to changes in Clang's `Sema.h`


  Commit: 239312e49b2fdf35e23d75197a621ee6087743ee
      https://github.com/llvm/llvm-project/commit/239312e49b2fdf35e23d75197a621ee6087743ee
  Author: Alejandro Álvarez Ayllón <alejandro.alvarez at sonarsource.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
    M clang/test/Analysis/Inputs/system-header-simulator-for-simple-stream.h
    M clang/test/Analysis/Inputs/system-header-simulator-for-valist.h
    M clang/test/Analysis/Inputs/system-header-simulator.h
    M clang/test/Analysis/stream-invalidate.c
    M clang/test/Analysis/stream.c

  Log Message:
  -----------
  Reapply "[clang][analyzer] StreamChecker: Model getc, vfscanf, putc, vfprintf" (#83281)

`va_list` is a platform-specific type. On some, it is a struct instead
of a pointer to a struct, so `lookupFn` was ignoring calls to `vfprintf`
and `vfscanf`.

`stream.c` now runs in four different platforms to make sure the logic
works across targets.


  Commit: ea23761429faa4e61d7a601da9a313dfdc058cb0
      https://github.com/llvm/llvm-project/commit/ea23761429faa4e61d7a601da9a313dfdc058cb0
  Author: Yuta Mukai <mukai.yuta at fujitsu.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    A llvm/test/CodeGen/AArch64/ldp-stp-unknown-size.mir

  Log Message:
  -----------
  [AArch64] Verify ldp/stp alignment stricter (#84124)

When ldp-aligned-only/stp-aligned-only is specified, modified to cancel
ldp/stp transformation if MachineMemOperand is not present or the access
size is unknown.
In the previous implementation, the test passed when there was no
MachineMemOperand. Also, if the size was unknown, an incorrect value was
used or an assertion failed. (But actually, if there is no
MachineMemOperand, it will be excluded from the target by
isCandidateToMergeOrPair() before reaching the part.)

A statistic NumFailedAlignmentCheck is added. NumPairCreated is modified
so that it only counts if it is not canceled.


  Commit: 86b630092f9a5139c4c4d627f1e0504e8f549bce
      https://github.com/llvm/llvm-project/commit/86b630092f9a5139c4c4d627f1e0504e8f549bce
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/lib/AST/Interp/Interp.h
    M clang/test/AST/Interp/c.c

  Log Message:
  -----------
  [clang][Interp] Allow getFieldPtr ops on null pointers in C


  Commit: a9ff5c0b75abc3b7aa5c357b226e067b4ddc04bf
      https://github.com/llvm/llvm-project/commit/a9ff5c0b75abc3b7aa5c357b226e067b4ddc04bf
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/CodeOwners.rst

  Log Message:
  -----------
  [clang][Docs] Add my Discourse + Discord name

And escape the @ in my email


  Commit: 5ddc5b8525a9256716cda1398249f0ab2dd968eb
      https://github.com/llvm/llvm-project/commit/5ddc5b8525a9256716cda1398249f0ab2dd968eb
  Author: Kirill Chibisov <contact at kchibisov.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td

  Log Message:
  -----------
  [mlir][emitc] Fix `emitc.expression` example (#84060)

Make it use and refer to `emitc.yield` and also fix type issues.


  Commit: cf922e51b850410a3a2944035432f44f1e741b21
      https://github.com/llvm/llvm-project/commit/cf922e51b850410a3a2944035432f44f1e741b21
  Author: Yingchi Long <i at lyc.dev>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Target/BPF/BPFISelLowering.cpp
    M llvm/lib/Target/BPF/BPFISelLowering.h
    M llvm/lib/Target/BPF/BPFInstrInfo.td
    M llvm/lib/Target/BPF/BPFMCInstLower.cpp

  Log Message:
  -----------
  [BPF] lowering target address leaf nodes tconstpool (#73667)

Adds custom lowering for tconstpool.

Please ref: https://github.com/llvm/llvm-project/pull/73668 for test
coverage


  Commit: 716a23c412704c0224bbe97c1a55ced1b1624e0c
      https://github.com/llvm/llvm-project/commit/716a23c412704c0224bbe97c1a55ced1b1624e0c
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M libcxx/docs/ReleaseNotes/19.rst
    M libcxx/docs/Status/Cxx2cPapers.csv
    M libcxx/docs/Status/SpaceshipPapers.csv

  Log Message:
  -----------
  [libc++][NFC] Status page: fix minor formatting issues (#83969)

Fixes several minor formatting issues and omissions I introduced on the
status pages in previous patches.


  Commit: c2e34a60c433f5dff79c4c2bdb2df5d8ad1f201f
      https://github.com/llvm/llvm-project/commit/c2e34a60c433f5dff79c4c2bdb2df5d8ad1f201f
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

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

  Log Message:
  -----------
  [lldb][lldb-server] Fix pipe spelling mistake in log message


  Commit: a888f5e4d7d979617a47262a875f5433ee161074
      https://github.com/llvm/llvm-project/commit/a888f5e4d7d979617a47262a875f5433ee161074
  Author: Ivan Kosarev <ivan.kosarev at amd.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/test/MC/AMDGPU/bf16_imm.s
    M llvm/test/MC/AMDGPU/gfx1150_asm_features.s
    M llvm/test/MC/AMDGPU/gfx1150_asm_salu_float.s
    M llvm/test/MC/AMDGPU/gfx1150_asm_sopp.s
    M llvm/test/MC/AMDGPU/gfx12_asm_ds.s
    M llvm/test/MC/AMDGPU/gfx12_asm_ds_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_exp.s
    M llvm/test/MC/AMDGPU/gfx12_asm_features.s
    M llvm/test/MC/AMDGPU/gfx12_asm_global_load_tr.s
    M llvm/test/MC/AMDGPU/gfx12_asm_smem.s
    M llvm/test/MC/AMDGPU/gfx12_asm_sop1.s
    M llvm/test/MC/AMDGPU/gfx12_asm_sop2.s
    M llvm/test/MC/AMDGPU/gfx12_asm_sop2_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_sopc.s
    M llvm/test/MC/AMDGPU/gfx12_asm_sopk.s
    M llvm/test/MC/AMDGPU/gfx12_asm_sopk_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_sopp.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vbuffer_mtbuf.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vbuffer_mtbuf_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vbuffer_mubuf.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vbuffer_mubuf_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vdsdir.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vflat.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vflat_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vimage.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vimage_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2_aliases.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2_t16_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_aliases.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3c.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3c_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3c_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_aliases.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_dpp16_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_dpp8_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_features.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_t16_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx_t16_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopd.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopd_errs.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopd_features.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vsample.s
    M llvm/test/MC/AMDGPU/gfx12_asm_wmma_w32.s
    M llvm/test/MC/AMDGPU/gfx12_asm_wmma_w64.s
    M llvm/test/MC/AMDGPU/gfx12_err.s
    M llvm/test/MC/AMDGPU/gfx12_unsupported.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx1150_dasm_features.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1150_dasm_salu_float.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1150_dasm_sopp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_ds.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_exp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_features.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_global_load_tr.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_smem.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sopk.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sopp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vbuffer_mtbuf.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vbuffer_mubuf.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vdsdir.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vflat.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vimage.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vinterp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop1_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop1_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop2_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop2_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop2_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop2_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3p.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3p_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3p_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3p_err.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopc_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopc_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopcx_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopcx_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopd.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopd_features.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vsample.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_wmma_w32.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_wmma_w64.txt

  Log Message:
  -----------
  [AMDGPU][NFC] Update tests to use -triple= instead of -arch=. (#84153)


  Commit: df267fe32759658bebd846f98fdf5db61312837d
      https://github.com/llvm/llvm-project/commit/df267fe32759658bebd846f98fdf5db61312837d
  Author: Marius Brehler <marius.brehler at iml.fraunhofer.de>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M mlir/lib/Conversion/FuncToEmitC/FuncToEmitCPass.cpp

  Log Message:
  -----------
  [mlir][EmitC] Correct comment (NFC)


  Commit: a6ee0adb724a3f1705fc54937e734ffc2a032096
      https://github.com/llvm/llvm-project/commit/a6ee0adb724a3f1705fc54937e734ffc2a032096
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/MCA/Stages/InOrderIssueStage.cpp
    A llvm/test/tools/llvm-mca/AMDGPU/carried-over.s

  Log Message:
  -----------
  [llvm-mca][AMDGPU] Retire instructions that have issue carry over correctly (#83881)

https://github.com/llvm/llvm-project/issues/83775 shows llvm-mca hits
sanitizer error in cycleEnd. There was an instruction that takes
multiple cycles to issue and is finished executing directly after issue.
Prior to this patch, the instruction is retired on the first issue
cycle, despite taking multiple cycles to issue.

To fix this, if an instruction takes multiple cycles to issue and is
done executing after issue, let updateCarriedOver retire the instruction
when it is fully issued.


  Commit: c486d90bdcbd50046fbd8ac874e4b0e62e287193
      https://github.com/llvm/llvm-project/commit/c486d90bdcbd50046fbd8ac874e4b0e62e287193
  Author: Balazs Benics <benicsbalazs at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

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

  Log Message:
  -----------
  [analyzer][NFC] Document check::ASTCodeBody checker callback (#84160)

Fixes #73764

With this patch, now all the callbacks are demonstrated here.


  Commit: be15a6b3b68bed7b9d982f25b2e10a273302002a
      https://github.com/llvm/llvm-project/commit/be15a6b3b68bed7b9d982f25b2e10a273302002a
  Author: Ingo Müller <ingomueller at google.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Config/mlir-config.h.cmake
    M mlir/tools/mlir-opt/CMakeLists.txt
    M mlir/tools/mlir-opt/mlir-opt.cpp
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir][opt] Expose MLIR_ENABLE_DEPRECATED_GPU_SER... in mlir-config.h. (#84006)

This is another follow-up of #83004, which made the same change for
`MLIR_CUDA_CONVERSIONS_ENABLED`. As the previous PR, this PR commit
exposes mentioned CMake variable through `mlir-config.h` and uses the
macro that is introduced with the same name. This replaces the macro
`MLIR_ENABLE_DEPRECATED_GPU_SERIALIZATION`, which the CMake files
previously defined manually.


  Commit: 099045a0456a77c38aed504d0b50d44c4d3df6ff
      https://github.com/llvm/llvm-project/commit/099045a0456a77c38aed504d0b50d44c4d3df6ff
  Author: Ingo Müller <ingomueller at google.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Config/mlir-config.h.cmake
    M mlir/lib/Target/LLVM/CMakeLists.txt
    M mlir/lib/Target/LLVM/NVVM/Target.cpp
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir][nvvm] Expose MLIR_NVPTXCOMPILER_ENABLED in mlir-config.h. (#84007)

This is another follow-up of #83004, which made the same change for
`MLIR_CUDA_CONVERSIONS_ENABLED`. As the previous PR, this PR commit
exposes mentioned CMake variable through `mlir-config.h` and uses the
macro that is introduced with the same name. This replaces the macro
`MLIR_NVPTXCOMPILER_ENABLED`, which the CMake files previously defined
manually.


  Commit: 8406f8023dc08a1697acd2375e120670c0233a8a
      https://github.com/llvm/llvm-project/commit/8406f8023dc08a1697acd2375e120670c0233a8a
  Author: Ingo Müller <ingomueller at google.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M mlir/CMakeLists.txt
    M mlir/include/mlir/Config/mlir-config.h.cmake

  Log Message:
  -----------
  [mlir][cmake] Enable -Wundef. (#84011)

This is another follow-up of #83004, which fixed a bug due to some
macros not being defined in some situations. By raising warnings on
undefined macros, this kind of bug is less likely to be introduced.
Similar to #83004, the fix is probably adding an include to
`mlir-config.h` (and potentially defining the macro there).


  Commit: 38763be6ab706e5661e94b68c3aa2069f4c736d8
      https://github.com/llvm/llvm-project/commit/38763be6ab706e5661e94b68c3aa2069f4c736d8
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M flang/include/flang/Evaluate/traverse.h
    M flang/lib/Evaluate/tools.cpp
    M flang/test/Semantics/forall01.f90
    M flang/test/Semantics/selecttype03.f90

  Log Message:
  -----------
  [flang] Do not traverse selectors in FindImpureCall and HasVectorSubscript (#84041)

In presence of symbols with AssocEntityDetails in an expression,
`Traverse`, `AnyTraverse`, `AllTraverse`, and `SetTraverse`
automatically visit the selector expression or variable.

This is most often the desired behavior but can be surprising, and was
not correct for FindImpureCall and HasVectorSubscript.

Add a default template option to flag the behavior to someone willing to
use the Traverse helper for a new utility, and set this template to
false for FindImpureCall and HasVectorSubscript.


  Commit: c4979c935f778eca623afd17dad6f97facba34bf
      https://github.com/llvm/llvm-project/commit/c4979c935f778eca623afd17dad6f97facba34bf
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/test/Dialect/Vector/canonicalize.mlir

  Log Message:
  -----------
  [mlir][VectorOps] Add fold vector.shuffle -> vector.interleave (#80968)

This folds fixed-size vector.shuffle ops that perform a 1-D interleave
to a vector.interleave operation.

For example:

```mlir
%0 = vector.shuffle %a, %b [0, 2, 1, 4] : vector<2xi32>, vector<2xi32>
```

folds to:

```mlir
%0 = vector.interleave %a, %b : vector<2xi32>
```

Depends on: #80967


  Commit: e9c1dbb408c51115289a135e721de0bf5efec0c1
      https://github.com/llvm/llvm-project/commit/e9c1dbb408c51115289a135e721de0bf5efec0c1
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.h
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    M llvm/test/CodeGen/AMDGPU/immv216.ll
    M llvm/test/CodeGen/AMDGPU/inline-constraints.ll
    M llvm/test/CodeGen/AMDGPU/shrink-add-sub-constant.ll

  Log Message:
  -----------
  Revert "[AMDGPU] Replace `isInlinableLiteral16` with specific version (#81345)"

This reverts commit 530f0e64ec11327879c44f2fd55c7c28efdbaa2d because it breaks
downstream.


  Commit: 33e312137b065ba330b187f56ddd60df70927241
      https://github.com/llvm/llvm-project/commit/33e312137b065ba330b187f56ddd60df70927241
  Author: Corentin Jabot <corentinjabot at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/www/cxx_dr_status.html
    M clang/www/cxx_status.html
    M clang/www/make_cxx_dr_status

  Log Message:
  -----------
  [Clang] Mark papers & core issues implemented in clang 18 as released


  Commit: ae79854e4dcfb923130d3cd751363dbee19cb5b5
      https://github.com/llvm/llvm-project/commit/ae79854e4dcfb923130d3cd751363dbee19cb5b5
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/www/c_status.html

  Log Message:
  -----------
  Update C status page now that Clang 18.x is released


  Commit: a8dd99eb36bbf000bb1b42e27df8644eb0762fb8
      https://github.com/llvm/llvm-project/commit/a8dd99eb36bbf000bb1b42e27df8644eb0762fb8
  Author: eric <eric at efcs.ca>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M libcxx/utils/ci/docker-compose.yml

  Log Message:
  -----------
  Bump the github actions runner base version.

Yesterday, one of the issues the libc++ builders encountered was that
they were using a client that was too old; too old to even update
automatically.

To get things working, i had to push a testing image with this change.
The testing image has been working for 12 hours now, so it's time to
commit to it :-)


  Commit: 63afcbbeeaf68751b57acc1f2911afee767d86bb
      https://github.com/llvm/llvm-project/commit/63afcbbeeaf68751b57acc1f2911afee767d86bb
  Author: Botond István Horváth <horvath.botond.istvan at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/test/CXX/drs/dr24xx.cpp
    M clang/test/SemaCXX/overload-template.cpp
    M clang/test/SemaCXX/overloaded-operator.cpp
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  [clang][Sema] Bugfix for choosing the more specialized overload (#83279)

There was a bug in Clang where it couldn't choose which overload
candidate was more specialized if it was comparing a member-function to
a non-member function. Previously, this was detected as an ambiguity,
now Clang chooses correctly.

This patch fixes the bug by fully implementing CWG2445 and moving the
template transformation described in `[temp.func.order]` paragraph 3
from `isAtLeastAsSpecializedAs()` to
`Sema::getMoreSpecializedTemplate()` so we have the transformed
parameter list during the whole comparison. Also, to be able to add the
correct type for the implicit object parameter
`Sema::getMoreSpecializedTemplate()` has new parameters for the object
type.

Fixes #74494, fixes #82509


  Commit: 1fc5e50cebf1e423bce105930c3a075044998f68
      https://github.com/llvm/llvm-project/commit/1fc5e50cebf1e423bce105930c3a075044998f68
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAMDGPU.def
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/CodeGenOpenCL/builtins-amdgcn.cl
    M llvm/docs/AMDGPUUsage.rst
    M llvm/docs/LangRef.rst
    M llvm/docs/ReleaseNotes.rst
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.h
    A llvm/test/CodeGen/AMDGPU/fpenv.ll

  Log Message:
  -----------
  [AMDGPU] Implement 'llvm.get.fpenv' and 'llvm.set.fpenv' (#83906)

Summary:
This patch implements the LLVM floating point environment control
intrinsics and also exposes it through clang. We encode the floating
point environment as a 64-bit value that simply concatenates the values
of the mode registers and the current trap status. We only fetch the
bits relevant for floating point instructions. That is, rounding mode,
denormalization mode, ieee, dx10 clamp, debug, enabled traps, f16
overflow, and active exceptions.


  Commit: 6d3bb854713e43daad34ffc84d0132d7fe010abf
      https://github.com/llvm/llvm-project/commit/6d3bb854713e43daad34ffc84d0132d7fe010abf
  Author: Sandeep Kosuri <66305775+sandeepkosuri at users.noreply.github.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/test/OpenMP/declare_target_ast_print.cpp
    M clang/test/OpenMP/declare_target_messages.cpp

  Log Message:
  -----------
  [OpenMP] Parse and Sema support for declare target in local scope (#83223)

- adds Parse and Sema support for the `declare target` directive inside
a function scope.


  Commit: f7d354af5714358d7ad83e58a1016c3f385416dd
      https://github.com/llvm/llvm-project/commit/f7d354af5714358d7ad83e58a1016c3f385416dd
  Author: yandalur <quic_yandalur at quicinc.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
    A llvm/test/CodeGen/Hexagon/isel-fold-shl-zext.ll

  Log Message:
  -----------
  [Hexagon] Fix shift value when folding shl DAG node (#83853)

When folding (or (shl xx, s), (zext y)) to (COMBINE (shl xx, s-32), y),
fix resulting shift value in HexagonISD::COMBINE node to not generate
negative values.

---------

Co-authored-by: Yashas Andaluri <yandalur at qti.qualcomm.com>


  Commit: 8fdec5d3badb94807d757c0c58a3900704320919
      https://github.com/llvm/llvm-project/commit/8fdec5d3badb94807d757c0c58a3900704320919
  Author: Jakub Kuderski <jakub at nod-labs.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/include/llvm/Support/Casting.h
    M llvm/unittests/Support/Casting.cpp

  Log Message:
  -----------
  [Support][Casting] Add predicates for `isa*` functions (#83753)

Expose function objects that call into `llvm::isa` and
`llvm::isa_and_present`, such that these type checks can be used as
predicates in generic algorithms.

Before this change, `llvm::isa*` functions cannot be easily used without
knowing both the argument type and the checked types, which leads to
them being wrapped in lambdas. For example:
```c++
llvm::all_of(myTypes,
             [](auto type) { return llvm::isa<VectorType>(type); });
```

With this PR the example above becomes:
```c++
llvm::all_of(myTypes, llvm::IsaPred<VectorType>);
```

As an alternative solution, I considered redefining `isa*` as function
objects, but I decided against doing that because it would create
asymmetry with other cast *functions* and could break code that depends
on them being actual functions.


  Commit: 4490003a22658dcd12527029b2c8682b63d8a9d6
      https://github.com/llvm/llvm-project/commit/4490003a22658dcd12527029b2c8682b63d8a9d6
  Author: Emma Pilkington <emma.pilkington95 at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/test/CodeGenCUDA/amdgpu-code-object-version-linking.cu
    M clang/test/CodeGenCUDA/amdgpu-code-object-version.cu
    M clang/test/CodeGenHIP/default-attributes.hip
    M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
    M lld/test/ELF/lto/amdgcn-oses.ll
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/test/Bitcode/upgrade-module-flag.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/crash-stack-address-O0.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/dropped_debug_info_assert.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/implicit-kernarg-backend-usage-global-isel.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-assert-align.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-atomicrmw.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call-abi-attribute-hints.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call-implicit-args.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call-return-values.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call-sret.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-constant-fold-vector-op.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-function-args.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-inline-asm.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-sibling-call.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-tail-call.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.dispatch.ptr.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.is.private.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.is.shared.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.kernarg.segment.ptr.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.queue.ptr.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.workgroup.id.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.workitem.id.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/non-entry-alloca.ll
    M llvm/test/CodeGen/AMDGPU/abi-attribute-hints-undefined-behavior.ll
    M llvm/test/CodeGen/AMDGPU/addrspacecast-constantexpr.ll
    M llvm/test/CodeGen/AMDGPU/addrspacecast.gfx6.ll
    M llvm/test/CodeGen/AMDGPU/addrspacecast.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow-codegen.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu.private-memory.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa-call.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa.ll
    M llvm/test/CodeGen/AMDGPU/attr-amdgpu-flat-work-group-size.ll
    M llvm/test/CodeGen/AMDGPU/attributor-noopt.ll
    M llvm/test/CodeGen/AMDGPU/blender-no-live-segment-at-def-implicit-def.ll
    M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
    M llvm/test/CodeGen/AMDGPU/call-alias-register-usage-agpr.ll
    M llvm/test/CodeGen/AMDGPU/call-alias-register-usage0.ll
    M llvm/test/CodeGen/AMDGPU/call-alias-register-usage1.ll
    M llvm/test/CodeGen/AMDGPU/call-alias-register-usage2.ll
    M llvm/test/CodeGen/AMDGPU/call-alias-register-usage3.ll
    M llvm/test/CodeGen/AMDGPU/call-args-inreg.ll
    M llvm/test/CodeGen/AMDGPU/call-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/call-graph-register-usage.ll
    M llvm/test/CodeGen/AMDGPU/call-waitcnt.ll
    M llvm/test/CodeGen/AMDGPU/callee-special-input-sgprs-fixed-abi.ll
    M llvm/test/CodeGen/AMDGPU/callee-special-input-vgprs.ll
    M llvm/test/CodeGen/AMDGPU/cc-update.ll
    M llvm/test/CodeGen/AMDGPU/cf-loop-on-constant.ll
    M llvm/test/CodeGen/AMDGPU/codegen-internal-only-func.ll
    M llvm/test/CodeGen/AMDGPU/collapse-endcf.ll
    M llvm/test/CodeGen/AMDGPU/control-flow-fastregalloc.ll
    M llvm/test/CodeGen/AMDGPU/cross-block-use-is-not-abi-copy.ll
    M llvm/test/CodeGen/AMDGPU/cvt_f32_ubyte.ll
    M llvm/test/CodeGen/AMDGPU/dagcombine-lshr-and-cmp.ll
    M llvm/test/CodeGen/AMDGPU/ds_read2.ll
    M llvm/test/CodeGen/AMDGPU/dwarf-multi-register-use-crash.ll
    M llvm/test/CodeGen/AMDGPU/elf-notes.ll
    M llvm/test/CodeGen/AMDGPU/enable-scratch-only-dynamic-stack.ll
    M llvm/test/CodeGen/AMDGPU/flat-for-global-subtarget-feature.ll
    M llvm/test/CodeGen/AMDGPU/flat-scratch-init.ll
    M llvm/test/CodeGen/AMDGPU/flat-scratch-reg.ll
    M llvm/test/CodeGen/AMDGPU/fneg-fabs.ll
    M llvm/test/CodeGen/AMDGPU/gfx11-user-sgpr-init16-bug.ll
    M llvm/test/CodeGen/AMDGPU/gfx902-without-xnack.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fadd.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmax.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmin.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fsub.ll
    M llvm/test/CodeGen/AMDGPU/hsa-default-device.ll
    M llvm/test/CodeGen/AMDGPU/hsa-fp-mode.ll
    M llvm/test/CodeGen/AMDGPU/hsa-func.ll
    M llvm/test/CodeGen/AMDGPU/hsa-generic-target-features.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-dynlds-func-hidden-args-v5.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-dynlds-funcarg-hidden-args-v5.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-dynlds-kernarg-hidden-args-v5.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-enqueue-kernel-.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-from-llvm-ctor-dtor-list.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-from-llvm-ir-full.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-heap-v5.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-hidden-args-v4.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-hidden-args-v5.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-hostcall-present-asan.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-hostcall-v4.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-hostcall-v5.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-images.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-invalid-ocl-version-1.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-invalid-ocl-version-3.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-kernel-code-props.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-multigrid-sync-arg-v5.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-queue-ptr-v5.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-queueptr-v5.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-resource-usage-function-ordering.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-uniform-workgroup-size-v5.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-workgroup-processor-mode-v5.ll
    M llvm/test/CodeGen/AMDGPU/hsa-note-no-func.ll
    M llvm/test/CodeGen/AMDGPU/hsa.ll
    M llvm/test/CodeGen/AMDGPU/implicit-arg-v5-opt.ll
    M llvm/test/CodeGen/AMDGPU/implicit-kernarg-backend-usage.ll
    M llvm/test/CodeGen/AMDGPU/implicit-kernel-argument-alignment.ll
    M llvm/test/CodeGen/AMDGPU/implicitarg-offset-attributes.ll
    M llvm/test/CodeGen/AMDGPU/indirect-addressing-term.ll
    M llvm/test/CodeGen/AMDGPU/indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/insert-delay-alu-bug.ll
    M llvm/test/CodeGen/AMDGPU/kernarg-size.ll
    M llvm/test/CodeGen/AMDGPU/kernel-argument-dag-lowering.ll
    M llvm/test/CodeGen/AMDGPU/kernel-vgpr-spill-mubuf-with-voffset.ll
    M llvm/test/CodeGen/AMDGPU/large-alloca-compute.ll
    M llvm/test/CodeGen/AMDGPU/lds-alignment.ll
    M llvm/test/CodeGen/AMDGPU/lds-frame-extern.ll
    M llvm/test/CodeGen/AMDGPU/lds-global-non-entry-func.ll
    M llvm/test/CodeGen/AMDGPU/lds-size.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.dispatch.id.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.dispatch.ptr.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.implicitarg.ptr.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.private.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.shared.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.kernarg.segment.ptr.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.queue.ptr.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.workgroup.id.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.workitem.id.ll
    M llvm/test/CodeGen/AMDGPU/llvm.dbg.value.ll
    M llvm/test/CodeGen/AMDGPU/lower-kernargs.ll
    M llvm/test/CodeGen/AMDGPU/lower-module-lds-via-hybrid.ll
    M llvm/test/CodeGen/AMDGPU/lower-module-lds-via-table.ll
    M llvm/test/CodeGen/AMDGPU/machine-sink-temporal-divergence-swdev407790.ll
    M llvm/test/CodeGen/AMDGPU/module-lds-false-sharing.ll
    M llvm/test/CodeGen/AMDGPU/need-fp-from-vgpr-spills.ll
    M llvm/test/CodeGen/AMDGPU/no-hsa-graphics-shaders.ll
    M llvm/test/CodeGen/AMDGPU/non-entry-alloca.ll
    M llvm/test/CodeGen/AMDGPU/nop-data.ll
    M llvm/test/CodeGen/AMDGPU/partial-sgpr-to-vgpr-spills.ll
    M llvm/test/CodeGen/AMDGPU/preserve-wwm-copy-dst-reg.ll
    M llvm/test/CodeGen/AMDGPU/promote-alloca-calling-conv.ll
    M llvm/test/CodeGen/AMDGPU/promote-alloca-no-opts.ll
    M llvm/test/CodeGen/AMDGPU/promote-alloca-padding-size-estimate.ll
    M llvm/test/CodeGen/AMDGPU/recursion.ll
    M llvm/test/CodeGen/AMDGPU/remove-no-kernel-id-attribute.ll
    M llvm/test/CodeGen/AMDGPU/reqd-work-group-size.ll
    M llvm/test/CodeGen/AMDGPU/resource-optimization-remarks.ll
    M llvm/test/CodeGen/AMDGPU/resource-usage-dead-function.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-no-vgprs.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-update-only-slot-indexes.ll
    M llvm/test/CodeGen/AMDGPU/simple-indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/sopk-no-literal.ll
    M llvm/test/CodeGen/AMDGPU/spill-m0.ll
    M llvm/test/CodeGen/AMDGPU/stack-realign-kernel.ll
    M llvm/test/CodeGen/AMDGPU/stacksave_stackrestore.ll
    M llvm/test/CodeGen/AMDGPU/tid-kd-xnack-any.ll
    M llvm/test/CodeGen/AMDGPU/tid-kd-xnack-off.ll
    M llvm/test/CodeGen/AMDGPU/tid-kd-xnack-on.ll
    M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-all-any.ll
    M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-all-not-supported.ll
    M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-all-off.ll
    M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-all-on.ll
    M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-any-off-1.ll
    M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-any-off-2.ll
    M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-any-on-1.ll
    M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-any-on-2.ll
    M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-invalid-any-off-on.ll
    M llvm/test/CodeGen/AMDGPU/tid-one-func-xnack-any.ll
    M llvm/test/CodeGen/AMDGPU/tid-one-func-xnack-not-supported.ll
    M llvm/test/CodeGen/AMDGPU/tid-one-func-xnack-off.ll
    M llvm/test/CodeGen/AMDGPU/tid-one-func-xnack-on.ll
    M llvm/test/CodeGen/AMDGPU/trap-abis.ll
    M llvm/test/CodeGen/AMDGPU/trap.ll
    M llvm/test/CodeGen/AMDGPU/tuple-allocation-failure.ll
    M llvm/test/CodeGen/AMDGPU/unstructured-cfg-def-use-issue.ll
    M llvm/test/CodeGen/AMDGPU/unsupported-code-object-version.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-spill-placement-issue61083.ll
    M llvm/test/CodeGen/AMDGPU/vgpr_constant_to_sgpr.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved.ll
    M llvm/test/tools/llvm-reduce/reduce-module-flags.ll

  Log Message:
  -----------
  [AMDGPU] Rename COV module flag to amdhsa_code_object_version (#79905)

The previous name 'amdgpu_code_object_version', was misleading since
this is really a property of the HSA OS. The new spelling also matches
the asm directive I added in bc82cfb.


  Commit: fec471649fffaa3ec44e17801e5c9605825e58bb
      https://github.com/llvm/llvm-project/commit/fec471649fffaa3ec44e17801e5c9605825e58bb
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

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

  Log Message:
  -----------
  [clang] Use getDefaultArgRange instead of getDefaultArg to retrieve the (#79296)

source location in` AliasTemplateDeductionGuideTransform`.

I don't have a reproducible testcase, but this should be a safe and
non-functional change. We have checked the `hasDefaultArg` before
calling `getDefaultArg()`, but `hasDefaultArg` allows
unparsed/uninstantiated default arg which is prohibited in
`getDefaultArg()`.

Since we're only interested in the source location, we switch to use
`getDefaultArgRange()` API.


  Commit: f448b8ec03bbd0e1b47d56f461b324fb2af8c113
      https://github.com/llvm/llvm-project/commit/f448b8ec03bbd0e1b47d56f461b324fb2af8c113
  Author: Joe Nash <Sisyph at users.noreply.github.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vop1.txt

  Log Message:
  -----------
  [AMDGPU] Make gfx11 vop1 disassembler tests use strict-whitespace (#84078)

NFC.
The whitespace needs to be consistently formatted in some manner. Might
as well use -strict-whitespace as the standard.
Adds -strict-whitespace to RUN lines and adjust CHECK line space padding
accordingly.

Also test REAL16 and FAKE16 CHECK lines with wave64.


  Commit: a87dc23a6271cadd6d3f93561f2d8b1661399e6d
      https://github.com/llvm/llvm-project/commit/a87dc23a6271cadd6d3f93561f2d8b1661399e6d
  Author: Balazs Benics <benicsbalazs at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/include/clang/AST/DeclOpenMP.h
    M clang/include/clang/AST/ParentMapContext.h
    M clang/include/clang/Basic/OpenCLExtensionTypes.def
    M clang/include/clang/Basic/RISCVVTypes.def
    M clang/include/clang/Basic/arm_neon_incl.td
    M clang/include/clang/Serialization/PCHContainerOperations.h
    M clang/include/clang/StaticAnalyzer/Core/PathDiagnosticConsumers.h
    M clang/lib/ARCMigrate/TransGCAttrs.cpp
    M clang/lib/AST/Interp/ByteCodeEmitter.h
    M clang/lib/AST/Interp/FunctionPointer.h
    M clang/lib/AST/Interp/PrimType.h
    M clang/lib/Driver/ToolChains/Arch/Mips.h
    M clang/lib/Driver/ToolChains/Arch/Sparc.h
    M clang/lib/Headers/llvm_libc_wrappers/assert.h
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/StaticAnalyzer/Checkers/DirectIvarAssignment.cpp
    M clang/lib/StaticAnalyzer/Checkers/ObjCAutoreleaseWriteChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/STLAlgorithmModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/SimpleStreamChecker.cpp
    M clang/lib/StaticAnalyzer/Core/RangeConstraintManager.cpp
    M clang/lib/Tooling/Refactoring/AtomicChange.cpp
    M clang/test/Analysis/misc-ps-region-store.mm
    M clang/test/Rewriter/rewrite-modern-class.mm
    M clang/tools/clang-fuzzer/proto-to-llvm/loop_proto_to_llvm.h
    M clang/tools/diagtool/DiagTool.cpp
    M clang/unittests/AST/ASTImporterODRStrategiesTest.cpp
    M clang/unittests/ASTMatchers/Dynamic/RegistryTest.cpp
    M clang/unittests/ASTMatchers/Dynamic/VariantValueTest.cpp
    M clang/unittests/Tooling/RecursiveASTVisitorTests/CXXOperatorCallExprTraverser.cpp
    M clang/unittests/Tooling/RecursiveASTVisitorTests/CallbacksBinaryOperator.cpp
    M clang/unittests/Tooling/RecursiveASTVisitorTests/CallbacksCompoundAssignOperator.cpp
    M clang/unittests/Tooling/RecursiveASTVisitorTests/CallbacksUnaryOperator.cpp
    M clang/unittests/Tooling/RecursiveASTVisitorTests/InitListExprPostOrderNoQueue.cpp
    M clang/unittests/Tooling/RecursiveASTVisitorTests/InitListExprPreOrderNoQueue.cpp
    M clang/unittests/Tooling/RecursiveASTVisitorTests/TemplateArgumentLocTraverser.cpp

  Log Message:
  -----------
  [clang][NFC] Trim license header comments to 81 characters (#82919)

clang-format would format these headers poorly by splitting it into
multiple lines.


  Commit: 1fd1f4c0e1f229a2eceb94fc4e41bdd4b9ca7d5a
      https://github.com/llvm/llvm-project/commit/1fd1f4c0e1f229a2eceb94fc4e41bdd4b9ca7d5a
  Author: Mirko Brkušanin <Mirko.Brkusanin at amd.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/docs/AMDGPUUsage.rst
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp
    A llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-lastuse.ll
    A llvm/test/CodeGen/AMDGPU/memory-legalizer-global-lastuse.ll
    A llvm/test/CodeGen/AMDGPU/memory-legalizer-private-lastuse.ll

  Log Message:
  -----------
  [AMDGPU] Handle amdgpu.last.use metadata (#83816)

Convert !amdgpu.last.use metadata into MachineMemOperand for last use
and handle it in SIMemoryLegalizer similar to nontemporal and volatile.


  Commit: ad1b2a812973d584f56121b953bf9698b32386ae
      https://github.com/llvm/llvm-project/commit/ad1b2a812973d584f56121b953bf9698b32386ae
  Author: NagyDonat <donat.nagy at ericsson.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
    A clang/test/Analysis/assuming-unsigned-ge-0.c

  Log Message:
  -----------
  [analyzer] Demonstrate superfluous unsigned >= 0 assumption (#78442)

This commit adds a testcase which highlights the current incorrect
behavior of the CSA diagnostic generation: it produces a note which says
"Assuming 'arg' is >= 0" in a situation where this is not a fresh
assumption because 'arg' is an unsigned integer.

I also created ticket 78440 to track this bug.


  Commit: f53c2f66a76d8a7dcc649d334cd60374b883196f
      https://github.com/llvm/llvm-project/commit/f53c2f66a76d8a7dcc649d334cd60374b883196f
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp

  Log Message:
  -----------
  [X86] combineSetCC - use getZExtOrTrunc() to perform the constant folding. NFCI


  Commit: 5a896c66e3074621235a17f9dff95cbbed900c10
      https://github.com/llvm/llvm-project/commit/5a896c66e3074621235a17f9dff95cbbed900c10
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp

  Log Message:
  -----------
  [X86] Merge repeated getTargetLoweringInfo() calls. NFC.


  Commit: 371132962b3566659d533bfe99c3e3cfb0dd37bd
      https://github.com/llvm/llvm-project/commit/371132962b3566659d533bfe99c3e3cfb0dd37bd
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h

  Log Message:
  -----------
  [TTI] getInstructionCost - pull out repeated getShuffleMask() calls. NFC.

Pulled out of #84156


  Commit: 6540f1635a6566aef93d9b4f568ac648474c39e7
      https://github.com/llvm/llvm-project/commit/6540f1635a6566aef93d9b4f568ac648474c39e7
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    A llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/CMakeLists.txt
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-non-integral-address-spaces-vectors.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-non-integral-address-spaces.ll
    M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
    A llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-calls.ll
    A llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-constants.ll
    A llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-control-flow.ll
    A llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-memops.ll
    A llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-p7-in-memory.ll
    A llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-pointer-ops.ll
    A llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-unoptimized-debug-data.ll
    M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/BUILD.gn

  Log Message:
  -----------
  [AMDGPU] Add IR-level pass to rewrite away address space 7 (#77952)

This commit adds the -lower-buffer-fat-pointers pass, which is
applicable to all AMDGCN compilations.

The purpose of this pass is to remove the type `ptr addrspace(7)` from
incoming IR. This must be done at the LLVM IR level because `ptr
addrspace(7)`, as a 160-bit primitive type, cannot be correctly handled
by SelectionDAG.

The detailed operation of the pass is described in comments, but, in
summary, the removal proceeds by:
1. Rewriting loads and stores of ptr addrspace(7) to loads and stores of
i160 (including vectors and aggregates). This is needed because the
in-register representation of these pointers will stop matching their
in-memory representation in step 2, and so ptrtoint/inttoptr operations
are used to preserve the expected memory layout

2. Mutating the IR to replace all occurrences of `ptr addrspace(7)` with
the type `{ptr addrspace(8), ptr addrspace(6) }`, which makes the two
parts of a buffer fat pointer (the 128-bit address space 8 resource and
the 32-bit address space 6 offset) visible in the IR. This also impacts
the argument and return types of functions.

3. *Splitting* the resource and offset parts. All instructions that
produce or consume buffer fat pointers (like GEP or load) are rewritten
to produce or consume the resource and offset parts separately. For
example, GEP updates the offset part of the result and a load uses the
resource and offset parts to populate the relevant
llvm.amdgcn.raw.ptr.buffer.load intrinsic call.

At the end of this process, the original mutated instructions are
replaced by their new split counterparts, ensuring no invalidly-typed IR
escapes this pass. (For operations like call, where the struct form is
needed, insertelement operations are inserted).

Compared to LGC's PatchBufferOp (

https://github.com/GPUOpen-Drivers/llpc/blob/32cda89776980202597d5bf4ed4447a1bae64047/lgc/patch/PatchBufferOp.cpp
): this pass
- Also handles vectors of ptr addrspace(7)s
- Also handles function boundaries
- Includes the same uniform buffer optimization for loops and
conditionals
- Does *not* handle memcpy() and friends (this is future work)
- Does *not* break up large loads and stores into smaller parts. This
should be handled by extending the legalization
of *.buffer.{load,store} to handle larger types by producing multiple
instructions (the same way ordinary LOAD and STORE are legalized). That
work is planned for a followup commit.
- Does *not* have special logic for handling divergent buffer
descriptors. The logic in LGC is, as far as I can tell, incorrect in
general, and, per discussions with @nhaehnle, isn't widely used.
Therefore, divergent descriptors are handled with waterfall loops later
in legalization.

As a final matter, this commit updates atomic expansion to treat buffer
operations analogously to global ones.

(One question for reviewers: is the new pass is the right place? Should
it be later in the pipeline?)

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


  Commit: 67c6ad6f30e35c7670bce9bca902caa4b1c8c0e8
      https://github.com/llvm/llvm-project/commit/67c6ad6f30e35c7670bce9bca902caa4b1c8c0e8
  Author: Alejandro Álvarez Ayllón <alejandro.alvarez at sonarsource.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerHelpers.h
    M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
    M clang/lib/StaticAnalyzer/Core/CheckerHelpers.cpp
    M clang/test/Analysis/Inputs/system-header-simulator-for-malloc.h
    A clang/test/Analysis/getline-alloc.c

  Log Message:
  -----------
  [clang][analyzer] Model allocation behavior or getdelim/geline (#83138)

`getdelim` and `getline` may free, allocate, or re-allocate the input
buffer, ensuring its size is enough to hold the incoming line, the
delimiter, and the null terminator.

`*lineptr` must be a valid argument to `free`, which means it can be
either

1. `NULL`, in which case these functions perform an allocation
equivalent to a call to `malloc` even on failure.
2. A pointer returned by the `malloc` family of functions. Other
pointers are UB (`alloca`, a pointer to a static, to a stack variable, etc.)


  Commit: 8e4887ff6de135680512f21fb41e949f73cbf262
      https://github.com/llvm/llvm-project/commit/8e4887ff6de135680512f21fb41e949f73cbf262
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M libcxx/include/span

  Log Message:
  -----------
  [libc++][NFC] Remove redundant preprocessor directive


  Commit: 12fdabc7908d3acbec42ce6172a225db85cb4f23
      https://github.com/llvm/llvm-project/commit/12fdabc7908d3acbec42ce6172a225db85cb4f23
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

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

  Log Message:
  -----------
  [clang][Interp] Diagnose dummy pointers used in Inc/Dec ops

For example for unknown parameter decls.


  Commit: d9d9301eec6dfefcf53fd04b61324f140f273033
      https://github.com/llvm/llvm-project/commit/d9d9301eec6dfefcf53fd04b61324f140f273033
  Author: Max Winkler <82551778+MaxEW707 at users.noreply.github.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/SemaCXX/warn-self-move.cpp

  Log Message:
  -----------
  [clang][Sema] Warn on self move for inlined static cast (#76646)

There are code bases that inline `std::move` manually via `static_cast`.
Treat a static cast to an xvalue as an inlined `std::move` call and warn
on a self move.


  Commit: d4687fe7d1639ea5d16190c89a54de1f2c6e2a9a
      https://github.com/llvm/llvm-project/commit/d4687fe7d1639ea5d16190c89a54de1f2c6e2a9a
  Author: Exile <2094247798 at qq.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Core/CallEvent.cpp
    M clang/test/Analysis/cxx2b-deducing-this.cpp

  Log Message:
  -----------
  [analyzer] Fix crash on dereference invalid return value of getAdjustedParameterIndex() (#83585)

Fixes #78810 
Thanks for Snape3058 's comment

---------

Co-authored-by: miaozhiyuan <miaozhiyuan at feysh.com>


  Commit: 28e30b4042742bb79cc66b92a16a8508aa35cb92
      https://github.com/llvm/llvm-project/commit/28e30b4042742bb79cc66b92a16a8508aa35cb92
  Author: ZERO-N <1416312228 at qq.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

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

  Log Message:
  -----------
  [Clang][Sema][NFC]Use isa_and_nonnull to simplify the code and avoid build warning (#84181)

Signed-off-by: nwh <nwh_work at foxmail.com>


  Commit: 1c6e09c27f2216070abe5c268fb6269aeea97e68
      https://github.com/llvm/llvm-project/commit/1c6e09c27f2216070abe5c268fb6269aeea97e68
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/runtime/complex-powi.cpp
    A flang/test/Lower/Intrinsics/pow_complex16i.f90
    A flang/test/Lower/Intrinsics/pow_complex16k.f90

  Log Message:
  -----------
  [flang] Added COMPLEX(16) ** INTEGER(4/8) lowering and runtime. (#84115)


  Commit: 8ee7ef6a373eb36f6945bc5cf0adcb3b94daf120
      https://github.com/llvm/llvm-project/commit/8ee7ef6a373eb36f6945bc5cf0adcb3b94daf120
  Author: David Green <david.green at arm.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/LoadStoreOpt.cpp

  Log Message:
  -----------
  [GlobalISel] Use LocationSize in GISelAddressing. NFC (#83885)

This is similar to #83017 but for the areas in GlobalISel's
LoadStoreOpt, and should help simplify #70452 a little. It will likely
change a little again once the sizes can be scalable.


  Commit: 571d5af5aa3ebfdf59d2eccb6a90c2b97c6d7ea8
      https://github.com/llvm/llvm-project/commit/571d5af5aa3ebfdf59d2eccb6a90c2b97c6d7ea8
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp

  Log Message:
  -----------
  [DAGCombiner] Improve comment on reassociateOps and its helper


  Commit: 67c82d6ffb4bbc21212116a11f390761d859297a
      https://github.com/llvm/llvm-project/commit/67c82d6ffb4bbc21212116a11f390761d859297a
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/lib/Basic/OpenMPKinds.cpp
    M llvm/include/llvm/Frontend/Directive/DirectiveBase.td
    M llvm/include/llvm/Frontend/OpenACC/ACC.td
    M llvm/include/llvm/Frontend/OpenMP/OMP.td
    M llvm/include/llvm/TableGen/DirectiveEmitter.h
    M llvm/test/TableGen/directive1.td
    M llvm/test/TableGen/directive2.td
    M llvm/utils/TableGen/DirectiveEmitter.cpp

  Log Message:
  -----------
  [Frontend] Add leaf constructs and association to OpenMP/ACC directives (#83625)

Add members "leafConstructs" and "association" to .td describing
OpenMP/ACC directives. The naming follows the terminology used in the
OpenMP standard: a "leaf" construct is a construct that is itself not a
composition or a combination of other constructs, and "association" is
the source language construct to which the directive applies (e.g. loop,
block, etc.)

The tblgen-generated output then contains two additional functions
- getLeafConstructs(D), and
- getDirectiveAssociation(D)
plus "enum class Association", all in namespaces "llvm::omp" and
"llvm::acc".

Note: getLeafConstructs returns an empty sequence for a construct that
is itself a leaf construct.

Use the new functions to simplify a few OpenMP-related functions in
clang.


  Commit: 7755c26195900fa5611cd87582acd2f1875d3c40
      https://github.com/llvm/llvm-project/commit/7755c26195900fa5611cd87582acd2f1875d3c40
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/test/Analysis/ScalarEvolution/2008-11-18-Stride1.ll
    M llvm/test/Analysis/ScalarEvolution/2008-11-18-Stride2.ll
    M llvm/test/Analysis/ScalarEvolution/add-like-or.ll
    M llvm/test/Analysis/ScalarEvolution/addrec-computed-during-addrec-calculation.ll
    M llvm/test/Analysis/ScalarEvolution/addrec-sub-nsw.ll
    M llvm/test/Analysis/ScalarEvolution/alloca.ll
    M llvm/test/Analysis/ScalarEvolution/backedge-taken-count-guard-info.ll
    M llvm/test/Analysis/ScalarEvolution/becount-invalidation.ll
    M llvm/test/Analysis/ScalarEvolution/decrementing_addrecs.ll
    M llvm/test/Analysis/ScalarEvolution/exact-exit-count-more-precise.ll
    M llvm/test/Analysis/ScalarEvolution/exhaustive-trip-counts.ll
    M llvm/test/Analysis/ScalarEvolution/exit-count-select-safe.ll
    M llvm/test/Analysis/ScalarEvolution/exit-count-select.ll
    M llvm/test/Analysis/ScalarEvolution/exponential-behavior.ll
    M llvm/test/Analysis/ScalarEvolution/finite-trip-count.ll
    M llvm/test/Analysis/ScalarEvolution/flags-from-poison-noautogen.ll
    M llvm/test/Analysis/ScalarEvolution/flags-from-poison.ll
    M llvm/test/Analysis/ScalarEvolution/fold.ll
    M llvm/test/Analysis/ScalarEvolution/huge-trip-multiple.ll
    M llvm/test/Analysis/ScalarEvolution/incorrect-exit-count.ll
    M llvm/test/Analysis/ScalarEvolution/increasing-or-decreasing-iv.ll
    M llvm/test/Analysis/ScalarEvolution/invalidation.ll
    M llvm/test/Analysis/ScalarEvolution/load-with-range-metadata.ll
    M llvm/test/Analysis/ScalarEvolution/load.ll
    M llvm/test/Analysis/ScalarEvolution/logical-operations.ll
    M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info-rewrite-expressions.ll
    M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info.ll
    M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-limit-by-wrapping.ll
    M llvm/test/Analysis/ScalarEvolution/max-be-count-not-constant.ll
    M llvm/test/Analysis/ScalarEvolution/max-expr-cache.ll
    M llvm/test/Analysis/ScalarEvolution/max-trip-count-address-space.ll
    M llvm/test/Analysis/ScalarEvolution/max-trip-count.ll
    M llvm/test/Analysis/ScalarEvolution/min-max-exprs.ll
    M llvm/test/Analysis/ScalarEvolution/ne-overflow.ll
    M llvm/test/Analysis/ScalarEvolution/no-wrap-symbolic-becount.ll
    M llvm/test/Analysis/ScalarEvolution/nsw-offset-assume.ll
    M llvm/test/Analysis/ScalarEvolution/nsw-offset.ll
    M llvm/test/Analysis/ScalarEvolution/nsw.ll
    M llvm/test/Analysis/ScalarEvolution/outer_phi.ll
    M llvm/test/Analysis/ScalarEvolution/overflow-intrinsics-trip-count.ll
    M llvm/test/Analysis/ScalarEvolution/overflow-intrinsics.ll
    M llvm/test/Analysis/ScalarEvolution/pr25369.ll
    M llvm/test/Analysis/ScalarEvolution/pr34538.ll
    M llvm/test/Analysis/ScalarEvolution/pr48225.ll
    M llvm/test/Analysis/ScalarEvolution/ptrtoint-constantexpr-loop.ll
    M llvm/test/Analysis/ScalarEvolution/ptrtoint.ll
    M llvm/test/Analysis/ScalarEvolution/range-signedness.ll
    M llvm/test/Analysis/ScalarEvolution/range_nw_flag.ll
    M llvm/test/Analysis/ScalarEvolution/ranges.ll
    M llvm/test/Analysis/ScalarEvolution/sdiv.ll
    M llvm/test/Analysis/ScalarEvolution/sext-add-inreg-loop.ll
    M llvm/test/Analysis/ScalarEvolution/sext-mul.ll
    M llvm/test/Analysis/ScalarEvolution/sext-to-zext.ll
    M llvm/test/Analysis/ScalarEvolution/shift-op.ll
    M llvm/test/Analysis/ScalarEvolution/shift-recurrences.ll
    M llvm/test/Analysis/ScalarEvolution/sle.ll
    M llvm/test/Analysis/ScalarEvolution/smax-br-phi-idioms.ll
    M llvm/test/Analysis/ScalarEvolution/smin-smax-folds.ll
    M llvm/test/Analysis/ScalarEvolution/solve-quadratic-i1.ll
    M llvm/test/Analysis/ScalarEvolution/solve-quadratic-overflow.ll
    M llvm/test/Analysis/ScalarEvolution/srem.ll
    M llvm/test/Analysis/ScalarEvolution/symbolic_max_exit_count.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-andor-selectform.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-andor.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-implied-addrec.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-minmax.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-negative-stride.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-pow2.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-switch.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-unknown-stride.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count10.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count12.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count13.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count14.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count15.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count2.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count3.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count4.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count6.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count7.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count8.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count9.ll
    M llvm/test/Analysis/ScalarEvolution/trip-multiple-guard-info.ll
    M llvm/test/Analysis/ScalarEvolution/trip-multiple.ll
    M llvm/test/Analysis/ScalarEvolution/umin-umax-folds.ll
    M llvm/test/Analysis/ScalarEvolution/unknown_phis.ll
    M llvm/test/Analysis/ScalarEvolution/widenable-condition.ll
    M llvm/test/Transforms/LoopDeletion/invalidate-scev-after-hoisting.ll
    M llvm/test/Transforms/LoopSimplify/preserve-scev.ll

  Log Message:
  -----------
  [SCEV] Include type when printing constant max backedge taken count

When printing the result of the analysis, i8 -1 and i64 -1 are quite
different in terms of analysis quality.  In a recent conversion with
a new contributor, we ran into exactly this confusion.

Adding the type for constant scevs more globally seems worthwhile, but
introduces a much larger test diff.  I'm splitting this off first since
it addresses the immediate need, and then going to do some further
changes to clarify a few related bits of analysis result output.


  Commit: c161720ab49ed426e50f70c09da9b0c04be0f50f
      https://github.com/llvm/llvm-project/commit/c161720ab49ed426e50f70c09da9b0c04be0f50f
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/test/CodeGen/RISCV/rvv/allocate-lmul-2-4-8.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-concat.ll

  Log Message:
  -----------
  [RISCV] Slightly improve expanded multiply emulation in getVLENFactoredAmount. (#84113)

Instead of initializing the accumulator to 0. Initialize it on first
assignment with a mv from the register that holds VLENB << ShiftAmount.

Fix a missing kill flag on the final Add.

I have no real interest in this case, just an easy optimization I
noticed.


  Commit: 0cbbcf1ef006ce13a1fa94960067723982ae955a
      https://github.com/llvm/llvm-project/commit/0cbbcf1ef006ce13a1fa94960067723982ae955a
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M libc/docs/full_cross_build.rst
    A libc/docs/gpu/building.rst
    M libc/docs/gpu/index.rst
    M libc/docs/gpu/rpc.rst
    M libc/docs/gpu/using.rst

  Log Message:
  -----------
  [libc] Update GPU documentation pages (#84076)

Summary:
After the overhaul of the GPU build the documentation pages were a
little stale. This updates them with more in-depth information on
building the GPU runtimes and using them. Specifically using them goes
through the differences between the offloading and direct compilation
modes.


  Commit: 3589cacfa8da89b9b5051e4dba659caa575e6b3f
      https://github.com/llvm/llvm-project/commit/3589cacfa8da89b9b5051e4dba659caa575e6b3f
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/InstCombine/known-bits.ll

  Log Message:
  -----------
  [ValueTracking] Handle `icmp pred (trunc X), C` in `computeKnownBitsFromCmp` (#82803)

This patch handles the pattern `icmp pred (trunc X), C` in
`computeKnownBitsFromCmp` to infer low bits of `X` from dominating
conditions.


  Commit: c371ee9da9c4fa4b682baf47ce5c2a6b6f4c74bc
      https://github.com/llvm/llvm-project/commit/c371ee9da9c4fa4b682baf47ce5c2a6b6f4c74bc
  Author: Zequan Wu <zequanwu at google.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M compiler-rt/lib/profile/InstrProfilingPlatformWindows.c

  Log Message:
  -----------
  [Profile][Windows] Fix flakyness when checking existence of binary id (#84196)

There is a small chance that binary id starting with 0 (1/256). It is
not sufficient to just check the first byte.


  Commit: 0bd9255f8ad9f321dd606365e2bc28447a9976cb
      https://github.com/llvm/llvm-project/commit/0bd9255f8ad9f321dd606365e2bc28447a9976cb
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/psadbw.ll
    M llvm/test/CodeGen/X86/sad.ll

  Log Message:
  -----------
  [X86] Improve KnownBits for X86ISD::PSADBW nodes (#83830)

Don't just return the known zero upperbits, compute the absdiff Knownbits and perform the horizontal sum.

Add implementations that handle both the X86ISD::PSADBW nodes and the INTRINSIC_WO_CHAIN intrinsics (pre-legalization).


  Commit: deff460b46dfcc8d6d5917a2b78c0d52edbe4afb
      https://github.com/llvm/llvm-project/commit/deff460b46dfcc8d6d5917a2b78c0d52edbe4afb
  Author: Krzysztof Parzyszek <kparzysz at quicinc.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/utils/TableGen/DirectiveEmitter.cpp

  Log Message:
  -----------
  [Frontend] Fix build break after 67c82d6ffb4b

Remove the `default` label from a switch that covers all cases.


  Commit: ecea949f0ac713a625a3c42495b93b472315b500
      https://github.com/llvm/llvm-project/commit/ecea949f0ac713a625a3c42495b93b472315b500
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/utils/TableGen/DirectiveEmitter.cpp

  Log Message:
  -----------
  Revert "[Frontend] Fix build break after 67c82d6ffb4b"

This reverts commit deff460b46dfcc8d6d5917a2b78c0d52edbe4afb.

Committed this from a different computer with my old (invalid) email
address.


  Commit: 5dc5bfbb70f96cc001dc1173cbecfadab2e48fbf
      https://github.com/llvm/llvm-project/commit/5dc5bfbb70f96cc001dc1173cbecfadab2e48fbf
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/utils/TableGen/DirectiveEmitter.cpp

  Log Message:
  -----------
  [Frontend] Fix build break after 67c82d6ffb4b

Remove the `default` label from a switch that covers all cases.


  Commit: 44be5a7fdc20a7f90d63dc18699a470e900bd3ba
      https://github.com/llvm/llvm-project/commit/44be5a7fdc20a7f90d63dc18699a470e900bd3ba
  Author: David Green <david.green at arm.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetInstrInfo.h
    M llvm/lib/CodeGen/MachineScheduler.cpp
    M llvm/lib/CodeGen/TargetInstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.h
    M llvm/lib/Target/AMDGPU/SIInsertHardClauses.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonInstrInfo.h
    M llvm/lib/Target/Hexagon/HexagonSubtarget.cpp
    M llvm/lib/Target/Lanai/LanaiInstrInfo.cpp
    M llvm/lib/Target/Lanai/LanaiInstrInfo.h
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
    M llvm/lib/Target/PowerPC/PPCInstrInfo.h
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.h
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/lib/Target/X86/X86InstrInfo.h
    M llvm/test/CodeGen/AMDGPU/cluster_stores.ll
    M llvm/unittests/Target/RISCV/RISCVInstrInfoTest.cpp

  Log Message:
  -----------
  [Codegen] Make Width in getMemOperandsWithOffsetWidth a LocationSize. (#83875)

This is another part of #70452 which makes getMemOperandsWithOffsetWidth
use a LocationSize for Width, as opposed to the unsigned it currently
uses. The advantages on it's own are not super high if
getMemOperandsWithOffsetWidth usually uses known sizes, but if the
values can come from an MMO it can help be more accurate in case they
are Unknown (and in the future, scalable).


  Commit: 8277e308c04b2157ea1076276e3eb5d08f533bac
      https://github.com/llvm/llvm-project/commit/8277e308c04b2157ea1076276e3eb5d08f533bac
  Author: Tulio Magno Quites Machado Filho <tuliom at redhat.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/test/TableGen/target-builtins-prototype-parser.td

  Log Message:
  -----------
  [clang] Fix standalone execution in TableGen/target-builtins-prototype-parser.td (#84186)

Use a path that works for both standalone as well as full repository
builds.

Fixes: 9b672de99760 ("[clang][Builtins] Parse clang extended vectors types. (#83584)")


  Commit: fc9f1d49aae4328ef36e1d9ba606e93703fde970
      https://github.com/llvm/llvm-project/commit/fc9f1d49aae4328ef36e1d9ba606e93703fde970
  Author: Peiming Liu <peiming at google.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorOps.td
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseAssembler.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseGPUCodegen.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorCodegen.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorConversion.cpp
    M mlir/test/Dialect/SparseTensor/GPU/gpu_spgemm_lib.mlir
    M mlir/test/Dialect/SparseTensor/external.mlir
    M mlir/test/Dialect/SparseTensor/invalid.mlir
    M mlir/test/Dialect/SparseTensor/pack_copy.mlir
    M mlir/test/Dialect/SparseTensor/roundtrip.mlir
    M mlir/test/Dialect/SparseTensor/sparse_pack.mlir
    M mlir/test/Dialect/SparseTensor/sparse_reinterpret_map.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_pack.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_pack_d.mlir

  Log Message:
  -----------
  [mlir][sparse] use a consistent order between [dis]assembleOp and sto… (#84079)

…rage layout.


  Commit: dcd08daed5fb9928fedb09c2a84d1e9d2ab59630
      https://github.com/llvm/llvm-project/commit/dcd08daed5fb9928fedb09c2a84d1e9d2ab59630
  Author: Pavel Iliin <Pavel.Iliin at arm.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/docs/LanguageExtensions.rst

  Log Message:
  -----------
  [NFC][Docs] Documenting __builtin_cpu_supports. (#84098)

Co-authored-by: Jon Roelofs <jroelofs at gmail.com>


  Commit: aeaa11aeac0aedf32cafec6532d303fea595c5fc
      https://github.com/llvm/llvm-project/commit/aeaa11aeac0aedf32cafec6532d303fea595c5fc
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M lldb/include/lldb/API/SBProcess.h
    M lldb/include/lldb/Target/ABI.h
    M lldb/include/lldb/Target/Process.h
    M lldb/include/lldb/Utility/AddressableBits.h
    M lldb/include/lldb/lldb-defines.h
    M lldb/include/lldb/lldb-enumerations.h
    M lldb/source/API/SBProcess.cpp
    M lldb/source/Commands/CommandObjectProcess.cpp
    M lldb/source/Plugins/ABI/AArch64/ABIAArch64.cpp
    M lldb/source/Plugins/ABI/AArch64/ABIMacOSX_arm64.cpp
    M lldb/source/Plugins/ABI/AArch64/ABISysV_arm64.cpp
    M lldb/source/Plugins/DynamicLoader/Darwin-Kernel/DynamicLoaderDarwinKernel.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Target/ABI.cpp
    M lldb/source/Target/Process.cpp
    M lldb/source/Utility/AddressableBits.cpp
    A lldb/test/API/python_api/process/address-masks/Makefile
    A lldb/test/API/python_api/process/address-masks/TestAddressMasks.py
    A lldb/test/API/python_api/process/address-masks/main.c

  Log Message:
  -----------
  [lldb] Address mask sbprocess apis and new mask invalid const (#83663)

[lldb] Add SBProcess methods for get/set/use address masks (#83095)

I'm reviving a patch from phabracator, https://reviews.llvm.org/D155905
which was approved but I wasn't thrilled with all the API I was adding
to SBProcess for all of the address mask types / memory regions. In this
update, I added enums to control type address mask type (code, data,
any) and address space specifiers (low, high, all) with defaulted
arguments for the most common case.  I originally landed this via
https://github.com/llvm/llvm-project/pull/83095 but it failed on CIs
outside of arm64 Darwin so I had to debug it on more environments
and update the patch.

This patch is also fixing a bug in the "addressable bits to address
mask" calculation I added in AddressableBits::SetProcessMasks. If lldb
were told that 64 bits are valid for addressing, this method would
overflow the calculation and set an invalid mask. Added tests to check
this specific bug while I was adding these APIs.

This patch changes the value of "no mask set" from 0 to
LLDB_INVALID_ADDRESS_MASK, which is UINT64_MAX. A mask of all 1's
means "no bits are used for addressing" which is an impossible mask,
whereas a mask of 0 means "all bits are used for addressing" which
is possible.

I added a base class implementation of ABI::FixCodeAddress and
ABI::FixDataAddress that will apply the Process mask values if they
are set to a value other than LLDB_INVALID_ADDRESS_MASK.

I updated all the callers/users of the Mask methods which were
handling a value of 0 to mean invalid mask to use
LLDB_INVALID_ADDRESS_MASK.

I added code to the all AArch64 ABI Fix* methods to apply the
Highmem masks if they have been set.  These will not be set on a
Linux environment, but in TestAddressMasks.py I test the highmem
masks feature for any AArch64 target, so all AArch64 ABI  plugins 
must handle it.

rdar://123530562


  Commit: 064c2e7579228389c8a6b78ee40280c319935715
      https://github.com/llvm/llvm-project/commit/064c2e7579228389c8a6b78ee40280c319935715
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/test/TableGen/directive1.td
    M llvm/test/TableGen/directive2.td

  Log Message:
  -----------
  Fix failing TableGen tests


  Commit: 2542d34522784e27850a17a8c39a1ad4b43622ab
      https://github.com/llvm/llvm-project/commit/2542d34522784e27850a17a8c39a1ad4b43622ab
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    A mlir/include/mlir/Transforms/Inliner.h
    M mlir/include/mlir/Transforms/Passes.td
    M mlir/lib/Transforms/CMakeLists.txt
    R mlir/lib/Transforms/Inliner.cpp
    A mlir/lib/Transforms/InlinerPass.cpp
    M mlir/lib/Transforms/Utils/CMakeLists.txt
    A mlir/lib/Transforms/Utils/Inliner.cpp

  Log Message:
  -----------
  [mlir][inliner] Refactor MLIR inliner pass and utils. (#84059)

This is just code refactoring done as a preparation for adding
MLIR inliner cost model hook(s).
Related discussion: https://discourse.llvm.org/t/inliner-cost-model/2992

The logic of SCC-based MLIR inliner is separated into the Inliner
implementation. The MLIR inliner pass becomes, well, just a pass
that invokes the SCC-based MLIR inliner.


  Commit: 8b5b294ec2cf876bc5eb5bd5fcb56ef487e36d60
      https://github.com/llvm/llvm-project/commit/8b5b294ec2cf876bc5eb5bd5fcb56ef487e36d60
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/test/Analysis/ScalarEvolution/2008-11-18-Stride1.ll
    M llvm/test/Analysis/ScalarEvolution/2008-11-18-Stride2.ll
    M llvm/test/Analysis/ScalarEvolution/ZeroStep.ll
    M llvm/test/Analysis/ScalarEvolution/add-expr-pointer-operand-sorting.ll
    M llvm/test/Analysis/ScalarEvolution/add-like-or.ll
    M llvm/test/Analysis/ScalarEvolution/addrec-computed-during-addrec-calculation.ll
    M llvm/test/Analysis/ScalarEvolution/addrec-sub-nsw.ll
    M llvm/test/Analysis/ScalarEvolution/alloca.ll
    M llvm/test/Analysis/ScalarEvolution/backedge-taken-count-guard-info.ll
    M llvm/test/Analysis/ScalarEvolution/becount-invalidation.ll
    M llvm/test/Analysis/ScalarEvolution/cycled_phis.ll
    M llvm/test/Analysis/ScalarEvolution/decrementing_addrecs.ll
    M llvm/test/Analysis/ScalarEvolution/exact-exit-count-more-precise.ll
    M llvm/test/Analysis/ScalarEvolution/exhaustive-trip-counts.ll
    M llvm/test/Analysis/ScalarEvolution/exit-count-select-safe.ll
    M llvm/test/Analysis/ScalarEvolution/exit-count-select.ll
    M llvm/test/Analysis/ScalarEvolution/exponential-behavior.ll
    M llvm/test/Analysis/ScalarEvolution/finite-trip-count.ll
    M llvm/test/Analysis/ScalarEvolution/flags-from-poison-noautogen.ll
    M llvm/test/Analysis/ScalarEvolution/flags-from-poison.ll
    M llvm/test/Analysis/ScalarEvolution/fold.ll
    M llvm/test/Analysis/ScalarEvolution/huge-trip-multiple.ll
    M llvm/test/Analysis/ScalarEvolution/incorrect-exit-count.ll
    M llvm/test/Analysis/ScalarEvolution/increasing-or-decreasing-iv.ll
    M llvm/test/Analysis/ScalarEvolution/invalidation.ll
    M llvm/test/Analysis/ScalarEvolution/iv-poison.ll
    M llvm/test/Analysis/ScalarEvolution/load-with-range-metadata.ll
    M llvm/test/Analysis/ScalarEvolution/load.ll
    M llvm/test/Analysis/ScalarEvolution/logical-operations.ll
    M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info-rewrite-expressions.ll
    M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info.ll
    M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-limit-by-wrapping.ll
    M llvm/test/Analysis/ScalarEvolution/max-be-count-not-constant.ll
    M llvm/test/Analysis/ScalarEvolution/max-expr-cache.ll
    M llvm/test/Analysis/ScalarEvolution/max-trip-count-address-space.ll
    M llvm/test/Analysis/ScalarEvolution/max-trip-count.ll
    M llvm/test/Analysis/ScalarEvolution/min-max-exprs.ll
    M llvm/test/Analysis/ScalarEvolution/ne-overflow.ll
    M llvm/test/Analysis/ScalarEvolution/no-wrap-add-exprs.ll
    M llvm/test/Analysis/ScalarEvolution/no-wrap-symbolic-becount.ll
    M llvm/test/Analysis/ScalarEvolution/nsw-offset-assume.ll
    M llvm/test/Analysis/ScalarEvolution/nsw-offset.ll
    M llvm/test/Analysis/ScalarEvolution/nsw.ll
    M llvm/test/Analysis/ScalarEvolution/outer_phi.ll
    M llvm/test/Analysis/ScalarEvolution/overflow-intrinsics-trip-count.ll
    M llvm/test/Analysis/ScalarEvolution/pr25369.ll
    M llvm/test/Analysis/ScalarEvolution/pr34538.ll
    M llvm/test/Analysis/ScalarEvolution/pr48225.ll
    M llvm/test/Analysis/ScalarEvolution/pr58402-large-number-of-zext-exprs.ll
    M llvm/test/Analysis/ScalarEvolution/pr76234.ll
    M llvm/test/Analysis/ScalarEvolution/ptrtoint-constantexpr-loop.ll
    M llvm/test/Analysis/ScalarEvolution/ptrtoint.ll
    M llvm/test/Analysis/ScalarEvolution/range-signedness.ll
    M llvm/test/Analysis/ScalarEvolution/range_nw_flag.ll
    M llvm/test/Analysis/ScalarEvolution/ranges.ll
    M llvm/test/Analysis/ScalarEvolution/sdiv.ll
    M llvm/test/Analysis/ScalarEvolution/sext-add-inreg-loop.ll
    M llvm/test/Analysis/ScalarEvolution/sext-mul.ll
    M llvm/test/Analysis/ScalarEvolution/sext-to-zext.ll
    M llvm/test/Analysis/ScalarEvolution/shift-op.ll
    M llvm/test/Analysis/ScalarEvolution/shift-recurrences.ll
    M llvm/test/Analysis/ScalarEvolution/sle.ll
    M llvm/test/Analysis/ScalarEvolution/smax-br-phi-idioms.ll
    M llvm/test/Analysis/ScalarEvolution/smin-smax-folds.ll
    M llvm/test/Analysis/ScalarEvolution/solve-quadratic-i1.ll
    M llvm/test/Analysis/ScalarEvolution/solve-quadratic-overflow.ll
    M llvm/test/Analysis/ScalarEvolution/srem.ll
    M llvm/test/Analysis/ScalarEvolution/symbolic_max_exit_count.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-andor-selectform.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-andor.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-implied-addrec.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-minmax.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-negative-stride.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-non-unit-stride.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-pow2.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-switch.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-unknown-stride.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count10.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count12.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count13.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count14.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count15.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count2.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count3.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count4.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count6.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count7.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count8.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count9.ll
    M llvm/test/Analysis/ScalarEvolution/trip-multiple-guard-info.ll
    M llvm/test/Analysis/ScalarEvolution/trip-multiple.ll
    M llvm/test/Analysis/ScalarEvolution/umin-umax-folds.ll
    M llvm/test/Analysis/ScalarEvolution/unknown_phis.ll
    M llvm/test/Analysis/ScalarEvolution/widenable-condition.ll
    M llvm/test/Transforms/LoopSimplify/preserve-scev.ll

  Log Message:
  -----------
  [SCEV] Print predicate backedge count only if new information available

When printing the result of SCEV's analysis, we can avoid printing
the predicated backedge taken count and the predicates if the predicates
are empty and no new information is provided.  This helps to reduce the
verbosity of the output.


  Commit: 954f891af20d193f6a5f41d7ede6a9313a49cfc3
      https://github.com/llvm/llvm-project/commit/954f891af20d193f6a5f41d7ede6a9313a49cfc3
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/unittests/Target/RISCV/CMakeLists.txt

  Log Message:
  -----------
  [Unittests] Fix RISCV unit tests build

/usr/bin/ld: CMakeFiles/RISCVTests.dir/RISCVInstrInfoTest.cpp.o: undefined
reference to symbol '_ZNK4llvm12LocationSize5printERNS_11raw_ostreamE'
/usr/bin/ld: /work/kparzysz/git/llvm.org/b/x86/lib/libLLVMAnalysis.so.19.0
git: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status

The undefined symbol is
llvm::LocationSize::print(llvm::raw_ostream&) const


  Commit: 8bdddcf0bb5a40e6ce6cbf7fc6b7ce576e2b032d
      https://github.com/llvm/llvm-project/commit/8bdddcf0bb5a40e6ce6cbf7fc6b7ce576e2b032d
  Author: jeffreytan81 <jeffreytan at meta.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M lldb/source/Plugins/Process/Linux/NativeThreadLinux.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
    A lldb/test/API/functionalities/fork/concurrent_vfork/Makefile
    A lldb/test/API/functionalities/fork/concurrent_vfork/TestConcurrentVFork.py
    A lldb/test/API/functionalities/fork/concurrent_vfork/main.cpp

  Log Message:
  -----------
  Fix lldb crash while handling concurrent vfork() (#81564)

We got user reporting lldb crash while the debuggee is calling vfork()
concurrently from multiple threads.
The crash happens because the current implementation can only handle
single vfork, vforkdone protocol transaction.

This diff fixes the crash by lldb-server storing forked debuggee's <pid,
tid> pair in jstopinfo which will be decoded by lldb client to create
StopInfoVFork for follow parent/child policy. Each StopInfoVFork will
later have a corresponding vforkdone packet. So the patch also changes
the `m_vfork_in_progress` to be reference counting based.

Two new test cases are added which crash/assert without the changes in
this patch.

---------

Co-authored-by: jeffreytan81 <jeffreytan at fb.com>


  Commit: 04bbbba271ebe4c2421f34a4fbf34c328df9f111
      https://github.com/llvm/llvm-project/commit/04bbbba271ebe4c2421f34a4fbf34c328df9f111
  Author: Jason Molenda <jason at molenda.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M lldb/test/API/python_api/process/address-masks/TestAddressMasks.py

  Log Message:
  -----------
  Skip TestAddressMasks API tests on 32-bit arm

TestAddressMasks failed on the lldb-arm-buntu bot with the
Code address mask test,

        mask = process.GetAddressMask(lldb.eAddressMaskTypeAny)
        process.SetAddressMask(lldb.eAddressMaskTypeCode, mask | 0x3)
        self.assertEqual(
            0x000002950001F694,
            process.FixAddress(0x00265E950001F697, lldb.eAddressMaskTypeCode),
        )

The API returned 0x000002950001f694 instead of the expected
0x00265e950001f696.  The low bits differ because ABISysV_arm hardcodes
the Code address mask to clear the 0th bit, it doesn't use the
Process code mask.  I didn't debug why some of the high bytes were
dropped.  The address mask APIs are only important on 64-bit targets,
where many of the bits are not used for addressing and are used for
metadata instead, so I'm going to skip these tests on 32-bit arm
instead of debugging.


  Commit: 6494f9bb8ac1e6f7526b72ee07f71527b8e66066
      https://github.com/llvm/llvm-project/commit/6494f9bb8ac1e6f7526b72ee07f71527b8e66066
  Author: Stefan Gränitz <stefan.graenitz at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/include/clang/Interpreter/Interpreter.h
    M clang/lib/Interpreter/Interpreter.cpp
    M clang/unittests/Interpreter/CMakeLists.txt
    A clang/unittests/Interpreter/IncrementalCompilerBuilderTest.cpp

  Log Message:
  -----------
  [clang-repl] Expose setter for triple in IncrementalCompilerBuilder (#84174)

With out-of-process execution the target triple can be different from
the one on the host. We need an interface to configure it.


  Commit: a6c84079f69f13d745aaaa4595cf8804b119a6c4
      https://github.com/llvm/llvm-project/commit/a6c84079f69f13d745aaaa4595cf8804b119a6c4
  Author: Alexander Yermolovich <43973793+ayermolo at users.noreply.github.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/split-debug.c

  Log Message:
  -----------
  [CLANG][DWARF] Do not emit -ggnu-pubnames for LLDB tuning, unless -ggnu-pubnames is specified. (#83331)

When -gsplit-dwarf is passed in clang emmmits -ggnu-pubnames which
results in
.debug_gnu_pubnames/..debug_gnu_pubtypes being generated.
This is used by GDB, but not by LLDB.
Changed so that these sections are not emitted for LLDB tuning, unless
flag
is passed explicitly.


  Commit: c5aacb0dbcb19b154441852763785f0356e5218b
      https://github.com/llvm/llvm-project/commit/c5aacb0dbcb19b154441852763785f0356e5218b
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

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

  Log Message:
  -----------
  [ValueTracking] Add fast path to avoid second recursive call in `isKnownPositive`; NFC

Just a simple compile time improvement. This function isn't used much,
however, so its not particularly impactful.

Closes #83638


  Commit: 862e742292f4a46c4d3879e9cc0d9902ef87f107
      https://github.com/llvm/llvm-project/commit/862e742292f4a46c4d3879e9cc0d9902ef87f107
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    A llvm/test/Transforms/InstCombine/binop-itofp.ll

  Log Message:
  -----------
  [InstCombine] Add tests for folding `(fp_binop ({s|u}itofp x), ({s|u}itofp y))`; NFC


  Commit: 0f5849eeeebc410e420ee11b7e59b4dd28c65318
      https://github.com/llvm/llvm-project/commit/0f5849eeeebc410e420ee11b7e59b4dd28c65318
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/test/Transforms/InstCombine/add-sitofp.ll
    M llvm/test/Transforms/InstCombine/binop-itofp.ll

  Log Message:
  -----------
  [InstCombine] Move folding `(add (sitofp x), (sitofp y))` impl to InstructionCombiner; NFC


  Commit: 946ea4e3ca4c908bfa7c196b982795f5c390b923
      https://github.com/llvm/llvm-project/commit/946ea4e3ca4c908bfa7c196b982795f5c390b923
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/test/Transforms/InstCombine/add-sitofp.ll
    M llvm/test/Transforms/InstCombine/binop-itofp.ll
    M llvm/test/Transforms/InstCombine/pr33453.ll

  Log Message:
  -----------
  [InstCombine] Add folds for `(fp_binop ({s|u}itofp x), ({s|u}itofp y))`

The full fold is one of the following:
1) `(fp_binop ({s|u}itofp x), ({s|u}itofp y))`
    -> `({s|u}itofp (int_binop x, y))`
2) `(fp_binop ({s|u}itofp x), FpC)`
    -> `({s|u}itofp (int_binop x, (fpto{s|u}i FpC)))`

And support the following binops:
    `fmul` -> `mul`
    `fadd` -> `add`
    `fsub` -> `sub`

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

The proofs timeout, so they must be reproduced locally.

Closes #82555


  Commit: f95a76391c527ba23574cb1d8d8803c9a1d0b7c4
      https://github.com/llvm/llvm-project/commit/f95a76391c527ba23574cb1d8d8803c9a1d0b7c4
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

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

  Log Message:
  -----------
  [gn build] Port 6494f9bb8ac1


  Commit: 15b7b3182cc28f4f0b950bd73d931caa27b833ec
      https://github.com/llvm/llvm-project/commit/15b7b3182cc28f4f0b950bd73d931caa27b833ec
  Author: Ulrich Weigand <ulrich.weigand at de.ibm.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M openmp/libomptarget/plugins-nextgen/common/include/GlobalHandler.h
    M openmp/libomptarget/plugins-nextgen/common/include/Utils/ELF.h
    M openmp/libomptarget/plugins-nextgen/common/src/GlobalHandler.cpp
    M openmp/libomptarget/plugins-nextgen/common/src/Utils/ELF.cpp

  Log Message:
  -----------
  [libomptarget] Support BE ELF files in plugins-nextgen (#83976)

Code in plugins-nextgen reading ELF files is currently hard-coded to
assume a 64-bit little-endian ELF format. Unfortunately, this assumption
is even embedded in the interface between GlobalHandler and Utils/ELF
routines, which use ELF64LE types.

To fix this, I've refactored the interface to push all ELF specific
types into Utils/ELF. Specifically, this patch removes both the
getSymbol and getSymbolAddress routines and replaces them with a
single findSymbolInImage, which gets a StringRef identifying the
raw object file image as input, and returns a StringRef covering
the data addressed by the symbol (address and size) if found, or
std::nullopt otherwise.

This allows properly templating over multiple ELF format variants inside
Utils/ELF; specifically, this patch adds support for 64-bit big-endian
ELF files in addition to 64-bit little-endian files.


  Commit: 3ecd38c8e1d34b1e4639a1de9f0cb56c7957cbd2
      https://github.com/llvm/llvm-project/commit/3ecd38c8e1d34b1e4639a1de9f0cb56c7957cbd2
  Author: Ulrich Weigand <ulrich.weigand at de.ibm.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M llvm/lib/Frontend/OpenMP/OMPContext.cpp
    M openmp/libomptarget/CMakeLists.txt
    M openmp/libomptarget/plugins-nextgen/CMakeLists.txt
    M openmp/libomptarget/plugins-nextgen/aarch64/CMakeLists.txt
    M openmp/libomptarget/plugins-nextgen/ppc64/CMakeLists.txt
    M openmp/libomptarget/plugins-nextgen/ppc64le/CMakeLists.txt
    M openmp/libomptarget/plugins-nextgen/s390x/CMakeLists.txt
    M openmp/libomptarget/plugins-nextgen/x86_64/CMakeLists.txt
    M openmp/libomptarget/src/CMakeLists.txt
    M openmp/libomptarget/test/api/omp_dynamic_shared_memory.c
    M openmp/libomptarget/test/jit/empty_kernel_lvl1.c
    M openmp/libomptarget/test/jit/empty_kernel_lvl2.c
    M openmp/libomptarget/test/jit/type_punning.c
    M openmp/libomptarget/test/mapping/auto_zero_copy.cpp
    M openmp/libomptarget/test/mapping/auto_zero_copy_globals.cpp
    M openmp/libomptarget/test/offloading/barrier_fence.c
    M openmp/libomptarget/test/offloading/bug49334.cpp
    M openmp/libomptarget/test/offloading/default_thread_limit.c
    M openmp/libomptarget/test/offloading/ompx_bare.c
    M openmp/libomptarget/test/offloading/ompx_coords.c
    M openmp/libomptarget/test/offloading/ompx_saxpy_mixed.c
    M openmp/libomptarget/test/offloading/parallel_target_teams_reduction.cpp
    M openmp/libomptarget/test/offloading/small_trip_count.c
    M openmp/libomptarget/test/offloading/small_trip_count_thread_limit.cpp
    M openmp/libomptarget/test/offloading/spmdization.c
    M openmp/libomptarget/test/offloading/target_critical_region.cpp
    M openmp/libomptarget/test/offloading/thread_limit.c
    M openmp/libomptarget/test/ompt/target_memcpy.c
    M openmp/libomptarget/test/ompt/target_memcpy_emi.c
    M openmp/libomptarget/test/ompt/veccopy.c
    M openmp/libomptarget/test/ompt/veccopy_data.c
    M openmp/libomptarget/test/ompt/veccopy_disallow_both.c
    M openmp/libomptarget/test/ompt/veccopy_emi.c
    M openmp/libomptarget/test/ompt/veccopy_emi_map.c
    M openmp/libomptarget/test/ompt/veccopy_map.c

  Log Message:
  -----------
  [libomptarget] Build plugins-nextgen for SystemZ (#83978)

The plugin was not getting built as the build_generic_elf64 macro
assumes the LLVM triple processor name matches the CMake processor name,
which is unfortunately not the case for SystemZ.

Fix this by providing two separate arguments instead.

Actually building the plugin exposed a number of other issues causing
various test failures. Specifically, I've had to add the SystemZ target
to
- CompilerInvocation::ParseLangArgs
- linkDevice in ClangLinuxWrapper.cpp
- OMPContext::OMPContext (to set the device_kind_cpu trait)
- LIBOMPTARGET_ALL_TARGETS in libomptarget/CMakeLists.txt
- a check_plugin_target call in libomptarget/src/CMakeLists.txt

Finally, I've had to set a number of test cases to UNSUPPORTED on
s390x-ibm-linux-gnu; all these tests were already marked as UNSUPPORTED
for x86_64-pc-linux-gnu and aarch64-unknown-linux-gnu and are failing on
s390x for what seem to be the same reason.

In addition, this also requires support for BE ELF files in
plugins-nextgen: https://github.com/llvm/llvm-project/pull/83976


  Commit: b64482e23eefaef7738fde35d0b7c4174aaa6597
      https://github.com/llvm/llvm-project/commit/b64482e23eefaef7738fde35d0b7c4174aaa6597
  Author: Ulrich Weigand <ulrich.weigand at de.ibm.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M openmp/libomptarget/plugins-nextgen/cuda/src/rtl.cpp

  Log Message:
  -----------
  [libomptarget] Fix CUDA plugin build regression

After 3ecd38c8e, the Handler.getELFObjectFile routine is no
longer available.  Call ELF64LEObjectFile::create directly,
which should always be suitable for CUDA images.


  Commit: eb8f379567e8d014194faefe02ce92813e237afc
      https://github.com/llvm/llvm-project/commit/eb8f379567e8d014194faefe02ce92813e237afc
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
    A llvm/test/Transforms/DeadStoreElimination/malloc-earliest-escape-info-invalidation.ll

  Log Message:
  -----------
  [DSE] Remove malloc from EarliestEscapeInfo before removing. (#84157)

Not removing the malloc from earliest escape info leaves stale entries
in the cache.

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

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


  Commit: 2b184c8f64b577a4cef2c2abde2dceaeece4874d
      https://github.com/llvm/llvm-project/commit/2b184c8f64b577a4cef2c2abde2dceaeece4874d
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

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

  Log Message:
  -----------
  [bazel] Add missing dependencies for 2542d34522784e27850a17a8c39a1ad4b43622ab


  Commit: 5ab86ef7c1bf66e7ae3b6fed97084715484c34e3
      https://github.com/llvm/llvm-project/commit/5ab86ef7c1bf66e7ae3b6fed97084715484c34e3
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

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

  Log Message:
  -----------
  [VPlan] Remove unused OverrideAllowed arg from getVPValue (NFCI).


  Commit: d4f4f802363d4227c61553872bdd61abcdeb8c08
      https://github.com/llvm/llvm-project/commit/d4f4f802363d4227c61553872bdd61abcdeb8c08
  Author: Ulrich Weigand <ulrich.weigand at de.ibm.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M openmp/libomptarget/plugins-nextgen/cuda/src/rtl.cpp

  Log Message:
  -----------
  Revert "[libomptarget] Fix CUDA plugin build regression"

This reverts commit b64482e23eefaef7738fde35d0b7c4174aaa6597.


  Commit: 70677c81debbeacfc2a2fe968e632522ea1b53e1
      https://github.com/llvm/llvm-project/commit/70677c81debbeacfc2a2fe968e632522ea1b53e1
  Author: Ulrich Weigand <ulrich.weigand at de.ibm.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M llvm/lib/Frontend/OpenMP/OMPContext.cpp
    M openmp/libomptarget/CMakeLists.txt
    M openmp/libomptarget/plugins-nextgen/CMakeLists.txt
    M openmp/libomptarget/plugins-nextgen/aarch64/CMakeLists.txt
    M openmp/libomptarget/plugins-nextgen/ppc64/CMakeLists.txt
    M openmp/libomptarget/plugins-nextgen/ppc64le/CMakeLists.txt
    M openmp/libomptarget/plugins-nextgen/s390x/CMakeLists.txt
    M openmp/libomptarget/plugins-nextgen/x86_64/CMakeLists.txt
    M openmp/libomptarget/src/CMakeLists.txt
    M openmp/libomptarget/test/api/omp_dynamic_shared_memory.c
    M openmp/libomptarget/test/jit/empty_kernel_lvl1.c
    M openmp/libomptarget/test/jit/empty_kernel_lvl2.c
    M openmp/libomptarget/test/jit/type_punning.c
    M openmp/libomptarget/test/mapping/auto_zero_copy.cpp
    M openmp/libomptarget/test/mapping/auto_zero_copy_globals.cpp
    M openmp/libomptarget/test/offloading/barrier_fence.c
    M openmp/libomptarget/test/offloading/bug49334.cpp
    M openmp/libomptarget/test/offloading/default_thread_limit.c
    M openmp/libomptarget/test/offloading/ompx_bare.c
    M openmp/libomptarget/test/offloading/ompx_coords.c
    M openmp/libomptarget/test/offloading/ompx_saxpy_mixed.c
    M openmp/libomptarget/test/offloading/parallel_target_teams_reduction.cpp
    M openmp/libomptarget/test/offloading/small_trip_count.c
    M openmp/libomptarget/test/offloading/small_trip_count_thread_limit.cpp
    M openmp/libomptarget/test/offloading/spmdization.c
    M openmp/libomptarget/test/offloading/target_critical_region.cpp
    M openmp/libomptarget/test/offloading/thread_limit.c
    M openmp/libomptarget/test/ompt/target_memcpy.c
    M openmp/libomptarget/test/ompt/target_memcpy_emi.c
    M openmp/libomptarget/test/ompt/veccopy.c
    M openmp/libomptarget/test/ompt/veccopy_data.c
    M openmp/libomptarget/test/ompt/veccopy_disallow_both.c
    M openmp/libomptarget/test/ompt/veccopy_emi.c
    M openmp/libomptarget/test/ompt/veccopy_emi_map.c
    M openmp/libomptarget/test/ompt/veccopy_map.c

  Log Message:
  -----------
  Revert "[libomptarget] Build plugins-nextgen for SystemZ (#83978)"

This reverts commit 3ecd38c8e1d34b1e4639a1de9f0cb56c7957cbd2.


  Commit: fb7cc73975f3ac262f2c80af2f399caead005259
      https://github.com/llvm/llvm-project/commit/fb7cc73975f3ac262f2c80af2f399caead005259
  Author: Ulrich Weigand <ulrich.weigand at de.ibm.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M openmp/libomptarget/plugins-nextgen/common/include/GlobalHandler.h
    M openmp/libomptarget/plugins-nextgen/common/include/Utils/ELF.h
    M openmp/libomptarget/plugins-nextgen/common/src/GlobalHandler.cpp
    M openmp/libomptarget/plugins-nextgen/common/src/Utils/ELF.cpp

  Log Message:
  -----------
  Revert "[libomptarget] Support BE ELF files in plugins-nextgen (#83976)"

This reverts commit 15b7b3182cc28f4f0b950bd73d931caa27b833ec.


  Commit: e946b5a87b2db307da076093d0a9a72ecb4ec089
      https://github.com/llvm/llvm-project/commit/e946b5a87b2db307da076093d0a9a72ecb4ec089
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/test/Analysis/ScalarEvolution/2007-07-15-NegativeStride.ll
    M llvm/test/Analysis/ScalarEvolution/2007-09-27-LargeStepping.ll
    M llvm/test/Analysis/ScalarEvolution/2008-05-25-NegativeStepToZero.ll
    M llvm/test/Analysis/ScalarEvolution/2008-07-19-WrappingIV.ll
    M llvm/test/Analysis/ScalarEvolution/2008-12-08-FiniteSGE.ll
    M llvm/test/Analysis/ScalarEvolution/2009-05-09-PointerEdgeCount.ll
    M llvm/test/Analysis/ScalarEvolution/SolveQuadraticEquation.ll
    M llvm/test/Analysis/ScalarEvolution/exact_iter_count.ll
    M llvm/test/Transforms/PhaseOrdering/scev-custom-dl.ll

  Log Message:
  -----------
  [SCEV] Autogenerate more scev analysis check tests


  Commit: 012d217174e28dc000ba1f437827cd23ec5ef606
      https://github.com/llvm/llvm-project/commit/012d217174e28dc000ba1f437827cd23ec5ef606
  Author: Cameron McInally <cameron.mcinally at nyu.edu>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/uniform-args-call-variants.ll
    A llvm/test/Transforms/LoopVectorize/pr73894.ll
    M llvm/test/Transforms/LoopVectorize/strict-fadd-interleave-only.ll

  Log Message:
  -----------
  [LV] Use scalar CMP for active-lane-mask with scalar VF (#83902)

Instead of generating a <1 x i1> active lane mask intrinsic, generate
the equivalent scalar ICMP instead. This allows us to avoid
unnecessarily extracting the scalar part from the vector mask.

Fixes llvm#73894.


  Commit: bec2d105c7b8b39c6d090146d076201d1cd61991
      https://github.com/llvm/llvm-project/commit/bec2d105c7b8b39c6d090146d076201d1cd61991
  Author: Janek van Oirschot <5994977+JanekvO at users.noreply.github.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/docs/AMDGPUUsage.rst
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    A llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCExpr.cpp
    A llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCExpr.h
    M llvm/lib/Target/AMDGPU/MCTargetDesc/CMakeLists.txt
    A llvm/test/MC/AMDGPU/mcexpr_amd.s
    A llvm/test/MC/AMDGPU/mcexpr_amd_err.s

  Log Message:
  -----------
  [AMDGPU] Add AMDGPU specific variadic operation MCExprs (#82022)

Adds AMDGPU specific variadic MCExpr operations 'max' and 'or'.


  Commit: 3b1512c477694c5ee4fb20fae416e834bf42518e
      https://github.com/llvm/llvm-project/commit/3b1512c477694c5ee4fb20fae416e834bf42518e
  Author: Joe Nash <joseph.nash at amd.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vop2.txt

  Log Message:
  -----------
  [AMDGPU] Make gfx11 vop2 disassembler tests use strict-whitespace

NFC.
Adds -strict-whitespace to RUN lines and adjusts CHECK line space
padding accordingly.

See also  (#84078)


  Commit: 0d38f21e4ab7fe7cebe76a9d7c218ec54dba1e98
      https://github.com/llvm/llvm-project/commit/0d38f21e4ab7fe7cebe76a9d7c218ec54dba1e98
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/test/Analysis/ScalarEvolution/2007-07-15-NegativeStride.ll
    M llvm/test/Analysis/ScalarEvolution/2007-09-27-LargeStepping.ll
    M llvm/test/Analysis/ScalarEvolution/2008-05-25-NegativeStepToZero.ll
    M llvm/test/Analysis/ScalarEvolution/2008-07-19-WrappingIV.ll
    M llvm/test/Analysis/ScalarEvolution/2008-12-08-FiniteSGE.ll
    M llvm/test/Analysis/ScalarEvolution/2009-05-09-PointerEdgeCount.ll
    M llvm/test/Analysis/ScalarEvolution/SolveQuadraticEquation.ll
    M llvm/test/Analysis/ScalarEvolution/addrec-computed-during-addrec-calculation.ll
    M llvm/test/Analysis/ScalarEvolution/alloca.ll
    M llvm/test/Analysis/ScalarEvolution/backedge-taken-count-guard-info.ll
    M llvm/test/Analysis/ScalarEvolution/becount-invalidation.ll
    M llvm/test/Analysis/ScalarEvolution/exact_iter_count.ll
    M llvm/test/Analysis/ScalarEvolution/exhaustive-trip-counts.ll
    M llvm/test/Analysis/ScalarEvolution/exit-count-select-safe.ll
    M llvm/test/Analysis/ScalarEvolution/exit-count-select.ll
    M llvm/test/Analysis/ScalarEvolution/exponential-behavior.ll
    M llvm/test/Analysis/ScalarEvolution/fold.ll
    M llvm/test/Analysis/ScalarEvolution/huge-trip-multiple.ll
    M llvm/test/Analysis/ScalarEvolution/incorrect-exit-count.ll
    M llvm/test/Analysis/ScalarEvolution/increasing-or-decreasing-iv.ll
    M llvm/test/Analysis/ScalarEvolution/invalidation.ll
    M llvm/test/Analysis/ScalarEvolution/load.ll
    M llvm/test/Analysis/ScalarEvolution/logical-operations.ll
    M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info-rewrite-expressions.ll
    M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info.ll
    M llvm/test/Analysis/ScalarEvolution/max-trip-count.ll
    M llvm/test/Analysis/ScalarEvolution/ne-overflow.ll
    M llvm/test/Analysis/ScalarEvolution/nsw.ll
    M llvm/test/Analysis/ScalarEvolution/overflow-intrinsics-trip-count.ll
    M llvm/test/Analysis/ScalarEvolution/pr25369.ll
    M llvm/test/Analysis/ScalarEvolution/pr34538.ll
    M llvm/test/Analysis/ScalarEvolution/pr48225.ll
    M llvm/test/Analysis/ScalarEvolution/range-signedness.ll
    M llvm/test/Analysis/ScalarEvolution/sext-add-inreg-loop.ll
    M llvm/test/Analysis/ScalarEvolution/sext-to-zext.ll
    M llvm/test/Analysis/ScalarEvolution/shift-op.ll
    M llvm/test/Analysis/ScalarEvolution/shift-recurrences.ll
    M llvm/test/Analysis/ScalarEvolution/smax-br-phi-idioms.ll
    M llvm/test/Analysis/ScalarEvolution/solve-quadratic-i1.ll
    M llvm/test/Analysis/ScalarEvolution/solve-quadratic-overflow.ll
    M llvm/test/Analysis/ScalarEvolution/solve-quadratic.ll
    M llvm/test/Analysis/ScalarEvolution/symbolic_max_exit_count.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-andor-selectform.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-andor.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-implied-addrec.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-negative-stride.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-switch.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count10.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count2.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count6.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count7.ll
    M llvm/test/Analysis/ScalarEvolution/unknown_phis.ll
    M llvm/test/Analysis/ScalarEvolution/widenable-condition.ll
    M llvm/test/Transforms/LoopSimplify/preserve-scev.ll
    M llvm/test/Transforms/PhaseOrdering/scev-custom-dl.ll
    M llvm/test/Transforms/SimpleLoopUnswitch/update-scev-2.ll

  Log Message:
  -----------
  [SCEV] Extend type hint in analysis output to all backedge kinds

This extends the work from 7755c26 to all of the different backend
taken count kinds that we print for the scev analysis printer.  As
before, the goal is to cut down on confusion as i4 -1 is a very
different (unsigned) value from i32 -1.


  Commit: c3acbf6bb06f9039f9850e18e0ae2f2adef63905
      https://github.com/llvm/llvm-project/commit/c3acbf6bb06f9039f9850e18e0ae2f2adef63905
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M compiler-rt/test/sanitizer_common/TestCases/sanitizer_coverage_inline8bit_counter_default_impl.cpp
    M compiler-rt/test/sanitizer_common/TestCases/sanitizer_coverage_symbolize.cpp

  Log Message:
  -----------
  [test] Make two sanitize-coverage tests pass with glibc 2.39+

glibc 2.39 added `nonnull` attribute to most libio functions accepting a
`FILE*` parameter, including fprintf[1]. The -fsanitize=undefined mode
checks the argument to fprintf and has extra counters, not expected by
two tests. Specify -fno-sanitize=nonnull-attribute to make the two tests
pass.

Fix #82883

[1]: https://sourceware.org/git/?p=glibc.git;a=commit;h=64b1a44183a3094672ed304532bedb9acc707554

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


  Commit: 1ed15cd5de69bc9347b0750281f5f711018c6506
      https://github.com/llvm/llvm-project/commit/1ed15cd5de69bc9347b0750281f5f711018c6506
  Author: mmilanifard <m.milanifard at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

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

  Log Message:
  -----------
  Adding missing dependencies to BUILD.bazel (#84235)

Build fix after (#84007).


  Commit: 351a82b8369732dbd95a85ceb499c92f22103c61
      https://github.com/llvm/llvm-project/commit/351a82b8369732dbd95a85ceb499c92f22103c61
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

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

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


  Commit: f0eb0c5689b25153067e66647590a8300b997740
      https://github.com/llvm/llvm-project/commit/f0eb0c5689b25153067e66647590a8300b997740
  Author: Greg Clayton <gclayton at fb.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
    M lldb/test/Shell/SymbolFile/DWARF/x86/dwp-separate-debug-file.cpp

  Log Message:
  -----------
  Don't require a UUID in a .dwp file. (#83935)

DWP files don't usually have a GNU build ID built into them. When
searching for a .dwp file, don't require a UUID to be in the .dwp file.
The debug info search information was checking for a UUID in the .dwp
file when debug info search paths were being used. This is now fixed by
not specifying the UUID in the ModuleSpec being used for the .dwp file
search.


  Commit: 47bc565ca7990a2de20af4030baf08ac62739aca
      https://github.com/llvm/llvm-project/commit/47bc565ca7990a2de20af4030baf08ac62739aca
  Author: lhunloh <8047408+lhunloh at users.noreply.github.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/test/Interfaces/TilingInterface/lower-to-loops-using-interface.mlir

  Log Message:
  -----------
  [MLIR] [Transforms] Let `transform.structured.convert_to_loops` return handles to loops (#83984)

This lets `transform.structured.convert_to_loops` return handles to the
generated loops, making this transformation more useful to use for
(transformation-)nesting purposes. This is modelled after SCFs
`transform.loop.forall_to_for` which returns handles to loops.

Introduced in commit aa2a96a24ae3a8cc04635ab6ede474c5f2665053, with a
note that they might move out of the `Linalg`-Dialect, but no reason
given for the non-return of handles. As far as I can see, this transform
always returns loops.


  Commit: 5cd45e442e99f8e01127f37548b124fa0e70f96a
      https://github.com/llvm/llvm-project/commit/5cd45e442e99f8e01127f37548b124fa0e70f96a
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/test/Analysis/ScalarEvolution/trip-count.ll

  Log Message:
  -----------
  [SCEV] Precommit test for widened signed induction variables

These tests highlight that we have missed oppurtunities proving
trip count bounds when our start/end values are sign extended
from smaller types and we have either a loop guard to relate our
start vs end, or a nsw/nuw fact to bound end.


  Commit: f8c5a68365fb82d9ffc64511f4b50b9c1e68144f
      https://github.com/llvm/llvm-project/commit/f8c5a68365fb82d9ffc64511f4b50b9c1e68144f
  Author: Duo Wang <duow1 at uci.edu>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/test/CXX/temp/temp.fct.spec/temp.deduct/temp.deduct.conv/p4.cpp

  Log Message:
  -----------
  [clang][test] Add test for incompatible cv-qualified reference types in conversion function template (#81950)

We currently lack test coverage for
[SemaTemplateDeduction.cpp#L1619-L1620](https://github.com/llvm/llvm-project/blob/fe20a75/clang/lib/Sema/SemaTemplateDeduction.cpp#L1619-L1620),
which handles the case where both the P type and the A type are
reference types but A is more cv-qualified than P. This is deemed
non-deduced unless both A and P are possibly cv-qualified forms of the
template parameter T. This PR adds tests for that logic.


  Commit: d34b3c9c5ab75c2ed0d7023889a1dcb4ce0a0f99
      https://github.com/llvm/llvm-project/commit/d34b3c9c5ab75c2ed0d7023889a1dcb4ce0a0f99
  Author: Michael Jones <michaelrj at google.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M libc/src/__support/high_precision_decimal.h
    M libc/src/__support/str_to_float.h
    M libc/src/__support/str_to_integer.h
    M libc/test/src/CMakeLists.txt
    M libc/test/src/__support/CMakeLists.txt
    M libc/test/src/__support/high_precision_decimal_test.cpp
    A libc/test/src/__support/str_to_integer_test.cpp

  Log Message:
  -----------
  [libc] Add max length argument to decimal to float (#84091)

The implementation for from_chars in libcxx is possibly going to use our
decimal to float utilities, but to do that we need to support limiting
the length of the string to be parsed. This patch adds support for that
length limiting to decimal_exp_to_float, as well as the functions it
calls (high precision decimal, str to integer).


  Commit: 395bc7909e9c65cc40680c6a5b8f17f54b5f61f1
      https://github.com/llvm/llvm-project/commit/395bc7909e9c65cc40680c6a5b8f17f54b5f61f1
  Author: Ingo Müller <ingomueller at google.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

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

  Log Message:
  -----------
  [mlir][bazel] Don't set MLIR_ENABLE_NVPTXCOMPILER on if_cuda_available. (#84238)

was available. However, it turns out that the NVPTX compiler is not part
of every CUDA distribution, so `if_cuda_available` may evaluate to true
without that compiler being present, which breaks the build. This PR
thus sets the macro to 0 always (which was the behavior before #84007).


  Commit: 96813de52d09d983d14a30ef5e2b4b8658f8e952
      https://github.com/llvm/llvm-project/commit/96813de52d09d983d14a30ef5e2b4b8658f8e952
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAMDGPU.def
    M clang/test/CodeGenOpenCL/amdgpu-features.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-dl-insts-err.cl
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
    M llvm/lib/TargetParser/TargetParser.cpp

  Log Message:
  -----------
  AMDGPU: Define a feature for v_dot4_f32_* instructions (#84248)

FeatureDot11Insts (dot11-insts) for:
  v_dot4_f32_fp8_fp8, v_dot4_f32_fp8_bf8,
  v_dot4_f32_bf8_fp8, v_dot4_f32_bf8_bf8


  Commit: ee1bcf74ea68d76b01ae2b58050f8f33bb684cac
      https://github.com/llvm/llvm-project/commit/ee1bcf74ea68d76b01ae2b58050f8f33bb684cac
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/EXPInstructions.td
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/SOPInstructions.td

  Log Message:
  -----------
  AMDGPI: Rename HasExpOrExportInsts to HasExportInsts. NFC (#84252)


  Commit: ad33fe12812a07c80d5b988e99bea11d5f73414b
      https://github.com/llvm/llvm-project/commit/ad33fe12812a07c80d5b988e99bea11d5f73414b
  Author: lntue <35648136+lntue at users.noreply.github.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M libc/config/baremetal/api.td
    M libc/config/baremetal/arm/entrypoints.txt
    M libc/config/baremetal/riscv/entrypoints.txt
    M libc/config/linux/api.td
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/math/stdfix.rst
    M libc/spec/llvm_libc_ext.td
    M libc/spec/stdc_ext.td
    M libc/src/__support/fixed_point/CMakeLists.txt
    M libc/src/__support/fixed_point/fx_rep.h
    M libc/src/__support/fixed_point/sqrt.h
    M libc/src/stdfix/CMakeLists.txt
    A libc/src/stdfix/uhksqrtus.cpp
    A libc/src/stdfix/uhksqrtus.h
    A libc/src/stdfix/uksqrtui.cpp
    A libc/src/stdfix/uksqrtui.h
    M libc/test/src/stdfix/CMakeLists.txt
    A libc/test/src/stdfix/ISqrtTest.h
    A libc/test/src/stdfix/uhksqrtus_test.cpp
    A libc/test/src/stdfix/uksqrtui_test.cpp

  Log Message:
  -----------
  [libc][stdfix] Add integer square root with fixed point output functions. (#83959)

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


  Commit: 7daa36ae7fe66c7cb0b6cb4311dcb50f120f24f6
      https://github.com/llvm/llvm-project/commit/7daa36ae7fe66c7cb0b6cb4311dcb50f120f24f6
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/DSInstructions.td

  Log Message:
  -----------
  [AMDGPU] Make ds_bvh_stack_rtn_b32 depend on HasImageInsts, NFC (#84256)

For GFX11.


  Commit: e3faae96e76c31c163973854cfe6689f28acc4ff
      https://github.com/llvm/llvm-project/commit/e3faae96e76c31c163973854cfe6689f28acc4ff
  Author: AtariDreams <83477269+AtariDreams at users.noreply.github.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

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

  Log Message:
  -----------
  [Clang] [AST] Resolve FIXME: Assign E to nullptr (#84229)

We do not support GCC 4.8 anymore.


  Commit: 8acef12030617e7e160eee38d92bc91007c7fd94
      https://github.com/llvm/llvm-project/commit/8acef12030617e7e160eee38d92bc91007c7fd94
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

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

  Log Message:
  -----------
  [NFC] [scudo] remove DCHECK (#84255)

this gets checked in StackDepot::init anyway


  Commit: 6fc5dc3ebb724965662e1242b1a5e2be840ced13
      https://github.com/llvm/llvm-project/commit/6fc5dc3ebb724965662e1242b1a5e2be840ced13
  Author: lntue <35648136+lntue at users.noreply.github.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M libc/spec/llvm_libc_ext.td

  Log Message:
  -----------
  [libc] Fix a typo in llvm_libc_ext.td. (#84259)


  Commit: 1a37147af5a91635e3982a9cbbdfe1d7492af84c
      https://github.com/llvm/llvm-project/commit/1a37147af5a91635e3982a9cbbdfe1d7492af84c
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/test/Analysis/ScalarEvolution/trip-count.ll

  Log Message:
  -----------
  [SCEV] Match both (-1)b + a and a + (-1)b as a - b (#84247)

In our analysis of guarding conditions, we were converting a-b == 0 into
a == b alternate form, but we were only checking for one of the two
forms for the sub. There's no requirement that the multiply only be on
the LHS of the add.


  Commit: 6a39a714423ba5675b9e211a80c1dae1ff0e6eac
      https://github.com/llvm/llvm-project/commit/6a39a714423ba5675b9e211a80c1dae1ff0e6eac
  Author: Stefan Gränitz <stefan.graenitz at gmail.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M clang/include/clang/Interpreter/Interpreter.h
    M clang/lib/Interpreter/Interpreter.cpp
    M clang/unittests/Interpreter/CMakeLists.txt
    R clang/unittests/Interpreter/IncrementalCompilerBuilderTest.cpp

  Log Message:
  -----------
  Revert "[clang-repl] Pass triple to IncrementalCompilerBuilder as explicit argument" (#84261)

Reverts llvm/llvm-project#84174 due too sanitizer memory leak detection


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

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

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


  Commit: 4258b0e13ff8eced081f3344677f02373ea88127
      https://github.com/llvm/llvm-project/commit/4258b0e13ff8eced081f3344677f02373ea88127
  Author: Kirill Stoimenov <87100199+kstoimenov at users.noreply.github.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    M llvm/test/Instrumentation/HWAddressSanitizer/pgo-opt-out-no-ps.ll
    M llvm/test/Instrumentation/HWAddressSanitizer/pgo-opt-out.ll

  Log Message:
  -----------
  [HWASAN] Follow up for #83503 implement selective instrumentation (#83942)

1. Change tests to use IR instead of -stats to avoid depending on Debug
mode
2. Add SkipInstrumentationRandomRate 
3. Remove HWASAN from stat strings


  Commit: 0497c77e9e02f0dcccd42a6afd65d0356a5dbb57
      https://github.com/llvm/llvm-project/commit/0497c77e9e02f0dcccd42a6afd65d0356a5dbb57
  Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M lldb/source/Breakpoint/BreakpointLocation.cpp
    M lldb/test/API/functionalities/breakpoint/breakpoint_options/TestBreakpointOptions.py

  Log Message:
  -----------
  [lldb] Print mangled names with verbose break list (#84071)

When debugging LLDB itself, it can often be useful to know the mangled
name of the function where a breakpoint is set. Since the `--verbose`
setting of `break --list` is aimed at debugging LLDB, this patch makes
it so that the mangled name is also printed in that mode.

Note about testing: since mangling is not the same on Windows and Linux,
the test refrains from hardcoding mangled names.


  Commit: 318bff6811e7a7e0d3295ed85aa3ad01d475cc8c
      https://github.com/llvm/llvm-project/commit/318bff6811e7a7e0d3295ed85aa3ad01d475cc8c
  Author: Pranav Kant <prka at google.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaType.cpp
    A clang/test/SemaCUDA/float128.cu

  Log Message:
  -----------
  [clang][CUDA] Disable float128 diagnostics for device compilation (#83918)


  Commit: 551e20d190868fe47f8efbfd1dbf38191cc2c95d
      https://github.com/llvm/llvm-project/commit/551e20d190868fe47f8efbfd1dbf38191cc2c95d
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M lld/ELF/ScriptParser.cpp
    M lld/test/ELF/linkerscript/wildcards.s

  Log Message:
  -----------
  [ELF] Reject error-prone meta characters in input section description

The lexer is overly permissive. When parsing file patterns in an input
section description and there is a missing `)`, we would accept many
non-sensible tokens (e.g. `}`) as patterns, leading to confusion, e.g.
`*(SORT_BY_ALIGNMENT(SORT_BY_NAME(.text*)) } PROVIDE_HIDDEN(__code_end = .)`
(#81804).

Ideally, the lexer should be stateful to report more errors like GNU ld
and get rid of hacks like `ScriptLexer::maybeSplitExpr`, but that would
require a large rewrite of the lexer. For now, just reject certain
non-wildcard meta characters to detect common mistakes.

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


  Commit: 59a92019fbc0a67ec82a903a4f6167ad45545a7f
      https://github.com/llvm/llvm-project/commit/59a92019fbc0a67ec82a903a4f6167ad45545a7f
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M mlir/include/mlir/IR/PatternMatch.h
    M mlir/include/mlir/Transforms/DialectConversion.h
    M mlir/lib/Dialect/Linalg/Transforms/DecomposeLinalgOps.cpp
    M mlir/lib/Dialect/Linalg/Utils/Utils.cpp
    M mlir/lib/IR/PatternMatch.cpp
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/lib/Transforms/Utils/RegionUtils.cpp
    M mlir/test/lib/Dialect/Test/TestPatterns.cpp

  Log Message:
  -----------
  [mlir][IR] Make `replaceOp` / `replaceAllUsesWith` API consistent (#82629)

* `replaceOp` replaces all uses of the original op and erases the old
op.
* `replaceAllUsesWith` replaces all uses of the original op/value/block.
It does not erase any IR.

This commit renames `replaceOpWithIf` to `replaceUsesWithIf`.
`replaceOpWithIf` was a misnomer because the function never erases the
original op. Similarly, `replaceOpWithinBlock` is renamed to
`replaceUsesWithinBlock`. (No "operation replaced" is sent because the
op is not erased.)

Also improve comments.


  Commit: 84842f4b3ba175d744c03d40baa8e371522615e8
      https://github.com/llvm/llvm-project/commit/84842f4b3ba175d744c03d40baa8e371522615e8
  Author: Congcong Cai <congcongcai0907 at 163.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/AssertSideEffectCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/assert-side-effect.cpp

  Log Message:
  -----------
  [clang-tidy] bugprone-assert-side-effect can detect side effect from non-const reference parameters (#84095)

Fixes: #84092


  Commit: 9fe5aa31eccff49632e40bcdad6e64fc00190889
      https://github.com/llvm/llvm-project/commit/9fe5aa31eccff49632e40bcdad6e64fc00190889
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

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

  Log Message:
  -----------
  [clang][Sema] Skip the RequiresExprBodyDecls for lambda dependencies (#83997)

The dependency of a lambda inside of a `RequiresExprBodyDecl` was
previously affected by its parent, e.g.,
`ClassTemplateSpecializationDecl`. This made the lambda always dependent
regardless of the template arguments we had, which caused some crashes
on the constraint evaluation later.

This fixes https://github.com/llvm/llvm-project/issues/56556, fixes
https://github.com/llvm/llvm-project/issues/82849 and a case
demonstrated by
https://github.com/llvm/llvm-project/issues/49570#issuecomment-1664966972.


  Commit: 4f1258fd913a65338c8fbf5cf38163b4e026964a
      https://github.com/llvm/llvm-project/commit/4f1258fd913a65338c8fbf5cf38163b4e026964a
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86.td

  Log Message:
  -----------
  [X86] Change tuning of Sierraforest and Grandridge to more latest target (#84179)


  Commit: 416debf79b90256b794efb583696dbc085f3f050
      https://github.com/llvm/llvm-project/commit/416debf79b90256b794efb583696dbc085f3f050
  Author: Cameron McInally <cameron.mcinally at nyu.edu>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    A llvm/test/Transforms/LoopVectorize/AArch64/pr73894.ll
    R llvm/test/Transforms/LoopVectorize/pr73894.ll

  Log Message:
  -----------
  [test] Move pr73894.ll to AArch64 directory and update the target triple (#84269)

pr73894.ll is failing on a number of non-AArch64 buildbots. I'm not
certain that this is a proper fix, but I think it's best to move the
test to the test/Transforms/LoopVectorize/AArch64/ directory and replace
the triple with one commonly used in that directory.

llvm#73894


  Commit: ec72909b62ce568ed27c6ad0581e50c0fdd70df4
      https://github.com/llvm/llvm-project/commit/ec72909b62ce568ed27c6ad0581e50c0fdd70df4
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M lldb/test/API/functionalities/fork/concurrent_vfork/main.cpp

  Log Message:
  -----------
  [lldb][test] iwyu for vfork test


  Commit: 51e23545e79957af43be9be0e6c31b77a4665279
      https://github.com/llvm/llvm-project/commit/51e23545e79957af43be9be0e6c31b77a4665279
  Author: mmilanifard <m.milanifard at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

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

  Log Message:
  -----------
  Revert "Adding missing dependencies to BUILD.bazel" (#84251)

Reverts llvm/llvm-project#84235
With changes in #84238 these dependencies are not required.


  Commit: 0083c3eb83bb984fcc9bfbf1b670df8ea3f1fe97
      https://github.com/llvm/llvm-project/commit/0083c3eb83bb984fcc9bfbf1b670df8ea3f1fe97
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/docs/AMDGPUUsage.rst
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    R llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCExpr.cpp
    R llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCExpr.h
    M llvm/lib/Target/AMDGPU/MCTargetDesc/CMakeLists.txt
    R llvm/test/MC/AMDGPU/mcexpr_amd.s
    R llvm/test/MC/AMDGPU/mcexpr_amd_err.s

  Log Message:
  -----------
  Revert "[AMDGPU] Add AMDGPU specific variadic operation MCExprs" (#84273)

Reverts llvm/llvm-project#82022

Fails on hwasan build bot:
https://lab.llvm.org/buildbot/#/builders/236/builds/9874/steps/10/logs/stdio


  Commit: 38a73fb1575f7d71f481177595ef66723d1ca0b3
      https://github.com/llvm/llvm-project/commit/38a73fb1575f7d71f481177595ef66723d1ca0b3
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

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

  Log Message:
  -----------
  [gn build] Port 0083c3eb83bb


  Commit: c7fbbec86c483019e9340ee4573d6d8b4f878f72
      https://github.com/llvm/llvm-project/commit/c7fbbec86c483019e9340ee4573d6d8b4f878f72
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp

  Log Message:
  -----------
  [lldb] Remove unused #includes in ClangModulesDeclVendor.cpp (#84262)


  Commit: ca7492fae42c5a21db96eccaca7a5e827ab1bf65
      https://github.com/llvm/llvm-project/commit/ca7492fae42c5a21db96eccaca7a5e827ab1bf65
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M lldb/include/lldb/Target/Target.h
    M lldb/source/Target/Target.cpp

  Log Message:
  -----------
  [lldb] Extract getter function for experimental target properties (NFC) (#83504)

In Swift's downstream lldb, there are a number of experimental properties. This change 
extracts a getter function containing the common logic for getting a boolean valued 
experimental property.

This also deletes `SetInjectLocalVariables` which isn't used anywhere.


  Commit: 2fcf248ec2614dd966f31d471a1a97989a76fd9d
      https://github.com/llvm/llvm-project/commit/2fcf248ec2614dd966f31d471a1a97989a76fd9d
  Author: Connor Sughrue <55301806+cpsughrue at users.noreply.github.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/include/llvm/Support/Program.h
    M llvm/lib/Support/Program.cpp
    M llvm/lib/Support/Unix/Program.inc
    M llvm/lib/Support/Windows/Program.inc
    M llvm/unittests/Support/ProgramTest.cpp

  Log Message:
  -----------
  Reland "[llvm][Support] Add support for executing a detached process (#81708)" (#83367)

Relands #81708, which was reverted by
f410f74cd5b26319b5796e0404c6a0f3b5cc00a5, now with a corrected unit
test. Origionally the test failed on Windows when run with lit as
`GetConsoleWindow` could not retrieve a window handle regardless of
whether `DetachProcess` was `true` or `false`. The test now uses
`GetStdHandle(STD_OUTPUT_HANDLE)` which does not rely on a console
window existing. Original commit message below.

Adds a new parameter, `bool DetachProcess` with a default option of
`false`, to `llvm::sys::ExecuteNoWait`, which, when set to `true`,
executes the specified program without a controlling terminal.

Functionality added so that the module build daemon can be run without a
controlling terminal.


  Commit: 248468097faa9739ae66ff6fe1836e529d58455a
      https://github.com/llvm/llvm-project/commit/248468097faa9739ae66ff6fe1836e529d58455a
  Author: Martin Wehking <martin.wehking at codeplay.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

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

  Log Message:
  -----------
  Add non-null check before accessing pointer (#83459)

Add a check if RC is not null to ensure that a consecutive access is
safe.

A static analyzer flagged this issue since hasVectorRegisters
potentially dereferences RC.


  Commit: 40671156757cc3f2304085a6642a24efc8165df7
      https://github.com/llvm/llvm-project/commit/40671156757cc3f2304085a6642a24efc8165df7
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp

  Log Message:
  -----------
  [lldb] Log module build remarks to types log too (#84260)


  Commit: 95bde4b9d6fe258ff7fea6da5024b2a8813c1e0c
      https://github.com/llvm/llvm-project/commit/95bde4b9d6fe258ff7fea6da5024b2a8813c1e0c
  Author: Alexander Richardson <alexrichardson at google.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M compiler-rt/lib/msan/tests/CMakeLists.txt

  Log Message:
  -----------
  [MSan] Pass -fsanitize-ignorelist to the instrumented libcxxabi

This ensures that the MSan unit tests are able to pass with an
uninstrumented libunwind. We need to avoid instrumentation for
__gxx_personality_v0, which is part of the default msan_ignorelist.txt
that is installed into the resource directory. However, if we are trying
to test the just-built libraries, this global ignore list may not be
present yet, so we still instrument the function.

Arguably this function should not be on the default ignore list since it
is only a problem when building libcxxabi with MSan instrumentation and
without an instrumented libunwind, so maybe the logic should really be
part of the libcxxabi build. However, that could be done as a follow-up.

See 2f856a36e0b270b184051d10a18d4b4238b4c033 for more context.

Reviewed By: vitalybuka

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


  Commit: 2e25926b50183cb3d819e85ef7bdf00001027859
      https://github.com/llvm/llvm-project/commit/2e25926b50183cb3d819e85ef7bdf00001027859
  Author: Alexander Richardson <alexrichardson at google.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M compiler-rt/test/lit.common.cfg.py
    M compiler-rt/test/orc/lit.cfg.py

  Log Message:
  -----------
  [compiler-rt] Only query llvm-config in the orc tests

This check for assertions is only used inside the test/orc directory, but
doing it in the top level lit config means all testsuites depend on
llvm-config being present. This is not necessarily needed e.g. when
testing just the builtins. While touching this code, simplify it a bit
by using subprocess.check_output() instead of Popen() and use a string
comparison instead of a regex match.

Reviewed By: lhames

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


  Commit: 68d07bf34f6b044193c429d9f8cf07500a4775ea
      https://github.com/llvm/llvm-project/commit/68d07bf34f6b044193c429d9f8cf07500a4775ea
  Author: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.h
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp

  Log Message:
  -----------
  [RISCV][NFC] Add helpers for RVV register classes

There are two places in tree that use these helpers and there will
be more future usages.

Reviewers: asb, BeMg, lukel97

Reviewed By: BeMg, lukel97

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


  Commit: 50bdc6f3ec3418073805d2b535f3f72a7d677577
      https://github.com/llvm/llvm-project/commit/50bdc6f3ec3418073805d2b535f3f72a7d677577
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M bolt/test/X86/gotpcrelx.s
    M bolt/test/X86/pt_gnu_relro.s

  Log Message:
  -----------
  [BOLT,test] Remove -relax-relocations

The option is always true (see
2aedfdd9b82e6c72a28576d0e8ea854f1300ff4e).


  Commit: 00efb343529cce025055ca8284a61b22b48924c9
      https://github.com/llvm/llvm-project/commit/00efb343529cce025055ca8284a61b22b48924c9
  Author: Amara Emerson <amara at apple.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    A llvm/test/CodeGen/AArch64/GlobalISel/legalize-shuffle-vector-widen-crash.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Fix crash during G_SHUFFLE_VECTOR legalization.

A new widening rule was running before the shuffle was canonicalized into a
homogenous form. Moving the rules around to ensure it's done before the
widening fixes the crash, although this particular test still falls back.


  Commit: 2f1d79ee702148f452584367ddd0e3c81ecf3c64
      https://github.com/llvm/llvm-project/commit/2f1d79ee702148f452584367ddd0e3c81ecf3c64
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M lld/test/ELF/amdgpu-duplicate-sym.s
    M lld/test/ELF/i386-relax-reloc.s
    M lld/test/ELF/systemz-gotent-relax-align.s
    M lld/test/ELF/systemz-gotent-relax-und-dso.s
    M lld/test/ELF/systemz-gotent-relax.s
    M lld/test/ELF/x86-64-gotpc-relax-nopic.s
    M lld/test/ELF/x86-64-gotpc-relax-und-dso.s
    M lld/test/ELF/x86-64-gotpc-relax.s
    M lld/test/ELF/x86-64-relax-got-abs.s
    M lld/test/ELF/x86-64-relax-offset.s

  Log Message:
  -----------
  [ELF,test] Remove unneeded -relax-relocations from llvm-mc

This is option is x86-64 specific and should not be used by
AMDGPU/SystemZ. On x86-64, the option defaults to true and is
unnecessary.


  Commit: e63ea9d6f7b1d15f4819e6af8ee9452046e1548c
      https://github.com/llvm/llvm-project/commit/e63ea9d6f7b1d15f4819e6af8ee9452046e1548c
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/CommandFlags.cpp
    M llvm/test/CodeGen/X86/tailjmp_gotpcrel_relax_relocation.ll
    M llvm/test/CodeGen/X86/tls-no-plt.ll
    M llvm/test/ThinLTO/X86/cache-config.ll

  Log Message:
  -----------
  [CommandFlags] Rename option -relax-elf-relocations to -x86-relax-relocations

relax-elf-relocations is misleading and there were AMDGPU/SystemZ tests
misusing this x86-specific option.


  Commit: 886ecb3078e5f3a5cffc70408a637242c223c363
      https://github.com/llvm/llvm-project/commit/886ecb3078e5f3a5cffc70408a637242c223c363
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M mlir/lib/Dialect/GPU/Transforms/SerializeToHsaco.cpp
    M mlir/lib/Target/LLVM/ROCDL/Target.cpp

  Log Message:
  -----------
  [mlir] Remove setRelaxELFRelocations. NFC

The option is always true (see 2aedfdd9b82e6c72a28576d0e8ea854f1300ff4e)
and the MCAsmInfo option is going away in favor of MCTargetOptions.


  Commit: a3319371970b599ef65ef1567c440fbdc3a330f4
      https://github.com/llvm/llvm-project/commit/a3319371970b599ef65ef1567c440fbdc3a330f4
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/tools/driver/cc1as_main.cpp
    M lld/test/ELF/weak-undef-got-pie.s
    M llvm/include/llvm/CodeGen/CommandFlags.h
    M llvm/include/llvm/MC/MCAsmInfo.h
    M llvm/include/llvm/MC/MCContext.h
    M llvm/include/llvm/MC/MCTargetOptions.h
    M llvm/include/llvm/MC/MCTargetOptionsCommandFlags.h
    M llvm/include/llvm/Target/TargetOptions.h
    M llvm/lib/CodeGen/CommandFlags.cpp
    M llvm/lib/CodeGen/LLVMTargetMachine.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/MC/ELFObjectWriter.cpp
    M llvm/lib/MC/MCTargetOptionsCommandFlags.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp
    M llvm/lib/Target/X86/X86MCInstLower.cpp
    M llvm/test/ExecutionEngine/JITLink/AArch64/ELF_minimal.s
    M llvm/test/ExecutionEngine/JITLink/AArch64/ELF_relocations.s
    M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_small_pic_relocations.s
    M llvm/test/ExecutionEngine/JITLink/x86-64/ELF_common_var.s
    M llvm/test/MC/ELF/got-relaxed-i386.s
    M llvm/test/MC/ELF/relocation-386.s
    M llvm/test/MC/X86/gotpcrelx.s
    M llvm/tools/gold/gold-plugin.cpp
    M llvm/tools/llvm-mc/llvm-mc.cpp

  Log Message:
  -----------
  [MC] Move CompressDebugSections/RelaxELFRelocations from TargetOptions/MCAsmInfo to MCTargetOptions

The convention is for such MC-specific options to reside in
MCTargetOptions. However, CompressDebugSections/RelaxELFRelocations do
not follow the convention: `CompressDebugSections` is defined in both
TargetOptions and MCAsmInfo and there is forwarding complexity.

Move the option to MCTargetOptions and hereby simplify the code. Rename
the misleading RelaxELFRelocations to X86RelaxRelocations. llvm-mc
-relax-relocations and llc -x86-relax-relocations can now be unified.


  Commit: eae4f56cb40c5db0ec2c4e967107cba2473246f1
      https://github.com/llvm/llvm-project/commit/eae4f56cb40c5db0ec2c4e967107cba2473246f1
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/SROA.cpp
    M llvm/test/Transforms/SROA/phi-gep.ll

  Log Message:
  -----------
  [SROA] Fix phi gep unfolding with an alloca not in entry block

Fixes a crash reported in #83494.


  Commit: 02629793a4581e79cda342eaae007704b4daa8ce
      https://github.com/llvm/llvm-project/commit/02629793a4581e79cda342eaae007704b4daa8ce
  Author: Maksim Panchenko <maks at fb.com>
  Date:   2024-03-06 (Wed, 06 Mar 2024)

  Changed paths:
    M bolt/lib/Rewrite/LinuxKernelRewriter.cpp
    A bolt/test/X86/linux-bug-table.s

  Log Message:
  -----------
  [BOLT] Add reading support for Linux kernel __bug_table section (#84082)

Read __bug_table section and annotate ud2 instructions with a
corresponding bug entry ID.


  Commit: 7c63431cc22c68742a6a42d3304fdb68431247c3
      https://github.com/llvm/llvm-project/commit/7c63431cc22c68742a6a42d3304fdb68431247c3
  Author: Marius Brehler <marius.brehler at iml.fraunhofer.de>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.h
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
    A mlir/include/mlir/Dialect/EmitC/IR/EmitCTraits.h
    M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
    M mlir/lib/Dialect/EmitC/Transforms/FormExpressions.cpp
    M mlir/lib/Dialect/EmitC/Transforms/Transforms.cpp

  Log Message:
  -----------
  [mlir][EmitC] Introduce a `CExpression` trait (#84177)

This adds a `CExpression` trait and replaces the `isCExpression()`
function.


  Commit: 7524ad9aa7b1b5003fe554a6ac8e434d50027dfb
      https://github.com/llvm/llvm-project/commit/7524ad9aa7b1b5003fe554a6ac8e434d50027dfb
  Author: Amara Emerson <amara at apple.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/select-atomic-load-store.mir

  Log Message:
  -----------
  [AArch64][GlobalISel] Fix incorrect selection of monotonic s32->s64 anyext load.

This load isn't selected by tablegen due to the anyext, but wasn't generating
a subreg_to_reg. Maybe it shouldn't be formed at all during the combiner but to stop
crashes later in codegen select it manually for now.


  Commit: 7a0e222a17058a311b69153d0b6f1b4459414778
      https://github.com/llvm/llvm-project/commit/7a0e222a17058a311b69153d0b6f1b4459414778
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/ReachingDefAnalysis.cpp
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIOptimizeExecMasking.cpp
    M llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
    M llvm/lib/Target/ARM/Thumb1FrameLowering.cpp
    M llvm/lib/Target/SystemZ/SystemZElimCompare.cpp
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
    M llvm/lib/Target/SystemZ/SystemZShortenInst.cpp
    M llvm/lib/Target/X86/X86FloatingPoint.cpp
    M llvm/test/CodeGen/AArch64/arm64-shrink-wrapping.ll
    M llvm/test/CodeGen/AArch64/stack-probing-no-scratch-reg.mir
    M llvm/test/CodeGen/Thumb/PR35481.ll

  Log Message:
  -----------
  Revert "Convert many LivePhysRegs uses to LiveRegUnits (#83905)"

This reverts commit 2a13422b8bcee449405e3ebff957b4020805f91c.

It was causing test failures on the expensive check builders.


  Commit: 91808c845fd6f0624525b6d6348b2c284628ce58
      https://github.com/llvm/llvm-project/commit/91808c845fd6f0624525b6d6348b2c284628ce58
  Author: Michal Paszkowski <michal at paszkowski.org>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/docs/GettingInvolved.rst

  Log Message:
  -----------
  [docs] Change SPIR-V backend meeting day (#84286)

Changing SPIR-V backend meeting day and removing my office hours


  Commit: 99500e8c08a4d941acb8a7eb00523296fb2acf7a
      https://github.com/llvm/llvm-project/commit/99500e8c08a4d941acb8a7eb00523296fb2acf7a
  Author: Mariya Podchishchaeva <mariya.podchishchaeva at intel.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/test/AST/Interp/cxx23.cpp
    M clang/test/CXX/class/class.compare/class.compare.default/p3.cpp
    M clang/test/CXX/class/class.compare/class.compare.default/p4.cpp
    M clang/test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/dtor.cpp
    M clang/test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p3-2b.cpp
    M clang/test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p3.cpp
    M clang/test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p4.cpp
    M clang/test/CXX/dcl.decl/dcl.fct.def/dcl.fct.def.default/p2.cpp
    M clang/test/CXX/drs/dr13xx.cpp
    M clang/test/CXX/drs/dr14xx.cpp
    M clang/test/CXX/drs/dr15xx.cpp
    M clang/test/CXX/drs/dr16xx.cpp
    M clang/test/CXX/drs/dr6xx.cpp
    M clang/test/CXX/expr/expr.const/p5-26.cpp
    M clang/test/CXX/special/class.copy/p13-0x.cpp
    M clang/test/SemaCXX/constant-expression-cxx11.cpp
    M clang/test/SemaCXX/constant-expression-cxx14.cpp
    M clang/test/SemaCXX/constant-expression-cxx2b.cpp
    A clang/test/SemaCXX/cxx23-invalid-constexpr.cpp
    M clang/test/SemaCXX/cxx2a-consteval.cpp
    M clang/test/SemaCXX/deduced-return-type-cxx14.cpp
    M clang/test/SemaOpenCLCXX/addrspace-constructors.clcpp
    M clang/www/cxx_status.html

  Log Message:
  -----------
  [Clang][C++23] Implement P2448R2: Relaxing some constexpr restrictions (#77753)

Per
https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p2448r2.html
function/constructor/destructor can be marked `constexpr` even though it
never produces a constant expression.
Non-literal types as return types and parameter types of functions
marked `constexpr` are also allowed.
Since this is not a DR, the diagnostic messages are still preserved for
C++ standards older than C++23.


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

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/active_lane_mask.ll
    M llvm/test/CodeGen/RISCV/rvv/combine-store-extract-crash.ll
    M llvm/test/CodeGen/RISCV/rvv/extract-subvector.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-concat.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-load-combine.ll
    M llvm/test/CodeGen/RISCV/rvv/fpclamptosat_vec.ll
    M llvm/test/CodeGen/RISCV/rvv/mgather-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/pr63596.ll

  Log Message:
  -----------
  [RISCV] Recursively split concat_vector into smaller LMULs (#83035)

This is the concat_vector equivalent of #81312, in that we recursively
split concat_vectors with more than two operands into smaller
concat_vectors.

This allows us to break up the chain of vslideups, as well as perform
the vslideups at a smaller LMUL, which in turn reduces register pressure
as the previous lowering performed N vslideups at the highest result
LMUL. For now, it stops splitting past MF2.

This is done as a DAG combine so that any undef operands are combined
away: If we do this during lowering then we end up with unnecessary
vslideups of undefs.


  Commit: 7ce1cfed9a11735f0f4ee8a3a8bebfa87ee76d07
      https://github.com/llvm/llvm-project/commit/7ce1cfed9a11735f0f4ee8a3a8bebfa87ee76d07
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.h
    M clang/lib/StaticAnalyzer/Checkers/WebKit/UncountedLocalVarsChecker.cpp
    M clang/test/Analysis/Checkers/WebKit/mock-types.h
    M clang/test/Analysis/Checkers/WebKit/uncounted-local-vars.cpp

  Log Message:
  -----------
  [alpha.webkit.UncountedLocalVarsChecker] Allow uncounted object references within trivial statements (#82229)

This PR makes alpha.webkit.UncountedLocalVarsChecker ignore raw
references and pointers to a ref counted type which appears within
"trival" statements. To do this, this PR extends TrivialFunctionAnalysis
so that it can also analyze "triviality" of statements as well as that
of functions Each Visit* function is now augmented with
withCachedResult, which is responsible for looking up and updating the
cache for each Visit* functions.

As this PR dramatically improves the false positive rate of the checker,
it also deletes the code to ignore raw pointers and references within if
and for statements.


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

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

  Log Message:
  -----------
  AMDGPU: Refactor mfma hazard handling [NFC] (#84276)

Try to make this editable by using functions for the number of wait
states as a function of the number of passes. I'm assuming the current
hazard test coverage is comprehensive.

This could probably use another round to further simplify it.
Alternatively, I believe this could all be expressed in a constant table
indexed by an instruction classify function and number of passes.


  Commit: 812c22b2ef5f3f194b8d452fc9f95714dce572f2
      https://github.com/llvm/llvm-project/commit/812c22b2ef5f3f194b8d452fc9f95714dce572f2
  Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyAddMissingPrototypes.cpp

  Log Message:
  -----------
  [RemoveDIs][wasm] Apply current debug mode to new function protos (#84292)

This trips the verifier changes added in #83251

Stimulated by llvm/test/MC/WebAssembly/extern-functype-intrinsic.ll


  Commit: 503c55e17037436dcd45ac69dea8967e67e3f5e8
      https://github.com/llvm/llvm-project/commit/503c55e17037436dcd45ac69dea8967e67e3f5e8
  Author: ostannard <oliver.stannard at arm.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64SLSHardening.cpp
    M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
    M llvm/test/CodeGen/AArch64/O0-pipeline.ll
    M llvm/test/CodeGen/AArch64/O3-pipeline.ll
    M llvm/test/CodeGen/AArch64/arm64-opt-remarks-lazy-bfi.ll
    A llvm/test/CodeGen/AArch64/sls-crash.ll
    M llvm/test/CodeGen/AArch64/sls-stackprotector-outliner.ll

  Log Message:
  -----------
  [AArch64] Move SLS later in pass pipeline (#84210)

Currently, the SLS hardening pass is run before the machine outliner,
which means that the outliner creates new functions and calls which do
not have the SLS hardening applied.

The fix for this is to move the SLS passes to after the outliner, as has
recently been done for the return address signing pass.

This also avoids a bug where the SLS outliner emits code with
instructions after a return, which the outliner doesn't correctly
handle.


  Commit: 6e79f77adbbd338848ea770f2f2b110bc57a3990
      https://github.com/llvm/llvm-project/commit/6e79f77adbbd338848ea770f2f2b110bc57a3990
  Author: Vincent Lee <thevinster at users.noreply.github.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M clang/lib/Analysis/FlowSensitive/HTMLLogger.cpp

  Log Message:
  -----------
  [dataflow][nfc] Fix u8 string usage with c++20 (#84291)

Clang returns an error when compiling this file with c++20
```
error: ISO C++20 does not permit initialization of char array with UTF-8 string literal
```
It seems like c++20 treats u8strings differently than strings (probably
needs char8_t).
Make this a string to fix the error.


  Commit: 84f483dbeeba5ecadbf3e4a75bfb71525a3fa332
      https://github.com/llvm/llvm-project/commit/84f483dbeeba5ecadbf3e4a75bfb71525a3fa332
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M libc/src/__support/CMakeLists.txt
    M libc/src/__support/CPP/bit.h
    M libc/src/__support/UInt.h
    M libc/src/__support/float_to_string.h
    M libc/src/__support/integer_to_string.h
    M libc/test/UnitTest/CMakeLists.txt
    M libc/test/UnitTest/LibcTest.cpp
    M libc/test/UnitTest/LibcTest.h
    M libc/test/UnitTest/TestLogger.cpp
    M libc/test/src/__support/CPP/bit_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/UnitTest/BUILD.bazel

  Log Message:
  -----------
  [libc] Remove UB specializations of type traits for `BigInt` (#84035)

The standard specifies that it it UB to specialize the following traits:
 - `std::is_integral`
 - `std::is_unsigned`
 - `std::make_unsigned`
 - `std::make_signed`

This patch:
 - Removes specializations for `BigInt`
 - Transforms SFINAE for `bit.h` functions from template parameter to
   return type (This makes specialization easier).
 - Adds `BigInt` specialization for `bit.h` functions.
 - Fixes code depending on previous specializations.


  Commit: 27844cb2fa2a66fe90f12240809b260709fb2cc9
      https://github.com/llvm/llvm-project/commit/27844cb2fa2a66fe90f12240809b260709fb2cc9
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M libc/src/__support/CMakeLists.txt
    M libc/src/__support/CPP/bit.h
    M libc/src/__support/UInt.h
    M libc/src/__support/float_to_string.h
    M libc/src/__support/integer_to_string.h
    M libc/test/UnitTest/CMakeLists.txt
    M libc/test/UnitTest/LibcTest.cpp
    M libc/test/UnitTest/LibcTest.h
    M libc/test/UnitTest/TestLogger.cpp
    M libc/test/src/__support/CPP/bit_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/UnitTest/BUILD.bazel

  Log Message:
  -----------
  Revert "[libc] Remove UB specializations of type traits for `BigInt`" (#84297)

Reverts llvm/llvm-project#84035

Several bots are failing:
 - https://lab.llvm.org/buildbot/#/builders/223/builds/37522
 - https://lab.llvm.org/buildbot/#/builders/162/builds/51978
 - https://lab.llvm.org/buildbot/#/builders/163/builds/52560
 - https://lab.llvm.org/buildbot/#/builders/250/builds/19619


  Commit: bf7f62ab92241298ccd7af008b3b26daac9c220b
      https://github.com/llvm/llvm-project/commit/bf7f62ab92241298ccd7af008b3b26daac9c220b
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/BUFInstructions.td

  Log Message:
  -----------
  [AMDGPU] Make use of Mnem_gfx11_gfx12. NFC.


  Commit: 469c5e3da46115b9625e2d4771bd19d4968e3fa9
      https://github.com/llvm/llvm-project/commit/469c5e3da46115b9625e2d4771bd19d4968e3fa9
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/DSInstructions.td

  Log Message:
  -----------
  [AMDGPU] Simplify definition of renamed DS instructions. NFC.

Following the pattern used for SOP instructions, we can use the same
multiclass with a default argument to define renamed and non-renamed
instructions.


  Commit: afac64cef40c77320cc49808be30f3e5ef7f7357
      https://github.com/llvm/llvm-project/commit/afac64cef40c77320cc49808be30f3e5ef7f7357
  Author: Matthias Gehre <93204396+mgehre-amd at users.noreply.github.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Bufferization/Transforms/Passes.h
    M mlir/lib/Dialect/Bufferization/Transforms/BufferResultsToOutParams.cpp

  Log Message:
  -----------
  [MLIR] BufferResultsToOutParams: Allow to configure memCpyFn

This allows us to configure the pass to emit
linalg.copy instead of memref.copy.

This is consistent with one-shot-bufferize, which also allows to configure the `memCpyFn`,
see https://discord.com/channels/636084430946959380/642426447167881246/1211698722438783087


  Commit: 6f54a54c6f5f644b4f4c79882154fd9737568c8e
      https://github.com/llvm/llvm-project/commit/6f54a54c6f5f644b4f4c79882154fd9737568c8e
  Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M clang/lib/CodeGen/Targets/AArch64.cpp
    M clang/test/CodeGen/attr-target-version.c

  Log Message:
  -----------
  [FMV] Remove duplicate features from mangled name. (#84165)

ACLE suggests: https://github.com/ARM-software/acle/pull/308. GCC emits
diagnostics for attribute strings which contain duplicate features, but
for now let's follow the SPEC in regards to mangling rules and we can
change the semantic behavior of the compiler later if there's value to
it.


  Commit: c40146c214a705a232848144d9412c8a7c73f0fe
      https://github.com/llvm/llvm-project/commit/c40146c214a705a232848144d9412c8a7c73f0fe
  Author: Marius Brehler <marius.brehler at iml.fraunhofer.de>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    A mlir/include/mlir/Conversion/ArithToEmitC/ArithToEmitC.h
    A mlir/include/mlir/Conversion/ArithToEmitC/ArithToEmitCPass.h
    M mlir/include/mlir/Conversion/Passes.h
    M mlir/include/mlir/Conversion/Passes.td
    A mlir/lib/Conversion/ArithToEmitC/ArithToEmitC.cpp
    A mlir/lib/Conversion/ArithToEmitC/ArithToEmitCPass.cpp
    A mlir/lib/Conversion/ArithToEmitC/CMakeLists.txt
    M mlir/lib/Conversion/CMakeLists.txt
    A mlir/test/Conversion/ArithToEmitC/arith-to-emitc.mlir
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir][EmitC] Add Arith to EmitC conversions (#84151)

This adds patterns and a pass to convert the Arith dialect to EmitC. For
now, this covers arithemtic binary ops operating on floating point
types.

It is not checked within the patterns whether the types, such as the
Tensor type, are supported in the respective EmitC operations. If
unsupported types should be converted, the conversion will fail anyway
because no legal EmitC operation can be created. This can clearly be
improved in a follow up, also resulting in better error messages.
Functions for such checks should not solely be used in the conversions
and should also be (re)used in the verifier.


  Commit: 245d669f1d1c3f66d0d3d8aa7cffa5ef0d7747ff
      https://github.com/llvm/llvm-project/commit/245d669f1d1c3f66d0d3d8aa7cffa5ef0d7747ff
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M libc/src/__support/CMakeLists.txt
    M libc/src/__support/CPP/bit.h
    M libc/src/__support/UInt.h
    M libc/src/__support/float_to_string.h
    M libc/src/__support/integer_to_string.h
    M libc/test/UnitTest/CMakeLists.txt
    M libc/test/UnitTest/LibcTest.cpp
    M libc/test/UnitTest/LibcTest.h
    M libc/test/UnitTest/TestLogger.cpp
    M libc/test/src/__support/CPP/bit_test.cpp
    M libc/test/src/__support/FPUtil/fpbits_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/UnitTest/BUILD.bazel

  Log Message:
  -----------
  [reland][libc] Remove UB specializations of type traits for `BigInt` (#84299)

Note: This is a reland of #84035.

The standard specifies that it it UB to specialize the following traits:
 - `std::is_integral`
 - `std::is_unsigned`
 - `std::make_unsigned`
 - `std::make_signed`

This patch:
 - Removes specializations for `BigInt`
 - Transforms SFINAE for `bit.h` functions from template parameter to
   return type (This makes specialization easier).
 - Adds `BigInt` specialization for `bit.h` functions.
 - Fixes code depending on previous specializations.


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

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/test/Analysis/CostModel/AMDGPU/shufflevector.ll
    M llvm/test/Analysis/CostModel/RISCV/shuffle-extract_subvector.ll
    M llvm/test/Analysis/CostModel/RISCV/shuffle-interleave.ll
    M llvm/test/Analysis/CostModel/X86/shuffle-concat_subvector-codesize.ll
    M llvm/test/Analysis/CostModel/X86/shuffle-concat_subvector-latency.ll
    M llvm/test/Analysis/CostModel/X86/shuffle-concat_subvector-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/shuffle-concat_subvector.ll
    M llvm/test/Analysis/CostModel/X86/shuffle-extract_subvector-codesize.ll
    M llvm/test/Analysis/CostModel/X86/shuffle-extract_subvector-latency.ll
    M llvm/test/Analysis/CostModel/X86/shuffle-extract_subvector-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/shuffle-extract_subvector.ll

  Log Message:
  -----------
  [CostModel] getInstructionCost - improve estimation of costs for length changing shuffles (#84156)

Fix gap in the cost estimation for length changing shuffles, by adjusting the shuffle mask and either widening the shuffle inputs or extracting the lower elements of the result.

A small step towards moving some of this implementation inside improveShuffleKindFromMask and/or target getShuffleCost handlers (and reduce the diffs in cost estimation depending on whether coming from a ShuffleVectorInst or the raw operands / mask components)


  Commit: 5830d1a2dff24d752459f215a0c8fc366f393596
      https://github.com/llvm/llvm-project/commit/5830d1a2dff24d752459f215a0c8fc366f393596
  Author: martinboehme <mboehme at google.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M clang/lib/Analysis/FlowSensitive/HTMLLogger.cpp

  Log Message:
  -----------
  Revert "[dataflow][nfc] Fix u8 string usage with c++20" (#84301)

Reverts llvm/llvm-project#84291

The patch broke Windows builds.


  Commit: 4119042d76c79667b374ad85b3b92ef56cfd96e8
      https://github.com/llvm/llvm-project/commit/4119042d76c79667b374ad85b3b92ef56cfd96e8
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/EXPInstructions.td

  Log Message:
  -----------
  [AMDGPU] Simplify EXP Real instruction definitions. NFC.

Pass the Pseudo (instead of its name) into EXP_Real_Row and
EXP_Real_ComprVM since it is already available in all subclasses.


  Commit: 937a5396cf3e524ae40106a943a5c1f2c565fa00
      https://github.com/llvm/llvm-project/commit/937a5396cf3e524ae40106a943a5c1f2c565fa00
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M libcxx/include/__type_traits/is_convertible.h

  Log Message:
  -----------
  [libc++] Remove unused includes from __type_traits/is_convertible.h (#83747)


  Commit: 0086cc95b3b3ac4088d3d782cd490d0c08108b59
      https://github.com/llvm/llvm-project/commit/0086cc95b3b3ac4088d3d782cd490d0c08108b59
  Author: Diana Picus <Diana-Magda.Picus at amd.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h

  Log Message:
  -----------
  [AMDGPU] Rename getNumVGPRBlocks. NFC (#84161)

Rename getNumVGPRBlocks to getEncodedNumVGPRBlocks, to clarify that it's
using the encoding granule. This is used to program the hardware. In
practice, the hardware will use the alloc granule instead, so this patch
also adds a new helper, getAllocatedNumVGPRBlocks, which can be useful
when driving heuristics.


  Commit: a11ab139e4de9cdad41c299f198515c09be6f05d
      https://github.com/llvm/llvm-project/commit/a11ab139e4de9cdad41c299f198515c09be6f05d
  Author: martinboehme <mboehme at google.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M clang/lib/Analysis/FlowSensitive/HTMLLogger.cpp

  Log Message:
  -----------
  [clang][dataflow] Fix u8 string error with C++20. (#84302)

See also discussion on https://github.com/llvm/llvm-project/pull/84291.


  Commit: d5aecf0c19fc8850d7d34ac8c339bcc7e133b5fb
      https://github.com/llvm/llvm-project/commit/d5aecf0c19fc8850d7d34ac8c339bcc7e133b5fb
  Author: martinboehme <mboehme at google.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M clang/include/clang/Analysis/FlowSensitive/ControlFlowContext.h
    M clang/include/clang/Analysis/FlowSensitive/DataflowEnvironment.h
    M clang/lib/Analysis/FlowSensitive/ControlFlowContext.cpp
    M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
    M clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp
    M clang/unittests/Analysis/FlowSensitive/DataflowEnvironmentTest.cpp
    M clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp

  Log Message:
  -----------
  [clang][nullability] Don't discard expression state before end of full-expression. (#82611)

In https://github.com/llvm/llvm-project/pull/72985, I made a change to
discard
expression state (`ExprToLoc` and `ExprToVal`) at the beginning of each
basic
block. I did so with the claim that "we never need to access entries
from these
maps outside of the current basic block", noting that there are
exceptions to
this claim when control flow happens inside a full-expression (the
operands of
`&&`, `||`, and the conditional operator live in different basic blocks
than the
operator itself) but that we already have a mechanism for retrieving the
values
of these operands from the environment for the block they are computed
in.

It turns out, however, that the operands of these operators aren't the
only
expressions whose values can be accessed from a different basic block;
when
control flow happens within a full-expression, that control flow can be
"interposed" between an expression and its parent. Here is an example:

```cxx
void f(int*, int);
bool cond();

void target() {
  int i = 0;
  f(&i, cond() ? 1 : 0);
}
```

([godbolt](https://godbolt.org/z/hrbj1Mj3o))

In the CFG[^1] , note how the expression for `&i` is computed in block
B4,
but the parent of this expression (the `CallExpr`) is located in block
B1.
The the argument expression `&i` and the `CallExpr` are essentially
"torn apart"
into different basic blocks by the conditional operator in the second
argument.
In other words, the edge between the `CallExpr` and its argument `&i`
straddles
the boundary between two blocks.

I used to think that this scenario -- where an edge between an
expression and
one of its children straddles a block boundary -- could only happen
between the
expression that triggers the control flow (`&&`, `||`, or the
conditional
operator) and its children, but the example above shows that other
expressions
can be affected as well; the control flow is still triggered by `&&`,
`||` or
the conditional operator, but the expressions affected lie outside these
operators.

Discarding expression state too soon is harmful. For example, an
analysis that
checks the arguments of the `CallExpr` above would not be able to
retrieve a
value for the `&i` argument.

This patch therefore ensures that we don't discard expression state
before the
end of a full-expression. In other cases -- when the evaluation of a
full-expression is complete -- we still want to discard expression state
for the
reasons explained in https://github.com/llvm/llvm-project/pull/72985
(avoid
performing joins on boolean values that are no longer needed, which
unnecessarily extends the flow condition; improve debuggability by
removing
clutter from the expression state).

The impact on performance from this change is about a 1% slowdown in the
Crubit nullability check benchmarks:

```
name                              old cpu/op   new cpu/op   delta
BM_PointerAnalysisCopyPointer     71.9µs ± 1%  71.9µs ± 2%    ~     (p=0.987 n=15+20)
BM_PointerAnalysisIntLoop          190µs ± 1%   192µs ± 2%  +1.06%  (p=0.000 n=14+16)
BM_PointerAnalysisPointerLoop      325µs ± 5%   324µs ± 4%    ~     (p=0.496 n=18+20)
BM_PointerAnalysisBranch           193µs ± 0%   192µs ± 4%    ~     (p=0.488 n=14+18)
BM_PointerAnalysisLoopAndBranch    521µs ± 1%   525µs ± 3%  +0.94%  (p=0.017 n=18+19)
BM_PointerAnalysisTwoLoops         337µs ± 1%   341µs ± 3%  +1.19%  (p=0.004 n=17+19)
BM_PointerAnalysisJoinFilePath    1.62ms ± 2%  1.64ms ± 3%  +0.92%  (p=0.021 n=20+20)
BM_PointerAnalysisCallInLoop      1.14ms ± 1%  1.15ms ± 4%    ~     (p=0.135 n=16+18)
```

[^1]:
```
 [B5 (ENTRY)]
   Succs (1): B4

 [B1]
   1: [B4.9] ? [B2.1] : [B3.1]
   2: [B4.4]([B4.6], [B1.1])
   Preds (2): B2 B3
   Succs (1): B0

 [B2]
   1: 1
   Preds (1): B4
   Succs (1): B1

 [B3]
   1: 0
   Preds (1): B4
   Succs (1): B1

 [B4]
   1: 0
   2: int i = 0;
   3: f
   4: [B4.3] (ImplicitCastExpr, FunctionToPointerDecay, void (*)(int *, int))
   5: i
   6: &[B4.5]
   7: cond
   8: [B4.7] (ImplicitCastExpr, FunctionToPointerDecay, _Bool (*)(void))
   9: [B4.8]()
   T: [B4.9] ? ... : ...
   Preds (1): B5
   Succs (2): B2 B3

 [B0 (EXIT)]
   Preds (1): B1
```


  Commit: 59e405b39416c8a5e2af93b2bfaa97a8c9d67f06
      https://github.com/llvm/llvm-project/commit/59e405b39416c8a5e2af93b2bfaa97a8c9d67f06
  Author: Kareem Ergawy <kareem.ergawy at amd.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M flang/test/Lower/OpenMP/FIR/delayed-privatization-firstprivate.f90
    M flang/test/Lower/OpenMP/FIR/delayed-privatization-private.f90
    M flang/test/Lower/OpenMP/delayed-privatization-firstprivate.f90
    M flang/test/Lower/OpenMP/delayed-privatization-private-firstprivate.f90
    M flang/test/Lower/OpenMP/delayed-privatization-private.f90
    M flang/test/Lower/OpenMP/delayed-privatization-reduction.f90

  Log Message:
  -----------
  [flang][OpenMP] Add `%flang_fc1` `RUN` to delayed privatization tests (#84296)

I did not know how `-mmlir` flag works and was deferring the addition of
`--openm-enabled-delayed-privatization` until later because I thought
some work needs to be done to do that. This commit just adds some extra
`RUN` lines to delayed privatization tests to run them from `flang` as
well.


  Commit: 464d9d96b3565ead06396ffb8d02b4dcf9cb9556
      https://github.com/llvm/llvm-project/commit/464d9d96b3565ead06396ffb8d02b4dcf9cb9556
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/include/llvm/AsmParser/LLParser.h
    M llvm/include/llvm/AsmParser/LLToken.h
    M llvm/include/llvm/IR/DebugProgramInstruction.h
    M llvm/lib/AsmParser/LLLexer.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/IR/DebugProgramInstruction.cpp
    M llvm/lib/IR/Verifier.cpp
    A llvm/test/Assembler/dbg-record-invalid-0.ll
    A llvm/test/Assembler/dbg-record-invalid-1.ll
    A llvm/test/Assembler/dbg-record-invalid-2.ll
    A llvm/test/Assembler/dbg-record-invalid-3.ll
    A llvm/test/Assembler/dbg-record-invalid-4.ll
    A llvm/test/Assembler/dbg-record-invalid-5.ll
    A llvm/test/Assembler/dbg-record-invalid-6.ll
    A llvm/test/Assembler/dbg-record-invalid-7.ll
    A llvm/test/Assembler/dbg-record-invalid-8.ll
    A llvm/test/DebugInfo/roundtrip-non-instruction-debug-info.ll
    A llvm/test/Verifier/RemoveDI/blockbyref.ll
    A llvm/test/Verifier/RemoveDI/dbg-invalid-vector.ll
    A llvm/test/Verifier/RemoveDI/di-subroutine-localvar.ll
    A llvm/test/Verifier/RemoveDI/diexpression-entry-value-llvm-ir.ll
    A llvm/test/Verifier/RemoveDI/fnarg-debuginfo.ll
    A llvm/test/Verifier/RemoveDI/fnarg-nodebug.ll
    A llvm/test/Verifier/RemoveDI/invalid-disubrange-count-node.ll
    A llvm/test/Verifier/RemoveDI/llvm.dbg.declare-address.ll
    A llvm/test/Verifier/RemoveDI/llvm.dbg.declare-expression.ll
    A llvm/test/Verifier/RemoveDI/llvm.dbg.declare-variable.ll
    A llvm/test/Verifier/RemoveDI/llvm.dbg.intrinsic-dbg-attachment.ll
    A llvm/test/Verifier/RemoveDI/llvm.dbg.value-expression.ll
    A llvm/test/Verifier/RemoveDI/llvm.dbg.value-value.ll
    A llvm/test/Verifier/RemoveDI/llvm.dbg.value-variable.ll
    A llvm/test/Verifier/RemoveDI/set1.ll

  Log Message:
  -----------
  [RemoveDIs][DebugInfo][IR] Add parsing for non-intrinsic debug values (#79818)

This patch adds support for parsing the proposed non-instruction debug
info ("RemoveDIs") from textual IR, and adds a test for the parser as well
as a set of verifier tests that are dependent on parsing to fire.

An important detail of this patch is the fact that although we can now
parse in the RemoveDIs (new) and Intrinsic (old) debug info formats, we
will always convert back to the old format at the end of parsing - this
is done for two reasons: firstly to ensure that every tool is able to
process IR printed in the new format, regardless of whether that tool
has had RemoveDIs support added, and secondly to maintain the effect of
the existing flags: for the tools where support for the new format has
been added, we will run LLVM passes in the new format iff
`--try-experimental-debuginfo-iterators=true`, and we will print in the
new format iff `--write-experimental-debuginfo-iterators=true`; the
format of the textual IR input should have no effect on either of these
features.


  Commit: 4b70d17bcffaffd75a5d8c420396f8dc755b4652
      https://github.com/llvm/llvm-project/commit/4b70d17bcffaffd75a5d8c420396f8dc755b4652
  Author: Stefan Gränitz <stefan.graenitz at gmail.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/AST/DeclBase.h
    M clang/include/clang/Basic/DeclNodes.td
    M clang/include/clang/Sema/Sema.h
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclBase.cpp
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/Interpreter/execute-stmts.cpp

  Log Message:
  -----------
  [clang-repl] Names declared in if conditions and for-init statements are local to the inner context (#84150)

Make TopLevelStmtDecl a DeclContext so that variables defined in statements
are attached to the TopLevelDeclContext. This fixes redefinition errors
from variables declared in if conditions and for-init statements. These
must be local to the inner context (C++ 3.3.2p4), but they had generated
definitions on global scope instead.

This PR makes the TopLevelStmtDecl looking more like a FunctionDecl and
that's fine because the FunctionDecl is very close in terms of semantics.

Additionally, ActOnForStmt() requires a CompoundScope when processing a
NullStmt body.

---------

Co-authored-by: Vassil Vassilev <v.g.vassilev at gmail.com>


  Commit: 2acccf6717996bea8ade96dafdfc3343e9604694
      https://github.com/llvm/llvm-project/commit/2acccf6717996bea8ade96dafdfc3343e9604694
  Author: aniplcc <157880614+aniplcc at users.noreply.github.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/test/Lexer/cxx-features.cpp
    M clang/test/SemaCXX/cxx2b-p2266-disable-with-msvc-compat.cpp

  Log Message:
  -----------
  [Clang] Update value for __cpp_implicit_move (#84216) (#84228)

Fixes #84216


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

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h

  Log Message:
  -----------
  [TTI] SK_ExtractSubvector - Ensure we use the src / subvector types in the correct order

Fixes typo in #84156, fixes buildbot assertion (most targets don't seem to care so tricky to create a testcase).


  Commit: 48dd118f56e007a173b30019e860f0bd373a8ff8
      https://github.com/llvm/llvm-project/commit/48dd118f56e007a173b30019e860f0bd373a8ff8
  Author: cor3ntin <corentinjabot at gmail.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M clang/www/cxx_status.html

  Log Message:
  -----------
  [Clang] Fix approved revision of P2266


  Commit: 597be90f8b72fde59505f3650c20cf9e57b47d57
      https://github.com/llvm/llvm-project/commit/597be90f8b72fde59505f3650c20cf9e57b47d57
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/amdgpu-openmp-toolchain.c
    M clang/test/Driver/linker-wrapper-image.c
    M clang/test/Driver/linker-wrapper-libs.c
    M clang/test/Driver/linker-wrapper.c
    M clang/test/Driver/openmp-offload-gpu.c
    M clang/test/Driver/openmp-offload-infer.c
    M clang/tools/clang-linker-wrapper/LinkerWrapperOpts.td

  Log Message:
  -----------
  [Clang][NFC] Remove '--' separator in the linker wrapper usage (#84253)

Summary:
The very first version of the `clang-linker-wrapper` used `--` as a
separator for the host and device arguments. I moved away from this
towards a commandline parsing implementation years ago but never got
around to officially removing this.


  Commit: 4cfd4a7896b5fd50274ec8573c259d7ad41741de
      https://github.com/llvm/llvm-project/commit/4cfd4a7896b5fd50274ec8573c259d7ad41741de
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    A llvm/test/Analysis/LoopAccessAnalysis/underlying-object-loop-varying-phi.ll

  Log Message:
  -----------
  [LAA] Add test case for #82665.

Test case for https://github.com/llvm/llvm-project/issues/82665.


  Commit: 61b13e0dfe1b476d9bf0fe477983be8471cfd26b
      https://github.com/llvm/llvm-project/commit/61b13e0dfe1b476d9bf0fe477983be8471cfd26b
  Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M clang/lib/Driver/OffloadBundler.cpp
    M clang/test/Driver/clang-offload-bundler.c

  Log Message:
  -----------
  [ClangOffloadBundler] fix unbundling archive (#84195)

When unbundling an archive, need to save the content of each object file
to a temporary file before passing it to llvm-objcopy, instead of
passing the original input archive file to llvm-objcopy.

Also allows extracting host bundles for archives.

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


  Commit: e4d4cfa5a0111372dff2b01126545cf3139ee40b
      https://github.com/llvm/llvm-project/commit/e4d4cfa5a0111372dff2b01126545cf3139ee40b
  Author: Lei Huang <lei at ca.ibm.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M libcxx/test/std/time/time.syn/formatter.file_time.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.local_time.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.sys_time.pass.cpp

  Log Message:
  -----------
  [libc++] Fixes time formatter test output for Linux on PowerPC (#75526)

Fix output to match actual.


  Commit: f355cd6f6c51580316e1e88ef5534bd2f8cfa498
      https://github.com/llvm/llvm-project/commit/f355cd6f6c51580316e1e88ef5534bd2f8cfa498
  Author: Marius Brehler <marius.brehler at iml.fraunhofer.de>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
    M mlir/lib/Target/Cpp/TranslateToCpp.cpp

  Log Message:
  -----------
  [mlir][EmitC] Allow further ops within expressions (#84284)

This adds the `CExpression` trait to additional ops to allow to use
these ops within the expression operation. Furthermore, the operator
precedence is defined for those ops.


  Commit: 043a020688765ad1ed27df718f908cfd0dc353a3
      https://github.com/llvm/llvm-project/commit/043a020688765ad1ed27df718f908cfd0dc353a3
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M libc/config/gpu/api.td

  Log Message:
  -----------
  [libc] Fix missing standard definitions in the GPU config

Summary:
Some dependencies on the standard C extensions are added transitively.
This patch adds the new values.


  Commit: 2b8aaef09e2fd0b2a5581e198a73579c6939c717
      https://github.com/llvm/llvm-project/commit/2b8aaef09e2fd0b2a5581e198a73579c6939c717
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/docs/GlobalISel/GenericOpcode.rst
    M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
    M llvm/include/llvm/Support/TargetOpcodes.def
    M llvm/include/llvm/Target/GenericOpcodes.td
    M llvm/lib/CodeGen/GlobalISel/CSEMIRBuilder.cpp
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
    M llvm/lib/CodeGen/MachineVerifier.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/irtranslator/shufflevector.ll
    A llvm/test/MachineVerifier/test_g_splat_vector.mir
    M llvm/unittests/CodeGen/GlobalISel/LegalizerHelperTest.cpp
    M llvm/unittests/CodeGen/GlobalISel/PatternMatchTest.cpp

  Log Message:
  -----------
  [GISEL] Add IRTranslation for shufflevector on scalable vector types (#80378)

This patch is stacked on
https://github.com/llvm/llvm-project/pull/80372,
https://github.com/llvm/llvm-project/pull/80307, and
https://github.com/llvm/llvm-project/pull/80306.

ShuffleVector on scalable vector types gets IRTranslate'd to
G_SPLAT_VECTOR since a ShuffleVector that has operates on scalable
vectors is a splat vector where the value of the splat vector is the 0th
element of the first operand, because the index mask operand is the
zeroinitializer (undef and poison are treated as zeroinitializer here).
This is analogous to what happens in SelectionDAG for ShuffleVector.

`buildSplatVector` is renamed to`buildBuildVectorSplatVector`. I did not
make this a separate patch because it would cause problems to revert
that change without reverting this change too.


  Commit: 3239b4dcfebbaa3eeaff9258893a6674050d8354
      https://github.com/llvm/llvm-project/commit/3239b4dcfebbaa3eeaff9258893a6674050d8354
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M lldb/cmake/modules/LLDBConfig.cmake
    M lldb/test/CMakeLists.txt

  Log Message:
  -----------
  [lldb][test] Enforce `pexpect` system availability by default (#84270)

This switches the default of `LLDB_TEST_USE_VENDOR_PACKAGES` from `ON`
to `OFF` in preparation for eventually deleting it. All known LLDB
buildbots have this package installed, so flipping the default will
uncover any other users.

If this breaks anything, the preferred fix is to install `pexpect` on
the host system. The second fix is to build with cmake option
`-DLLDB_TEST_USE_VENDOR_PACKAGES=ON` as a temporary measure until
`pexpect` can be installed. If neither of those work, reverting this
patch is OK.


  Commit: 03588a27261f7ebea15af49268d2ec901fe1979e
      https://github.com/llvm/llvm-project/commit/03588a27261f7ebea15af49268d2ec901fe1979e
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M lldb/test/API/commands/platform/connect/TestPlatformConnect.py

  Log Message:
  -----------
  [lldb][test][FreeBSD] xfail TestPlatformConnect on AArch64

Details in the linked issue. Might fail on other architectures
but I can't confirm, they can add to this if it does.


  Commit: 9e0f5909d0af3911b19bb1f97fb400c3ce431f63
      https://github.com/llvm/llvm-project/commit/9e0f5909d0af3911b19bb1f97fb400c3ce431f63
  Author: SahilPatidar <patidarsahil2001 at gmail.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-vpload.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-trunc-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vpload.ll
    M llvm/test/CodeGen/X86/combine-smin.ll
    M llvm/test/CodeGen/X86/combine-umax.ll
    M llvm/test/CodeGen/X86/combine-umin.ll

  Log Message:
  -----------
  [DAG] Fix Failure to reassociate SMAX/SMIN/UMAX/UMIN (#82175)

Resolve #58110


  Commit: 552da2484390bb002522fc18124ac9fc19ab4b59
      https://github.com/llvm/llvm-project/commit/552da2484390bb002522fc18124ac9fc19ab4b59
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/docs/GlobalISel/GenericOpcode.rst
    M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
    M llvm/include/llvm/Support/TargetOpcodes.def
    M llvm/include/llvm/Target/GenericOpcodes.td
    M llvm/lib/CodeGen/GlobalISel/CSEMIRBuilder.cpp
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
    M llvm/lib/CodeGen/MachineVerifier.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
    R llvm/test/CodeGen/RISCV/GlobalISel/irtranslator/shufflevector.ll
    R llvm/test/MachineVerifier/test_g_splat_vector.mir
    M llvm/unittests/CodeGen/GlobalISel/LegalizerHelperTest.cpp
    M llvm/unittests/CodeGen/GlobalISel/PatternMatchTest.cpp

  Log Message:
  -----------
  Revert "[GISEL] Add IRTranslation for shufflevector on scalable vector types" (#84330)

Reverts llvm/llvm-project#80378

causing Buildbot failures that did not show up with check-llvm or CI.


  Commit: 4ce52e2d576937fe930294cae883a0daa17eeced
      https://github.com/llvm/llvm-project/commit/4ce52e2d576937fe930294cae883a0daa17eeced
  Author: Alexey Bataev <5361294+alexey-bataev at users.noreply.github.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/AArch64/ext-trunc.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/getelementptr2.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/reduce-add-i64.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/reductions.ll
    M llvm/test/Transforms/SLPVectorizer/X86/PR35777.ll
    M llvm/test/Transforms/SLPVectorizer/X86/int-bitcast-minbitwidth.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-multiuse-with-insertelement.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-transformed-operand.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minimum-sizes.ll
    M llvm/test/Transforms/SLPVectorizer/X86/phi-undef-input.ll
    M llvm/test/Transforms/SLPVectorizer/X86/resched.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reused-reductions-with-minbitwidth.ll
    M llvm/test/Transforms/SLPVectorizer/X86/store-insertelement-minbitwidth.ll
    M llvm/test/Transforms/SLPVectorizer/alt-cmp-vectorize.ll

  Log Message:
  -----------
  [SLP]Improve minbitwidth analysis.

This improves overall analysis for minbitwidth in SLP. It allows to
analyze the trees with store/insertelement root nodes. Also, instead of
using single minbitwidth, detected from the very first analysis stage,
it tries to detect the best one for each trunc/ext subtree in the graph
and use it for the subtree.
Results in better code and less vector register pressure.

Metric: size..text

Program                                                                                                                                                size..text
                                                                                                                                                       results     results0    diff
                                                                      test-suite :: SingleSource/Benchmarks/Adobe-C++/simple_types_loop_invariant.test    92549.00    92609.00  0.1%
                                                                                  test-suite :: External/SPEC/CINT2017speed/625.x264_s/625.x264_s.test   663381.00   663493.00  0.0%
                                                                                   test-suite :: External/SPEC/CINT2017rate/525.x264_r/525.x264_r.test   663381.00   663493.00  0.0%
                                                                                               test-suite :: MultiSource/Benchmarks/Bullet/bullet.test   307182.00   307214.00  0.0%
                                                                             test-suite :: External/SPEC/CFP2017speed/638.imagick_s/638.imagick_s.test  1394420.00  1394484.00  0.0%
                                                                              test-suite :: External/SPEC/CFP2017rate/538.imagick_r/538.imagick_r.test  1394420.00  1394484.00  0.0%
                                                                                test-suite :: External/SPEC/CFP2017rate/510.parest_r/510.parest_r.test  2040257.00  2040273.00  0.0%

                                                                              test-suite :: External/SPEC/CFP2017rate/526.blender_r/526.blender_r.test 12396098.00 12395858.00 -0.0%
                                                                                         test-suite :: External/SPEC/CINT2006/445.gobmk/445.gobmk.test   909944.00   909768.00 -0.0%

SingleSource/Benchmarks/Adobe-C++/simple_types_loop_invariant - 4 scalar
instructions remain scalar (good).
Spec2017/x264 - the whole function idct4x4dc is vectorized using <16
x i16> instead of <16 x i32>, also zext/trunc are removed. In other
places last vector zext/sext removed and replaced by
extractelement + scalar zext/sext pair.
MultiSource/Benchmarks/Bullet/bullet - reduce or <4 x i32> replaced by
reduce or <4 x i8>
Spec2017/imagick - Removed extra zext from 2 packs of the operations.
Spec2017/parest - Removed extra zext, replaced by extractelement+scalar
zext
Spec2017/blender - the whole bunch of vector zext/sext replaced by
extractelement+scalar zext/sext, some extra code vectorized in smaller
types.
Spec2006/gobmk - fixed cost estimation, some small code remains scalar.

Reviewers: RKSimon

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


  Commit: a213df5d3895f323ef0d2d9affc1020414576caa
      https://github.com/llvm/llvm-project/commit/a213df5d3895f323ef0d2d9affc1020414576caa
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp

  Log Message:
  -----------
  [LinkerWrapper] Use the correct empty file on Windows (#84322)

Summary:
The clang-offload-bundler uses an empty file to control the bundles made
for embedding. Previously this still used `/dev/null` by mistake even on
Windows.


  Commit: d6b3be375ffed14fefc93c2031cd56e680afd0c1
      https://github.com/llvm/llvm-project/commit/d6b3be375ffed14fefc93c2031cd56e680afd0c1
  Author: sylvain-audi <62035306+sylvain-audi at users.noreply.github.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp

  Log Message:
  -----------
  [NFC][Asan] Prepare AddressSanitizer to detect inserted runtime calls (#84223)

This is in preparation for an upcoming commit that will add "funclet"
OpBundle to the inserted runtime calls where the function's EH
personality requires it.

See PR https://github.com/llvm/llvm-project/pull/82533


  Commit: 8aed911fe91bb6cbfb95789683dadf3e77ea713a
      https://github.com/llvm/llvm-project/commit/8aed911fe91bb6cbfb95789683dadf3e77ea713a
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/lib/AST/Interp/ByteCodeExprGen.h
    M clang/test/AST/Interp/complex.c
    M clang/test/AST/Interp/complex.cpp

  Log Message:
  -----------
  [clang][Interp] Implement complex comparisons


  Commit: 5d59fa90ce225814739d9b51ba37e1cca9204cad
      https://github.com/llvm/llvm-project/commit/5d59fa90ce225814739d9b51ba37e1cca9204cad
  Author: Oleksandr "Alex" Zinenko <zinenko at google.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M mlir/python/mlir/dialects/arith.py
    M mlir/test/python/dialects/arith_dialect.py

  Log Message:
  -----------
  Reapply "[mlir][py] better support for arith.constant construction" (#84142)

Arithmetic constants for vector types can be constructed from objects
implementing Python buffer protocol such as `array.array`. Note that
until Python 3.12, there is no typing support for buffer protocol
implementers, so the annotations use array explicitly.

Reverts llvm/llvm-project#84103


  Commit: c03fd37d9b61bc6063e4d6e983846f877e83ac67
      https://github.com/llvm/llvm-project/commit/c03fd37d9b61bc6063e4d6e983846f877e83ac67
  Author: Anchu Rajendran S <asudhaku at amd.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    A flang/test/Lower/OpenMP/declare-target-link-tarop-cap.f90
    R openmp/libomptarget/test/offloading/fortran/declare-target-array-in-target-region.f90
    A openmp/libomptarget/test/offloading/fortran/declare-target-vars-in-target-region.f90

  Log Message:
  -----------
  [flang] Changes to  map variables in link clause of declare target (#83643)

As per the OpenMP standard, "If a variable appears in a link clause on a
declare target directive that does not have a device_type clause with
the nohost device-type-description then it is treated as if it had
appeared in a map clause with a map-type of tofrom" is an implicit
mapping rule. Before this change, such variables were mapped as to by
default.


  Commit: 904a6aedca422d43f4f893bb97b2990e86b909e4
      https://github.com/llvm/llvm-project/commit/904a6aedca422d43f4f893bb97b2990e86b909e4
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/X86/reorder-possible-strided-node.ll

  Log Message:
  -----------
  [SLP][NFC]Add lshr version of the test with casting, NFC.


  Commit: 101a13df71734b06116846a3a39c0880eb33456d
      https://github.com/llvm/llvm-project/commit/101a13df71734b06116846a3a39c0880eb33456d
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/stdbit.rst
    M libc/include/llvm-libc-macros/stdbit-macros.h
    M libc/spec/stdc.td
    M libc/src/__support/CPP/bit.h
    M libc/src/stdbit/CMakeLists.txt
    A libc/src/stdbit/stdc_bit_floor_uc.cpp
    A libc/src/stdbit/stdc_bit_floor_uc.h
    A libc/src/stdbit/stdc_bit_floor_ui.cpp
    A libc/src/stdbit/stdc_bit_floor_ui.h
    A libc/src/stdbit/stdc_bit_floor_ul.cpp
    A libc/src/stdbit/stdc_bit_floor_ul.h
    A libc/src/stdbit/stdc_bit_floor_ull.cpp
    A libc/src/stdbit/stdc_bit_floor_ull.h
    A libc/src/stdbit/stdc_bit_floor_us.cpp
    A libc/src/stdbit/stdc_bit_floor_us.h
    M libc/test/include/stdbit_test.cpp
    M libc/test/src/stdbit/CMakeLists.txt
    A libc/test/src/stdbit/stdc_bit_floor_uc_test.cpp
    A libc/test/src/stdbit/stdc_bit_floor_ui_test.cpp
    A libc/test/src/stdbit/stdc_bit_floor_ul_test.cpp
    A libc/test/src/stdbit/stdc_bit_floor_ull_test.cpp
    A libc/test/src/stdbit/stdc_bit_floor_us_test.cpp

  Log Message:
  -----------
  [libc][stdbit] implement stdc_bit_floor (C23) (#84233)


  Commit: b1f2e19dc27d339cbeb3373066e73a4c91d133dd
      https://github.com/llvm/llvm-project/commit/b1f2e19dc27d339cbeb3373066e73a4c91d133dd
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/lib/AST/Interp/Interp.h
    M clang/lib/AST/Interp/Opcodes.td

  Log Message:
  -----------
  [clang][Interp][NFC] Use ArrayElem{,Pop} ops more often

Instead of the longer ArrayElemPtr + Load.


  Commit: 5c752df1e10b7af0684e549601f0a8dccffcfcf0
      https://github.com/llvm/llvm-project/commit/5c752df1e10b7af0684e549601f0a8dccffcfcf0
  Author: Gheorghe-Teodor Bercea <doru.bercea at amd.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M openmp/libomptarget/plugins-nextgen/amdgpu/src/rtl.cpp

  Log Message:
  -----------
  [libomptarget][nextgen-plugin][NFC] Clean-up InputSignal checks (#83458)

Clean-up InputSignal checks.


  Commit: d1fc59c3b5c5ce292a6060d7a5545094cdf1b5fc
      https://github.com/llvm/llvm-project/commit/d1fc59c3b5c5ce292a6060d7a5545094cdf1b5fc
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M mlir/lib/Dialect/ArmSME/Transforms/VectorLegalization.cpp
    M mlir/test/Dialect/ArmSME/vector-legalization.mlir

  Log Message:
  -----------
  [mlir][ArmSME] Rewrite illegal `shape_casts` to `vector.transpose` ops (#82985)

This adds a rewrite that converts illegal 2D unit-dim `shape_casts` into
`vector.transpose` ops.

E.g.

```mlir
// Case 1:
%a = vector.shape_cast %0 : vector<[4]x1xf32> to vector<1x[4]xf32>
// Case 2:
%b = vector.shape_cast %1 : vector<[4]x1xf32> to vector<[4]xf32>
```

Becomes:

```mlir
// Case 1:
%a = vector.transpose %0 : [1, 0] vector<[4]x1xf32> to vector<1x[4]xf32>
// Case 2:
%t = vector.transpose %1 : [1, 0] vector<[4]x1xf32> to vector<1x[4]xf32>
%b = vector.shape_cast %t : vector<1x[4]xf32> to vector<[4]xf32>
```

Various lowerings and drop unit-dims patterns add such shape_casts,
however, if they do not cancel out (which they likely won't if we've
reached the vector-legalization pass) they will prevent lowering the IR.

Rewriting them as a transpose gives `LiftIllegalVectorTransposeToMemory`
a chance to eliminate the illegal types.


  Commit: 630289f77d67703673928ae38d3e5ba900e9ff62
      https://github.com/llvm/llvm-project/commit/630289f77d67703673928ae38d3e5ba900e9ff62
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

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

  Log Message:
  -----------
  [HIP] Do not include the CUID module hash with the new driver (#84332)

Summary:
The new driver does not need this hash and it can lead to redefined
symbol errors when the CUID hash isn't set.


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

  Changed paths:
    M llvm/test/CodeGen/AArch64/stack-probing-no-scratch-reg.mir

  Log Message:
  -----------
  [AArch64] Add -verify-machineinstrs to a test

This would have helped identify problems with #83905 which only showed
up in an LLVM_ENABLE_EXPENSIVE_CHECKS build.


  Commit: 96049fcf4e5f2eb0271bdfa89e113eef9c5fa9f6
      https://github.com/llvm/llvm-project/commit/96049fcf4e5f2eb0271bdfa89e113eef9c5fa9f6
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/docs/GlobalISel/GenericOpcode.rst
    M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
    M llvm/include/llvm/Support/TargetOpcodes.def
    M llvm/include/llvm/Target/GenericOpcodes.td
    M llvm/lib/CodeGen/GlobalISel/CSEMIRBuilder.cpp
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
    M llvm/lib/CodeGen/MachineVerifier.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/irtranslator/shufflevector.ll
    A llvm/test/MachineVerifier/test_g_splat_vector.mir
    M llvm/unittests/CodeGen/GlobalISel/LegalizerHelperTest.cpp
    M llvm/unittests/CodeGen/GlobalISel/PatternMatchTest.cpp

  Log Message:
  -----------
  [GISEL] Add IRTranslation for shufflevector on scalable vector types (#80378)

Recommits llvm/llvm-project#80378 which was reverted in
llvm/llvm-project#84330. The problem was that the change in
llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir used
217 as an opcode instead of a regex.


  Commit: 3714f937b835c06c8c32ca4f3f61ba2317db2296
      https://github.com/llvm/llvm-project/commit/3714f937b835c06c8c32ca4f3f61ba2317db2296
  Author: Edgar <git at edgarluque.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M mlir/include/mlir-c/BuiltinAttributes.h
    M mlir/include/mlir-c/Dialect/LLVM.h
    M mlir/lib/CAPI/Dialect/LLVM.cpp
    M mlir/lib/CAPI/IR/BuiltinAttributes.cpp
    M mlir/test/CAPI/ir.c
    M mlir/test/CAPI/llvm.c

  Log Message:
  -----------
  [MLIR] Add llvm (debug) attributes to CAPI (#83992)

This PR adds the following to the mlir c api:

- The disctinct mlir builtin attribute.
- LLVM attributes (mostly debug related ones)


  Commit: 6157538d9e4eea135fb863b972c577f648c21641
      https://github.com/llvm/llvm-project/commit/6157538d9e4eea135fb863b972c577f648c21641
  Author: Jon Chesterfield <jonathanchesterfield at gmail.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/ptrmask.ll

  Log Message:
  -----------
  [InstCombine] ptrmask of gep for dynamic pointer aligment (#80002)

Targets the dynamic realignment pattern of `(Ptr + Align - 1) & -Align;`
as implemented by gep then ptrmask.

Specifically, when the pointer already has alignment information,
dynamically realigning it to less than is already known should be a
no-op. Discovered while writing test cases for another patch.

For the zero low bits of a known aligned pointer, adding the gep index
then removing it with a mask is a no-op. Folding the ptrmask effect
entirely into the gep is the ideal result as that unblocks other
optimisations that are not aware of ptrmask.

In some other cases the gep is known to be dead and is removed without
changing the ptrmask.

In the least effective case, this transform creates a new gep with a
rounded-down index and still leaves the ptrmask unchanged. That
simplified gep is still a minor improvement, geps are cheap and ptrmask
occurs in address calculation contexts so I don't think it's worth
special casing to avoid the extra instruction.


  Commit: 36f866c6ec3f6671fd4178ed4e49fd632a335cc2
      https://github.com/llvm/llvm-project/commit/36f866c6ec3f6671fd4178ed4e49fd632a335cc2
  Author: jeffreytan81 <jeffreytan at meta.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M lldb/test/API/functionalities/fork/concurrent_vfork/main.cpp

  Log Message:
  -----------
  Fix vfork test strcmp buildbot failure (#84224)

The buildbot seems to complain about `strcmp` function not available in
the vfork patch (https://github.com/llvm/llvm-project/pull/81564):

https://lab.llvm.org/buildbot/#/builders/68/builds/70093/steps/6/logs/stdio

Unfortunately, I can't reproduce the failure on my linux machine so this
is a guessing fix. If anyone has a way to reproduce and very this fix,
please feel free to merge this change.

Co-authored-by: jeffreytan81 <jeffreytan at fb.com>


  Commit: ee24409c40ff35c3221892d9723331c233ca9f0e
      https://github.com/llvm/llvm-project/commit/ee24409c40ff35c3221892d9723331c233ca9f0e
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/select-atomic-load-store.mir

  Log Message:
  -----------
  Revert "[AArch64][GlobalISel] Fix incorrect selection of monotonic s32->s64 anyext load."

This reverts commit 7524ad9aa7b1b5003fe554a6ac8e434d50027dfb.

Broke sanitizer build bots, e.g. https://lab.llvm.org/buildbot/#/builders/5/builds/41588/steps/9/logs/stdio


  Commit: e9901d8c94fdcd0d299d1abfdc8f0a5936aa7a50
      https://github.com/llvm/llvm-project/commit/e9901d8c94fdcd0d299d1abfdc8f0a5936aa7a50
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/linker-wrapper.c
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M clang/tools/clang-linker-wrapper/LinkerWrapperOpts.td

  Log Message:
  -----------
  [LinkerWrapper] Accept compression arguments for HIP fatbins (#84337)

Summary:
The HIP toolchain has support for compressing the final output. We
should respect that when we create the executable.


  Commit: ea49e04b35bc8e4bed7ee4db4074d201f780a15c
      https://github.com/llvm/llvm-project/commit/ea49e04b35bc8e4bed7ee4db4074d201f780a15c
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M lldb/include/lldb/Core/Progress.h
    M lldb/source/Core/Progress.cpp
    M lldb/unittests/Core/ProgressReportTest.cpp

  Log Message:
  -----------
  [lldb] Don't report all progress event as completed. (#84281)

Currently, progress events reported by the ProgressManager and broadcast
to eBroadcastBitProgressCategory always specify they're complete. The
problem is that the ProgressManager reports kNonDeterministicTotal for
both the total and the completed number of (sub)events. Because the
values are the same, the event reports itself as complete.

This patch fixes the issue by reporting 0 as the completed value for the
start event and kNonDeterministicTotal for the end event.


  Commit: cfdfeb440cb2e25d1537616118a6c5509d96f2ba
      https://github.com/llvm/llvm-project/commit/cfdfeb440cb2e25d1537616118a6c5509d96f2ba
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M clang/lib/AST/Interp/Program.h

  Log Message:
  -----------
  [clang][Interp][NFC] Remove unneeded forward declaration

We already import Record.h.


  Commit: a435e1f63bbd8c6d0ff140ccc890c25787091490
      https://github.com/llvm/llvm-project/commit/a435e1f63bbd8c6d0ff140ccc890c25787091490
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2024-03-07 (Thu, 07 Mar 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/invalid.mlir
    M mlir/test/Dialect/OpenACC/ops.mlir

  Log Message:
  -----------
  [acc] Add attribute for combined constructs (#80319)

Combined constructs are decomposed into separate operations. However,
this does not adhere to `acc` dialect's goal to be able to regenerate
semantically equivalent clauses as user's intent. Thus, add an attribute
to keep track of the combined constructs.


  Commit: 6515930b0cc4aa2e11e75728ef6cbeecbe5caec2
      https://github.com/llvm/llvm-project/commit/6515930b0cc4aa2e11e75728ef6cbeecbe5caec2
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp

  Log Message:
  -----------
  [lldb] Minor cleanup in StoringDiagnosticConsumer (#84263)

Removes an unused field. Retypes unshared smart pointers to `unique_ptr`.


  Commit: 9e4f289bd6c905a2a436b3311ca49ad2d6328060
      https://github.com/llvm/llvm-project/commit/9e4f289bd6c905a2a436b3311ca49ad2d6328060
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/utils/TableGen/ClangOpcodesEmitter.cpp

  Log Message:
  -----------
  [clang][Interp][NFC] Add [[nodiscard]] attribute to emit functions


  Commit: 41572177d129bf19f13f077a30b582fd3b8f790c
      https://github.com/llvm/llvm-project/commit/41572177d129bf19f13f077a30b582fd3b8f790c
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    A clang/test/CXX/drs/dr519.cpp
    A clang/test/CXX/drs/dr571.cpp
    M clang/test/CXX/drs/dr5xx.cpp
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  [clang] Add CodeGen tests for CWG 5xx issues (#84303)

This patch covers
[CWG519](https://cplusplus.github.io/CWG/issues/519.html) "Null pointer
preservation in `void*` conversions",
[CWG571](https://cplusplus.github.io/CWG/issues/571.html) "References
declared const".


  Commit: a6a6fca7911feab8325129ea57247303b3c8d558
      https://github.com/llvm/llvm-project/commit/a6a6fca7911feab8325129ea57247303b3c8d558
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    A llvm/include/llvm/Transforms/Instrumentation/RemoveTrapsPass.h
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/Transforms/Instrumentation/CMakeLists.txt
    A llvm/lib/Transforms/Instrumentation/RemoveTrapsPass.cpp
    A llvm/test/Transforms/RemoveTraps/remove-traps.ll

  Log Message:
  -----------
  [ubsan][pgo] Pass to remove ubsan checks based on profile data (#83471)

UBSAN checks can be too expensive to be used
in release binaries. However not all code affect
performace in the same way. Removing small
number of checks in hot code we can performance
loss, preserving most of the checks.


  Commit: 54c955b828bbdcf46586556339cbd3cf8f205b4f
      https://github.com/llvm/llvm-project/commit/54c955b828bbdcf46586556339cbd3cf8f205b4f
  Author: Adrian Prantl <aprantl at apple.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M lldb/include/lldb/Core/ValueObject.h
    M lldb/include/lldb/Core/ValueObjectCast.h
    M lldb/include/lldb/Core/ValueObjectChild.h
    M lldb/include/lldb/Core/ValueObjectConstResult.h
    M lldb/include/lldb/Core/ValueObjectDynamicValue.h
    M lldb/include/lldb/Core/ValueObjectMemory.h
    M lldb/include/lldb/Core/ValueObjectRegister.h
    M lldb/include/lldb/Core/ValueObjectSyntheticFilter.h
    M lldb/include/lldb/Core/ValueObjectVTable.h
    M lldb/include/lldb/Core/ValueObjectVariable.h
    M lldb/include/lldb/Target/StackFrameRecognizer.h
    M lldb/source/Core/ValueObjectCast.cpp
    M lldb/source/Core/ValueObjectChild.cpp
    M lldb/source/Core/ValueObjectConstResult.cpp
    M lldb/source/Core/ValueObjectDynamicValue.cpp
    M lldb/source/Core/ValueObjectMemory.cpp
    M lldb/source/Core/ValueObjectRegister.cpp
    M lldb/source/Core/ValueObjectSyntheticFilter.cpp
    M lldb/source/Core/ValueObjectVTable.cpp
    M lldb/source/Core/ValueObjectVariable.cpp

  Log Message:
  -----------
  Change the return type of ValueObject::CalculateNumChildren to uint32_t.

In the end this value comes from TypeSystem::GetNumChildren which
returns a uint32_t, so ValueObject should be consistent with that.


  Commit: 3d7c5b80e38b01223811eb557a5e9953cfa2154d
      https://github.com/llvm/llvm-project/commit/3d7c5b80e38b01223811eb557a5e9953cfa2154d
  Author: Adrian Prantl <aprantl at apple.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M lldb/include/lldb/DataFormatters/TypeSynthetic.h
    M lldb/include/lldb/DataFormatters/VectorIterator.h
    M lldb/source/Core/ValueObjectSyntheticFilter.cpp
    M lldb/source/DataFormatters/TypeSynthetic.cpp
    M lldb/source/DataFormatters/VectorType.cpp
    M lldb/source/Plugins/Language/CPlusPlus/BlockPointer.cpp
    M lldb/source/Plugins/Language/CPlusPlus/Coroutines.cpp
    M lldb/source/Plugins/Language/CPlusPlus/Coroutines.h
    M lldb/source/Plugins/Language/CPlusPlus/GenericBitset.cpp
    M lldb/source/Plugins/Language/CPlusPlus/GenericOptional.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.h
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxAtomic.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxInitializerList.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxList.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxQueue.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxRangesRefView.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxSpan.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxTuple.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxUnorderedMap.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxValarray.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxVariant.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxVector.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcppTuple.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcppUniquePointer.cpp
    M lldb/source/Plugins/Language/ObjC/Cocoa.cpp
    M lldb/source/Plugins/Language/ObjC/NSArray.cpp
    M lldb/source/Plugins/Language/ObjC/NSDictionary.cpp
    M lldb/source/Plugins/Language/ObjC/NSError.cpp
    M lldb/source/Plugins/Language/ObjC/NSException.cpp
    M lldb/source/Plugins/Language/ObjC/NSIndexPath.cpp
    M lldb/source/Plugins/Language/ObjC/NSSet.cpp

  Log Message:
  -----------
  Change the return type of SyntheticFrontend::CalculateNumChildren to int32_t

This way it is consistent with ValueObject and TypeSystem.


  Commit: e710523e408ce64c15fddf9f7dbe1248795c20d7
      https://github.com/llvm/llvm-project/commit/e710523e408ce64c15fddf9f7dbe1248795c20d7
  Author: Adrian Prantl <aprantl at apple.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M lldb/include/lldb/Core/ValueObject.h
    M lldb/include/lldb/Core/ValueObjectSyntheticFilter.h
    M lldb/include/lldb/DataFormatters/TypeSynthetic.h
    M lldb/include/lldb/DataFormatters/VectorIterator.h
    M lldb/source/Core/ValueObject.cpp
    M lldb/source/Core/ValueObjectSyntheticFilter.cpp
    M lldb/source/DataFormatters/TypeSynthetic.cpp
    M lldb/source/DataFormatters/VectorType.cpp
    M lldb/source/Plugins/Language/CPlusPlus/BlockPointer.cpp
    M lldb/source/Plugins/Language/CPlusPlus/Coroutines.cpp
    M lldb/source/Plugins/Language/CPlusPlus/Coroutines.h
    M lldb/source/Plugins/Language/CPlusPlus/GenericBitset.cpp
    M lldb/source/Plugins/Language/CPlusPlus/GenericOptional.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.h
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxAtomic.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxInitializerList.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxList.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxQueue.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxRangesRefView.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxSpan.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxTuple.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxUnorderedMap.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxValarray.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxVariant.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxVector.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcppTuple.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcppUniquePointer.cpp
    M lldb/source/Plugins/Language/ObjC/Cocoa.cpp
    M lldb/source/Plugins/Language/ObjC/NSArray.cpp
    M lldb/source/Plugins/Language/ObjC/NSDictionary.cpp
    M lldb/source/Plugins/Language/ObjC/NSError.cpp
    M lldb/source/Plugins/Language/ObjC/NSException.cpp
    M lldb/source/Plugins/Language/ObjC/NSIndexPath.cpp
    M lldb/source/Plugins/Language/ObjC/NSSet.cpp

  Log Message:
  -----------
  Change GetChildAtIndex to take a uint32_t


  Commit: 6f299417769ade1635c91f974a8745e237cc9adf
      https://github.com/llvm/llvm-project/commit/6f299417769ade1635c91f974a8745e237cc9adf
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M clang/test/CodeGen/tbaa-struct.cpp

  Log Message:
  -----------
  [TBAA] Add extra tests to copy structs with union members.

Adds extra test coverage for TBAA generation for copies of structs with
union members.


  Commit: 7fc583c9a5ddf447b2b53007778cb034a186d4b5
      https://github.com/llvm/llvm-project/commit/7fc583c9a5ddf447b2b53007778cb034a186d4b5
  Author: Adrian Prantl <aprantl at apple.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M lldb/include/lldb/Core/ValueObject.h
    M lldb/source/Core/ValueObject.cpp

  Log Message:
  -----------
  Change Get|SetNumChildren to use unint32_t


  Commit: c103d573e7fc236c0c9e2fde41a843ea62d960f4
      https://github.com/llvm/llvm-project/commit/c103d573e7fc236c0c9e2fde41a843ea62d960f4
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M libc/src/__support/UInt.h
    M libc/src/__support/math_extras.h
    M libc/src/stdio/printf_core/float_dec_converter.h
    M libc/test/UnitTest/CMakeLists.txt
    M libc/test/UnitTest/StringUtils.h
    M libc/test/src/__support/CMakeLists.txt
    M libc/test/src/__support/math_extras_test.cpp
    M utils/bazel/llvm-project-overlay/libc/test/src/__support/BUILD.bazel

  Log Message:
  -----------
  [libc] Fix forward missing `BigInt` specialization of `mask_leading_ones` / `mask_trailing_ones` (#84325)

#84299 broke the arm32 build, this patch fixes it forward.


  Commit: 6e692e726a5bc4385ab64635e9c06b7574332e4d
      https://github.com/llvm/llvm-project/commit/6e692e726a5bc4385ab64635e9c06b7574332e4d
  Author: Yinying Li <yinyingli at google.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_matvec.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_mttkrp.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_out_mult_elt.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_out_reduction.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_out_simple.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_pack.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_pack_d.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_pooling_nhwc.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_quantized_matmul.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_reduce_custom.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_reduce_custom_prod.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_reduce_custom_sum.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_reductions.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_reductions_min.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_reductions_prod.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_reshape.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_rewrite_push_back.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_rewrite_sort_coo.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sampled_matmul.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sampled_mm_fusion.mlir

  Log Message:
  -----------
  [mlir][sparse] Migrate to sparse_tensor.print (#83946)

Continuous efforts following #83506.


  Commit: 4cb5a96af646e18f9fc8c1b337299d5465f0a4d6
      https://github.com/llvm/llvm-project/commit/4cb5a96af646e18f9fc8c1b337299d5465f0a4d6
  Author: Yinying Li <yinyingli at google.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_scale.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_scf_nested.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_select.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_semiring_select.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sign.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sorted_coo.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_spmm.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_storage.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_strided_conv_2d_nhwc_hwcf.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sum.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sum_bf16.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sum_c32.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_sum_f16.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_tanh.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_tensor_mul.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_tensor_ops.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_transpose.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_transpose_coo.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_unary.mlir
    M mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_vector_ops.mlir

  Log Message:
  -----------
  [mlir][sparse] Migrate more tests to sparse_tensor.print (#84249)

Continuous efforts following #83946.


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

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

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


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

  Changed paths:
    A llvm/test/CodeGen/X86/eq-or-eq-range-of-2.ll

  Log Message:
  -----------
  [X86] Add tests for folding `(icmp ult (add x,-C),2)` -> `(or (icmp eq X,C), (icmp eq X,C+1))`; NFC


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

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/eq-or-eq-range-of-2.ll

  Log Message:
  -----------
  [X86] Fold `(icmp ult (add x,-C),2)` -> `(or (icmp eq X,C), (icmp eq X,C+1))` for Vectors

This is undoing a middle-end transform which does the opposite. Since
X86 doesn't have unsigned vector comparison instructions pre-AVX512,
the simplified form gets worse codegen.

Fixes #66479

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

Closes #84104
Closes #66479


  Commit: 00f412168cf6aee234615a11d1424fc58221eb78
      https://github.com/llvm/llvm-project/commit/00f412168cf6aee234615a11d1424fc58221eb78
  Author: Hongyu Chen <hongyuchen.dev at gmail.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    A llvm/include/llvm/ExecutionEngine/Orc/Debugging/VTuneSupportPlugin.h
    A llvm/include/llvm/ExecutionEngine/Orc/Shared/VTuneSharedStructs.h
    A llvm/include/llvm/ExecutionEngine/Orc/TargetProcess/JITLoaderVTune.h
    M llvm/lib/ExecutionEngine/Orc/Debugging/CMakeLists.txt
    A llvm/lib/ExecutionEngine/Orc/Debugging/VTuneSupportPlugin.cpp
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/CMakeLists.txt
    A llvm/lib/ExecutionEngine/Orc/TargetProcess/JITLoaderVTune.cpp
    A llvm/test/ExecutionEngine/JITLink/x86-64/ELF_vtune.s
    M llvm/test/ExecutionEngine/JITLink/x86-64/lit.local.cfg
    M llvm/tools/llvm-jitlink/llvm-jitlink.cpp

  Log Message:
  -----------
  [ORC][JITLink] Add Intel VTune support to JITLink (#83957)

[ORC] Re-land https://github.com/llvm/llvm-project/pull/81826

This patch adds two plugins: VTuneSupportPlugin.cpp and
JITLoaderVTune.cpp. The testing is done in a manner similar to
llvm-jitlistener. Currently, we only support the old version of Intel
VTune API.


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

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

  Log Message:
  -----------
  [gn build] Port 00f412168cf6


  Commit: 4d31fbbb5af6528387fd5efd90363a408713108b
      https://github.com/llvm/llvm-project/commit/4d31fbbb5af6528387fd5efd90363a408713108b
  Author: Lang Hames <lhames at gmail.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/ExecutionEngine/Orc/ObjectLinkingLayer.cpp

  Log Message:
  -----------
  [ORC] Propagate defineMaterializing failure when resource tracker is defunct.

Remove an overly aggressive cantFail: This call to defineMaterializing should
never fail with a duplicate symbols error (since all new symbols shoul be
weak), but may fail if the tracker has become defunct in the mean time. In that
case we need to propagate the error.


  Commit: 9286665f7667a00062ef7bb8d1eec0fa02d2602c
      https://github.com/llvm/llvm-project/commit/9286665f7667a00062ef7bb8d1eec0fa02d2602c
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/VOP3Instructions.td

  Log Message:
  -----------
  AMDGPU: Use OtherPredicates for v_dot2_bf16_bf16(f16_f16) pseudo (#84354)

This is because SubtargetPredicate is not copied from pseudo to dpp16
and dpp8 real. Actually this is the common issue for insts with
_Realtriple_ --- We should avoid using SubtargetPredicate to define
pseudo: the predicate will be lost in real.


  Commit: b8b434b3e150f1c79b114893e36f8e447e560b80
      https://github.com/llvm/llvm-project/commit/b8b434b3e150f1c79b114893e36f8e447e560b80
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp

  Log Message:
  -----------
  [GISEL] Silence unused variable warning. NFC


  Commit: 4f85f620b6a92e657dc9f719158dbdcae561ead7
      https://github.com/llvm/llvm-project/commit/4f85f620b6a92e657dc9f719158dbdcae561ead7
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

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

  Log Message:
  -----------
  [bazel] Port 3714f937b835c06c8c32ca4f3f61ba2317db2296


  Commit: 57a337378f37fa3813992842714c9b06fae20af2
      https://github.com/llvm/llvm-project/commit/57a337378f37fa3813992842714c9b06fae20af2
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/spec/stdc.td
    M libc/src/string/CMakeLists.txt
    A libc/src/string/memset_explicit.cpp
    A libc/src/string/memset_explicit.h
    M libc/test/src/string/CMakeLists.txt
    A libc/test/src/string/memset_explicit_test.cpp

  Log Message:
  -----------
  [libc][c23] add memset_explicit (#83577)


  Commit: 308a2360725948fd6c77d005110c169ab1a8322c
      https://github.com/llvm/llvm-project/commit/308a2360725948fd6c77d005110c169ab1a8322c
  Author: Clement Courbet <courbet at google.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/utils/DeclRefExprUtils.cpp
    M clang-tools-extra/unittests/clang-tidy/DeclRefExprUtilsTest.cpp

  Log Message:
  -----------
  [clang-tidy] `isOnlyUsedAsConst`: Handle static method calls. (#84005)

... using method syntax:

```
struct S {
  static void f()
};

void DoIt(S& s) {
  s.f();  // Does not mutate `s` through the `this` parameter.
}
```


  Commit: a10fd16270b6fecf99b793318872e208c8b1abab
      https://github.com/llvm/llvm-project/commit/a10fd16270b6fecf99b793318872e208c8b1abab
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/test/Transforms/CorrelatedValuePropagation/udiv-expansion.ll
    M llvm/test/Transforms/CorrelatedValuePropagation/urem-expansion.ll

  Log Message:
  -----------
  [CVP] Add test coverage for an upcoming generalization of expandUDivOrURem


  Commit: 292a28df6c55679fad0589dea35278a8c66b2ae1
      https://github.com/llvm/llvm-project/commit/292a28df6c55679fad0589dea35278a8c66b2ae1
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M libcxx/include/__availability
    A libcxx/test/libcxx/vendor/apple/availability-with-pedantic-errors.compile.pass.cpp

  Log Message:
  -----------
  [libc++] Enable availability based on the compiler instead of __has_extension (#84065)

__has_extension(...) doesn't work as intended when -pedantic-errors is
used with Clang. With that flag, __has_extension(...) is equivalent to
__has_feature(...), which means that checks like

    __has_extension(pragma_clang_attribute_external_declaration)

will return 0. In turn, this has the effect of disabling availability
markup in libc++, which is undesirable.

rdar://124078119


  Commit: d0b702279819fe2fd3b3d2bfa274c895ac49f23b
      https://github.com/llvm/llvm-project/commit/d0b702279819fe2fd3b3d2bfa274c895ac49f23b
  Author: lntue <35648136+lntue at users.noreply.github.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M libc/config/baremetal/api.td
    M libc/config/linux/api.td
    M libc/spec/llvm_libc_ext.td
    A libc/spec/llvm_libc_stdfix_ext.td

  Log Message:
  -----------
  [libc] Refactor stdfix extension from llvm_libc_ext.td to llvm_libc_stdfix_ext.td. (#84365)

This fixes runtime build for armv6 baremetal targets:
https://github.com/llvm/llvm-project/pull/83959#issuecomment-1984221249


  Commit: a41226b05510a6f40d99fc622d78853460dc5599
      https://github.com/llvm/llvm-project/commit/a41226b05510a6f40d99fc622d78853460dc5599
  Author: Björn Pettersson <bjorn.a.pettersson at ericsson.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/unittests/Analysis/ValueTrackingTest.cpp

  Log Message:
  -----------
  [ValueTracking] Fix KnownBits conflict for calls (range vs returned) (#84353)

If a function only exits for certain input values we can still derive
that an argument is "returned". We can also derive range metadata that
describe the possible value range returned by the function. However, it
turns out that those two analyses can result in conflicting information.

Example:
  declare i16 @foo(i16 returned)
  ...
  %A = call i16 @foo(i16 4095), !range !{i16 32, i16 33}

To avoid "Bits known to be one AND zero?" assertion failures we know
make sure to discard the known bits for this kind of scenario.


  Commit: 458636690afdd223ffa72f49164f30449b588892
      https://github.com/llvm/llvm-project/commit/458636690afdd223ffa72f49164f30449b588892
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M lldb/unittests/Core/ProgressReportTest.cpp

  Log Message:
  -----------
  [lldb] Do some gardening in ProgressReportTest (NFC) (#84278)

- Factor our common setup code.
- Split the ProgressManager test into separate tests as they test
separate things.
- Fix usage of EXPECT (which continues on failure) and ASSERT (which
halts on failure). We must use the latter when calling GetEvent as
otherwise we'll try to dereference a null EventSP.


  Commit: 11185715a28c6592ca6fe247fe693b305c85627a
      https://github.com/llvm/llvm-project/commit/11185715a28c6592ca6fe247fe693b305c85627a
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/AArch64/ext-trunc.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/getelementptr2.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/reduce-add-i64.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/reductions.ll
    M llvm/test/Transforms/SLPVectorizer/X86/PR35777.ll
    M llvm/test/Transforms/SLPVectorizer/X86/int-bitcast-minbitwidth.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-multiuse-with-insertelement.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-transformed-operand.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minimum-sizes.ll
    M llvm/test/Transforms/SLPVectorizer/X86/phi-undef-input.ll
    M llvm/test/Transforms/SLPVectorizer/X86/resched.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reused-reductions-with-minbitwidth.ll
    M llvm/test/Transforms/SLPVectorizer/X86/store-insertelement-minbitwidth.ll
    M llvm/test/Transforms/SLPVectorizer/alt-cmp-vectorize.ll

  Log Message:
  -----------
  Revert "[SLP]Improve minbitwidth analysis."

This reverts commit 4ce52e2d576937fe930294cae883a0daa17eeced to fix
issues detected by https://lab.llvm.org/buildbot/#/builders/74/builds/26470/steps/12/logs/stdio.


  Commit: ecf7db8b52d7061ef8f14c1f7b6fcc370072d087
      https://github.com/llvm/llvm-project/commit/ecf7db8b52d7061ef8f14c1f7b6fcc370072d087
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M lldb/test/Shell/Unwind/eh-frame-dwarf-unwind.test
    M lldb/test/Shell/Unwind/thread-step-out-ret-addr-check.test
    M lldb/test/Shell/lit.cfg.py

  Log Message:
  -----------
  [lldb] Disable shell tests affected by ld_new bug (#84246)

Equivalent to the changes made in https://github.com/llvm/llvm-project/pull/83941, 
except to support shell tests.


  Commit: 641b98a0d1e20da9500aa012ced41e53967a423f
      https://github.com/llvm/llvm-project/commit/641b98a0d1e20da9500aa012ced41e53967a423f
  Author: Amara Emerson <amara at apple.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-logic-of-compare.mir

  Log Message:
  -----------
  [GlobalISel] Fix crash in tryFoldAndOrOrICmpsUsingRanges() with pointer types.


  Commit: 143afb405a7e12e3fe1622b92f046ab2380c8981
      https://github.com/llvm/llvm-project/commit/143afb405a7e12e3fe1622b92f046ab2380c8981
  Author: Maksim Panchenko <maks at fb.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M bolt/lib/Rewrite/LinuxKernelRewriter.cpp
    A bolt/test/X86/linux-alt-instruction.s

  Log Message:
  -----------
  [BOLT] Add reading support for Linux kernel .altinstructions section (#84283)

Read .altinstructions and annotate instructions that have alternative
sequences with "AltInst" annotation. Note that some instructions may
have more than one alternatives, in which case they will have multiple
annotations in the form "AltInst", "AltInst2", "AltInst3", etc.


  Commit: 9cf9cb271bf86bda4996be9a31fa413381f2f5e3
      https://github.com/llvm/llvm-project/commit/9cf9cb271bf86bda4996be9a31fa413381f2f5e3
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/DarwinSDKInfo.h
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Parse/ParseExpr.cpp
    A clang/test/CodeGen/attr-availability-visionos.c
    A clang/test/Sema/attr-availability-visionos.c
    M clang/unittests/Basic/DarwinSDKInfoTest.cpp

  Log Message:
  -----------
  [clang] Upstream visionOS Availability & DarwinSDKInfo APIs (#84279)

Admittedly a bit awkward, `visionos` is the correct and accepted
spelling for annotating availability for xrOS target triples. This patch
detects errors and handles cases when `xros` is mistakenly passed.
In addition, add APIs for introduced/deprecated/obsoleted versioning in
DarwinSDKInfo mappings.


  Commit: ced1fac8a32e35b63733bda27c7f5b9a2b635403
      https://github.com/llvm/llvm-project/commit/ced1fac8a32e35b63733bda27c7f5b9a2b635403
  Author: Yinying Li <yinyingli at google.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/SparseTensor/IR/Enums.h
    M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp

  Log Message:
  -----------
  [mlir][sparse] Move n:m printing into toMLIRString (#84264)


  Commit: 167b90d0401d0fe488195c7e3d6fc1edc8fc5d94
      https://github.com/llvm/llvm-project/commit/167b90d0401d0fe488195c7e3d6fc1edc8fc5d94
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    A clang/test/CodeGen/tbaa-struct-relaxed-aliasing-with-tsan.cpp

  Log Message:
  -----------
  [TBAA] Add test showing tbaa.struct being generated with relaxed-alias.

Add test showing that tbaa.struct is generated when using TSan with
relaxed-aliasing.


  Commit: a0c7714525b696d90d2021249f9105c24ca7adcc
      https://github.com/llvm/llvm-project/commit/a0c7714525b696d90d2021249f9105c24ca7adcc
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoM.td
    M llvm/lib/Target/RISCV/RISCVSchedRocket.td
    M llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
    M llvm/lib/Target/RISCV/RISCVSchedSiFiveP400.td
    M llvm/lib/Target/RISCV/RISCVSchedSyntacoreSCR1.td
    M llvm/lib/Target/RISCV/RISCVSchedXiangShanNanHu.td
    M llvm/lib/Target/RISCV/RISCVSchedule.td

  Log Message:
  -----------
  [RISCV] Split div vs rem scheduling information [nfc] (#84385)

Allows a processor to define different latencies for the two operations.


  Commit: f78129e2bbafdd04a71bc09fc44e0797dd08db05
      https://github.com/llvm/llvm-project/commit/f78129e2bbafdd04a71bc09fc44e0797dd08db05
  Author: Stefan Gränitz <stefan.graenitz at gmail.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/LLJIT.h

  Log Message:
  -----------
  [Orc] Add NotifyCreated callback for LLJITBuilder (#84175)

This is useful to attach generators to JITDylibs or inject initial
symbol definitions.


  Commit: 2a4a852a67eab2f8d0533c23719b1bd08d6edea9
      https://github.com/llvm/llvm-project/commit/2a4a852a67eab2f8d0533c23719b1bd08d6edea9
  Author: Stefan Gränitz <stefan.graenitz at gmail.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M clang/include/clang/Interpreter/Interpreter.h
    M clang/lib/Interpreter/Interpreter.cpp
    M clang/unittests/Interpreter/CMakeLists.txt
    A clang/unittests/Interpreter/IncrementalCompilerBuilderTest.cpp

  Log Message:
  -----------
  Reland [clang-repl] Expose setter for triple in IncrementalCompilerBuilder (#84174)

With out-of-process execution the target triple can be different from
the one on the host. We need an interface to configure it.

Relanding this with cleanup-fixes in the unittest.


  Commit: 23d2c388303982e4341f248120915328a6444b51
      https://github.com/llvm/llvm-project/commit/23d2c388303982e4341f248120915328a6444b51
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

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

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


  Commit: 49b1fc4f831a047bd6ffde9ba19612c329dc5166
      https://github.com/llvm/llvm-project/commit/49b1fc4f831a047bd6ffde9ba19612c329dc5166
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
    M llvm/test/Transforms/CorrelatedValuePropagation/urem-expansion.ll

  Log Message:
  -----------
  [CVP] Freeze Y when expanding urem x, y with X < 2Y (#84390)

We're going from a single use to two independent uses, we need these two
to see consistent values for undef. As an example, consider x = 0x2 when
y = 0b00u1. If the sub use picks 0b0001 and the cmp use picks 0b0011,
that would be incorrect.


  Commit: 48673825f47cbac9cd7c61299ca8d01579314ae0
      https://github.com/llvm/llvm-project/commit/48673825f47cbac9cd7c61299ca8d01579314ae0
  Author: Lang Hames <lhames at gmail.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/ExecutionEngine/Orc/ObjectLinkingLayer.cpp

  Log Message:
  -----------
  [ORC] Deallocate FinalizedAllocs on error paths in notifyEmitted.

If notifyEmitted encounters a failure (either because some plugin returned one,
or because the ResourceTracker was defunct) then we need to deallocate the
FinalizedAlloc manually.

No testcase yet: This requires a concurrent setup -- we'll need to build some
infrastructure to coordinate links and deliberately injected failures in order
to reliably test this.


  Commit: 69b8bc71110aca64c74a14800e800f4b151d5d6f
      https://github.com/llvm/llvm-project/commit/69b8bc71110aca64c74a14800e800f4b151d5d6f
  Author: dyung <douglas.yung at sony.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M cross-project-tests/debuginfo-tests/llgdb-tests/static-member-2.cpp
    M cross-project-tests/debuginfo-tests/llgdb-tests/static-member.cpp

  Log Message:
  -----------
  [Dexter] Extend XFAIL of Dexter tests to all MacOS architectures. (#83936)

I am trying to bring up a MacOS buildbot targeting x86 and noticed that
two Dexter tests were failing,
cross-project-tests/debuginfo-tests/llgdb-tests/static-member.cpp and
cross-project-tests/debuginfo-tests/llgdb-tests/static-member-2.cpp.
Looking in the history for these tests, they were XFAILed for Apple
Silicon in 9c46606 and are failing similar on x86 for me, so we should extend
the XFAIL to all MacOS architectures.


  Commit: 3a56b5a27d711aaa141c354706638bd94f7460a3
      https://github.com/llvm/llvm-project/commit/3a56b5a27d711aaa141c354706638bd94f7460a3
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChains/Cuda.cpp
    M clang/test/Driver/cuda-phases.cu

  Log Message:
  -----------
  [CUDA] Include PTX in non-RDC mode using the new driver (#84367)

Summary:
The old driver embed PTX in rdc-mode and so does the `nvcc` compiler.
The new drivers currently does not do this, so we should keep it
consistent in this case. This simply requires adding the assembler
output as an input to the offloading action that gets fed to fatbin.


  Commit: 14171b87a3b5a403f39d78da964595175636a0ae
      https://github.com/llvm/llvm-project/commit/14171b87a3b5a403f39d78da964595175636a0ae
  Author: lntue <35648136+lntue at users.noreply.github.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M libc/config/baremetal/arm/entrypoints.txt
    M libc/config/baremetal/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/math/stdfix.rst
    M libc/spec/llvm_libc_stdfix_ext.td
    M libc/src/__support/fixed_point/fx_rep.h
    M libc/src/stdfix/CMakeLists.txt
    A libc/src/stdfix/exphk.cpp
    A libc/src/stdfix/exphk.h
    A libc/src/stdfix/expk.cpp
    A libc/src/stdfix/expk.h
    M libc/test/src/stdfix/CMakeLists.txt
    A libc/test/src/stdfix/ExpTest.h
    A libc/test/src/stdfix/exphk_test.cpp
    A libc/test/src/stdfix/expk_test.cpp

  Log Message:
  -----------
  [libc][stdfix] Add exp function for short _Accum and _Accum types. (#84391)


  Commit: 909ab0e0d1903ad2329ca9fdf248d21330f9437f
      https://github.com/llvm/llvm-project/commit/909ab0e0d1903ad2329ca9fdf248d21330f9437f
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/alu64.ll
    M llvm/test/CodeGen/RISCV/atomicrmw-uinc-udec-wrap.ll
    M llvm/test/CodeGen/RISCV/bfloat-convert.ll
    M llvm/test/CodeGen/RISCV/double-convert.ll
    M llvm/test/CodeGen/RISCV/double-round-conv-sat.ll
    M llvm/test/CodeGen/RISCV/float-convert.ll
    M llvm/test/CodeGen/RISCV/float-round-conv-sat.ll
    M llvm/test/CodeGen/RISCV/forced-atomics.ll
    M llvm/test/CodeGen/RISCV/fpclamptosat.ll
    M llvm/test/CodeGen/RISCV/half-convert.ll
    M llvm/test/CodeGen/RISCV/half-round-conv-sat.ll
    M llvm/test/CodeGen/RISCV/iabs.ll
    A llvm/test/CodeGen/RISCV/pr84200.ll
    M llvm/test/CodeGen/RISCV/rv32zbb-zbkb.ll
    M llvm/test/CodeGen/RISCV/rv32zbs.ll
    M llvm/test/CodeGen/RISCV/rv64-legal-i32/rv64xtheadbb.ll
    M llvm/test/CodeGen/RISCV/rv64-legal-i32/rv64zbb.ll
    M llvm/test/CodeGen/RISCV/rvv/fpclamptosat_vec.ll
    M llvm/test/CodeGen/RISCV/rvv/vec3-setcc-crash.ll
    M llvm/test/CodeGen/RISCV/signed-truncation-check.ll

  Log Message:
  -----------
  [RISCV] Insert a freeze before converting select to AND/OR. (#84232)

Select blocks poison, but AND/OR do not. We need to insert a freeze
to block poison propagation.

This creates suboptimal codegen which I will try to fix with other
patches. I'm prioritizing the correctness fix since we have 2 bug reports.

Fixes #84200 and #84350


  Commit: d93a126090b6e772d3b96f201cdd44ea0d6360ef
      https://github.com/llvm/llvm-project/commit/d93a126090b6e772d3b96f201cdd44ea0d6360ef
  Author: Alex Langford <alangford at apple.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/lldbplatformutil.py
    M lldb/test/API/lang/c/tls_globals/TestTlsGlobals.py

  Log Message:
  -----------
  [lldb] Add ability to detect darwin host linker version to xfail tests (#83941)

When Apple released its new linker, it had a subtle bug that caused
LLDB's TLS tests to fail. Unfortunately this means that TLS tests are
not going to work on machines that have affected versions of the linker,
so we should annotate the tests so that they only work when we are
confident the linker has the required fix.

I'm not completely satisfied with this implementation. That being said,
I believe that adding suport for linker versions in general is a
non-trivial change that would require far more thought. There are a few
challenges involved:
- LLDB's testing infra takes an argument to change the compiler, but
there's no way to switch out the linker.
- There's no standard way to ask a compiler what linker it will use.
- There's no standard way to ask a linker what its version is. Many
platforms have the same name for their linker (ld).
- Some platforms automatically switch out the linker underneath you. We
do this for Windows tests (where we use LLD no matter what).

Given that this is affecting the tests on our CI, I think this is an
acceptable solution in the interim.


  Commit: 1c01651bda46426f497c2948fe52cc25acf0e76d
      https://github.com/llvm/llvm-project/commit/1c01651bda46426f497c2948fe52cc25acf0e76d
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M libc/docs/index.rst
    A libc/docs/talks.rst

  Log Message:
  -----------
  [libc][docs] add page linking to talks (#84393)


  Commit: 10edabbcf331fdd53d27c5195de1b692a0063721
      https://github.com/llvm/llvm-project/commit/10edabbcf331fdd53d27c5195de1b692a0063721
  Author: Evgenii Kudriashov <evgenii.kudriashov at intel.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/GISel/X86InstructionSelector.cpp
    M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
    A llvm/test/CodeGen/X86/GlobalISel/legalize-sdiv.mir
    A llvm/test/CodeGen/X86/GlobalISel/legalize-srem.mir
    A llvm/test/CodeGen/X86/GlobalISel/legalize-udiv.mir
    A llvm/test/CodeGen/X86/GlobalISel/legalize-urem.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86-legalize-sdiv.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86-legalize-srem.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86-legalize-udiv.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86-legalize-urem.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86-select-sdiv.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86-select-srem.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86-select-udiv.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86-select-urem.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86_64-legalize-sdiv.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86_64-legalize-srem.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86_64-legalize-udiv.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86_64-legalize-urem.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86_64-select-sdiv.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86_64-select-srem.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86_64-select-udiv.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86_64-select-urem.mir
    A llvm/test/CodeGen/X86/isel-sdiv.ll
    A llvm/test/CodeGen/X86/isel-srem.ll
    A llvm/test/CodeGen/X86/isel-udiv.ll
    A llvm/test/CodeGen/X86/isel-urem.ll

  Log Message:
  -----------
  [X86][GlobalISel] Enable G_SDIV/G_UDIV/G_SREM/G_UREM (#81615)

* Create a libcall for s64 type for 32 bit targets.
* Fix a bug in REM selection: SUBREG_TO_REG is not intended to produce a
value from super registers.
* Replace selector tests by end-to-end tests. Other passes
check the selected MIR better.


  Commit: 5d33f7176b002da244823ca0e6b524777890dd9d
      https://github.com/llvm/llvm-project/commit/5d33f7176b002da244823ca0e6b524777890dd9d
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/LLJIT.h

  Log Message:
  -----------
  Fix build: llvm::Error needs to be moved for implicit conversion to Expected.

I don't know why the premerge setup didn't fail on this, but many
builbots are broken right now.


  Commit: 5669660f37ef1800f4a7852577364b024d75e3d8
      https://github.com/llvm/llvm-project/commit/5669660f37ef1800f4a7852577364b024d75e3d8
  Author: Chao Chen <116223022+chencha3 at users.noreply.github.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/CMakeLists.txt
    A mlir/include/mlir/Dialect/XeGPU/CMakeLists.txt
    A mlir/include/mlir/Dialect/XeGPU/IR/CMakeLists.txt
    A mlir/include/mlir/Dialect/XeGPU/IR/XeGPU.h
    A mlir/include/mlir/Dialect/XeGPU/IR/XeGPU.td
    A mlir/include/mlir/Dialect/XeGPU/IR/XeGPUAttrs.td
    A mlir/include/mlir/Dialect/XeGPU/IR/XeGPUDialect.td
    A mlir/include/mlir/Dialect/XeGPU/IR/XeGPUOps.td
    A mlir/include/mlir/Dialect/XeGPU/IR/XeGPUTypes.td
    M mlir/include/mlir/InitAllDialects.h
    M mlir/lib/Dialect/CMakeLists.txt
    A mlir/lib/Dialect/XeGPU/CMakeLists.txt
    A mlir/lib/Dialect/XeGPU/IR/CMakeLists.txt
    A mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
    A mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp

  Log Message:
  -----------
  [MLIR] XeGPU dialect for Intel GPU - core definitions and base classes (#78483)

This PR follows our previous [RFC
](https://discourse.llvm.org/t/rfc-add-xegpu-dialect-for-intel-gpus/75723)
to add XeGPU dialect definition for Intel GPUs. It contains dialect,
type, attributes and operators definitions, as well as testcases for
semantic checks. The lowering and optimization passes will be issued
with separated passes.

---------

Co-authored-by: Mehdi Amini <joker.eph at gmail.com>


  Commit: a9b0d7590b9e08151243b97aa75366e988e0d6c8
      https://github.com/llvm/llvm-project/commit/a9b0d7590b9e08151243b97aa75366e988e0d6c8
  Author: Maksim Panchenko <maks at fb.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M bolt/lib/Rewrite/LinuxKernelRewriter.cpp
    M bolt/test/X86/linux-alt-instruction.s

  Log Message:
  -----------
  [BOLT] Properly propagate Cursor errors (#84378)

Handle out-of-bounds reading errors correctly in LinuxKernelRewriter.


  Commit: 50ae8a2a38b618d76193bed04b1d7df6890d5c8a
      https://github.com/llvm/llvm-project/commit/50ae8a2a38b618d76193bed04b1d7df6890d5c8a
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M clang/include/clang/InstallAPI/Frontend.h
    M clang/include/clang/InstallAPI/Visitor.h
    M clang/lib/InstallAPI/Frontend.cpp
    M clang/lib/InstallAPI/Visitor.cpp
    A clang/test/InstallAPI/functions.test
    M clang/tools/clang-installapi/Options.cpp
    M llvm/include/llvm/TextAPI/Record.h
    M llvm/include/llvm/TextAPI/RecordsSlice.h
    M llvm/lib/TextAPI/RecordsSlice.cpp
    M llvm/unittests/TextAPI/RecordTests.cpp

  Log Message:
  -----------
  [InstallAPI] Collect global functions (#83952)

* Include whether functions are inlinable as they impact whether to add
them into the tbd file and for future verification.
* Fix how clang arguments got passed along, previously spacing was
passed along to CC1 causing search path inputs to look non-existent.


  Commit: 3712edbdbb79e0169acf0c57e111f3195006c013
      https://github.com/llvm/llvm-project/commit/3712edbdbb79e0169acf0c57e111f3195006c013
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M libc/docs/c23.rst

  Log Message:
  -----------
  [libc] finish documenting c23 additions (#84383)

- [libc] finish documenting c23 additions
- sort according to appearance in Annex B and section 7


  Commit: 293ec4865bfcb6df2091ef4bcce706a566794b5c
      https://github.com/llvm/llvm-project/commit/293ec4865bfcb6df2091ef4bcce706a566794b5c
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M libc/src/__support/CPP/bit.h
    M libc/src/__support/UInt.h
    M libc/src/stdbit/stdc_count_ones_uc.cpp
    M libc/src/stdbit/stdc_count_ones_ui.cpp
    M libc/src/stdbit/stdc_count_ones_ul.cpp
    M libc/src/stdbit/stdc_count_ones_ull.cpp
    M libc/src/stdbit/stdc_count_ones_us.cpp
    M libc/test/src/__support/CPP/bit_test.cpp

  Log Message:
  -----------
  [libc] rename cpp::count_ones to cpp::popcount to better mirror std:: (#84388)

libc/src/__support/CPP/bit.h and cpp:: is meant to mirror std::. Fix the
TODO.


  Commit: f862265733d65efbfd819408b594b3b2854491d2
      https://github.com/llvm/llvm-project/commit/f862265733d65efbfd819408b594b3b2854491d2
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/VOP2Instructions.td

  Log Message:
  -----------
  AMDGPU: Use True16Predicate for UseRealTrue16Insts in VOP2 Reals (#84394)

We can not use OtherPredicates or SubtargetPredicate because they
should be copied from pseudo to real, and we should not override them.


  Commit: a01e9ce86f4c1bc9af819902db9f287b6d23f54f
      https://github.com/llvm/llvm-project/commit/a01e9ce86f4c1bc9af819902db9f287b6d23f54f
  Author: Amara Emerson <amara at apple.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/legalize-insert-vector-elt.mir

  Log Message:
  -----------
  [AArc64][GlobalISel] Fix legalizer assert for G_INSERT_VECTOR_ELT

We should moreElements <3 x s1> to <4 x s1> before we try to widen the element,
otherwise we end up with a <3 x s21> nonsense type.


  Commit: 3e5afba8ef9319956d288ff755df3c442433eb88
      https://github.com/llvm/llvm-project/commit/3e5afba8ef9319956d288ff755df3c442433eb88
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp

  Log Message:
  -----------
  [NFC] [hwasan] be consistent about how to get integer types (#84396)


  Commit: ddf79deb42d901fbb732e56464efbf93bc444070
      https://github.com/llvm/llvm-project/commit/ddf79deb42d901fbb732e56464efbf93bc444070
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp

  Log Message:
  -----------
  [Asan] Fix -Wunused-private-field in non-assertion builds (NFC)

llvm-project/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp:650:13:
error: private field 'OwnerFn' is not used [-Werror,-Wunused-private-field]
  Function *OwnerFn = nullptr;
            ^
1 error generated.


  Commit: 8bf8d36f8e82a1e2d32f33dbe7369d9cecd57f46
      https://github.com/llvm/llvm-project/commit/8bf8d36f8e82a1e2d32f33dbe7369d9cecd57f46
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

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

  Log Message:
  -----------
  [compiler-rt][fuzzer] Reland "SetThreadName windows implementation" (#83562)

Following-up on GH-76761.


  Commit: 26fa4409572ad81c5522165ba2a831845f4d0635
      https://github.com/llvm/llvm-project/commit/26fa4409572ad81c5522165ba2a831845f4d0635
  Author: Amara Emerson <amara at apple.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-select.mir

  Log Message:
  -----------
  [GlobalISel] Fix yet another pointer type invalid combining issue, this time in tryFoldSelectOfConstants()


  Commit: b408241d0ad9ce009b49018fe1e9838887abf3c1
      https://github.com/llvm/llvm-project/commit/b408241d0ad9ce009b49018fe1e9838887abf3c1
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_common_syscalls.inc

  Log Message:
  -----------
  [compiler-rt] adding fchmodat2 syscall introduced in Linux 6.6. (#82275)


  Commit: 487cfbe494413e12123b55dead5ef8742ef49fb2
      https://github.com/llvm/llvm-project/commit/487cfbe494413e12123b55dead5ef8742ef49fb2
  Author: OverMighty <its.overmighty at gmail.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M clang/docs/LanguageExtensions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/Builtins.td
    M clang/lib/AST/ExprConstant.cpp
    M clang/test/Sema/constant-builtins-2.c

  Log Message:
  -----------
  [Clang] Implement constexpr support for `__builtin_popcountg` (#84318)


  Commit: e932fe880b69a6cd13b4f29678c7f143540f1999
      https://github.com/llvm/llvm-project/commit/e932fe880b69a6cd13b4f29678c7f143540f1999
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

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

  Log Message:
  -----------
  [compiler-rt][Fuzzer] fix windows typo (#84407)


  Commit: 0d4978f3cf8f917d88c19ec0ba3b1b3ef092cef1
      https://github.com/llvm/llvm-project/commit/0d4978f3cf8f917d88c19ec0ba3b1b3ef092cef1
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/forced-atomics.ll
    M llvm/test/CodeGen/RISCV/fpclamptosat.ll

  Log Message:
  -----------
  [RISCV] Update some tests I missed in 909ab0e0d1903ad2329ca9fdf248d21330f9437f. NFC


  Commit: fcd2d483251605f1b6cdace0ce5baf5dfd31b880
      https://github.com/llvm/llvm-project/commit/fcd2d483251605f1b6cdace0ce5baf5dfd31b880
  Author: vadikp-intel <vadim.paretsky at intel.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M openmp/runtime/src/kmp_collapse.cpp
    M openmp/runtime/src/kmp_collapse.h
    A openmp/runtime/test/worksharing/for/omp_for_collapse_LowerTriangularLess.c
    A openmp/runtime/test/worksharing/for/omp_for_collapse_LowerTriangularLessEqual.c
    A openmp/runtime/test/worksharing/for/omp_for_collapse_UpperTriangular.c

  Log Message:
  -----------
  [OpenMP] runtime support for efficient partitioning of collapsed triangular loops (#83939)

This PR adds OMP runtime support for more efficient partitioning of
certain types of collapsed loops that can be used by compilers that
support loop collapsing (i.e. MSVC) to achieve more optimal thread load
balancing.

In particular, this PR addresses double nested upper and lower isosceles
triangular loops of the following types

1. lower triangular 'less_than'
   for (int i=0; i<N; i++)
     for (int j=0; j<i; j++)
2. lower triangular 'less_than_equal'
   for (int i=0; i<N; j++)
     for (int j=0; j<=i; j++)
3. upper triangular
   for (int i=0; i<N; i++)
     for (int j=i; j<N; j++)

Includes tests for the three supported loop types.

---------

Co-authored-by: Vadim Paretsky <b-vadipa at microsoft.com>


  Commit: 0cd7942c7f7a6f0c8a749c5f0d6d758e0a6fd9d9
      https://github.com/llvm/llvm-project/commit/0cd7942c7f7a6f0c8a749c5f0d6d758e0a6fd9d9
  Author: Igor Kudrin <ikudrin at accesssoftek.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/lib/DebugInfo/DWARF/DWARFDebugFrame.cpp
    M llvm/test/CodeGen/AArch64/sign-return-address-cfi-negate-ra-state.ll

  Log Message:
  -----------
  [llvm-dwarfdump] Fix parsing DW_CFA_AARCH64_negate_ra_state (#84128)

The saved state of the AARCH64_DWARF_PAUTH_RA_STATE register was not
updated, so `llvm-dwarfdump` continued to dump it as `reg34=1` even if
the correct value is `0`:

```
> llvm-dwarfdump -v test.o
...
0000002c 00000024 00000030 FDE cie=00000000 pc=00000030...00000064
  Format:       DWARF32
  DW_CFA_advance_loc: 4
  DW_CFA_AARCH64_negate_ra_state:
  DW_CFA_advance_loc: 4
  DW_CFA_def_cfa_offset: +16
  DW_CFA_offset: W30 -16
  DW_CFA_remember_state:
  DW_CFA_advance_loc: 16
  DW_CFA_def_cfa_offset: +0
  DW_CFA_advance_loc: 4
  DW_CFA_AARCH64_negate_ra_state:
  DW_CFA_restore: W30
  DW_CFA_advance_loc: 4
  DW_CFA_restore_state:
  DW_CFA_advance_loc: 12
  DW_CFA_def_cfa_offset: +0
  DW_CFA_advance_loc: 4
  DW_CFA_AARCH64_negate_ra_state:
  DW_CFA_restore: W30
  DW_CFA_nop:

  0x30: CFA=WSP
  0x34: CFA=WSP: reg34=1
  0x38: CFA=WSP+16: W30=[CFA-16], reg34=1
  0x48: CFA=WSP: W30=[CFA-16], reg34=1
  0x4c: CFA=WSP: reg34=1               <--- should be '=0'
  0x50: CFA=WSP+16: W30=[CFA-16], reg34=1
  0x5c: CFA=WSP: W30=[CFA-16], reg34=1
  0x60: CFA=WSP: reg34=1               <--- should be '=0'
```


  Commit: fe8476472467acd15a4d3771313e5532d1eb032f
      https://github.com/llvm/llvm-project/commit/fe8476472467acd15a4d3771313e5532d1eb032f
  Author: Igor Kudrin <ikudrin at accesssoftek.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/include/llvm/DebugInfo/DWARF/DWARFDebugFrame.h
    M llvm/lib/DebugInfo/DWARF/DWARFDebugFrame.cpp
    M llvm/test/DebugInfo/dwarfdump-debug-frame-simple.test
    M llvm/test/tools/llvm-readobj/ELF/unwind.test
    M llvm/tools/llvm-readobj/DwarfCFIEHPrinter.h

  Log Message:
  -----------
  [DWARF] Dump an updated location for DW_CFA_advance_loc* (#84274)

When dumping FDEs, `readelf` prints new location values after
`DW_CFA_advance_loc(*)` instructions, which looks quite convenient:

```
> readelf -wf test.o
...
... FDE ... pc=0000000000000030..0000000000000064
  DW_CFA_advance_loc: 4 to 0000000000000034
  ...
  DW_CFA_advance_loc: 4 to 0000000000000038
...
```

This patch makes `llvm-dwarfdump` and `llvm-readobj` do the same.


  Commit: 99512b1728bcf47dbf28f8a4cf5d296109fb0630
      https://github.com/llvm/llvm-project/commit/99512b1728bcf47dbf28f8a4cf5d296109fb0630
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/test/Object/Inputs/small.ll
    M llvm/test/Object/Inputs/trivial.ll
    M llvm/test/Object/X86/irsymtab-bad-alias.ll
    M llvm/test/Object/X86/nm-ir.ll
    M llvm/test/Object/dllimport-globalref.ll
    M llvm/test/Object/dllimport.ll
    M llvm/test/Object/mangle-ir.ll
    M llvm/test/Object/objc-swift-mixed-imageinfo-macho.ll

  Log Message:
  -----------
  [Object] Convert tests to opaque pointers (NFC)

Link: https://discourse.llvm.org/t/enabling-opaque-pointers-by-default/61322


  Commit: 30f098ef9dfb121bccaef6975b13788b6f940e47
      https://github.com/llvm/llvm-project/commit/30f098ef9dfb121bccaef6975b13788b6f940e47
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/test/Instrumentation/AddressSanitizer/aarch64be.ll
    M llvm/test/Instrumentation/AddressSanitizer/program-addrspace.ll
    M llvm/test/Instrumentation/InstrProfiling/before-value-profile-lowering.ll
    M llvm/test/Instrumentation/InstrProfiling/timestamp-coverage.ll
    M llvm/test/Instrumentation/InstrProfiling/timestamp.ll

  Log Message:
  -----------
  [Instrumentation] Convert tests to opaque pointers (NFC)

Link: https://discourse.llvm.org/t/enabling-opaque-pointers-by-default/61322


  Commit: 9d3bf9b639eafeded82c6be295031262735d1dac
      https://github.com/llvm/llvm-project/commit/9d3bf9b639eafeded82c6be295031262735d1dac
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp

  Log Message:
  -----------
  [NFC] [hwasan] consistent naming for cl::opt


  Commit: fb582b6ace781ff6991775d6dcd4df98aa16698f
      https://github.com/llvm/llvm-project/commit/fb582b6ace781ff6991775d6dcd4df98aa16698f
  Author: Boian Petkantchin <boian.petkantchin at amd.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    A mlir/include/mlir/Dialect/Linalg/Transforms/AllInterfaces.h
    A mlir/include/mlir/Dialect/Linalg/Transforms/MeshShardingInterfaceImpl.h
    M mlir/include/mlir/Dialect/Mesh/IR/MeshBase.td
    M mlir/include/mlir/Dialect/Mesh/IR/MeshOps.td
    M mlir/include/mlir/Dialect/Mesh/Interfaces/ShardingInterfaceImpl.h
    M mlir/include/mlir/Dialect/Mesh/Transforms/Transforms.h
    M mlir/include/mlir/IR/Dialect.h
    M mlir/include/mlir/InitAllDialects.h
    M mlir/lib/Dialect/Linalg/IR/CMakeLists.txt
    M mlir/lib/Dialect/Linalg/IR/LinalgDialect.cpp
    A mlir/lib/Dialect/Linalg/Transforms/AllInterfaces.cpp
    M mlir/lib/Dialect/Linalg/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/Linalg/Transforms/MeshShardingInterfaceImpl.cpp
    M mlir/lib/Dialect/Linalg/Transforms/TilingInterfaceImpl.cpp
    M mlir/lib/Dialect/Mesh/IR/MeshOps.cpp
    M mlir/lib/Dialect/Mesh/Interfaces/ShardingInterface.cpp
    M mlir/lib/Dialect/Mesh/Transforms/Transforms.cpp
    A mlir/test/Dialect/Linalg/mesh-spmdization.mlir
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir] Implement Mesh's ShardingInterface for Linalg ops (#82284)

Allows linalg structured operations to be handled during spmdization and
sharding propagation.

There is only support for projected permutation indexing maps.


  Commit: ddaf040ea924b1bdd4e093f583018c262da3cc7f
      https://github.com/llvm/llvm-project/commit/ddaf040ea924b1bdd4e093f583018c262da3cc7f
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

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

  Log Message:
  -----------
  [mlir][Transforms][NFC] Make signature conversion more efficient (#83922)

During block signature conversion, a new block is inserted and ops are
moved from the old block to the new block. This commit changes the
implementation such that ops are moved in bulk (`splice`) instead of
one-by-one; that's what `splitBlock` is doing.

This also makes it possible to pass the new block argument types
directly to `createBlock` instead of using `addArgument` (which bypasses
the rewriter). This doesn't change anything from a technical point of
view (there is no rewriter API for adding arguments at the moment), but
the implementation reads a bit nicer.


  Commit: e7a22e72de79352c4639664f1ac678555a4c20e4
      https://github.com/llvm/llvm-project/commit/e7a22e72de79352c4639664f1ac678555a4c20e4
  Author: Chen Zheng <czhengsz at cn.ibm.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    A llvm/test/CodeGen/PowerPC/pr74951.ll

  Log Message:
  -----------
  [PPC] precommit cases for issue 74915


  Commit: 60a20bd6973c8fc7aa9a19465ed042604e07fb17
      https://github.com/llvm/llvm-project/commit/60a20bd6973c8fc7aa9a19465ed042604e07fb17
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Transforms/DialectConversion.h
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/test/Transforms/test-legalizer.mlir
    M mlir/test/lib/Dialect/Test/TestPatterns.cpp

  Log Message:
  -----------
  [mlir][Transforms] Add listener support to dialect conversion (#83425)

This commit adds listener support to the dialect conversion. Similarly
to the greedy pattern rewrite driver, an optional listener can be
specified in the configuration object.

Listeners are notified only if the dialect conversion succeeds. In case
of a failure, where some IR changes are first performed and then rolled
back, no notifications are sent.

Due to the fact that some kinds of rewrite are reflected in the IR
immediately and some in a delayed fashion, there are certain limitations
when attaching a listener; these are documented in `ConversionConfig`.
To summarize, users are always notified about all rewrites that
happened, but the notifications are sent all at once at the very end,
and not interleaved with the actual IR changes.

This change is in preparation improvements to
`transform.apply_conversion_patterns`, which currently invalidates all
handles. In the future, it can use a listener to update handles
accordingly, similar to `transform.apply_patterns`.


  Commit: 474a73d979bdab8782c17829d72386e0da39eb39
      https://github.com/llvm/llvm-project/commit/474a73d979bdab8782c17829d72386e0da39eb39
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

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

  Log Message:
  -----------
  [mlir] Fix build failure in MeshShardingInterfaceImpl.cpp (NFC)

llvm-project/mlir/lib/Dialect/Linalg/Transforms/MeshShardingInterfaceImpl.cpp:96:8:
error: unused variable 'resultElementType' [-Werror,-Wunused-variable]
  Type resultElementType =
       ^
llvm-project/mlir/lib/Dialect/Linalg/Transforms/MeshShardingInterfaceImpl.cpp:122:1:
error: non-void function does not return a value in all control paths [-Werror,-Wreturn-type]
}
^
2 errors generated.


  Commit: da4957be2365831c94eab0b52612367c29f1d299
      https://github.com/llvm/llvm-project/commit/da4957be2365831c94eab0b52612367c29f1d299
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

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

  Log Message:
  -----------
  [NFC] [hwasan] use for_each and move comment


  Commit: cc34e56b865f1fc9e894b75fc958f09dff0fcdea
      https://github.com/llvm/llvm-project/commit/cc34e56b865f1fc9e894b75fc958f09dff0fcdea
  Author: Chen Zheng <czhengsz at cn.ibm.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/PowerPC/pr74951.ll

  Log Message:
  -----------
  [PPC][NFC] add an option to expose the bug in 74951


  Commit: da00c60dae0040185dc45039c4397f6e746548e9
      https://github.com/llvm/llvm-project/commit/da00c60dae0040185dc45039c4397f6e746548e9
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Frontend/FrontendActions.h
    M clang/include/clang/Frontend/FrontendOptions.h
    M clang/include/clang/Serialization/ASTWriter.h
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Frontend/FrontendActions.cpp
    M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    M clang/lib/Serialization/GeneratePCH.cpp
    M clang/test/CXX/basic/basic.link/p10-ex2.cpp
    M clang/test/CXX/basic/basic.lookup/basic.lookup.argdep/p4-friend-in-reachable-class.cpp
    M clang/test/Modules/InheritDefaultArguments.cppm
    M clang/test/Modules/Reachability-Private.cpp
    M clang/test/Modules/Reachability-func-default-arg.cpp
    M clang/test/Modules/Reachability-func-ret.cpp
    M clang/test/Modules/Reachability-template-default-arg.cpp
    M clang/test/Modules/Reachability-template-instantiation.cpp
    M clang/test/Modules/Reachability-using-templates.cpp
    M clang/test/Modules/Reachability-using.cpp
    M clang/test/Modules/concept.cppm
    M clang/test/Modules/concept_differ.cppm
    M clang/test/Modules/ctor.arg.dep.cppm
    M clang/test/Modules/cxx20-10-1-ex1.cpp
    M clang/test/Modules/cxx20-10-1-ex2.cpp
    M clang/test/Modules/cxx20-10-2-ex2.cpp
    M clang/test/Modules/cxx20-10-2-ex5.cpp
    M clang/test/Modules/cxx20-10-3-ex1.cpp
    M clang/test/Modules/cxx20-10-3-ex2.cpp
    M clang/test/Modules/cxx20-10-5-ex1.cpp
    M clang/test/Modules/cxx20-import-diagnostics-a.cpp
    M clang/test/Modules/cxx20-import-diagnostics-b.cpp
    M clang/test/Modules/cxx20-module-file-info-macros.cpp
    M clang/test/Modules/deduction-guide.cppm
    M clang/test/Modules/deduction-guide2.cppm
    M clang/test/Modules/deduction-guide3.cppm
    M clang/test/Modules/derived_class.cpp
    M clang/test/Modules/duplicated-module-file-eq-module-name.cppm
    M clang/test/Modules/enum-class.cppm
    M clang/test/Modules/explicitly-specialized-template.cpp
    M clang/test/Modules/export-language-linkage.cppm
    M clang/test/Modules/ftime-trace.cppm
    M clang/test/Modules/inconsistent-deduction-guide-linkage.cppm
    M clang/test/Modules/inconsistent-export.cppm
    M clang/test/Modules/inherited_arg.cppm
    M clang/test/Modules/instantiation-argdep-lookup.cppm
    M clang/test/Modules/lambdas.cppm
    M clang/test/Modules/merge-concepts-cxx-modules.cpp
    M clang/test/Modules/merge-constrained-friends.cpp
    M clang/test/Modules/merge-lambdas.cppm
    M clang/test/Modules/merge-requires-with-lambdas.cppm
    M clang/test/Modules/merge-var-template-spec-cxx-modules.cppm
    M clang/test/Modules/mismatch-diagnostics.cpp
    M clang/test/Modules/module-init-duplicated-import.cppm
    M clang/test/Modules/named-modules-adl-2.cppm
    M clang/test/Modules/named-modules-adl-3.cppm
    M clang/test/Modules/named-modules-adl.cppm
    M clang/test/Modules/no-duplicate-codegen-in-GMF.cppm
    M clang/test/Modules/pair-unambiguous-ctor.cppm
    M clang/test/Modules/partial_specialization.cppm
    M clang/test/Modules/placement-new-reachable.cpp
    M clang/test/Modules/polluted-operator.cppm
    M clang/test/Modules/pr54457.cppm
    M clang/test/Modules/pr56916.cppm
    M clang/test/Modules/pr58532.cppm
    M clang/test/Modules/pr58716.cppm
    M clang/test/Modules/pr59719.cppm
    M clang/test/Modules/pr59780.cppm
    M clang/test/Modules/pr59999.cppm
    M clang/test/Modules/pr60036.cppm
    M clang/test/Modules/pr60085.cppm
    M clang/test/Modules/pr60275.cppm
    M clang/test/Modules/pr60486.cppm
    M clang/test/Modules/pr60693.cppm
    M clang/test/Modules/pr60775.cppm
    M clang/test/Modules/pr60890.cppm
    M clang/test/Modules/pr61065.cppm
    M clang/test/Modules/pr61065_2.cppm
    M clang/test/Modules/pr61067.cppm
    M clang/test/Modules/pr61317.cppm
    M clang/test/Modules/pr61783.cppm
    M clang/test/Modules/pr61892.cppm
    M clang/test/Modules/pr62158.cppm
    M clang/test/Modules/pr62359.cppm
    M clang/test/Modules/pr62589.cppm
    M clang/test/Modules/pr62705.cppm
    M clang/test/Modules/pr62796.cppm
    M clang/test/Modules/pr62943.cppm
    M clang/test/Modules/pr63544.cppm
    M clang/test/Modules/pr63595.cppm
    M clang/test/Modules/pr67627.cppm
    M clang/test/Modules/pr67893.cppm
    M clang/test/Modules/predefined.cpp
    M clang/test/Modules/preferred_name.cppm
    M clang/test/Modules/redefinition-merges.cppm
    M clang/test/Modules/redundant-template-default-arg.cpp
    M clang/test/Modules/redundant-template-default-arg2.cpp
    M clang/test/Modules/redundant-template-default-arg3.cpp
    M clang/test/Modules/search-partitions.cpp
    M clang/test/Modules/seperated-member-function-definition-for-template-class.cppm
    M clang/test/Modules/template-function-specialization.cpp
    M clang/test/Modules/template-lambdas.cppm
    M clang/test/Modules/template-pack.cppm
    M clang/test/Modules/template_default_argument.cpp
    M clang/unittests/Sema/SemaNoloadLookupTest.cpp
    M clang/unittests/Serialization/ForceCheckFileInputTest.cpp
    M clang/unittests/Serialization/NoCommentsTest.cpp
    M clang/unittests/Serialization/VarDeclConstantInitTest.cpp

  Log Message:
  -----------
  [C++20] [Modules] Introduce reduced BMI (#75894)

Close https://github.com/llvm/llvm-project/issues/71034

See

https://discourse.llvm.org/t/rfc-c-20-modules-introduce-thin-bmi-and-decls-hash/74755

This patch introduces reduced BMI, which doesn't contain the definitions
of functions and variables if its definitions won't contribute to the
ABI.

Testing is a big part of the patch. We want to make sure the reduced BMI
contains the same behavior with the existing and relatively stable
fatBMI. This is pretty helpful for further reduction.

The user interfaces part it left to following patches to ease the
reviewing.


  Commit: a4703e5bccc63eca45e0e4bff8f04f82d8622ebe
      https://github.com/llvm/llvm-project/commit/a4703e5bccc63eca45e0e4bff8f04f82d8622ebe
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M clang/lib/Frontend/FrontendActions.cpp

  Log Message:
  -----------
  [clang] Remove std::move in GenerateModuleAction::CreateMultiplexConsumer (NFC)

llvm-project/clang/lib/Frontend/FrontendActions.cpp:213:10:
error: moving a local object in a return statement prevents copy elision [-Werror,-Wpessimizing-move]
  213 |   return std::move(Consumers);
      |          ^
/Users/jiefu/llvm-project/clang/lib/Frontend/FrontendActions.cpp:213:10: note: remove std::move call here
  213 |   return std::move(Consumers);
      |          ^~~~~~~~~~         ~
1 error generated.


  Commit: 448419007e1bb8a9e2edfe2c1c87fef6d104442a
      https://github.com/llvm/llvm-project/commit/448419007e1bb8a9e2edfe2c1c87fef6d104442a
  Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values.ll
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values.ll.expected
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values2.ll
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values2.ll.expected
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values3.ll
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values3.ll.expected
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values4.ll
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values4.ll.expected
    A llvm/test/tools/UpdateTestChecks/update_test_checks/stable_ir_values.test
    A llvm/test/tools/UpdateTestChecks/update_test_checks/stable_ir_values2.test
    A llvm/test/tools/UpdateTestChecks/update_test_checks/stable_ir_values3.test
    A llvm/test/tools/UpdateTestChecks/update_test_checks/stable_ir_values4.test

  Log Message:
  -----------
  update_test_checks: precommit a test case

The test case demonstrates how meta variables are needlessly renamed,
making diffs harder to read.


  Commit: fc1e5f978561d6357083f9b5bc981e52d93374b3
      https://github.com/llvm/llvm-project/commit/fc1e5f978561d6357083f9b5bc981e52d93374b3
  Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/utils/UpdateTestChecks/common.py

  Log Message:
  -----------
  update_test_checks: simplify is_local_def_ir_value

The match argument is unused.


  Commit: 5747f9d3e9f3a49c27984b9341e123b9ca82e741
      https://github.com/llvm/llvm-project/commit/5747f9d3e9f3a49c27984b9341e123b9ca82e741
  Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/utils/UpdateTestChecks/common.py

  Log Message:
  -----------
  update_test_checks: simplify get_ir_regex

The match argument isn't used.


  Commit: fb02f9ac84a6151e41aba8f7391edd132a9aaf14
      https://github.com/llvm/llvm-project/commit/fb02f9ac84a6151e41aba8f7391edd132a9aaf14
  Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values.ll.expected
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values.ll.expected.reset
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values2.ll.expected
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values3.ll
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values3.ll.expected
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values4.ll.expected
    M llvm/test/tools/UpdateTestChecks/update_test_checks/stable_ir_values.test
    M llvm/utils/UpdateTestChecks/common.py
    M llvm/utils/update_test_checks.py

  Log Message:
  -----------
  update_test_checks: keep meta variables stable by default

Prior to this change, running UTC on larger tests, especially tests
with unnamed IR values, often resulted in a spuriously large diff
because e.g. TMPnn variables in the CHECK lines were renumbered. This
change attempts to reduce the diff by keeping those variable names the
same.

There are cases in which this "drift" of variable names can end up being
more confusing. The old behavior can be re-enabled with the
--reset-variable-names command line argument.

The improvement may not be immediately apparent in the diff of this change.
The point is that the diff of stable_ir_values.ll against
stable_ir_values.ll.expected after this change is smaller.

Ideally, we'd also keep meta variables for "global" objects stable, e.g.
for attributes (#nn) and metadata (!nn). However, that would require a
much more substantial refactoring of how we generate check lines, so I
left it for future work.


  Commit: 51b7ef937504ce45ef6a024aadfdee4147bffab5
      https://github.com/llvm/llvm-project/commit/51b7ef937504ce45ef6a024aadfdee4147bffab5
  Author: lntue <35648136+lntue at users.noreply.github.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M libc/test/src/stdfix/RoundTest.h

  Log Message:
  -----------
  [libc][NFC] Fix a typo in test/src/stdfix/RoundTest.h. (#84411)


  Commit: 66bd3cd75b32ccfa8d228c200cf4fbf72d49fd1f
      https://github.com/llvm/llvm-project/commit/66bd3cd75b32ccfa8d228c200cf4fbf72d49fd1f
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fpneg-one-fneg.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32-f16-f32-matrix-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32-imm.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32-iu-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32-swmmac-index_key.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-f16-f32-matrix-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-imm.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-iu-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-swmmac-index_key.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64.ll
    M llvm/test/CodeGen/AMDGPU/atomics_cond_sub.ll
    M llvm/test/CodeGen/AMDGPU/generic-targets-require-v6.ll
    M llvm/test/CodeGen/AMDGPU/gfx12_scalar_subword_loads.ll
    M llvm/test/CodeGen/AMDGPU/insert-waitcnts-hang.mir
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.atomic.cond.sub.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.dot4.f32.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.amdgcn.s.wait.gfx12.ll
    M llvm/test/CodeGen/AMDGPU/spill-regpressure-less.mir
    M llvm/test/CodeGen/AMDGPU/wait-before-stores-with-scope_sys.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w32-f16-f32-matrix-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w32-imm.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w32-iu-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w32-swmmac-index_key.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w32.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w64-f16-f32-matrix-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w64-imm.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w64-iu-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w64-swmmac-index_key.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w64.ll
    M llvm/test/CodeGen/AMDGPU/wmma-hazards-gfx12-w32.mir
    M llvm/test/CodeGen/AMDGPU/wmma-hazards-gfx12-w64.mir
    M llvm/test/MachineVerifier/convergencectrl/AMDGPU/basic.mir
    M llvm/test/MachineVerifier/convergencectrl/AMDGPU/cycles.mir
    M llvm/test/MachineVerifier/convergencectrl/AMDGPU/mixed2.mir
    M llvm/test/MachineVerifier/convergencectrl/AMDGPU/region-nesting.mir

  Log Message:
  -----------
  [AMDGPU,test] Change llc -march= to -mtriple=

PR #75982 had been created before these tests were added, therefore
some test were not updated.


  Commit: b565126b4dbef0d9f5c9f3ef8f3489ff6581218f
      https://github.com/llvm/llvm-project/commit/b565126b4dbef0d9f5c9f3ef8f3489ff6581218f
  Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values.ll.expected
    R llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values.ll.expected.reset
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values2.ll.expected
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values3.ll
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values3.ll.expected
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values4.ll.expected
    M llvm/test/tools/UpdateTestChecks/update_test_checks/stable_ir_values.test
    M llvm/utils/UpdateTestChecks/common.py
    M llvm/utils/update_test_checks.py

  Log Message:
  -----------
  Revert "update_test_checks: keep meta variables stable by default"

This reverts commit fb02f9ac84a6151e41aba8f7391edd132a9aaf14.

Looks like some Python version incompatibility, will investigate.


  Commit: 3846019d8f6379ea1a8bf3a0fdfb0202de8e2f2a
      https://github.com/llvm/llvm-project/commit/3846019d8f6379ea1a8bf3a0fdfb0202de8e2f2a
  Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values.ll.expected
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values.ll.expected.reset
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values2.ll.expected
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values3.ll
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values3.ll.expected
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values4.ll.expected
    M llvm/test/tools/UpdateTestChecks/update_test_checks/stable_ir_values.test
    M llvm/utils/UpdateTestChecks/common.py
    M llvm/utils/update_test_checks.py

  Log Message:
  -----------
  update_test_checks: keep meta variables stable by default

Resubmitting this after previous revert with the following changes:

- Split table into table_rhs_idx and table_candidate_idx so that
  bisect.bisect_left can be used without the `key` argument, which
  was introduced in Python 3.10
- Remove a re.Pattern type annotation

Original commit message:

Prior to this change, running UTC on larger tests, especially tests
with unnamed IR values, often resulted in a spuriously large diff
because e.g. TMPnn variables in the CHECK lines were renumbered. This
change attempts to reduce the diff by keeping those variable names the
same.

There are cases in which this "drift" of variable names can end up being
more confusing. The old behavior can be re-enabled with the
--reset-variable-names command line argument.

The improvement may not be immediately apparent in the diff of this change.
The point is that the diff of stable_ir_values.ll against
stable_ir_values.ll.expected after this change is smaller.

Ideally, we'd also keep meta variables for "global" objects stable, e.g.
for attributes (#nn) and metadata (!nn). However, that would require a
much more substantial refactoring of how we generate check lines, so I
left it for future work.


  Commit: d9c855014123a313006adfc873be6f10e997be61
      https://github.com/llvm/llvm-project/commit/d9c855014123a313006adfc873be6f10e997be61
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M flang/runtime/complex-reduction.c

  Log Message:
  -----------
  [flang] Fixed build issues after f20ea05. (#84377)

Older versions of clang do not have __builtin_complex, but they
may define `__GNUC__`.


  Commit: 23c658ac4183272221ef358575dca0d386096d36
      https://github.com/llvm/llvm-project/commit/23c658ac4183272221ef358575dca0d386096d36
  Author: David Green <david.green at arm.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseV1.td
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseV2.td
    M llvm/unittests/Target/AArch64/AArch64SVESchedPseudoTest.cpp

  Log Message:
  -----------
  [AArch64] Ensure Neoverse V1 scheduling model includes all SVE pseudos. (#84187)

With the many pseudos used in SVE codegen it can be too easy to miss
instructions. This enables the existing test we have for checking the
scheduling info of the pseudos matches the real instructions, and
adjusts the scheduling info in the NeoverseV1 model to make sure all are
handled. In the cases I could I opted to use the same info as in the
NeoverseV2 model, to keep the differences smaller.


  Commit: 2d539db246fd9d26201255b84d04dacf2782eddf
      https://github.com/llvm/llvm-project/commit/2d539db246fd9d26201255b84d04dacf2782eddf
  Author: martinboehme <mboehme at google.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

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

  Log Message:
  -----------
  [clang][dataflow] When analyzing ctors, don't initialize fields of `*this` with values. (#84164)

This is the constructor's job, and we want to be able to test that it
does this.


  Commit: 9b74c43d70f4b39d6fea7b542d77f2b652e4d651
      https://github.com/llvm/llvm-project/commit/9b74c43d70f4b39d6fea7b542d77f2b652e4d651
  Author: martinboehme <mboehme at google.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp

  Log Message:
  -----------
  [clang][dataflow] Add context-sensitive test for returning a record by value. (#84317)

I'm making some changes to `Environment::getResultObjectLocation()`,
with the
ultimate goal of eliminating `RecordValue` entirely, and I'd like to
make sure
I don't break this behavior (and I've realized we don't have a test for
it yet).


  Commit: bfa6444a332f82843f9fa44821d68fcc772e0272
      https://github.com/llvm/llvm-project/commit/bfa6444a332f82843f9fa44821d68fcc772e0272
  Author: Alexander Richardson <alexrichardson at google.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M compiler-rt/cmake/config-ix.cmake

  Log Message:
  -----------
  [compiler-rt] Fix incorrect usages of check_cxx_compiler_flag

These checks have been broken since 6afe972195454a1110ed8d20c6f2a547e6366379.
The check_cxx_compiler_flag macro only takes two arguments and passing
three to it ends up calling
`cmake_check_compiler_flag(CXX "${_FLAG}" ${_RESULT})` with ${_FLAG}
equal to `-Werror` and the result variable being the actually tested
compiler flag.

I noticed this because some of the flags that I know should be supported
were being flagged as not supported. `--debug-trycompile` shows the
following surprising line in the generated CMakeLists.txt:
`add_definitions([==[-D-Wempty-body]==] [==[-Werror]==])` which then
results in the following error while running the check:
```
FAILED: CMakeFiles/cmTC_72736.dir/src.cxx.o
tmp/upstream-llvm-readonly/bin/clang++   -nodefaultlibs -std=c++17 -fcolor-diagnostics   -D-Wempty-body -Werror -MD -MT CMakeFiles/cmTC_72736.dir/src.cxx.o -MF CMakeFiles/cmTC_72736.dir/src.cxx.o.d -o CMakeFiles/cmTC_72736.dir/src.cxx.o -c .../cmake-build-all-sanitizers/CMakeFiles/CMakeScratch/TryCompile-nyh3QR/src.cxx
In file included from <built-in>:450:
<command line>:1:9: error: macro name must be an identifier
    1 | #define -Wempty-body 1
      |         ^
   1 error generated.
```

It would be great if CMake could be a bit more helpful here so I've
filed https://gitlab.kitware.com/cmake/cmake/-/issues/25735.

See also https://reviews.llvm.org/D146920.

Reviewed By: nikic

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


  Commit: 780a20984b6af067eed5870eb7c00ea076b6072a
      https://github.com/llvm/llvm-project/commit/780a20984b6af067eed5870eb7c00ea076b6072a
  Author: Matthias Gehre <matthias.gehre at amd.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M mlir/lib/Tools/PDLL/Parser/Parser.cpp
    M mlir/test/mlir-pdll/Parser/expr-failure.pdll

  Log Message:
  -----------
  [PDLL]: Fix crash when negation doesn't apply to native constraint (#84331)

Fixes that
```
Pattern {
  let tuple = (attr<"3 : i34">);
  not tuple.0;
  erase _;
}
```
would crash the PDLL parser because it expected a native constraint
after `not`.


  Commit: f6b825f51ec8a67c4ace43aaacc27bfd4a78f706
      https://github.com/llvm/llvm-project/commit/f6b825f51ec8a67c4ace43aaacc27bfd4a78f706
  Author: Amara Emerson <amara at apple.com>
  Date:   2024-03-07 (Thu, 07 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/select-atomic-load-store.mir

  Log Message:
  -----------
  Revert "Revert "[AArch64][GlobalISel] Fix incorrect selection of monotonic s32->s64 anyext load.""

Attempt 2. The first one was trying to call isa<> on an MI reference that was free'd.

This reverts commit ee24409c40ff35c3221892d9723331c233ca9f0e.


  Commit: b6a340023d383d1e77cb8d91d92c096f791fa8c0
      https://github.com/llvm/llvm-project/commit/b6a340023d383d1e77cb8d91d92c096f791fa8c0
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/CXX/drs/dr25xx.cpp
    M clang/test/SemaCXX/type-traits.cpp
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  [clang] Respect field alignment in layout compatibility of structs (#84313)

This patch implements
[CWG2586](https://cplusplus.github.io/CWG/issues/2583.html) "Common
initial sequence should consider over-alignment". Note that alignment of
union members doesn't have to match, as layout compatibility of unions
is not defined in terms of common initial sequence
(http://eel.is/c++draft/class.mem.general#25).


  Commit: fb1be9b33ca3ed1b7ea54b15bd77fd868726b57c
      https://github.com/llvm/llvm-project/commit/fb1be9b33ca3ed1b7ea54b15bd77fd868726b57c
  Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
    M llvm/lib/Target/SPIRV/SPIRVISelLowering.cpp
    M llvm/lib/Target/SPIRV/SPIRVISelLowering.h
    M llvm/test/CodeGen/SPIRV/constant/global-constants.ll
    A llvm/test/CodeGen/SPIRV/pointers/bitcast-fix-load.ll
    A llvm/test/CodeGen/SPIRV/pointers/bitcast-fix-store.ll
    M llvm/test/CodeGen/SPIRV/spirv-load-store.ll

  Log Message:
  -----------
  [SPIR-V] Insert a bitcast before load/store instruction to keep SPIR-V code valid (#84069)

This PR introduces a step after instruction selection where instructions
can be traversed from the perspective of their validity from the
specification point of view. The PR adds also a way to correct
load/store when there is a type mismatch contradicting the specification
-- an additional bitcast is inserted to keep types consistent.
Correspondent test cases are added and existing test cases are
corrected.

This PR helps to successfully validate with the `spirv-val` tool
(https://github.com/KhronosGroup/SPIRV-Tools) some output that
previously led to validation errors and crashes of back translation from
SPIRV to LLVM IR from the side of SPIRV Translator project
(https://github.com/KhronosGroup/SPIRV-LLVM-Translator).

The added step of bringing instructions to required by the specification
type correspondence can be (should be and will be) extended beyond
load/store instructions to ensure validity rules of other SPIRV
instructions related to type inference.


  Commit: df9be017b7828e0a1dbb4f1f507a92266b61e680
      https://github.com/llvm/llvm-project/commit/df9be017b7828e0a1dbb4f1f507a92266b61e680
  Author: Marius Brehler <marius.brehler at iml.fraunhofer.de>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
    M mlir/lib/Target/Cpp/TranslateToCpp.cpp
    M mlir/test/Dialect/EmitC/ops.mlir
    A mlir/test/Target/Cpp/unary_operators.mlir

  Log Message:
  -----------
  [mlir][EmitC] Add `unary_{minus,plus}` operators (#84329)

This adds operations for the unary minus and the unary plus operator.


  Commit: d72b7f913300493480f78d4f23104d0f51d50b62
      https://github.com/llvm/llvm-project/commit/d72b7f913300493480f78d4f23104d0f51d50b62
  Author: Balázs Kéri <balazs.keri at ericsson.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
    M clang/test/Analysis/stream-error.c

  Log Message:
  -----------
  [clang][analyzer] Fix StreamChecker `ftell` and `fgetpos` at indeterminate file position. (#84191)

These functions should not be allowed if the file position is
indeterminate (they return the file position).
This condition is now checked, and tests are improved to check it.


  Commit: 9f5be5f0092a636274953389cd5771c45ac0a568
      https://github.com/llvm/llvm-project/commit/9f5be5f0092a636274953389cd5771c45ac0a568
  Author: Aiden Grossman <agrossman154 at yahoo.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

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

  Log Message:
  -----------
  [Github] Add repository checks to release-binaries workflow (#84437)

This patch adds repository checks to the release-binaries workflow jobs.
People were observing that the job was running on a schedule in their
forks. This only happens on old forks, but those probably exist in great
number given how prolific LLVM is. This is also good practice anyways,
on top of solving the direct problem of these jobs running with the cron
schedule on people's forks.


  Commit: 0ddb1221471ae481cc0c7dfd57b71d98e7e60a27
      https://github.com/llvm/llvm-project/commit/0ddb1221471ae481cc0c7dfd57b71d98e7e60a27
  Author: Tina Jung <126699487+TinaAMD at users.noreply.github.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M mlir/docs/Dialects/emitc.md
    M mlir/lib/Conversion/ArithToEmitC/ArithToEmitC.cpp
    M mlir/lib/Conversion/ArithToEmitC/ArithToEmitCPass.cpp
    M mlir/lib/Target/Cpp/CMakeLists.txt
    M mlir/lib/Target/Cpp/TranslateRegistration.cpp
    M mlir/lib/Target/Cpp/TranslateToCpp.cpp
    M mlir/test/Conversion/ArithToEmitC/arith-to-emitc.mlir
    M mlir/test/Target/Cpp/call.mlir
    M mlir/test/Target/Cpp/const.mlir
    M mlir/test/Target/Cpp/for.mlir
    M mlir/test/Target/Cpp/if.mlir
    M mlir/test/Target/Cpp/stdops.mlir
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir][emitc] Arith to EmitC conversion: constants (#83798)

* Add a conversion from `arith.constant` to `emitc.constant`.
* Drop the translation for `arith.constant`s.


  Commit: 4b1910b11d30d2382cb969dc09aa3456659d42fb
      https://github.com/llvm/llvm-project/commit/4b1910b11d30d2382cb969dc09aa3456659d42fb
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/VOP3Instructions.td
    M llvm/test/CodeGen/AMDGPU/GlobalISel/mul-known-bits.i64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/sdivrem.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/udivrem.ll
    M llvm/test/CodeGen/AMDGPU/integer-mad-patterns.ll
    R llvm/test/TableGen/GlobalISelEmitter-multiple-output-reject.td
    M llvm/test/TableGen/GlobalISelEmitter-multiple-output.td
    M llvm/utils/TableGen/GlobalISelEmitter.cpp

  Log Message:
  -----------
  [GlobalISel][AMDGPU] Import patterns with multiple defs (#84171)

Fixes #63216


  Commit: 6a8e6c9a31933dec276fe26e18090832a9c5d0d0
      https://github.com/llvm/llvm-project/commit/6a8e6c9a31933dec276fe26e18090832a9c5d0d0
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M libc/src/__support/FPUtil/dyadic_float.h
    M libc/src/__support/UInt.h
    M libc/src/__support/UInt128.h
    M libc/src/__support/float_to_string.h
    M libc/src/__support/integer_literals.h
    M libc/src/__support/integer_to_string.h
    M libc/src/__support/str_to_float.h
    M libc/src/stdio/printf_core/float_dec_converter.h
    M libc/test/UnitTest/LibcTest.cpp
    M libc/test/UnitTest/LibcTest.h
    M libc/test/UnitTest/StringUtils.h
    M libc/test/UnitTest/TestLogger.cpp
    M libc/test/src/__support/CPP/bit_test.cpp
    M libc/test/src/__support/CPP/limits_test.cpp
    M libc/test/src/__support/integer_literals_test.cpp
    M libc/test/src/__support/integer_to_string_test.cpp
    M libc/test/src/__support/uint_test.cpp

  Log Message:
  -----------
  [libc][NFC] Move `BigInt` out of the `cpp` namespace (#84445)

As noted in
https://github.com/llvm/llvm-project/pull/84035#discussion_r1516817755
only files under the CPP folder should be in the `cpp` namespace.


  Commit: 80a9574d36834f7e0814e603894347e997435d54
      https://github.com/llvm/llvm-project/commit/80a9574d36834f7e0814e603894347e997435d54
  Author: Alex Richardson <alexrichardson at google.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

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

  Log Message:
  -----------
  [compiler-rt] Unbreak GCC builds after bfa6444a332f82843

GCC complains if we pass -Werror=format-security without -Wformat.
Reported at https://github.com/llvm/llvm-project/pull/83779#issuecomment-1985246797


  Commit: 851ab41d33fcbc72bc334dfc2d5d4c0902ccbb23
      https://github.com/llvm/llvm-project/commit/851ab41d33fcbc72bc334dfc2d5d4c0902ccbb23
  Author: OverMighty <its.overmighty at gmail.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M clang/test/Sema/constant-builtins-2.c

  Log Message:
  -----------
  [clang][test] Fix constant __builtin_popcountg test requiring __int128 (#84412)

See
https://lab.llvm.org/buildbot/#/builders/245/builds/21611/steps/5/logs/FAIL__Clang__constant-builtins-2_c.


  Commit: dd36138e9c23c462ce5379a3d83530fb4ebec9e7
      https://github.com/llvm/llvm-project/commit/dd36138e9c23c462ce5379a3d83530fb4ebec9e7
  Author: Mariya Podchishchaeva <mariya.podchishchaeva at intel.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/SemaCXX/lambda-expressions.cpp

  Log Message:
  -----------
  [clang] Error on explicit specialization of lambda call operator (#84343)

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


  Commit: 881df557501d339c7a14b16d68e43da5c732b424
      https://github.com/llvm/llvm-project/commit/881df557501d339c7a14b16d68e43da5c732b424
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

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

  Log Message:
  -----------
  [clang] Fix -Wunused-variable in SemaChecking.cpp (NFC)

llvm-project/clang/lib/Sema/SemaChecking.cpp:19192:15:
error: unused variable 'Field1Parent' [-Werror,-Wunused-variable]
  const Type *Field1Parent = Field1->getParent()->getTypeForDecl();
              ^
llvm-project/clang/lib/Sema/SemaChecking.cpp:19193:15:
error: unused variable 'Field2Parent' [-Werror,-Wunused-variable]
  const Type *Field2Parent = Field2->getParent()->getTypeForDecl();
              ^
2 errors generated.


  Commit: ef1eb0315e5830e2c3ea76d4f1ec6c50842da7bb
      https://github.com/llvm/llvm-project/commit/ef1eb0315e5830e2c3ea76d4f1ec6c50842da7bb
  Author: Sizov Nikita <s.nikita.v at gmail.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    A llvm/test/CodeGen/AArch64/aarch64-known-bits-hadd.ll

  Log Message:
  -----------
  [AArch64] Add neon bici test for haddu and shadd (#84073)

Add neon bici test for haddu and shadd, prerequisite for #76644


  Commit: d36d805373c27103edf13164260ef679efd30dc1
      https://github.com/llvm/llvm-project/commit/d36d805373c27103edf13164260ef679efd30dc1
  Author: David Green <david.green at arm.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseN2.td
    M llvm/unittests/Target/AArch64/AArch64SVESchedPseudoTest.cpp

  Log Message:
  -----------
  [AArch64] Ensure Neoverse-N2 scheduling model includes all SVE pseudos.

Similar to #84187, this enables the existing test we have for checking the
scheduling info of the pseudos matches the real instructions, and adjusts the
scheduling info in the NeoverseN2 model to make sure all cases were handled.


  Commit: 3a62edcf527bfc927f148c99b9d37d3d199db611
      https://github.com/llvm/llvm-project/commit/3a62edcf527bfc927f148c99b9d37d3d199db611
  Author: zhongyunde 00443407 <zhongyunde at huawei.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    A llvm/test/CodeGen/AArch64/scalar-mla-mls.ll

  Log Message:
  -----------
  [AArch64] MachineCombiner msub matching

Pattern should be sorted in priority order since the pattern evalutor
stops checking as soon as it finds a faster sequence.
so for a * b - c * d, we prefer to match the 2nd operands of sub,
which can be use msub to fold them.

Refer to https://www.slideshare.net/chimerawang/instruction-combine-in-llvm

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


  Commit: a110a1c0ed9850be168cd0e29f05179e80941b04
      https://github.com/llvm/llvm-project/commit/a110a1c0ed9850be168cd0e29f05179e80941b04
  Author: zhongyunde 00443407 <zhongyunde at huawei.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/test/CodeGen/AArch64/scalar-mla-mls.ll

  Log Message:
  -----------
  [AArch64] MachineCombiner msub matching for i64


  Commit: 860a40057da2fbb626fdf17feec18070d95b687b
      https://github.com/llvm/llvm-project/commit/860a40057da2fbb626fdf17feec18070d95b687b
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    M flang/lib/Lower/OpenACC.cpp
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp

  Log Message:
  -----------
  [flang][NFC] move loadIfRef to FIRBuilder (#84306)

This will be useful for OpenMP too.

I changed the definition slightly to use `fir::isa_ref_type` (which also
includes llvm pointers) because I think it reads better using the common
type helpers. There shouldn't be any llvm pointers in lowering so this
isn't a functional change.


  Commit: c76d853c176231b991cfc744e7cb69443ddc2268
      https://github.com/llvm/llvm-project/commit/c76d853c176231b991cfc744e7cb69443ddc2268
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M flang/lib/Optimizer/CodeGen/TBAABuilder.cpp

  Log Message:
  -----------
  [flang][TBAABuilder] not all loads and stores are inside of functions (#84305)

TBAA builder assumed that all loads/stores are inside of functions and
hit an assertion once it found loads and stores inside of an
omp::ReductionDeclareOp.

For now just don't add TBAA tags to those loads and stores. They would
end up in a different TBAA tree to the host function after
OpenMPIRBuilder inlines them anyway so there isn't an easy way of making
this work.


  Commit: 419e8da2dadc7eaa1499935f55303c3f132948c4
      https://github.com/llvm/llvm-project/commit/419e8da2dadc7eaa1499935f55303c3f132948c4
  Author: Christian Sigg <chsigg at users.noreply.github.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

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

  Log Message:
  -----------
  [mlir][bazel] Fix BUILD after 5669660f37ef1800f4a7852577364b024d75e3d8


  Commit: dd547d5cca64c1f97d00af0c3a555c2b341161b0
      https://github.com/llvm/llvm-project/commit/dd547d5cca64c1f97d00af0c3a555c2b341161b0
  Author: Christian Sigg <chsigg at users.noreply.github.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

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

  Log Message:
  -----------
  [mlir][bazel] Fix BUILD after 5669660f37ef1800f4a7852577364b024d75e3d8

Second attempt.


  Commit: 0f8cb6818d788c34d70d586f701469a5adabfce1
      https://github.com/llvm/llvm-project/commit/0f8cb6818d788c34d70d586f701469a5adabfce1
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M lldb/docs/resources/build.rst

  Log Message:
  -----------
  [lldb][Docs] Update the build guide

* gmake is needed on FreeBSD
* pkg can install libxml2 on FreeBSD
* Make the swig note into an RST note box.


  Commit: 50633868538d4fd6875a7de57804b3dde5c86108
      https://github.com/llvm/llvm-project/commit/50633868538d4fd6875a7de57804b3dde5c86108
  Author: Christian Sigg <chsigg at users.noreply.github.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

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

  Log Message:
  -----------
  [clang][bazel] Fix BUILD after da00c60dae0040185dc45039c4397f6e746548e9


  Commit: 005e182ecbf0099005f7d3c33c2b7556abb515e4
      https://github.com/llvm/llvm-project/commit/005e182ecbf0099005f7d3c33c2b7556abb515e4
  Author: Christian Sigg <chsigg at users.noreply.github.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

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

  Log Message:
  -----------
  [clang][bazel] Fix BUILD after da00c60dae0040185dc45039c4397f6e746548e9

Second attempt. This also reverts 50633868538d4fd6875a7de57804b3dde5c86108.


  Commit: ee94bd20ba09975de493675dd6a0b7fc7dd5cece
      https://github.com/llvm/llvm-project/commit/ee94bd20ba09975de493675dd6a0b7fc7dd5cece
  Author: Krystian Stasiowski <sdkrystian at gmail.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    R clang/test/SemaTemplate/unqual-unresolved-using-value.cpp

  Log Message:
  -----------
  Revert "[Clang][Sema] Fix crash when using name of UnresolvedUsingValueDecl with template arguments (#83842)" (#84457)

This reverts commit a642eb89bdaf10c6b4994fc1187de27b441236ed (see #83842)


  Commit: 6a0618a0289cb0c23ef3e5c820418650cc1d0fdc
      https://github.com/llvm/llvm-project/commit/6a0618a0289cb0c23ef3e5c820418650cc1d0fdc
  Author: Amirreza Ashouri <ar.ashouri999 at gmail.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M clang/test/SemaCXX/type-traits.cpp

  Log Message:
  -----------
  [clang][NFC] Refactor `clang/test/SemaCXX/type-traits.cpp` to use modern `static_assert` (#77584)

static_assert is supported in all modes, so the T/F macros aren't needed
anymore.


  Commit: 235332150d52d11b340a10be1bb88432d2cf4179
      https://github.com/llvm/llvm-project/commit/235332150d52d11b340a10be1bb88432d2cf4179
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M lldb/docs/resources/build.rst

  Log Message:
  -----------
  [lldb][Docs] Add Curses version note to build page

This explains a thing that hit me on FreeBSD because the base system
has an ncursesw at one version and I installed from pkg another
version that was simply ncurses (no wide char support).

For whatever reason, when we pass -lcurses to the linker it ends up
picking bits of both installs. This led to lldb crashing immediately
if you tried to use the `gui` command.

In a way that gave little information but I stumbled onto
https://github.com/vifm/vifm/issues/325 which is very similar.

```
ec2-user at freebsd:~/build-llvm $ ldd ./bin/lldb | grep curses
	libncursesw.so.9 => /lib/libncursesw.so.9 (0x6a515206e000)
	libncurses.so.6 => /usr/local/lib/libncurses.so.6 (0x6a5158e86000)
```

We should only see one version, and it and libpanel etc should
all have "w" or not have "w". This was not the case for my build.

What I can see from the CMake side seemed fine, it found the pkg
installed ncurses in /usr/local. Something else must decide that
-lcurses should pull in the other one.

Regardless, I don't know how to fix that but the solution for most
people is just not to add another ncurses if they already have one.
So I've added a note saying so, and how to check what your lldb
is using.


  Commit: 4d478bcb4fc4fcf6532b725a0d070cb0c0cf9430
      https://github.com/llvm/llvm-project/commit/4d478bcb4fc4fcf6532b725a0d070cb0c0cf9430
  Author: Dmitry Chernenkov <dmitryc at google.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

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

  Log Message:
  -----------
  [bazel] Add support_uint dep in libc unittest


  Commit: bd6eb54886ad12fb523e924e7291abfa2b010e3c
      https://github.com/llvm/llvm-project/commit/bd6eb54886ad12fb523e924e7291abfa2b010e3c
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    A llvm/test/CodeGen/AArch64/fp-veclib-expansion.ll

  Log Message:
  -----------
  [LLVM][CodeGen] Teach SelectionDAG how to expand FREM to a vector math call. (#83859)

This removes, at least when a vector library is available, a failure
case for scalable vectors. Doing so means we can confidently cost vector
FREM instructions without making an assumption that later passes will
transform the IR before it gets to the code generator.

NOTE: Whilst only FREM has been implemented the same mechanism
can be used for the other libm related ISD nodes.


  Commit: 5d98d8822c69bc9d32c25190beaf1eaccf9ddd37
      https://github.com/llvm/llvm-project/commit/5d98d8822c69bc9d32c25190beaf1eaccf9ddd37
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

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

  Log Message:
  -----------
  [Sema] Avoid unnecessary copy on MultiLevelTemplateArgumentList. NFC (#84459)

We don't modify the MLTAL parameter in `SetupConstraintScope`, and it is
better if we don't copy the 120-byte object each time we call the
function.


  Commit: 430de48a61369ea41efe1cbb98654a86568ae95f
      https://github.com/llvm/llvm-project/commit/430de48a61369ea41efe1cbb98654a86568ae95f
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/Utils.cpp

  Log Message:
  -----------
  [GISel] Simplify getConstantVRegValWithLookThrough. NFC.


  Commit: d74287226ac8c144a2700ba589d34a8bebd85d0d
      https://github.com/llvm/llvm-project/commit/d74287226ac8c144a2700ba589d34a8bebd85d0d
  Author: Kiran Chandramohan <kiran.chandramohan at arm.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M flang/lib/Optimizer/CodeGen/Target.cpp
    A flang/test/Fir/target-complex16.f90

  Log Message:
  -----------
  [Flang][AArch64] Add support for complex16 params/returns (#84217)

Fixes #84088


  Commit: 1ca8092e87aea58f1c3752d03c20bdfc4259e409
      https://github.com/llvm/llvm-project/commit/1ca8092e87aea58f1c3752d03c20bdfc4259e409
  Author: Shengchen Kan <shengchen.kan at intel.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/include/llvm/Support/X86DisassemblerDecoderCommon.h
    M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
    M llvm/lib/Target/X86/Disassembler/X86Disassembler.cpp
    M llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.h
    M llvm/lib/Target/X86/MCTargetDesc/X86BaseInfo.h
    M llvm/lib/Target/X86/MCTargetDesc/X86InstPrinterCommon.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86InstPrinterCommon.h
    M llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp
    M llvm/lib/Target/X86/X86InstrAsmAlias.td
    A llvm/lib/Target/X86/X86InstrConditionalCompare.td
    M llvm/lib/Target/X86/X86InstrFormats.td
    M llvm/lib/Target/X86/X86InstrInfo.td
    M llvm/lib/Target/X86/X86InstrOperands.td
    A llvm/test/MC/Disassembler/X86/apx/ccmp.txt
    M llvm/test/MC/Disassembler/X86/apx/reverse-encoding.txt
    A llvm/test/MC/X86/apx/ccmp-att-error.s
    A llvm/test/MC/X86/apx/ccmp-att.s
    A llvm/test/MC/X86/apx/ccmp-intel-error.s
    A llvm/test/MC/X86/apx/ccmp-intel.s
    M llvm/test/TableGen/x86-fold-tables.inc
    M llvm/tools/llvm-exegesis/lib/X86/Target.cpp
    M llvm/utils/TableGen/X86RecognizableInstr.cpp
    M llvm/utils/TableGen/X86RecognizableInstr.h

  Log Message:
  -----------
  [X86][MC] Support encoding/decoding for APX CCMP/CTEST (#83863)

APX assembly syntax recommendations:
  https://cdrdv2.intel.com/v1/dl/getContent/817241

NOTE:
The change in llvm/tools/llvm-exegesis/lib/X86/Target.cpp is for test
LLVM ::
tools/llvm-exegesis/X86/latency/latency-SETCCr-cond-codes-sweep.s

For `SETcc`, llvm-exegesis would randomly choose 1 other instruction to
test with `SETcc`, after selecting the instruction, llvm-exegesis would
check if the operand is initialized and valid, if not
`randomizeTargetMCOperand` would choose a value for invalid operand, it
misses support for condition code operand, which cause the flaky failure
after `CCMP` supported.

llvm-exegesis can choose `CCMP` without specifying ccmp feature b/c it
use `MCSubtarget` and only16/32/64 bit is considered.
llvm-exegesis doesn't choose other instructions b/c requirement in
`hasAliasingRegistersThrough`: the instruction should use GPR (defined
by `SETcc`) and define `EFLAGS` (used by `SETcc`).


  Commit: 4d1d1271b8612c72e0020c9d9f42d2ef70f717e7
      https://github.com/llvm/llvm-project/commit/4d1d1271b8612c72e0020c9d9f42d2ef70f717e7
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M clang/include/clang/Basic/Cuda.h
    M clang/lib/Driver/Driver.cpp

  Log Message:
  -----------
  [HIP] Make the HIP default architecture use the enum value (#84400)

Summary:
This default enum is used in other places, we should keep it consistent.


  Commit: 7457e2c1535acd548d2619dfb34eb93d27d15908
      https://github.com/llvm/llvm-project/commit/7457e2c1535acd548d2619dfb34eb93d27d15908
  Author: Balazs Benics <benicsbalazs at gmail.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M clang/docs/LibASTMatchersReference.html
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/ASTMatchers/ASTMatchers.h
    M clang/include/clang/Testing/CommandLineArgs.h
    M clang/include/clang/Testing/TestClangConfig.h
    M clang/lib/ASTMatchers/Dynamic/Registry.cpp
    M clang/lib/Testing/CommandLineArgs.cpp
    M clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
    M clang/unittests/ASTMatchers/ASTMatchersNodeTest.cpp
    M clang/unittests/ASTMatchers/ASTMatchersTest.h

  Log Message:
  -----------
  [clang][ASTMatcher] Add matchers for isExplicitObjectMemberFunction() (#84446)

Note that this patch will be necessary to fix
`forEachArgumentWithParam()` and `forEachArgumentWithParamType()`
matchers for deducing "this"; which is my true motivation. There the bug
is that with explicit obj params, one should not adjust the number of
arguments in presence of `CXXMethodDecls`, and this causes a mismatch
there mapping the argument to the wrong param. But, I'll come back there
once we have this matcher.


  Commit: 9baa4140f2b633a8d075f859690139ef2d79b78b
      https://github.com/llvm/llvm-project/commit/9baa4140f2b633a8d075f859690139ef2d79b78b
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M libc/src/__support/UInt.h

  Log Message:
  -----------
  [libc][NFC] Simplify `BigInt::mul` (#84468)


  Commit: aa6e7a61c56823afb4db65e42af1e6ce26de6186
      https://github.com/llvm/llvm-project/commit/aa6e7a61c56823afb4db65e42af1e6ce26de6186
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M libc/src/__support/CMakeLists.txt
    M libc/src/__support/UInt.h
    R libc/src/__support/integer_utils.h
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][NFC] Remove integer_utils.h (#84466)

Its sole user is `BigInt` so moving `full_mul` inside UInt.h.


  Commit: 912ea6e335ca6174b3433fd960ed8b592794361b
      https://github.com/llvm/llvm-project/commit/912ea6e335ca6174b3433fd960ed8b592794361b
  Author: Congcong Cai <congcongcai0907 at 163.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/UnusedReturnValueCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/unused-return-value.rst
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/unused-return-value.cpp

  Log Message:
  -----------
  [clang-tidy]avoid bugprone-unused-return-value false positive for function with the same prefix as the default argument (#84333)


  Commit: 10b01563da1d7c98d5fff6aa8b4a78be56a8099d
      https://github.com/llvm/llvm-project/commit/10b01563da1d7c98d5fff6aa8b4a78be56a8099d
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp

  Log Message:
  -----------
  [flang][HLFIR] Fix use-after-free when rewriting users in `canonicalize` (#84371)

Rewriting an op can invalidate the operator range being iterated on.
Store the users in a separate list, and iterate over the list instead.

This was detected by address sanitizer.


  Commit: 65524fcb5d4e5f4f5450c38d3e075cce192586bb
      https://github.com/llvm/llvm-project/commit/65524fcb5d4e5f4f5450c38d3e075cce192586bb
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M flang/lib/Optimizer/CodeGen/BoxedProcedure.cpp

  Log Message:
  -----------
  [flang][CodeGen] Replace correct op in BoxedProcedurePass (#84375)


  Commit: aa26faf05ecd7ee77487772fe0406f2de1df0dac
      https://github.com/llvm/llvm-project/commit/aa26faf05ecd7ee77487772fe0406f2de1df0dac
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M flang/unittests/Frontend/FrontendActionTest.cpp

  Log Message:
  -----------
  [flang][unittests] Fix buffer overrun in FrontendActionTest (#84381)

When` SmallVector<char>` is used as a backing storage, it can't be
assumed to end with a \x0. When creating a `StringRef` from it, pass the
length explicitly.

This was detected by address sanitizer.


  Commit: 141ebdd242f35bfebc576c51d8b60182ae4eac2d
      https://github.com/llvm/llvm-project/commit/141ebdd242f35bfebc576c51d8b60182ae4eac2d
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M flang/lib/Semantics/rewrite-directives.cpp
    A llvm/include/llvm/Frontend/OpenMP/OMP.h
    M llvm/include/llvm/Frontend/OpenMP/OMPConstants.h
    M llvm/lib/Frontend/OpenMP/OMP.cpp

  Log Message:
  -----------
  [Frontend][OpenMP] introduce OMP.h header file, use it instead of OMP… (#84188)

….h.inc

The consumers of OpenMP-related definitions include a TableGen-generated
file OMP.h.inc. Having a separate OMP.h allows putting additional
declarations in there that are not auto-generated.

This patch is NFC.


  Commit: 7415524b45392651969374c067041daa82dc89e7
      https://github.com/llvm/llvm-project/commit/7415524b45392651969374c067041daa82dc89e7
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/SemaInit.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/test/SemaCXX/cxx17-compat.cpp
    M clang/test/SemaCXX/cxx1z-class-template-argument-deduction.cpp
    A clang/test/SemaCXX/cxx20-ctad-type-alias.cpp
    M clang/www/cxx_status.html

  Log Message:
  -----------
  [clang] Implement CTAD for type alias template. (#77890)

Fixes #54051

This patch implements the C++20 feature -- CTAD for alias templates (P1814R0, specified in https://eel.is/c++draft/over.match.class.deduct#3). It is an initial patch:
- it cover major pieces, thus it works for most cases;
- the big missing piece is to implement the associated constraints (over.match.class.deduct#3.3) for the synthesized deduction guides, see the FIXME in code and tests;
- Some enhancements on the TreeTransform&TemplateInstantiator to allow performing instantiation on `BuildingDeductionGuides` mode;


  Commit: d2dff43170858459e03f9c8c764bf472ae7a59fa
      https://github.com/llvm/llvm-project/commit/d2dff43170858459e03f9c8c764bf472ae7a59fa
  Author: paperchalice <liujunchang97 at outlook.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

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

  Log Message:
  -----------
  [CodeGen] Skip declaration in ModuleToMachineFunctionPassAdaptor (#84417)

Like ModuleToFunctionPassAdaptor.

---------

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


  Commit: 7c21495fee927359d642793d2eeb24696a301262
      https://github.com/llvm/llvm-project/commit/7c21495fee927359d642793d2eeb24696a301262
  Author: AtariDreams <83477269+AtariDreams at users.noreply.github.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/ReachingDefAnalysis.cpp
    M llvm/lib/Target/AMDGPU/SIOptimizeExecMasking.cpp
    M llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
    M llvm/lib/Target/Hexagon/HexagonGenMux.cpp
    M llvm/lib/Target/SystemZ/SystemZElimCompare.cpp
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
    M llvm/lib/Target/SystemZ/SystemZShortenInst.cpp
    M llvm/lib/Target/X86/X86FloatingPoint.cpp

  Log Message:
  -----------
  Reapply "Convert many LivePhysRegs uses to LiveRegUnits" (#84338)

This only converts the instances where all that is needed is to change
the variable type name.

Basically, anything that involves a function that LiveRegUnits does not
directly have was skipped to play it safe.

Reverts
https://github.com/llvm/llvm-project/commit/7a0e222a17058a311b69153d0b6f1b4459414778


  Commit: d2c49f13d8e8a5f7257b217dfe2c44ecbeb5a405
      https://github.com/llvm/llvm-project/commit/d2c49f13d8e8a5f7257b217dfe2c44ecbeb5a405
  Author: AtariDreams <83477269+AtariDreams at users.noreply.github.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:

  Log Message:
  -----------
  [Hexagon] Use LiveRegUnits (#84112)


  Commit: f07157eb2e8212068cb9469d77f9bc3779ef2ea4
      https://github.com/llvm/llvm-project/commit/f07157eb2e8212068cb9469d77f9bc3779ef2ea4
  Author: Balazs Benics <benicsbalazs at gmail.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M clang/unittests/AST/MatchVerifier.h

  Log Message:
  -----------
  Fixup 7457e2c1535acd54 by adding a switch case

This fixups 7457e2c1535acd548d2619dfb34eb93d27d15908 as I forgot one
switch to update, which then broke this build bot:
https://lab.llvm.org/buildbot/#/builders/57/builds/33272


  Commit: ba2236d3000645d3127f972aa7ac1844c47e299c
      https://github.com/llvm/llvm-project/commit/ba2236d3000645d3127f972aa7ac1844c47e299c
  Author: Will Hawkins <hawkinsw at obs.cr>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M libcxx/test/std/ranges/range.adaptors/range.all/all.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.chunk.by/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.common.view/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.drop.while/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.drop/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.elements/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.filter/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.lazy.split/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.reverse/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.split/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.take.while/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.take/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/adaptor.pass.cpp
    M libcxx/test/support/test_range.h

  Log Message:
  -----------
  [libcxx][NFC] Consolidate testing concept CanBePiped (#80154)

Almost every test needed a CanBePiped concept and each implemented it
separately, but identically. Consolidate all implementations into
test_range.h.


  Commit: 01e5d4609bed5db52890cb66a91c65e9bb6a122f
      https://github.com/llvm/llvm-project/commit/01e5d4609bed5db52890cb66a91c65e9bb6a122f
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/docs/SourceLevelDebugging.rst

  Log Message:
  -----------
  [RemoveDIs] Add documentation for IR debug records (#81156)

This patch adds minimal documentation for the IR representation of the
RemoveDIs model of debug info. This patch assumes
that the default for all cases is still debug intrinsic functions, and
so does not update all existing text to refer to debug records, but only
adds a section in the LangRef and SourceLevelDebugging documents to
explain the new format.


  Commit: 23c397c7c9407deea3398e787f2901f86207dc11
      https://github.com/llvm/llvm-project/commit/23c397c7c9407deea3398e787f2901f86207dc11
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M libc/src/__support/CMakeLists.txt
    M libc/src/__support/CPP/CMakeLists.txt
    M libc/src/__support/CPP/limits.h
    M libc/src/__support/CPP/type_traits/is_integral.h
    M libc/src/__support/CPP/type_traits/make_signed.h
    M libc/src/__support/CPP/type_traits/make_unsigned.h
    M libc/src/__support/UInt.h
    M libc/src/__support/UInt128.h
    M libc/src/__support/macros/properties/types.h
    M libc/test/UnitTest/CMakeLists.txt
    M libc/test/UnitTest/LibcTest.cpp
    M libc/test/UnitTest/TestLogger.cpp
    M libc/test/src/__support/CMakeLists.txt
    M libc/test/src/__support/CPP/CMakeLists.txt
    M libc/test/src/__support/CPP/bit_test.cpp
    M libc/test/src/__support/CPP/limits_test.cpp
    M libc/test/src/__support/integer_literals_test.cpp
    M libc/test/src/__support/uint_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/UnitTest/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/src/__support/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/src/__support/CPP/BUILD.bazel

  Log Message:
  -----------
  [libc] Provide `LIBC_TYPES_HAS_INT128` (#84149)

Umbrella bug #83182


  Commit: cb6f657a70f7a8d6ecd4fcc2101550a7400f94a7
      https://github.com/llvm/llvm-project/commit/cb6f657a70f7a8d6ecd4fcc2101550a7400f94a7
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M clang/test/Driver/cuda-bad-arch.cu
    M clang/test/Driver/cuda-external-tools.cu
    M clang/test/Driver/cuda-phases.cu
    M clang/test/Driver/hip-binding.hip
    M clang/test/Driver/hip-cuid-hash.hip
    M clang/test/Driver/hip-cuid.hip
    M clang/test/Driver/hip-dependent-options.hip
    M clang/test/Driver/hip-device-compile.hip
    M clang/test/Driver/hip-link-bc-to-bc.hip
    M clang/test/Driver/hip-link-bundle-archive.hip
    M clang/test/Driver/hip-link-save-temps.hip
    M clang/test/Driver/hip-link-shared-library.hip
    M clang/test/Driver/hip-link-static-library.hip
    M clang/test/Driver/hip-offload-compress-zlib.hip
    M clang/test/Driver/hip-offload-compress-zstd.hip
    M clang/test/Driver/hip-output-file-name.hip
    M clang/test/Driver/hip-partial-link.hip
    M clang/test/Driver/hip-phases.hip
    M clang/test/Driver/hip-rdc-device-only.hip
    M clang/test/Driver/hip-target-id.hip
    M clang/test/Driver/hip-toolchain-features.hip
    M clang/test/Driver/hip-toolchain-rdc-separate.hip
    M clang/test/Driver/hip-toolchain-rdc-static-lib.hip
    M clang/test/Driver/hip-toolchain-rdc.hip
    M clang/test/Driver/hip-unbundle-preproc.hipi
    M clang/test/Driver/hipspv-toolchain-rdc.hip
    M clang/test/Driver/hipspv-toolchain.hip
    M clang/test/Driver/lto.cu
    M clang/test/Driver/thinlto.cu

  Log Message:
  -----------
  [CUDA][HIP][NFC] Precommit new driver changes to tests

Summary:
A lot of these tests implicitly rely on `--no-offload-new-driver` a
patch in the future will change the default so this patch makes it
explicit in locations where it matters.


  Commit: ce683273aa3dbdd7bce2168c29b1a7652ce73608
      https://github.com/llvm/llvm-project/commit/ce683273aa3dbdd7bce2168c29b1a7652ce73608
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86SchedIceLake.td
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx1.s
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx2.s
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-sse41.s

  Log Message:
  -----------
  [X86] PBLENDW instructions can run on Port1 or Port5

When we copied the SkylakeServer model we missed this diff

Confirmed with uops.info and Agner


  Commit: c4a89f1538bbcac19628570b6b489cd9ce4265e2
      https://github.com/llvm/llvm-project/commit/c4a89f1538bbcac19628570b6b489cd9ce4265e2
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M flang/lib/Optimizer/Transforms/OMPFunctionFiltering.cpp

  Log Message:
  -----------
  [flang][OpenMP] Fix use-after-free in OMPFunctionFiltering (#84373)

When walking over functions (in pre-order), if the function being
visited needs to be erased, skip visiting its regions.

This was detected by address sanitizer.


  Commit: e0d49066c1acfa4ae0f0e8ea49b0f0b6bb3f1a25
      https://github.com/llvm/llvm-project/commit/e0d49066c1acfa4ae0f0e8ea49b0f0b6bb3f1a25
  Author: Andreas Jonson <andjo403 at hotmail.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/include/llvm/ADT/FoldingSet.h
    M llvm/include/llvm/AsmParser/LLParser.h
    M llvm/include/llvm/Bitcode/LLVMBitCodes.h
    M llvm/include/llvm/IR/Attributes.h
    M llvm/include/llvm/IR/Attributes.td
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/IR/AttributeImpl.h
    M llvm/lib/IR/Attributes.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/Transforms/Utils/CodeExtractor.cpp
    A llvm/test/Assembler/range-attribute-invalid-range.ll
    A llvm/test/Assembler/range-attribute-invalid-type.ll
    M llvm/test/Bitcode/attributes.ll
    A llvm/test/Verifier/range-attr.ll
    M llvm/utils/TableGen/Attributes.cpp

  Log Message:
  -----------
  [IR] Add new Range attribute using new ConstantRange Attribute type (#83171)

implementation as discussed in
https://discourse.llvm.org/t/rfc-metadata-attachments-for-function-arguments/76420


  Commit: 2b4d8188b263019477fa996b74b3da8a87a0e04b
      https://github.com/llvm/llvm-project/commit/2b4d8188b263019477fa996b74b3da8a87a0e04b
  Author: Lukacma <Marian.Lukac at arm.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M clang/include/clang/Basic/arm_sve.td
    A clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_dupq.c
    M clang/test/Sema/aarch64-sve2p1-intrinsics/acle_sve2p1_imm.cpp
    M llvm/include/llvm/IR/IntrinsicsAArch64.td
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/lib/Target/AArch64/SVEInstrFormats.td
    A llvm/test/CodeGen/AArch64/sve2p1-intrinsics-dupq.ll

  Log Message:
  -----------
  [Clang][LLVM][SVE2.1]  Created intrinsics for DUPQ instr. (#83260)

This patch adds clang and llvm support for following intrinsic and maps
it to DUPQ instruction:
```
   // Variants are also available for:
   // _s8, _u16, _s16, _u32, _s32, _u64, _s64
   // _bf16, _f16, _f32, _f64
   svuint8_t svdup_laneq[_u8](svuint8_t zn, uint64_t imm_idx);
```


  Commit: 29afd64615c24af9d89f3e1e8d24e9827a34224c
      https://github.com/llvm/llvm-project/commit/29afd64615c24af9d89f3e1e8d24e9827a34224c
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M libc/include/llvm-libc-macros/inttypes-macros.h
    M libc/spec/stdc.td

  Log Message:
  -----------
  [libc][c23] make inttypes.h compat with c23 (#84493)


  Commit: b46f980454d5ceafc8dab37dbdb1011e333ae6de
      https://github.com/llvm/llvm-project/commit/b46f980454d5ceafc8dab37dbdb1011e333ae6de
  Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M clang/lib/Sema/SemaCUDA.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/test/CodeGenCUDA/host-used-extern.cu

  Log Message:
  -----------
  [HIP] fix host-used external kernel (#83870)

In -fgpu-rdc mode, when an external kernel is used by a host function
with weak_odr linkage (e.g. explicitly instantiated template function),
the kernel should not be marked as host-used external kernel, since the
host function may be dropped by the linker. Mark the external kernel as
host-used external kernel will force a reference to the external kernel,
which the user may not define in other TU.

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


  Commit: 5620542e4d19f794a0d6bd1bd1861bcedd7a788a
      https://github.com/llvm/llvm-project/commit/5620542e4d19f794a0d6bd1bd1861bcedd7a788a
  Author: Antonio Frighetto <me at antoniofrighetto.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/include/llvm/IR/Operator.h
    M llvm/lib/Analysis/LazyValueInfo.cpp

  Log Message:
  -----------
  [IR] Add `getNoWrapKind` method for `OverflowingBinaryOperator` (NFC)


  Commit: 9d5fdad7e5002dbe087bbf0a78ffe9423b6aab56
      https://github.com/llvm/llvm-project/commit/9d5fdad7e5002dbe087bbf0a78ffe9423b6aab56
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M libcxx/test/libcxx/module_std.gen.py
    M libcxx/test/libcxx/module_std_compat.gen.py

  Log Message:
  -----------
  [libc++] Disable module_std and module_std_compat tests

Those have been crippling the CI for over a week now. This is the only
solution I see until we gain a better understanding of why they fail.
Otherwise all other patches are blocked on these spurious failures in
the stage1 of the CI.


  Commit: 0456a32a2a622a73e01b01c65c21973ac5a689fc
      https://github.com/llvm/llvm-project/commit/0456a32a2a622a73e01b01c65c21973ac5a689fc
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/BUFInstructions.td

  Log Message:
  -----------
  [AMDGPU] Simplify renamed BUF instruction definitions. NFC. (#84503)

Use optional arguments instead of separate (multi)classes for renamed
instructions.


  Commit: 35d3b33ba5c9b90443ac985f2521b78f84b611fe
      https://github.com/llvm/llvm-project/commit/35d3b33ba5c9b90443ac985f2521b78f84b611fe
  Author: Andreas Fertig <andy at cppinsights.io>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/SemaCoroutine.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    A clang/test/SemaCXX/gh84064-1.cpp
    A clang/test/SemaCXX/gh84064-2.cpp

  Log Message:
  -----------
  [C++20][Coroutines] Lambda-coroutine with operator new in promise_type (#84193)

Fix #84064

According to http://eel.is/c++draft/dcl.fct.def.coroutine#9 the first
parameter for overload resolution of `operator new` is `size_t` followed
by the arguments of the coroutine function.
http://eel.is/c++draft/dcl.fct.def.coroutine#4 states that the first
argument is the lvalue of `*this` if the coroutine is a member function.

Before this patch, Clang handled class types correctly but ignored
lambdas. This patch adds support for lambda coroutines with a
`promise_type` that implements a custom `operator new`.

The patch does consider C++23 `static operator()`, which already worked
as there is no `this` parameter.


  Commit: 81601391369c267216199db3f7fcb9864ccf6fec
      https://github.com/llvm/llvm-project/commit/81601391369c267216199db3f7fcb9864ccf6fec
  Author: Jonathan Thackray <jonathan.thackray at arm.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/test/Driver/aarch64-mcpu.c
    M clang/test/Driver/arm-cortex-cpus-2.c
    M clang/test/Misc/target-invalid-cpu-note.c
    M llvm/include/llvm/TargetParser/AArch64TargetParser.h
    M llvm/include/llvm/TargetParser/ARMTargetParser.def
    M llvm/lib/Target/AArch64/AArch64.td
    M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
    M llvm/lib/Target/AArch64/AArch64Subtarget.h
    M llvm/lib/Target/ARM/ARM.td
    M llvm/lib/Target/ARM/ARMSubtarget.cpp
    M llvm/lib/Target/ARM/ARMSubtarget.h
    M llvm/lib/TargetParser/Host.cpp
    M llvm/unittests/TargetParser/TargetParserTest.cpp

  Log Message:
  -----------
  Add support for Arm Cortex A78AE CPU (#84485)

Add support for Arm Cortex A78AE CPU

Technical Reference Manual for Arm Cortex A78AE:
   https://developer.arm.com/documentation/101779/0003

Fixes #84450


  Commit: abfac563f5b5a123e4bf773c3a09777e6fc4f50c
      https://github.com/llvm/llvm-project/commit/abfac563f5b5a123e4bf773c3a09777e6fc4f50c
  Author: Boian Petkantchin <boian.petkantchin at amd.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Mesh/Transforms/Passes.td
    M mlir/lib/Dialect/Mesh/Transforms/ShardingPropagation.cpp
    M mlir/lib/Dialect/Mesh/Transforms/Spmdization.cpp
    M mlir/test/Dialect/Linalg/mesh-spmdization.mlir
    M mlir/test/Dialect/Mesh/sharding-propagation.mlir
    M mlir/test/Dialect/Mesh/spmdization.mlir

  Log Message:
  -----------
  [mlir][mesh] Make sharding propagation and spmdization work on FuncOpInterface (#84415)

Make them more general instead of only supporting `func::FuncOp`.


  Commit: c54e0524eeffcf2c5428cd2bc0449a1989e82cd8
      https://github.com/llvm/llvm-project/commit/c54e0524eeffcf2c5428cd2bc0449a1989e82cd8
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    M clang/test/SemaOpenACC/compute-construct-ast.cpp

  Log Message:
  -----------
  [OpenACC] Add Compute Context Serialization test, fix a bug

While working on a followup patch, I discovered we didn't
serialize/deserialize the Compute Context properly, so this patch fixes
it, then adds a PCH mode to the ast test.


  Commit: 37f3661f4e8d180dc702ab42fa015bc3c21ceb51
      https://github.com/llvm/llvm-project/commit/37f3661f4e8d180dc702ab42fa015bc3c21ceb51
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M libc/docs/talks.rst

  Log Message:
  -----------
  [libc][docs] add slides link for Tue's 2023 talk (#84516)


  Commit: 599ab6d63e5b12fd9c421140653f0510f0d29eab
      https://github.com/llvm/llvm-project/commit/599ab6d63e5b12fd9c421140653f0510f0d29eab
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M libcxx/test/libcxx/module_std.gen.py
    M libcxx/test/libcxx/module_std_compat.gen.py

  Log Message:
  -----------
  Revert "[libc++] Disable module_std and module_std_compat tests"

It looks like that broke the CI even more. Reverting until I can
investigate.


  Commit: 60d7bf3dbe6c32ed67ed65cb15727cddd9531979
      https://github.com/llvm/llvm-project/commit/60d7bf3dbe6c32ed67ed65cb15727cddd9531979
  Author: lntue <35648136+lntue at users.noreply.github.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/math/index.rst
    M libc/spec/gnu_ext.td
    M libc/spec/stdc.td
    M libc/src/math/CMakeLists.txt
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/llrintf128.cpp
    A libc/src/math/generic/llroundf128.cpp
    A libc/src/math/generic/lrintf128.cpp
    A libc/src/math/generic/lroundf128.cpp
    A libc/src/math/generic/rintf128.cpp
    A libc/src/math/llrintf128.h
    A libc/src/math/llroundf128.h
    A libc/src/math/lrintf128.h
    A libc/src/math/lroundf128.h
    A libc/src/math/rintf128.h
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/llrintf128_test.cpp
    A libc/test/src/math/smoke/llroundf128_test.cpp
    A libc/test/src/math/smoke/lrintf128_test.cpp
    A libc/test/src/math/smoke/lroundf128_test.cpp
    A libc/test/src/math/smoke/rintf128_test.cpp

  Log Message:
  -----------
  [libc][math][c23] Add (l|ll)rintf128 and (l|ll)roundf128 math functions. (#84504)


  Commit: 73b2d672c1c8318cd16a02812c39ae3997b9dbcd
      https://github.com/llvm/llvm-project/commit/73b2d672c1c8318cd16a02812c39ae3997b9dbcd
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M lldb/source/Plugins/Process/FreeBSD/NativeProcessFreeBSD.cpp

  Log Message:
  -----------
  [lldb][FreeBSD] Fix crash when execve fails with asserts enabled

535da10842c7309e9eeaf9828cf6bb034fecaf16 introduced a check, when execve fails,
to see if we are allowed to trace programs at all.

Unfortunately because we like to call Status vars "error" and "status"
in various combinations, one got misnamed. This lead to lldb-server trying
to make an error value out of a success value when you did the following:

```
$ ./bin/lldb-server gdbserver 127.0.0.1:1234 -- is_not_a_file
Assertion failed: (Err && "Cannot create Expected<T> from Error success value."), function Expected...
```

This happened because the execve fails, but the check whether we can
trace says yes we can trace, but then we use the Status from the check
to create the return value. That Status is in fact a success value not
the failed Status we got from the execve attempt.

With the name corrected you now get:
```
$ ./bin/lldb-server gdbserver 127.0.0.1:1234 -- is_not_a_file
error: failed to launch 'is_not_a_file': execve failed: No such file or directory
```

Which is what we expect to see. This also fixes the test `TestGDBRemoteLaunch.py`
when asserts are enabled.


  Commit: 0bbada93a559b604797fe57978f3eca5e41edaeb
      https://github.com/llvm/llvm-project/commit/0bbada93a559b604797fe57978f3eca5e41edaeb
  Author: Eric Fiselier <eric at efcs.ca>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M libcxx/test/libcxx/module_std.gen.py
    M libcxx/test/libcxx/module_std_compat.gen.py

  Log Message:
  -----------
  Actually disable the module generation tests.

LIT was never really meant to generate tests during discovery,
and we probably shouldn't be doing this.

This hack is even worse than the initial attempt because it buries the
"UNSUPPORTED" at the bottom of the test.


  Commit: dbca8aa1472b9140a68918b2615519dc7dad593f
      https://github.com/llvm/llvm-project/commit/dbca8aa1472b9140a68918b2615519dc7dad593f
  Author: Derek Schuff <dschuff at chromium.org>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyFixBrTableDefaults.cpp

  Log Message:
  -----------
  [WebAssembly] Use SetVector instead of SmallPtrSet in FixBrTableDefaults (#84418)

This pass inserts all the MBBs into a set and then iterates over them.
But when
the number of elements gets large enough, SmallPtrSet expands into a
hash table
which wouldn't have a deterministic iteration order since the elements
are
pointers. This results in nondeterministic jump table layouts.
Use SetVector instead for a deterministic iteration order.


  Commit: ea12c1fa15093e24818785b2ca6e06588372a3bf
      https://github.com/llvm/llvm-project/commit/ea12c1fa15093e24818785b2ca6e06588372a3bf
  Author: sylvain-audi <62035306+sylvain-audi at users.noreply.github.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    A compiler-rt/test/asan/TestCases/Windows/issue64990.cpp
    M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
    M llvm/test/Instrumentation/AddressSanitizer/asan-funclet.ll
    M llvm/test/Instrumentation/AddressSanitizer/localescape.ll

  Log Message:
  -----------
  [Asan] Add "funclet" OpBundle to generated runtime calls if required by EH personality (#82533)

Previously, runtime calls introduced by ASan instrumentation into EH
pads were missing the funclet token expected by WinEHPrepare.
WinEHPrepare would then identify the containing BB as invalid and
discard it, causing invalid code generation that most likely crashes.

Also fixed localescape test, switching its EH personality to match code
without funclets.

This PR is based on the Phabricator patch
https://reviews.llvm.org/D143108

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


  Commit: 9fb552812c65a13cd19eedea1cc2ef739ad652e9
      https://github.com/llvm/llvm-project/commit/9fb552812c65a13cd19eedea1cc2ef739ad652e9
  Author: Piotr Zegar <me at piotrzegar.pl>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/identifier-naming.rst
    A clang-tools-extra/test/clang-tidy/checkers/readability/Inputs/identifier-naming/hungarian-notation3/.clang-tidy
    A clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-hungarian-notation-lower-case-prefix.cpp

  Log Message:
  -----------
  [clang-tidy] Fix Hungarian Prefix in readability-identifier-naming (#84236)

Fix handling of Hungarian Prefix when configured to LowerCase.
Warnings no longer will be emited for names that already match
this style.

Fixes: #80268


  Commit: 81798d516067a58c8e4ba51072dae7351d445064
      https://github.com/llvm/llvm-project/commit/81798d516067a58c8e4ba51072dae7351d445064
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M lld/ELF/DWARF.cpp

  Log Message:
  -----------
  [ELF] Sort sections in order. NFC


  Commit: 2e0ddfc1638597e0d08fb028fdd6754387732107
      https://github.com/llvm/llvm-project/commit/2e0ddfc1638597e0d08fb028fdd6754387732107
  Author: Chris B <chris.bieneman at me.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/docs/DirectX/DXILArchitecture.rst

  Log Message:
  -----------
  [DirectX][docs] Expand DXILArchitecture documentation (#84077)

This just seeks to give a high level overview of the current state of
the DirectX backend. It doesn't go in too deep, but should be a starting
point for further documentation.

---------

Co-authored-by: S. Bharadwaj Yadavalli <Bharadwaj.Yadavalli at microsoft.com>


  Commit: 5a95378659506b0ce94ceb79a43477e73c9756f4
      https://github.com/llvm/llvm-project/commit/5a95378659506b0ce94ceb79a43477e73c9756f4
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    R clang/include/clang/Basic/Builtins.def

  Log Message:
  -----------
  [NFC] Remove unnecessary 'Builtins.def' file.

This was replaced with tablegen anyway, so it just contained a stale
comment.  This patch removes it.


  Commit: a456885efc95eb141d051ade517432c531d427f7
      https://github.com/llvm/llvm-project/commit/a456885efc95eb141d051ade517432c531d427f7
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/RISCV/alu64.ll
    M llvm/test/CodeGen/RISCV/double-convert.ll
    M llvm/test/CodeGen/RISCV/forced-atomics.ll
    M llvm/test/CodeGen/RISCV/fpclamptosat.ll
    M llvm/test/CodeGen/RISCV/rvv/fpclamptosat_vec.ll
    M llvm/test/CodeGen/RISCV/signed-truncation-check.ll

  Log Message:
  -----------
  [SelectionDAG] Allow FREEZE to be hoisted before integer SETCC. (#84241)

Teach canCreateUndefOrPoison that ISD::SETCC with integer operands can
never create undef/poison. FP SETCC is more complicated and will be
handled in a future patch.

Teach isGuaranteedNotToBeUndefOrPoison that ISD::CONDCODE is not
poison/undef. Its a special constant only used by setcc/select_cc like
nodes. This is needed since the hoisting will only hoist if exactly one
operand might be poison. setcc has 3 operand including the condition
code.
    
Recovers some regression from #84232.


  Commit: 839a8fecb4c5dfe1b4484d5fc942a9490867c47a
      https://github.com/llvm/llvm-project/commit/839a8fecb4c5dfe1b4484d5fc942a9490867c47a
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/VOP1Instructions.td
    M llvm/lib/Target/AMDGPU/VOP2Instructions.td
    M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
    M llvm/lib/Target/AMDGPU/VOPInstructions.td

  Log Message:
  -----------
  AMDGPU: Copy SubtargetPredicate from pseudo to real for dpp16 and dpp8 (#84517)

We usually expect to copy SubtargetPredicate (and OtherPredicates) from
pseudo to real. However, in dpp16 and dpp8, there are assignments like
SubtargetPredicate = HasDPP/HasDPP16/HasDpp8. These assignments override
predicates copied from pseudo, and thus the predicates used to define
pseudo get lost.

Losing predicates is a subtle issue usually not easy to be found. It may
result in instructions being generated on GPUs that do not support the
features to generate them.
https://github.com/llvm/llvm-project/pull/84354 addressed one of such
issues, and inspired this work.

Fortunately, we found that the assignment of SubtargetPredicate usually
comes together with assignment of AssemblerPredicate, and with the same
value. For example:
  let AssemblerPredicate = HasDPP16;
  let SubtargetPredicate = HasDPP16;
One of them is redundant and can be removed.

In this work, we remove the redundant assignment of SubtargetPredicate,
and then copy it from pseudo for VOP*_DPP and VOP*_DPP8. With this
change, we can safely use SubtargetPredicate to define pseudo
instructions.


  Commit: 99118c809367d518ffe4de60c16da953744b68b9
      https://github.com/llvm/llvm-project/commit/99118c809367d518ffe4de60c16da953744b68b9
  Author: Adrian Prantl <adrian-prantl at users.noreply.github.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M lldb/include/lldb/Core/ValueObject.h
    M lldb/include/lldb/Core/ValueObjectCast.h
    M lldb/include/lldb/Core/ValueObjectChild.h
    M lldb/include/lldb/Core/ValueObjectConstResult.h
    M lldb/include/lldb/Core/ValueObjectDynamicValue.h
    M lldb/include/lldb/Core/ValueObjectMemory.h
    M lldb/include/lldb/Core/ValueObjectRegister.h
    M lldb/include/lldb/Core/ValueObjectSyntheticFilter.h
    M lldb/include/lldb/Core/ValueObjectVTable.h
    M lldb/include/lldb/Core/ValueObjectVariable.h
    M lldb/include/lldb/DataFormatters/TypeSynthetic.h
    M lldb/include/lldb/DataFormatters/VectorIterator.h
    M lldb/include/lldb/Symbol/CompilerType.h
    M lldb/include/lldb/Symbol/Type.h
    M lldb/include/lldb/Symbol/TypeSystem.h
    M lldb/include/lldb/Target/StackFrameRecognizer.h
    M lldb/include/lldb/Utility/Log.h
    M lldb/source/API/SBValue.cpp
    M lldb/source/Core/FormatEntity.cpp
    M lldb/source/Core/IOHandlerCursesGUI.cpp
    M lldb/source/Core/ValueObject.cpp
    M lldb/source/Core/ValueObjectCast.cpp
    M lldb/source/Core/ValueObjectChild.cpp
    M lldb/source/Core/ValueObjectConstResult.cpp
    M lldb/source/Core/ValueObjectDynamicValue.cpp
    M lldb/source/Core/ValueObjectMemory.cpp
    M lldb/source/Core/ValueObjectRegister.cpp
    M lldb/source/Core/ValueObjectSyntheticFilter.cpp
    M lldb/source/Core/ValueObjectVTable.cpp
    M lldb/source/Core/ValueObjectVariable.cpp
    M lldb/source/DataFormatters/FormatManager.cpp
    M lldb/source/DataFormatters/TypeSynthetic.cpp
    M lldb/source/DataFormatters/ValueObjectPrinter.cpp
    M lldb/source/DataFormatters/VectorType.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp
    M lldb/source/Plugins/InstrumentationRuntime/TSan/InstrumentationRuntimeTSan.cpp
    M lldb/source/Plugins/Language/CPlusPlus/BlockPointer.cpp
    M lldb/source/Plugins/Language/CPlusPlus/Coroutines.cpp
    M lldb/source/Plugins/Language/CPlusPlus/Coroutines.h
    M lldb/source/Plugins/Language/CPlusPlus/GenericBitset.cpp
    M lldb/source/Plugins/Language/CPlusPlus/GenericOptional.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.h
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxAtomic.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxInitializerList.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxList.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxQueue.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxRangesRefView.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxSpan.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxTuple.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxUnorderedMap.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxValarray.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxVariant.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxVector.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcppTuple.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcppUniquePointer.cpp
    M lldb/source/Plugins/Language/ObjC/Cocoa.cpp
    M lldb/source/Plugins/Language/ObjC/NSArray.cpp
    M lldb/source/Plugins/Language/ObjC/NSDictionary.cpp
    M lldb/source/Plugins/Language/ObjC/NSError.cpp
    M lldb/source/Plugins/Language/ObjC/NSException.cpp
    M lldb/source/Plugins/Language/ObjC/NSIndexPath.cpp
    M lldb/source/Plugins/Language/ObjC/NSSet.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
    M lldb/source/Symbol/CompilerType.cpp
    M lldb/source/Symbol/Type.cpp
    M lldb/source/Symbol/Variable.cpp
    M lldb/source/Target/StackFrame.cpp

  Log Message:
  -----------
  Change GetNumChildren()/CalculateNumChildren() methods return llvm::Expected (#84219)

Change GetNumChildren()/CalculateNumChildren() methods return
llvm::Expected

This is an NFC change that does not yet add any error handling or change
any code to return any errors.

This is the second big change in the patch series started with
https://github.com/llvm/llvm-project/pull/83501

A follow-up PR will wire up error handling.


  Commit: addda68f08191ecb91f22f48570f3defbd364b1d
      https://github.com/llvm/llvm-project/commit/addda68f08191ecb91f22f48570f3defbd364b1d
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/VINTERPInstructions.td

  Log Message:
  -----------
  AMDGPU: Rename HasVinterInsts to HasVINTERPEncoding, NFC (#84535)


  Commit: 2bd369b48dbf0bc3128becb7ef8f8a1b82514b87
      https://github.com/llvm/llvm-project/commit/2bd369b48dbf0bc3128becb7ef8f8a1b82514b87
  Author: Alexey Bataev <5361294+alexey-bataev at users.noreply.github.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/AArch64/ext-trunc.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/getelementptr2.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/reduce-add-i64.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/reductions.ll
    M llvm/test/Transforms/SLPVectorizer/X86/PR35777.ll
    M llvm/test/Transforms/SLPVectorizer/X86/int-bitcast-minbitwidth.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-multiuse-with-insertelement.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-transformed-operand.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minimum-sizes.ll
    M llvm/test/Transforms/SLPVectorizer/X86/phi-undef-input.ll
    M llvm/test/Transforms/SLPVectorizer/X86/resched.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reused-reductions-with-minbitwidth.ll
    M llvm/test/Transforms/SLPVectorizer/X86/store-insertelement-minbitwidth.ll
    M llvm/test/Transforms/SLPVectorizer/alt-cmp-vectorize.ll

  Log Message:
  -----------
  [SLP]Improve minbitwidth analysis.

This improves overall analysis for minbitwidth in SLP. It allows to
analyze the trees with store/insertelement root nodes. Also, instead of
using single minbitwidth, detected from the very first analysis stage,
it tries to detect the best one for each trunc/ext subtree in the graph
and use it for the subtree.
Results in better code and less vector register pressure.

Metric: size..text

Program                                                                                                                                                size..text
                                                                                                                                                       results     results0    diff
                                                                      test-suite :: SingleSource/Benchmarks/Adobe-C++/simple_types_loop_invariant.test    92549.00    92609.00  0.1%
                                                                                  test-suite :: External/SPEC/CINT2017speed/625.x264_s/625.x264_s.test   663381.00   663493.00  0.0%
                                                                                   test-suite :: External/SPEC/CINT2017rate/525.x264_r/525.x264_r.test   663381.00   663493.00  0.0%
                                                                                               test-suite :: MultiSource/Benchmarks/Bullet/bullet.test   307182.00   307214.00  0.0%
                                                                             test-suite :: External/SPEC/CFP2017speed/638.imagick_s/638.imagick_s.test  1394420.00  1394484.00  0.0%
                                                                              test-suite :: External/SPEC/CFP2017rate/538.imagick_r/538.imagick_r.test  1394420.00  1394484.00  0.0%
                                                                                test-suite :: External/SPEC/CFP2017rate/510.parest_r/510.parest_r.test  2040257.00  2040273.00  0.0%

                                                                              test-suite :: External/SPEC/CFP2017rate/526.blender_r/526.blender_r.test 12396098.00 12395858.00 -0.0%
                                                                                         test-suite :: External/SPEC/CINT2006/445.gobmk/445.gobmk.test   909944.00   909768.00 -0.0%

SingleSource/Benchmarks/Adobe-C++/simple_types_loop_invariant - 4 scalar
instructions remain scalar (good).
Spec2017/x264 - the whole function idct4x4dc is vectorized using <16
x i16> instead of <16 x i32>, also zext/trunc are removed. In other
places last vector zext/sext removed and replaced by
extractelement + scalar zext/sext pair.
MultiSource/Benchmarks/Bullet/bullet - reduce or <4 x i32> replaced by
reduce or <4 x i8>
Spec2017/imagick - Removed extra zext from 2 packs of the operations.
Spec2017/parest - Removed extra zext, replaced by extractelement+scalar
zext
Spec2017/blender - the whole bunch of vector zext/sext replaced by
extractelement+scalar zext/sext, some extra code vectorized in smaller
types.
Spec2006/gobmk - fixed cost estimation, some small code remains scalar.

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

The patch has the same functionality (no test changes, no changes in
benchmarks) as the original patch, just has some compile time
improvements + fixes for xxhash unittest, discovered earlier in the
previous version of the patch.

Reviewers: 

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


  Commit: 9405d5af65853ac548cce2656497195010db1d86
      https://github.com/llvm/llvm-project/commit/9405d5af65853ac548cce2656497195010db1d86
  Author: Andrew Browne <browneee at google.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M clang/docs/DataFlowSanitizer.rst

  Log Message:
  -----------
  [DFSan] Add missing documentation for -dfsan-reaches-function-callbacks. (#84218)


  Commit: 51207756b0692f325cf75560185cf0336239b3e0
      https://github.com/llvm/llvm-project/commit/51207756b0692f325cf75560185cf0336239b3e0
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

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

  Log Message:
  -----------
  workflows: Fixes for building the release binaries (#83694)

Since aa02002491333c42060373bc84f1ff5d2c76b4ce we weren't installing the
correct dependencies, and since 2836d8edbfbcd461b25101ed58f93c862d65903a
we must pass a custom token to github-upload-release.py for verifying
permissions.


  Commit: e460da14ec0d85af657a018605decabdd5221ded
      https://github.com/llvm/llvm-project/commit/e460da14ec0d85af657a018605decabdd5221ded
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/BUFInstructions.td

  Log Message:
  -----------
  [AMDGPU] Use get_BUF_ps to default real_name of BUF instructions. NFC. (#84524)


  Commit: 074fe3bac634ae9054e2d35be2e1bcf8a19bc256
      https://github.com/llvm/llvm-project/commit/074fe3bac634ae9054e2d35be2e1bcf8a19bc256
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/BUFInstructions.td

  Log Message:
  -----------
  [AMDGPU] Simplify and refactor VBUFFER_Real class definitions. NFC. (#84521)

Abstracting out a new base class VBUFFER_Real_gfx12 just highlights that
the only difference between the MUBUF and MTBUF forms is in the handling
of the "format" field.


  Commit: 70da9155efb3aeb2c6b37678168cf29f91e80734
      https://github.com/llvm/llvm-project/commit/70da9155efb3aeb2c6b37678168cf29f91e80734
  Author: Mads Marquart <mads at marquart.dk>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

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

  Log Message:
  -----------
  Update host CPU detection for Apple M2 and Apple M3 (#82100)

`CPUFAMILY_ARM_BLIZZARD_AVALANCHE` and `CPUFAMILY_ARM_EVEREST_SAWTOOTH`
are taken from `<mach/machine.h>` in `Kernel.framework`.


  Commit: 087666811452e1b6490d59572337aaa907f93e7c
      https://github.com/llvm/llvm-project/commit/087666811452e1b6490d59572337aaa907f93e7c
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__format/concepts.h
    M libcxx/include/__format/format_arg.h
    M libcxx/include/__format/format_args.h
    M libcxx/include/__format/format_context.h
    R libcxx/include/__format/format_fwd.h
    M libcxx/include/__format/formatter.h
    A libcxx/include/__fwd/format.h
    M libcxx/include/format
    M libcxx/include/libcxx.imp
    M libcxx/include/module.modulemap

  Log Message:
  -----------
  [libc++][NFC] Move __format/format_fwd.h to __fwd/format.h (#84336)


  Commit: 52b3e89ff4517521e40f5e416a40e574321eaee9
      https://github.com/llvm/llvm-project/commit/52b3e89ff4517521e40f5e416a40e574321eaee9
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M lld/ELF/SyntheticSections.cpp

  Log Message:
  -----------
  [ELF] Simplify GdbIndexSection. NFC


  Commit: e963d0740e64fc70b4018f39325469d204f6217a
      https://github.com/llvm/llvm-project/commit/e963d0740e64fc70b4018f39325469d204f6217a
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.h
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
    M llvm/test/CodeGen/AMDGPU/immv216.ll
    M llvm/test/CodeGen/AMDGPU/inline-constraints.ll
    M llvm/test/CodeGen/AMDGPU/shrink-add-sub-constant.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w32-imm.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w64-imm.ll
    M llvm/test/MC/AMDGPU/gfx10_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vopc.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vopc_e64.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vopcx.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop1.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vopc.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vopcx.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopc.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopcx.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3c.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx.s
    M llvm/test/MC/AMDGPU/gfx8_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx8_asm_vop2.s
    M llvm/test/MC/AMDGPU/gfx8_asm_vopc.s
    M llvm/test/MC/AMDGPU/gfx9-asm-err.s
    M llvm/test/MC/AMDGPU/gfx9_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx9_asm_vop2.s
    M llvm/test/MC/AMDGPU/gfx9_asm_vopc.s
    M llvm/test/MC/AMDGPU/gfx9_err_pos.s
    M llvm/test/MC/AMDGPU/vop3-gfx10.s
    M llvm/test/MC/AMDGPU/vop3-gfx9.s
    M llvm/test/MC/AMDGPU/vop3.s
    M llvm/test/MC/AMDGPU/vop_sdwa.s

  Log Message:
  -----------
  [AMDGPU] Replace `isInlinableLiteral16` with specific version (#84402)

The current implementation of `isInlinableLiteral16` assumes, a 16-bit
inlinable
literal is either an `i16` or a `fp16`. This is not always true because
of
`bf16`. However, we can't tell `fp16` and `bf16` apart by just looking
at the
value. This patch splits `isInlinableLiteral16` into three versions,
`i16`,
`fp16`, `bf16` respectively, and call the corresponding version.


  Commit: 5f935e91810eb28854611faf13bb7d07a8dbf470
      https://github.com/llvm/llvm-project/commit/5f935e91810eb28854611faf13bb7d07a8dbf470
  Author: David Majnemer <david.majnemer at gmail.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/arm64-vcvt_f.ll
    M llvm/test/CodeGen/AArch64/fp16-v8-instructions.ll
    M llvm/test/CodeGen/AArch64/fpext.ll
    M llvm/test/CodeGen/AArch64/fptrunc.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fcopysign.ll
    M llvm/test/CodeGen/AArch64/vector-fcopysign.ll

  Log Message:
  -----------
  [AArch64] Optimize fp64 <-> fp16 SIMD conversions

Legalization would result in needless scalarization. Add some
DAGCombines to fix this up.


  Commit: edc1c3d24e6f8ed548340ce0369138fb40427a24
      https://github.com/llvm/llvm-project/commit/edc1c3d24e6f8ed548340ce0369138fb40427a24
  Author: David Majnemer <david.majnemer at gmail.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/faddp-half.ll
    M llvm/test/CodeGen/AArch64/faddsub.ll
    M llvm/test/CodeGen/AArch64/fcvt.ll
    M llvm/test/CodeGen/AArch64/fcvt_combine.ll
    M llvm/test/CodeGen/AArch64/fdiv.ll
    M llvm/test/CodeGen/AArch64/fmla.ll
    M llvm/test/CodeGen/AArch64/fmul.ll
    M llvm/test/CodeGen/AArch64/fp16-v8-instructions.ll
    M llvm/test/CodeGen/AArch64/sve-fp-reciprocal.ll
    M llvm/test/CodeGen/AArch64/vecreduce-fadd.ll
    M llvm/test/CodeGen/AArch64/vecreduce-fmul.ll

  Log Message:
  -----------
  [AArch64] Make more vector f16 operations legal

v8f16 is a legal type but promoting to v16f16 would result in an illegal
type.

Let's legalize these by a combination of splitting+promoting resulting
in a pair of v4f16.

Also, we were being overly cautious with different v4f16 nodes. Mark
more of them safe to promote to v4f32.


  Commit: 0d7dba6300b452c751cde4eeaedcbfeb86f6185c
      https://github.com/llvm/llvm-project/commit/0d7dba6300b452c751cde4eeaedcbfeb86f6185c
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

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

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


  Commit: 0861755e597e671424ee369f36dff5591b7178ee
      https://github.com/llvm/llvm-project/commit/0861755e597e671424ee369f36dff5591b7178ee
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/include/llvm/ADT/FoldingSet.h
    M llvm/include/llvm/AsmParser/LLParser.h
    M llvm/include/llvm/Bitcode/LLVMBitCodes.h
    M llvm/include/llvm/IR/Attributes.h
    M llvm/include/llvm/IR/Attributes.td
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/IR/AttributeImpl.h
    M llvm/lib/IR/Attributes.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/Transforms/Utils/CodeExtractor.cpp
    R llvm/test/Assembler/range-attribute-invalid-range.ll
    R llvm/test/Assembler/range-attribute-invalid-type.ll
    M llvm/test/Bitcode/attributes.ll
    R llvm/test/Verifier/range-attr.ll
    M llvm/utils/TableGen/Attributes.cpp

  Log Message:
  -----------
  Revert "[IR] Add new Range attribute using new ConstantRange Attribute type" (#84549)

Reverts llvm/llvm-project#83171

broke sanitizer buildbot
https://lab.llvm.org/buildbot/#/builders/168/builds/19110/steps/10/logs/stdio


  Commit: 300a39bdad4593fdc2618eb28f6e838df735619a
      https://github.com/llvm/llvm-project/commit/300a39bdad4593fdc2618eb28f6e838df735619a
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M lldb/include/lldb/Core/ValueObject.h
    M lldb/include/lldb/Core/ValueObjectCast.h
    M lldb/include/lldb/Core/ValueObjectChild.h
    M lldb/include/lldb/Core/ValueObjectConstResult.h
    M lldb/include/lldb/Core/ValueObjectDynamicValue.h
    M lldb/include/lldb/Core/ValueObjectMemory.h
    M lldb/include/lldb/Core/ValueObjectRegister.h
    M lldb/include/lldb/Core/ValueObjectSyntheticFilter.h
    M lldb/include/lldb/Core/ValueObjectVTable.h
    M lldb/include/lldb/Core/ValueObjectVariable.h
    M lldb/include/lldb/DataFormatters/TypeSynthetic.h
    M lldb/include/lldb/DataFormatters/VectorIterator.h
    M lldb/include/lldb/Symbol/CompilerType.h
    M lldb/include/lldb/Symbol/Type.h
    M lldb/include/lldb/Symbol/TypeSystem.h
    M lldb/include/lldb/Target/StackFrameRecognizer.h
    M lldb/include/lldb/Utility/Log.h
    M lldb/source/API/SBValue.cpp
    M lldb/source/Core/FormatEntity.cpp
    M lldb/source/Core/IOHandlerCursesGUI.cpp
    M lldb/source/Core/ValueObject.cpp
    M lldb/source/Core/ValueObjectCast.cpp
    M lldb/source/Core/ValueObjectChild.cpp
    M lldb/source/Core/ValueObjectConstResult.cpp
    M lldb/source/Core/ValueObjectDynamicValue.cpp
    M lldb/source/Core/ValueObjectMemory.cpp
    M lldb/source/Core/ValueObjectRegister.cpp
    M lldb/source/Core/ValueObjectSyntheticFilter.cpp
    M lldb/source/Core/ValueObjectVTable.cpp
    M lldb/source/Core/ValueObjectVariable.cpp
    M lldb/source/DataFormatters/FormatManager.cpp
    M lldb/source/DataFormatters/TypeSynthetic.cpp
    M lldb/source/DataFormatters/ValueObjectPrinter.cpp
    M lldb/source/DataFormatters/VectorType.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp
    M lldb/source/Plugins/InstrumentationRuntime/TSan/InstrumentationRuntimeTSan.cpp
    M lldb/source/Plugins/Language/CPlusPlus/BlockPointer.cpp
    M lldb/source/Plugins/Language/CPlusPlus/Coroutines.cpp
    M lldb/source/Plugins/Language/CPlusPlus/Coroutines.h
    M lldb/source/Plugins/Language/CPlusPlus/GenericBitset.cpp
    M lldb/source/Plugins/Language/CPlusPlus/GenericOptional.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.h
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxAtomic.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxInitializerList.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxList.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxQueue.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxRangesRefView.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxSpan.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxTuple.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxUnorderedMap.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxValarray.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxVariant.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxVector.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcppTuple.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcppUniquePointer.cpp
    M lldb/source/Plugins/Language/ObjC/Cocoa.cpp
    M lldb/source/Plugins/Language/ObjC/NSArray.cpp
    M lldb/source/Plugins/Language/ObjC/NSDictionary.cpp
    M lldb/source/Plugins/Language/ObjC/NSError.cpp
    M lldb/source/Plugins/Language/ObjC/NSException.cpp
    M lldb/source/Plugins/Language/ObjC/NSIndexPath.cpp
    M lldb/source/Plugins/Language/ObjC/NSSet.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
    M lldb/source/Symbol/CompilerType.cpp
    M lldb/source/Symbol/Type.cpp
    M lldb/source/Symbol/Variable.cpp
    M lldb/source/Target/StackFrame.cpp

  Log Message:
  -----------
  Revert "Change GetNumChildren()/CalculateNumChildren() methods return llvm::Expected (#84219)"

This reverts commit 99118c809367d518ffe4de60c16da953744b68b9.


  Commit: 08ddd2ce4048b0adbddc3ab9b770ccf43f81d65d
      https://github.com/llvm/llvm-project/commit/08ddd2ce4048b0adbddc3ab9b770ccf43f81d65d
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/include/llvm/ProfileData/InstrProfWriter.h
    M llvm/lib/ProfileData/InstrProfWriter.cpp
    A llvm/test/tools/llvm-profdata/profile-version.test
    M llvm/tools/llvm-profdata/llvm-profdata.cpp

  Log Message:
  -----------
  [PGO] Add support for writing previous indexed format (#84505)

Enable temporary support to ease use of new llvm-profdata with slightly
older indexed profiles after 16e74fd48988ac95551d0f64e1b36f78a82a89a2,
which bumped the indexed format for type profiling.


  Commit: 05280b582aa73ce0f41bb47aea15818658f32929
      https://github.com/llvm/llvm-project/commit/05280b582aa73ce0f41bb47aea15818658f32929
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M openmp/runtime/cmake/LibompHandleFlags.cmake
    M openmp/runtime/src/z_Linux_util.cpp

  Log Message:
  -----------
  [OpenMP] Implements __kmp_is_address_mapped for Solaris/Illumos. (#82930)

Also fixing OpenMP build itself for this platform.


  Commit: 755b439694432d4f68e20e979b479cbc30602bb1
      https://github.com/llvm/llvm-project/commit/755b439694432d4f68e20e979b479cbc30602bb1
  Author: yingopq <115543042+yingopq at users.noreply.github.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/lib/Target/Mips/MipsExpandPseudo.cpp
    M llvm/test/CodeGen/Mips/atomic-min-max.ll

  Log Message:
  -----------
  [Mips] Fix missing sign extension in expansion of sub-word atomic max (#77072)

Add sign extension "SEB/SEH" before compare.

Fix #61881


  Commit: 83789ffbd857bb78b69d6e54560310ff2d347f04
      https://github.com/llvm/llvm-project/commit/83789ffbd857bb78b69d6e54560310ff2d347f04
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M clang/lib/CodeGen/CodeGenTBAA.cpp
    M clang/test/CodeGen/tbaa-struct-relaxed-aliasing-with-tsan.cpp

  Log Message:
  -----------
  [TBAA] Add bail-out to skip tbaa generation to getTBAAStructInfo. (#84386)

Without this bail out, we may generate fields with null nodes as tags
are generated by using getTypeInfo which has the same bail out.

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


  Commit: 8d85cd3a59f65315bbadaf11c4b3f107238456db
      https://github.com/llvm/llvm-project/commit/8d85cd3a59f65315bbadaf11c4b3f107238456db
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M libcxx/CMakeLists.txt

  Log Message:
  -----------
  [libc++] Don't build against libcxxrt by default on FreeBSD (#84484)

The libc++ CMake build aims to provide a general-purpose configuration
that matches the canonical LLVM setup (libc++ / libc++abi / libunwind),
not the configuration used for compatibility on any given system. For
these "compatibility" configurations, we use CMake caches like
Apple.cmake and FreeBSD.cmake.

Defaulting to libcxxrt on FreeBSD makes it look as though we're trying
to build the system compatible configuration on FreeBSD, which isn't
really correct and causes confusion more than anything else.

Fixes #84476


  Commit: 29762e372294e5b591684f57979f33c1c48bbfba
      https://github.com/llvm/llvm-project/commit/29762e372294e5b591684f57979f33c1c48bbfba
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M libc/src/__support/RPC/rpc.h
    M libc/utils/gpu/server/rpc_server.cpp

  Log Message:
  -----------
   [libc][NFCI] Remove lane size template argument on RPC server  (#84557)

Summary:
We previously changed the data layout for the RPC buffer to make it lane
size agnostic. I put off changing the size for the server case to make
the patch smaller. This patch simply reorganizes code by making the lane
size an argument to the port rather than a templtae size. Heavily
simplifies a lot of code, no more `std::variant`.


  Commit: 03c6c73b022415378f2efbc13398bdb2c22d3180
      https://github.com/llvm/llvm-project/commit/03c6c73b022415378f2efbc13398bdb2c22d3180
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp

  Log Message:
  -----------
  [NFC] [hwasan] remove unused method


  Commit: 3ceebcb48135612b8d90500f65693398f7e526cd
      https://github.com/llvm/llvm-project/commit/3ceebcb48135612b8d90500f65693398f7e526cd
  Author: Peiming Liu <peiming at google.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M mlir/unittests/CMakeLists.txt

  Log Message:
  -----------
  [mlir] tentative fix for "'GTEST_NO_LLVM_SUPPORT' is not defined" war… (#84539)

…ning when unittest is enabled


  Commit: 1cf428a05a62711200d37a1b12722ca16c33a6ea
      https://github.com/llvm/llvm-project/commit/1cf428a05a62711200d37a1b12722ca16c33a6ea
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

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

  Log Message:
  -----------
  Skip MemtagBasicDeathTest#Unsupported when running with HWASan (#84243)

Tested in AOSP.


  Commit: e93489c434da5fd93ed54c3c41b0c06f718bb8ff
      https://github.com/llvm/llvm-project/commit/e93489c434da5fd93ed54c3c41b0c06f718bb8ff
  Author: Jakub Kuderski <jakub at nod-labs.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M mlir/lib/Dialect/Mesh/Transforms/CMakeLists.txt
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir] Add missing build deps for Mesh transforms (#84581)


  Commit: cb6ff746e0c7b9218b6f5c11db44162cacd623a4
      https://github.com/llvm/llvm-project/commit/cb6ff746e0c7b9218b6f5c11db44162cacd623a4
  Author: Kojo Acquah <KoolJBlack at users.noreply.github.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    A mlir/include/mlir/Dialect/ArmNeon/Transforms.h
    M mlir/lib/Conversion/VectorToLLVM/CMakeLists.txt
    M mlir/lib/Dialect/ArmNeon/CMakeLists.txt
    A mlir/lib/Dialect/ArmNeon/IR/CMakeLists.txt
    A mlir/lib/Dialect/ArmNeon/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/ArmNeon/Transforms/LowerContractionToSMMLAPattern.cpp
    A mlir/test/Dialect/ArmNeon/lower-to-arm-neon.mlir
    A mlir/test/lib/Dialect/ArmNeon/CMakeLists.txt
    A mlir/test/lib/Dialect/ArmNeon/TestLowerToArmNeon.cpp
    M mlir/test/lib/Dialect/CMakeLists.txt
    M mlir/tools/mlir-opt/CMakeLists.txt
    M mlir/tools/mlir-opt/mlir-opt.cpp
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir][ArmNeon] Implements LowerVectorToArmNeon Pattern for SMMLA (#81895)

This patch adds a the `LowerVectorToArmNeonPattern` patterns to the
ArmNeon.

This pattern inspects `vector.contract` ops that can be 1-1 mapped to an
`arm.neon.smmla` intrinsic. The contract ops must be separated into
tiles who's inputs must fit that of a single smmla op (`2x8xi32` inputs
and `2x2xi32` output). The `vector.contract` inputs must be sign
extended from narrow types (<=i8) to be converted. If all conditions are
met, an smmla op is inserted with additional `vector.shape_casts` to
handle linearizing the input and output dimension.


  Commit: c22828991e7ca7b99048761c078252e94403ba6e
      https://github.com/llvm/llvm-project/commit/c22828991e7ca7b99048761c078252e94403ba6e
  Author: Daniel Thornburgh <dthorn at google.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M compiler-rt/lib/builtins/CMakeLists.txt
    M compiler-rt/test/builtins/Unit/ctor_dtor.c

  Log Message:
  -----------
  Revert "[builtins] Disable COMPILER_RT_CRT_USE_EH_FRAME_REGISTRY by d… (#84580)

…efault (#83201)"

This reverts commit 062cfada643c1aa48a1bb81894e2920d390fe8cf. See issue
#84574.


  Commit: 624ea68cbc3ce422b3ee110c0c0af839eec2e278
      https://github.com/llvm/llvm-project/commit/624ea68cbc3ce422b3ee110c0c0af839eec2e278
  Author: Adrian Prantl <adrian-prantl at users.noreply.github.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M lldb/include/lldb/Core/ValueObject.h
    M lldb/include/lldb/Core/ValueObjectCast.h
    M lldb/include/lldb/Core/ValueObjectChild.h
    M lldb/include/lldb/Core/ValueObjectConstResult.h
    M lldb/include/lldb/Core/ValueObjectDynamicValue.h
    M lldb/include/lldb/Core/ValueObjectMemory.h
    M lldb/include/lldb/Core/ValueObjectRegister.h
    M lldb/include/lldb/Core/ValueObjectSyntheticFilter.h
    M lldb/include/lldb/Core/ValueObjectVTable.h
    M lldb/include/lldb/Core/ValueObjectVariable.h
    M lldb/include/lldb/DataFormatters/TypeSynthetic.h
    M lldb/include/lldb/DataFormatters/VectorIterator.h
    M lldb/include/lldb/Symbol/CompilerType.h
    M lldb/include/lldb/Symbol/Type.h
    M lldb/include/lldb/Symbol/TypeSystem.h
    M lldb/include/lldb/Target/StackFrameRecognizer.h
    M lldb/include/lldb/Utility/Log.h
    M lldb/source/API/SBValue.cpp
    M lldb/source/Core/FormatEntity.cpp
    M lldb/source/Core/IOHandlerCursesGUI.cpp
    M lldb/source/Core/ValueObject.cpp
    M lldb/source/Core/ValueObjectCast.cpp
    M lldb/source/Core/ValueObjectChild.cpp
    M lldb/source/Core/ValueObjectConstResult.cpp
    M lldb/source/Core/ValueObjectDynamicValue.cpp
    M lldb/source/Core/ValueObjectMemory.cpp
    M lldb/source/Core/ValueObjectRegister.cpp
    M lldb/source/Core/ValueObjectSyntheticFilter.cpp
    M lldb/source/Core/ValueObjectVTable.cpp
    M lldb/source/Core/ValueObjectVariable.cpp
    M lldb/source/DataFormatters/FormatManager.cpp
    M lldb/source/DataFormatters/TypeSynthetic.cpp
    M lldb/source/DataFormatters/ValueObjectPrinter.cpp
    M lldb/source/DataFormatters/VectorType.cpp
    M lldb/source/Plugins/ABI/PowerPC/ABISysV_ppc64.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp
    M lldb/source/Plugins/InstrumentationRuntime/TSan/InstrumentationRuntimeTSan.cpp
    M lldb/source/Plugins/Language/CPlusPlus/BlockPointer.cpp
    M lldb/source/Plugins/Language/CPlusPlus/Coroutines.cpp
    M lldb/source/Plugins/Language/CPlusPlus/Coroutines.h
    M lldb/source/Plugins/Language/CPlusPlus/GenericBitset.cpp
    M lldb/source/Plugins/Language/CPlusPlus/GenericOptional.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.h
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxAtomic.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxInitializerList.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxList.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxQueue.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxRangesRefView.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxSpan.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxTuple.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxUnorderedMap.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxValarray.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxVariant.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxVector.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcppTuple.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcppUniquePointer.cpp
    M lldb/source/Plugins/Language/ObjC/Cocoa.cpp
    M lldb/source/Plugins/Language/ObjC/NSArray.cpp
    M lldb/source/Plugins/Language/ObjC/NSDictionary.cpp
    M lldb/source/Plugins/Language/ObjC/NSError.cpp
    M lldb/source/Plugins/Language/ObjC/NSException.cpp
    M lldb/source/Plugins/Language/ObjC/NSIndexPath.cpp
    M lldb/source/Plugins/Language/ObjC/NSSet.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
    M lldb/source/Symbol/CompilerType.cpp
    M lldb/source/Symbol/Type.cpp
    M lldb/source/Symbol/Variable.cpp
    M lldb/source/Target/StackFrame.cpp

  Log Message:
  -----------
  Change GetNumChildren()/CalculateNumChildren() methods return llvm::Expected (#84219)

Change GetNumChildren()/CalculateNumChildren() methods return
llvm::Expected

This is an NFC change that does not yet add any error handling or change
any code to return any errors.

This is the second big change in the patch series started with
https://github.com/llvm/llvm-project/pull/83501

A follow-up PR will wire up error handling.


  Commit: 4d323e404d43526ad8263769f00aace9db2e57c5
      https://github.com/llvm/llvm-project/commit/4d323e404d43526ad8263769f00aace9db2e57c5
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-03-09 (Sat, 09 Mar 2024)

  Changed paths:
    M libcxx/include/__config
    M libcxx/include/tuple

  Log Message:
  -----------
  [libc++] Allow the use of extensions in the implementation (#79532)

We've talked about allowing extensions on
[discourse](https://discourse.llvm.org/t/rfc-use-language-extensions-from-future-standards-in-libc/71898/5)
and in a libc++ monthly meeting and agreed to test it out in the LLVM 18
release. We've done that with the `tuple` constructor overload set
(using conditional `explicit`). Since we haven't heard about any
breakages, it seems safe to do. This patch enables the use of extension
from later C++ standards inside the versioned `std` namespaces. This
should be good enough, since almost all of our code is inside that
namespace. This approach also avoids the use of extensions inside the
test `std` suite. That part of the code base should stay clean, since
it's a test suite that is also used by other vendors to test their
implementations.


  Commit: dc567a2ec61d07e89902f73c1bdd4106dc071f3f
      https://github.com/llvm/llvm-project/commit/dc567a2ec61d07e89902f73c1bdd4106dc071f3f
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-03-09 (Sat, 09 Mar 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/DeclCXX.cpp
    M clang/test/SemaCXX/lambda-expressions.cpp

  Log Message:
  -----------
  [clang] Fix crash when declaring invalid lambda member (#74110)

In valid code, there should only be a very specific set of members in a
lambda definition. If the user tries to define something inside the
lambda class, this assumption is violated and causes an assertion error.
This can be fixed by checking whether the members are valid, and if not,
ignore that the class members are potentially unexpected.

I've come across this while working on implementing lambdas in C++03.


  Commit: 6b270358c71c3bc57a0dec6586c2f7a9d4d0a85b
      https://github.com/llvm/llvm-project/commit/6b270358c71c3bc57a0dec6586c2f7a9d4d0a85b
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/RISCV/bfloat-convert.ll
    M llvm/test/CodeGen/RISCV/double-convert.ll
    M llvm/test/CodeGen/RISCV/double-round-conv-sat.ll
    M llvm/test/CodeGen/RISCV/float-convert.ll
    M llvm/test/CodeGen/RISCV/float-round-conv-sat.ll
    M llvm/test/CodeGen/RISCV/half-convert.ll
    M llvm/test/CodeGen/RISCV/half-round-conv-sat.ll

  Log Message:
  -----------
  [SelectionDAG] Allow FREEZE to be hoisted before FP SETCC. (#84358)

No nans/infs in SelectionDAG is complicated. Hopefully I've captured
all of the cases. I've only applied to ConsiderFlags to the SDNodeFlags
since those are the only ones that will be droped by hoisting. The
condition code and TargetOptions would still be in effect.
    
Recovers some regression from #84232.


  Commit: 2709bafbfe54b75003c60a950605194d6a3c9776
      https://github.com/llvm/llvm-project/commit/2709bafbfe54b75003c60a950605194d6a3c9776
  Author: David Blaikie <dblaikie at gmail.com>
  Date:   2024-03-09 (Sat, 09 Mar 2024)

  Changed paths:
    M llvm/docs/CodeReview.rst
    M llvm/docs/GitHub.rst

  Log Message:
  -----------
  llvm/docs: Try to fix some broken links

I messed up the syntax here previously - let's see if this is enough to
get it working.


  Commit: e1405e4f71c899420ebf8262d5e9745598419df8
      https://github.com/llvm/llvm-project/commit/e1405e4f71c899420ebf8262d5e9745598419df8
  Author: erer1243 <erer1243 at gmail.com>
  Date:   2024-03-09 (Sat, 09 Mar 2024)

  Changed paths:
    M llvm/bindings/ocaml/llvm/llvm_ocaml.c
    M llvm/docs/ReleaseNotes.rst
    M llvm/include/llvm-c/Core.h
    M llvm/lib/IR/Core.cpp

  Log Message:
  -----------
  [llvm-c] Add C API methods to match size_t ConstantDataArray C++ API signatures (#84433)

Adds `LLVMConstStringInContext2` and `LLVMConstString2`, which are
identical to originals except that they use `size_t` for length. This is
a clone of
https://github.com/llvm/llvm-project/commit/35276f16e5a2cae0dfb49c0fbf874d4d2f177acc
and is needed for https://github.com/rust-lang/rust/pull/122000.

As an aside, the issue of 32 bit overflow on constants is present in the
C++ APIs as well. A few classes, e.g. `ConstantDataArray` and
`ConstantAggregateZero`, can hold 64-bit ArrayTypes but their length
accessors return 32-bit values. This means the same issue from the
original Rust report is also present in LLVM itself. Would it be a
reasonable goal to update all of these length methods & types to be
uint64_t, or would that be too breaking? Alternatively, we could use
safe fallible casts instead of implicit ones inside the accessors (if an
overflow does happen, the solution would be to use
`MyValue->getType()->getArrayNumElements()` instead).


  Commit: 0baef3b18cdbbdcf9f07c10607407ad0fb541449
      https://github.com/llvm/llvm-project/commit/0baef3b18cdbbdcf9f07c10607407ad0fb541449
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

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

  Log Message:
  -----------
  [clang-format] Handle common C++ non-keyword types as such (#83709)

Fixes #83400.


  Commit: 0b9ce71a256d86c08f2b52ad2e337395b8f54b41
      https://github.com/llvm/llvm-project/commit/0b9ce71a256d86c08f2b52ad2e337395b8f54b41
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M llvm/utils/release/github-upload-release.py

  Log Message:
  -----------
  github-upload-release.py: Fix bug preventing release creation (#84571)

After aa02002491333c42060373bc84f1ff5d2c76b4ce we started passing the
user name to the create_release function and this was being interpreted
as the git tag.


  Commit: c58c8278f98c189d149d5f062b8d4f56efcada90
      https://github.com/llvm/llvm-project/commit/c58c8278f98c189d149d5f062b8d4f56efcada90
  Author: Alexander Richardson <alexrichardson at google.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_common.h
    M compiler-rt/lib/sanitizer_common/sanitizer_internal_defs.h
    M compiler-rt/lib/sanitizer_common/sanitizer_placement_new.h

  Log Message:
  -----------
  [compiler-rt] Simplify and rename of operator_new_size_type

We can rely on the compiler-provided macro __SIZE_TYPE__ for all
non-MSVC compilers and fall back to `uptr` otherwise.
I verified via https://godbolt.org/z/MW9KMjv5f that this works for MSVC
as well as GCC 4.5 Clang 3.0, so that should cover supported compilers.

While touching this also rename operator_new_size_type to usize which
makes it more obvious that this is the equivalent to size_t within
the sanitizers runtime (which I plan to use in follow-up changes).

Reviewed By: vitalybuka

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


  Commit: fc0fc768cc2122c81fd37aa59d9f31fc0d5694d8
      https://github.com/llvm/llvm-project/commit/fc0fc768cc2122c81fd37aa59d9f31fc0d5694d8
  Author: Freddy Ye <freddy.ye at intel.com>
  Date:   2024-03-09 (Sat, 09 Mar 2024)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsX86.def
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/Headers/avxintrin.h
    M clang/lib/Headers/emmintrin.h
    M clang/lib/Headers/xmmintrin.h
    A clang/test/CodeGen/X86/attribute-cmpsd-no-error.c
    M clang/test/CodeGen/X86/avx-builtins.c
    A clang/test/CodeGen/X86/cmp-avx-builtins-error.c
    M clang/test/CodeGen/X86/sse-builtins.c
    M clang/test/CodeGen/X86/sse2-builtins.c
    M clang/test/CodeGen/target-features-error-2.c

  Log Message:
  -----------
  [X86] Finally handle target of __builtin_ia32_cmp[p|s][s|d] from avx into sse/sse2/avx (#84136)

This patch relands #67410 and fixes the cmpfail below:
#include <immintrin.h>
__attribute__((target("avx"))) void test(__m128 a, __m128 b) {
  _mm_cmp_ps(a, b, 14);
}

According to Intel SDM, SSE/SSE2 instructions cmp[p|s][s|d] are
supported when imm8 is in range of [0, 7]


  Commit: 6c765069112e31ec66cd4387f2a39f70583e626b
      https://github.com/llvm/llvm-project/commit/6c765069112e31ec66cd4387f2a39f70583e626b
  Author: Alexander Richardson <alexrichardson at google.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_mutex.cpp

  Log Message:
  -----------
  [tsan] Fix running check-ubsan with COMPILER_RT_DEBUG=ON

TestCases/Misc/Linux/sigaction.cpp fails because dlsym() may call malloc
on failure. And then the wrapped malloc appears to access thread local
storage using global dynamic accesses, thus calling
___interceptor___tls_get_addr, before REAL(__tls_get_addr) has
been set, so we get a crash inside ___interceptor___tls_get_addr. For
example, this can happen when looking up __isoc23_scanf which might not
exist in some libcs.

Fix this by marking the thread local variable accessed inside the
debug checks as "initial-exec", which does not require __tls_get_addr.

This is probably a better alternative to https://github.com/llvm/llvm-project/pull/83886.

This fixes a different crash but is related to https://github.com/llvm/llvm-project/issues/46204.

Backtrace:
```
#0 0x0000000000000000 in ?? ()
#1 0x00007ffff6a9d89e in ___interceptor___tls_get_addr (arg=0x7ffff6b27be8) at /path/to/llvm/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:2759
#2 0x00007ffff6a46bc6 in __sanitizer::CheckedMutex::LockImpl (this=0x7ffff6b27be8, pc=140737331846066) at /path/to/llvm/compiler-rt/lib/sanitizer_common/sanitizer_mutex.cpp:218
#3 0x00007ffff6a448b2 in __sanitizer::CheckedMutex::Lock (this=0x7ffff6b27be8, this at entry=0x730000000580) at /path/to/llvm/compiler-rt/lib/tsan/rtl/../../sanitizer_common/sanitizer_mutex.h:129
#4 __sanitizer::Mutex::Lock (this=0x7ffff6b27be8, this at entry=0x730000000580) at /path/to/llvm/compiler-rt/lib/tsan/rtl/../../sanitizer_common/sanitizer_mutex.h:167
#5 0x00007ffff6abdbb2 in __sanitizer::GenericScopedLock<__sanitizer::Mutex>::GenericScopedLock (mu=0x730000000580, this=<optimized out>) at /path/to/llvm/compiler-rt/lib/tsan/rtl/../../sanitizer_common/sanitizer_mutex.h:383
#6 __sanitizer::SizeClassAllocator64<__tsan::AP64>::GetFromAllocator (this=0x7ffff7487dc0 <__tsan::allocator_placeholder>, stat=stat at entry=0x7ffff570db68, class_id=11, chunks=chunks at entry=0x7ffff5702cc8, n_chunks=n_chunks at entry=128) at /path/to/llvm/compiler-rt/lib/tsan/rtl/../../sanitizer_common/sanitizer_allocator_primary64.h:207
#7 0x00007ffff6abdaa0 in __sanitizer::SizeClassAllocator64LocalCache<__sanitizer::SizeClassAllocator64<__tsan::AP64> >::Refill (this=<optimized out>, c=c at entry=0x7ffff5702cb8, allocator=<optimized out>, class_id=<optimized out>)
 at /path/to/llvm/compiler-rt/lib/tsan/rtl/../../sanitizer_common/sanitizer_allocator_local_cache.h:103
#8 0x00007ffff6abd731 in __sanitizer::SizeClassAllocator64LocalCache<__sanitizer::SizeClassAllocator64<__tsan::AP64> >::Allocate (this=0x7ffff6b27be8, allocator=0x7ffff5702cc8, class_id=140737311157448)
 at /path/to/llvm/compiler-rt/lib/tsan/rtl/../../sanitizer_common/sanitizer_allocator_local_cache.h:39
#9 0x00007ffff6abc397 in __sanitizer::CombinedAllocator<__sanitizer::SizeClassAllocator64<__tsan::AP64>, __sanitizer::LargeMmapAllocatorPtrArrayDynamic>::Allocate (this=0x7ffff5702cc8, cache=0x7ffff6b27be8, size=<optimized out>, size at entry=175, alignment=alignment at entry=16)
 at /path/to/llvm/compiler-rt/lib/tsan/rtl/../../sanitizer_common/sanitizer_allocator_combined.h:69
#10 0x00007ffff6abaa6a in __tsan::user_alloc_internal (thr=0x7ffff7ebd980, pc=140737331499943, sz=sz at entry=175, align=align at entry=16, signal=true) at /path/to/llvm/compiler-rt/lib/tsan/rtl/tsan_mman.cpp:198
#11 0x00007ffff6abb0d1 in __tsan::user_alloc (thr=0x7ffff6b27be8, pc=140737331846066, sz=11, sz at entry=175) at /path/to/llvm/compiler-rt/lib/tsan/rtl/tsan_mman.cpp:223
#12 0x00007ffff6a693b5 in ___interceptor_malloc (size=175) at /path/to/llvm/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:666
#13 0x00007ffff7fce7f2 in malloc (size=175) at ../include/rtld-malloc.h:56
#14 __GI__dl_exception_create_format (exception=exception at entry=0x7fffffffd0d0, objname=0x7ffff7fc3550 "/path/to/llvm/compiler-rt/cmake-build-all-sanitizers/lib/linux/libclang_rt.tsan-x86_64.so",
 fmt=fmt at entry=0x7ffff7ff2db9 "undefined symbol: %s%s%s") at ./elf/dl-exception.c:157
#15 0x00007ffff7fd50e8 in _dl_lookup_symbol_x (undef_name=0x7ffff6af868b "__isoc23_scanf", undef_map=<optimized out>, ref=0x7fffffffd148, symbol_scope=<optimized out>, version=<optimized out>, type_class=0, flags=2, skip_map=0x7ffff7fc35e0) at ./elf/dl-lookup.c:793
--Type <RET> for more, q to quit, c to continue without paging--
#16 0x00007ffff656d6ed in do_sym (handle=<optimized out>, name=0x7ffff6af868b "__isoc23_scanf", who=0x7ffff6a3bb84 <__interception::InterceptFunction(char const*, unsigned long*, unsigned long, unsigned long)+36>, vers=vers at entry=0x0, flags=flags at entry=2) at ./elf/dl-sym.c:146
#17 0x00007ffff656d9dd in _dl_sym (handle=<optimized out>, name=<optimized out>, who=<optimized out>) at ./elf/dl-sym.c:195
#18 0x00007ffff64a2854 in dlsym_doit (a=a at entry=0x7fffffffd3b0) at ./dlfcn/dlsym.c:40
#19 0x00007ffff7fcc489 in __GI__dl_catch_exception (exception=exception at entry=0x7fffffffd310, operate=0x7ffff64a2840 <dlsym_doit>, args=0x7fffffffd3b0) at ./elf/dl-catch.c:237
#20 0x00007ffff7fcc5af in _dl_catch_error (objname=0x7fffffffd368, errstring=0x7fffffffd370, mallocedp=0x7fffffffd367, operate=<optimized out>, args=<optimized out>) at ./elf/dl-catch.c:256
#21 0x00007ffff64a2257 in _dlerror_run (operate=operate at entry=0x7ffff64a2840 <dlsym_doit>, args=args at entry=0x7fffffffd3b0) at ./dlfcn/dlerror.c:138
#22 0x00007ffff64a28e5 in dlsym_implementation (dl_caller=<optimized out>, name=<optimized out>, handle=<optimized out>) at ./dlfcn/dlsym.c:54
#23 ___dlsym (handle=<optimized out>, name=<optimized out>) at ./dlfcn/dlsym.c:68
#24 0x00007ffff6a3bb84 in __interception::GetFuncAddr (name=0x7ffff6af868b "__isoc23_scanf", trampoline=140737311157448) at /path/to/llvm/compiler-rt/lib/interception/interception_linux.cpp:42
#25 __interception::InterceptFunction (name=0x7ffff6af868b "__isoc23_scanf", ptr_to_real=0x7ffff74850e8 <__interception::real___isoc23_scanf>, func=11, trampoline=140737311157448)
 at /path/to/llvm/compiler-rt/lib/interception/interception_linux.cpp:61
#26 0x00007ffff6a9f2d9 in InitializeCommonInterceptors () at /path/to/llvm/compiler-rt/lib/tsan/rtl/../../sanitizer_common/sanitizer_common_interceptors.inc:10315
```

Reviewed By: vitalybuka, MaskRay

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


  Commit: 578e66ac45dfcc5c739f3525bfb82d71282d925c
      https://github.com/llvm/llvm-project/commit/578e66ac45dfcc5c739f3525bfb82d71282d925c
  Author: Alexander Richardson <alexrichardson at google.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

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

  Log Message:
  -----------
  [tsan] Intercept __tls_get_addr_earlier

This can be useful because dlsym() may call malloc on failure which could
result in other interposed functions being called that could eventually
make use of TLS. While the crash that I experienced originally has been
fixed differently (by not using global-dynamic TLS accesses in the mutex
deadlock detector, see https://github.com/llvm/llvm-project/pull/83890),
moving this interception earlier is still a good since it makes the code
a bit more robust against initialization order problems.

Reviewed By: MaskRay, vitalybuka

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


  Commit: 3bc115de9f8f5bb78bbd68a5fd71bf30a66f61b7
      https://github.com/llvm/llvm-project/commit/3bc115de9f8f5bb78bbd68a5fd71bf30a66f61b7
  Author: Alex Richardson <alexrichardson at google.com>
  Date:   2024-03-08 (Fri, 08 Mar 2024)

  Changed paths:
    R .arcconfig
    R .arclint
    M .clang-tidy
    M .github/CODEOWNERS
    M .github/workflows/build-ci-container.yml
    M .github/workflows/containers/github-action-ci/stage2.Dockerfile
    M .github/workflows/release-binaries.yml
    M bolt/include/bolt/Core/ParallelUtilities.h
    M bolt/lib/Core/ParallelUtilities.cpp
    M bolt/lib/Core/Relocation.cpp
    M bolt/lib/Passes/IdenticalCodeFolding.cpp
    M bolt/lib/Rewrite/DWARFRewriter.cpp
    M bolt/lib/Rewrite/LinuxKernelRewriter.cpp
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    M bolt/test/X86/gotpcrelx.s
    A bolt/test/X86/linux-alt-instruction.s
    A bolt/test/X86/linux-bug-table.s
    A bolt/test/X86/linux-exceptions.s
    A bolt/test/X86/linux-parainstructions.s
    M bolt/test/X86/pt_gnu_relro.s
    M bolt/tools/merge-fdata/merge-fdata.cpp
    M bolt/unittests/Core/BinaryContext.cpp
    M clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
    M clang-tools-extra/clang-include-fixer/find-all-symbols/tool/FindAllSymbolsMain.cpp
    M clang-tools-extra/clang-tidy/bugprone/AssertSideEffectCheck.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/CrtpConstructorAccessibilityCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/CrtpConstructorAccessibilityCheck.h
    M clang-tools-extra/clang-tidy/bugprone/UnusedReturnValueCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/UnusedReturnValueCheck.h
    M clang-tools-extra/clang-tidy/bugprone/UseAfterMoveCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/MissingStdForwardCheck.cpp
    M clang-tools-extra/clang-tidy/google/ExplicitConstructorCheck.cpp
    M clang-tools-extra/clang-tidy/hicpp/IgnoredRemoveResultCheck.cpp
    M clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
    M clang-tools-extra/clang-tidy/utils/DeclRefExprUtils.cpp
    M clang-tools-extra/clangd/ClangdServer.cpp
    M clang-tools-extra/clangd/FindSymbols.cpp
    M clang-tools-extra/clangd/HeuristicResolver.cpp
    M clang-tools-extra/clangd/HeuristicResolver.h
    M clang-tools-extra/clangd/IncludeCleaner.cpp
    M clang-tools-extra/clangd/IncludeCleaner.h
    M clang-tools-extra/clangd/ParsedAST.cpp
    M clang-tools-extra/clangd/refactor/Rename.cpp
    M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
    M clang-tools-extra/clangd/unittests/FindSymbolsTests.cpp
    M clang-tools-extra/clangd/unittests/FindTargetTests.cpp
    M clang-tools-extra/clangd/unittests/IncludeCleanerTests.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    A clang-tools-extra/docs/clang-tidy/checks/bugprone/crtp-constructor-accessibility.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/unused-return-value.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/use-after-move.rst
    M clang-tools-extra/docs/clang-tidy/checks/list.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/identifier-naming.rst
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/assert-side-effect.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/crtp-constructor-accessibility.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/unused-return-value-custom.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/unused-return-value.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/use-after-move.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/missing-std-forward.cpp
    A clang-tools-extra/test/clang-tidy/checkers/google/explicit-constructor-cxx20.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/Inputs/identifier-naming/hungarian-notation3/.clang-tidy
    A clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-hungarian-notation-lower-case-prefix.cpp
    M clang-tools-extra/unittests/clang-tidy/DeclRefExprUtilsTest.cpp
    M clang/CodeOwners.rst
    M clang/cmake/caches/Fuchsia-stage2.cmake
    M clang/docs/ClangFormatStyleOptions.rst
    M clang/docs/DataFlowSanitizer.rst
    M clang/docs/LanguageExtensions.rst
    M clang/docs/LibASTMatchersReference.html
    M clang/docs/ReleaseNotes.rst
    M clang/docs/analyzer/checkers.rst
    M clang/docs/conf.py
    A clang/docs/ghlinks.py
    M clang/docs/tools/dump_format_style.py
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/AST/DeclBase.h
    M clang/include/clang/AST/DeclOpenMP.h
    M clang/include/clang/AST/Expr.h
    M clang/include/clang/AST/ParentMapContext.h
    M clang/include/clang/ASTMatchers/ASTMatchers.h
    M clang/include/clang/Analysis/FlowSensitive/ControlFlowContext.h
    M clang/include/clang/Analysis/FlowSensitive/DataflowEnvironment.h
    M clang/include/clang/Basic/Attr.td
    R clang/include/clang/Basic/Builtins.def
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/BuiltinsAMDGPU.def
    M clang/include/clang/Basic/BuiltinsBase.td
    M clang/include/clang/Basic/BuiltinsX86.def
    M clang/include/clang/Basic/Cuda.h
    M clang/include/clang/Basic/DarwinSDKInfo.h
    M clang/include/clang/Basic/DeclNodes.td
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/Module.h
    M clang/include/clang/Basic/OpenCLExtensionTypes.def
    M clang/include/clang/Basic/RISCVVTypes.def
    M clang/include/clang/Basic/TokenKinds.def
    M clang/include/clang/Basic/arm_neon_incl.td
    M clang/include/clang/Basic/arm_sve.td
    M clang/include/clang/Driver/Driver.h
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Format/Format.h
    M clang/include/clang/Frontend/FrontendActions.h
    M clang/include/clang/Frontend/FrontendOptions.h
    M clang/include/clang/InstallAPI/Frontend.h
    M clang/include/clang/InstallAPI/Visitor.h
    M clang/include/clang/Interpreter/Interpreter.h
    M clang/include/clang/Sema/DeclSpec.h
    M clang/include/clang/Sema/ParsedAttr.h
    M clang/include/clang/Sema/Scope.h
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Serialization/ASTWriter.h
    M clang/include/clang/Serialization/PCHContainerOperations.h
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/include/clang/StaticAnalyzer/Core/PathDiagnosticConsumers.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallDescription.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerHelpers.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
    M clang/include/clang/Testing/CommandLineArgs.h
    M clang/include/clang/Testing/TestClangConfig.h
    M clang/lib/ARCMigrate/TransGCAttrs.cpp
    M clang/lib/AST/CMakeLists.txt
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclBase.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/Interp/ByteCodeEmitter.cpp
    M clang/lib/AST/Interp/ByteCodeEmitter.h
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/lib/AST/Interp/ByteCodeExprGen.h
    R clang/lib/AST/Interp/ByteCodeGenError.cpp
    R clang/lib/AST/Interp/ByteCodeGenError.h
    M clang/lib/AST/Interp/ByteCodeStmtGen.cpp
    M clang/lib/AST/Interp/Context.cpp
    M clang/lib/AST/Interp/Context.h
    M clang/lib/AST/Interp/EvalEmitter.cpp
    M clang/lib/AST/Interp/FunctionPointer.h
    M clang/lib/AST/Interp/Interp.h
    M clang/lib/AST/Interp/InterpBuiltin.cpp
    M clang/lib/AST/Interp/Opcodes.td
    M clang/lib/AST/Interp/PrimType.h
    M clang/lib/AST/Interp/Program.h
    M clang/lib/AST/StmtOpenACC.cpp
    M clang/lib/ASTMatchers/Dynamic/Registry.cpp
    M clang/lib/Analysis/FlowSensitive/ControlFlowContext.cpp
    M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
    M clang/lib/Analysis/FlowSensitive/HTMLLogger.cpp
    M clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp
    M clang/lib/Basic/Module.cpp
    M clang/lib/Basic/OpenMPKinds.cpp
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenTBAA.cpp
    M clang/lib/CodeGen/Targets/AArch64.cpp
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/OffloadBundler.cpp
    M clang/lib/Driver/ToolChains/AIX.cpp
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/lib/Driver/ToolChains/Arch/Mips.h
    M clang/lib/Driver/ToolChains/Arch/Sparc.h
    M clang/lib/Driver/ToolChains/BareMetal.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/Cuda.cpp
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/lib/Driver/ToolChains/DragonFly.cpp
    M clang/lib/Driver/ToolChains/FreeBSD.cpp
    M clang/lib/Driver/ToolChains/Fuchsia.cpp
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/lib/Driver/ToolChains/Haiku.cpp
    M clang/lib/Driver/ToolChains/Hexagon.cpp
    M clang/lib/Driver/ToolChains/Linux.cpp
    M clang/lib/Driver/ToolChains/MSVC.cpp
    M clang/lib/Driver/ToolChains/MinGW.cpp
    M clang/lib/Driver/ToolChains/MipsLinux.cpp
    M clang/lib/Driver/ToolChains/NetBSD.cpp
    M clang/lib/Driver/ToolChains/OHOS.cpp
    M clang/lib/Driver/ToolChains/OpenBSD.cpp
    M clang/lib/Driver/ToolChains/PS4CPU.cpp
    M clang/lib/Driver/ToolChains/Solaris.cpp
    M clang/lib/Driver/ToolChains/WebAssembly.cpp
    M clang/lib/Driver/ToolChains/ZOS.cpp
    M clang/lib/Format/FormatToken.cpp
    M clang/lib/Format/FormatToken.h
    M clang/lib/Format/QualifierAlignmentFixer.cpp
    M clang/lib/Format/QualifierAlignmentFixer.h
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/lib/Format/TokenAnnotator.h
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/lib/Format/UnwrappedLineParser.h
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Frontend/FrontendActions.cpp
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
    M clang/lib/Headers/avxintrin.h
    M clang/lib/Headers/emmintrin.h
    M clang/lib/Headers/hlsl/hlsl_basic_types.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Headers/larchintrin.h
    M clang/lib/Headers/llvm_libc_wrappers/assert.h
    M clang/lib/Headers/xmmintrin.h
    M clang/lib/InstallAPI/Frontend.cpp
    M clang/lib/InstallAPI/Visitor.cpp
    M clang/lib/Interpreter/Interpreter.cpp
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Parse/ParseExpr.cpp
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/lib/Parse/ParseOpenACC.cpp
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/lib/Sema/DeclSpec.cpp
    M clang/lib/Sema/ParsedAttr.cpp
    M clang/lib/Sema/Scope.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaCUDA.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaCodeComplete.cpp
    M clang/lib/Sema/SemaConcept.cpp
    M clang/lib/Sema/SemaCoroutine.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExceptionSpec.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaInit.cpp
    M clang/lib/Sema/SemaModule.cpp
    M clang/lib/Sema/SemaOpenACC.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    M clang/lib/Serialization/GeneratePCH.cpp
    M clang/lib/StaticAnalyzer/Checkers/ArrayBoundCheckerV2.cpp
    M clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/CheckerDocumentation.cpp
    M clang/lib/StaticAnalyzer/Checkers/DirectIvarAssignment.cpp
    M clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ObjCAutoreleaseWriteChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/STLAlgorithmModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/SimpleStreamChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.h
    M clang/lib/StaticAnalyzer/Checkers/WebKit/UncountedLocalVarsChecker.cpp
    M clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
    M clang/lib/StaticAnalyzer/Core/CallDescription.cpp
    M clang/lib/StaticAnalyzer/Core/CallEvent.cpp
    M clang/lib/StaticAnalyzer/Core/CheckerHelpers.cpp
    M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp
    M clang/lib/StaticAnalyzer/Core/RangeConstraintManager.cpp
    M clang/lib/Testing/CommandLineArgs.cpp
    M clang/lib/Tooling/AllTUsExecution.cpp
    M clang/lib/Tooling/CMakeLists.txt
    M clang/lib/Tooling/Refactoring/AtomicChange.cpp
    M clang/test/AST/Interp/arrays.cpp
    M clang/test/AST/Interp/builtin-functions.cpp
    M clang/test/AST/Interp/c.c
    M clang/test/AST/Interp/complex.c
    M clang/test/AST/Interp/complex.cpp
    M clang/test/AST/Interp/cxx23.cpp
    M clang/test/AST/Interp/functions.cpp
    M clang/test/AST/Interp/literals.cpp
    M clang/test/Analysis/Checkers/WebKit/mock-types.h
    M clang/test/Analysis/Checkers/WebKit/uncounted-local-vars.cpp
    M clang/test/Analysis/Inputs/system-header-simulator-for-malloc.h
    M clang/test/Analysis/Inputs/system-header-simulator-for-simple-stream.h
    M clang/test/Analysis/Inputs/system-header-simulator-for-valist.h
    M clang/test/Analysis/Inputs/system-header-simulator.h
    M clang/test/Analysis/analyzer-config.c
    A clang/test/Analysis/assuming-unsigned-ge-0.c
    M clang/test/Analysis/cxx2b-deducing-this.cpp
    A clang/test/Analysis/getline-alloc.c
    M clang/test/Analysis/misc-ps-region-store.mm
    M clang/test/Analysis/stack-addr-ps.c
    M clang/test/Analysis/std-c-library-functions.c
    M clang/test/Analysis/stream-error.c
    M clang/test/Analysis/stream-invalidate.c
    M clang/test/Analysis/stream.c
    A clang/test/C/C2x/n3018.c
    M clang/test/C/drs/dr0xx.c
    M clang/test/C/drs/dr2xx.c
    M clang/test/CXX/basic/basic.link/p10-ex2.cpp
    M clang/test/CXX/basic/basic.lookup/basic.lookup.argdep/p4-friend-in-reachable-class.cpp
    M clang/test/CXX/class/class.compare/class.compare.default/p3.cpp
    M clang/test/CXX/class/class.compare/class.compare.default/p4.cpp
    M clang/test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/dtor.cpp
    M clang/test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p3-2b.cpp
    M clang/test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p3.cpp
    M clang/test/CXX/dcl.dcl/dcl.spec/dcl.constexpr/p4.cpp
    M clang/test/CXX/dcl.decl/dcl.fct.def/dcl.fct.def.default/p2.cpp
    M clang/test/CXX/drs/dr13xx.cpp
    M clang/test/CXX/drs/dr14xx.cpp
    M clang/test/CXX/drs/dr15xx.cpp
    M clang/test/CXX/drs/dr16xx.cpp
    M clang/test/CXX/drs/dr24xx.cpp
    M clang/test/CXX/drs/dr25xx.cpp
    A clang/test/CXX/drs/dr438.cpp
    A clang/test/CXX/drs/dr439.cpp
    A clang/test/CXX/drs/dr441.cpp
    A clang/test/CXX/drs/dr462.cpp
    A clang/test/CXX/drs/dr492.cpp
    M clang/test/CXX/drs/dr4xx.cpp
    A clang/test/CXX/drs/dr519.cpp
    A clang/test/CXX/drs/dr571.cpp
    M clang/test/CXX/drs/dr5xx.cpp
    M clang/test/CXX/drs/dr6xx.cpp
    M clang/test/CXX/expr/expr.const/p5-26.cpp
    M clang/test/CXX/special/class.copy/p13-0x.cpp
    M clang/test/CXX/temp/temp.fct.spec/temp.deduct/temp.deduct.conv/p4.cpp
    M clang/test/CXX/temp/temp.res/temp.local/p6.cpp
    M clang/test/CodeGen/LoongArch/intrinsic-la32.c
    M clang/test/CodeGen/LoongArch/intrinsic-la64.c
    M clang/test/CodeGen/PowerPC/builtins-ppc-xlcompat-rotate.c
    A clang/test/CodeGen/X86/attribute-cmpsd-no-error.c
    M clang/test/CodeGen/X86/avx-builtins.c
    A clang/test/CodeGen/X86/cmp-avx-builtins-error.c
    M clang/test/CodeGen/X86/sse-builtins.c
    M clang/test/CodeGen/X86/sse2-builtins.c
    A clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_dupq.c
    A clang/test/CodeGen/attr-availability-visionos.c
    M clang/test/CodeGen/attr-target-version.c
    M clang/test/CodeGen/target-features-error-2.c
    A clang/test/CodeGen/tbaa-struct-relaxed-aliasing-with-tsan.cpp
    M clang/test/CodeGen/tbaa-struct.cpp
    M clang/test/CodeGenCUDA/amdgpu-code-object-version-linking.cu
    M clang/test/CodeGenCUDA/amdgpu-code-object-version.cu
    M clang/test/CodeGenCUDA/host-used-extern.cu
    M clang/test/CodeGenHIP/default-attributes.hip
    A clang/test/CodeGenHLSL/builtins/any.hlsl
    A clang/test/CodeGenHLSL/builtins/exp.hlsl
    A clang/test/CodeGenHLSL/builtins/exp2.hlsl
    A clang/test/CodeGenHLSL/builtins/mad.hlsl
    A clang/test/CodeGenHLSL/builtins/rcp.hlsl
    M clang/test/CodeGenHLSL/semantics/DispatchThreadID.hlsl
    M clang/test/CodeGenObjC/constant-non-fragile-ivar-offset.m
    M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
    M clang/test/CodeGenOpenCL/amdgpu-features.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-dl-insts-err.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn.cl
    M clang/test/Driver/aarch64-mcpu.c
    M clang/test/Driver/amdgpu-openmp-toolchain.c
    M clang/test/Driver/arm-cortex-cpus-2.c
    M clang/test/Driver/clang-offload-bundler.c
    M clang/test/Driver/cuda-bad-arch.cu
    M clang/test/Driver/cuda-detect.cu
    M clang/test/Driver/cuda-external-tools.cu
    M clang/test/Driver/cuda-march.cu
    M clang/test/Driver/cuda-omp-unsupported-debug-options.cu
    M clang/test/Driver/cuda-options.cu
    M clang/test/Driver/cuda-phases.cu
    M clang/test/Driver/cuda-ptxas-path.cu
    M clang/test/Driver/dwarf-target-version-clamp.cu
    M clang/test/Driver/freebsd.c
    M clang/test/Driver/fuchsia.c
    M clang/test/Driver/haiku.c
    M clang/test/Driver/hip-binding.hip
    M clang/test/Driver/hip-cuid-hash.hip
    M clang/test/Driver/hip-cuid.hip
    M clang/test/Driver/hip-dependent-options.hip
    M clang/test/Driver/hip-device-compile.hip
    M clang/test/Driver/hip-link-bc-to-bc.hip
    M clang/test/Driver/hip-link-bundle-archive.hip
    M clang/test/Driver/hip-link-save-temps.hip
    M clang/test/Driver/hip-link-shared-library.hip
    M clang/test/Driver/hip-link-static-library.hip
    M clang/test/Driver/hip-offload-compress-zlib.hip
    M clang/test/Driver/hip-offload-compress-zstd.hip
    M clang/test/Driver/hip-output-file-name.hip
    M clang/test/Driver/hip-partial-link.hip
    M clang/test/Driver/hip-phases.hip
    M clang/test/Driver/hip-rdc-device-only.hip
    M clang/test/Driver/hip-target-id.hip
    M clang/test/Driver/hip-toolchain-features.hip
    M clang/test/Driver/hip-toolchain-rdc-separate.hip
    M clang/test/Driver/hip-toolchain-rdc-static-lib.hip
    M clang/test/Driver/hip-toolchain-rdc.hip
    M clang/test/Driver/hip-unbundle-preproc.hipi
    M clang/test/Driver/hipspv-toolchain-rdc.hip
    M clang/test/Driver/hipspv-toolchain.hip
    M clang/test/Driver/linker-wrapper-image.c
    M clang/test/Driver/linker-wrapper-libs.c
    M clang/test/Driver/linker-wrapper.c
    M clang/test/Driver/lto.cu
    M clang/test/Driver/netbsd.c
    M clang/test/Driver/openbsd.c
    M clang/test/Driver/openmp-offload-gpu.c
    M clang/test/Driver/openmp-offload-infer.c
    M clang/test/Driver/riscv-arch.c
    M clang/test/Driver/split-debug.c
    M clang/test/Driver/thinlto.cu
    A clang/test/InstallAPI/functions.test
    M clang/test/InstallAPI/objcclasses.test
    M clang/test/Interpreter/execute-stmts.cpp
    A clang/test/Layout/dump-complete-invalid.cpp
    M clang/test/Layout/dump-complete.cpp
    M clang/test/Lexer/cxx-features.cpp
    M clang/test/Misc/target-invalid-cpu-note.c
    M clang/test/Modules/InheritDefaultArguments.cppm
    R clang/test/Modules/Inputs/config.h
    M clang/test/Modules/Inputs/module.modulemap
    M clang/test/Modules/Reachability-Private.cpp
    M clang/test/Modules/Reachability-func-default-arg.cpp
    M clang/test/Modules/Reachability-func-ret.cpp
    M clang/test/Modules/Reachability-template-default-arg.cpp
    M clang/test/Modules/Reachability-template-instantiation.cpp
    M clang/test/Modules/Reachability-using-templates.cpp
    M clang/test/Modules/Reachability-using.cpp
    M clang/test/Modules/concept.cppm
    M clang/test/Modules/concept_differ.cppm
    M clang/test/Modules/config_macros.m
    M clang/test/Modules/ctor.arg.dep.cppm
    M clang/test/Modules/cxx20-10-1-ex1.cpp
    M clang/test/Modules/cxx20-10-1-ex2.cpp
    M clang/test/Modules/cxx20-10-2-ex2.cpp
    M clang/test/Modules/cxx20-10-2-ex5.cpp
    M clang/test/Modules/cxx20-10-3-ex1.cpp
    M clang/test/Modules/cxx20-10-3-ex2.cpp
    M clang/test/Modules/cxx20-10-5-ex1.cpp
    M clang/test/Modules/cxx20-import-diagnostics-a.cpp
    M clang/test/Modules/cxx20-import-diagnostics-b.cpp
    M clang/test/Modules/cxx20-module-file-info-macros.cpp
    M clang/test/Modules/deduction-guide.cppm
    M clang/test/Modules/deduction-guide2.cppm
    M clang/test/Modules/deduction-guide3.cppm
    M clang/test/Modules/derived_class.cpp
    M clang/test/Modules/duplicated-module-file-eq-module-name.cppm
    M clang/test/Modules/enum-class.cppm
    M clang/test/Modules/explicitly-specialized-template.cpp
    M clang/test/Modules/export-language-linkage.cppm
    M clang/test/Modules/ftime-trace.cppm
    M clang/test/Modules/inconsistent-deduction-guide-linkage.cppm
    M clang/test/Modules/inconsistent-export.cppm
    M clang/test/Modules/inherited_arg.cppm
    M clang/test/Modules/instantiation-argdep-lookup.cppm
    M clang/test/Modules/lambdas.cppm
    M clang/test/Modules/merge-concepts-cxx-modules.cpp
    M clang/test/Modules/merge-constrained-friends.cpp
    M clang/test/Modules/merge-lambdas.cppm
    M clang/test/Modules/merge-requires-with-lambdas.cppm
    M clang/test/Modules/merge-var-template-spec-cxx-modules.cppm
    M clang/test/Modules/mismatch-diagnostics.cpp
    M clang/test/Modules/module-init-duplicated-import.cppm
    M clang/test/Modules/named-modules-adl-2.cppm
    M clang/test/Modules/named-modules-adl-3.cppm
    M clang/test/Modules/named-modules-adl.cppm
    M clang/test/Modules/no-duplicate-codegen-in-GMF.cppm
    M clang/test/Modules/pair-unambiguous-ctor.cppm
    M clang/test/Modules/partial_specialization.cppm
    M clang/test/Modules/placement-new-reachable.cpp
    M clang/test/Modules/polluted-operator.cppm
    M clang/test/Modules/pr54457.cppm
    M clang/test/Modules/pr56916.cppm
    M clang/test/Modules/pr58532.cppm
    M clang/test/Modules/pr58716.cppm
    M clang/test/Modules/pr59719.cppm
    M clang/test/Modules/pr59780.cppm
    M clang/test/Modules/pr59999.cppm
    M clang/test/Modules/pr60036.cppm
    M clang/test/Modules/pr60085.cppm
    M clang/test/Modules/pr60275.cppm
    M clang/test/Modules/pr60486.cppm
    M clang/test/Modules/pr60693.cppm
    M clang/test/Modules/pr60775.cppm
    M clang/test/Modules/pr60890.cppm
    M clang/test/Modules/pr61065.cppm
    M clang/test/Modules/pr61065_2.cppm
    M clang/test/Modules/pr61067.cppm
    M clang/test/Modules/pr61317.cppm
    M clang/test/Modules/pr61783.cppm
    M clang/test/Modules/pr61892.cppm
    M clang/test/Modules/pr62158.cppm
    M clang/test/Modules/pr62359.cppm
    M clang/test/Modules/pr62589.cppm
    M clang/test/Modules/pr62705.cppm
    M clang/test/Modules/pr62796.cppm
    M clang/test/Modules/pr62943.cppm
    M clang/test/Modules/pr63544.cppm
    M clang/test/Modules/pr63595.cppm
    M clang/test/Modules/pr67627.cppm
    M clang/test/Modules/pr67893.cppm
    M clang/test/Modules/predefined.cpp
    M clang/test/Modules/preferred_name.cppm
    M clang/test/Modules/redefinition-merges.cppm
    M clang/test/Modules/redundant-template-default-arg.cpp
    M clang/test/Modules/redundant-template-default-arg2.cpp
    M clang/test/Modules/redundant-template-default-arg3.cpp
    M clang/test/Modules/search-partitions.cpp
    M clang/test/Modules/seperated-member-function-definition-for-template-class.cppm
    M clang/test/Modules/template-function-specialization.cpp
    M clang/test/Modules/template-lambdas.cppm
    M clang/test/Modules/template-pack.cppm
    M clang/test/Modules/template_default_argument.cpp
    A clang/test/Modules/transitive-import.cppm
    M clang/test/OpenMP/declare_target_ast_print.cpp
    M clang/test/OpenMP/declare_target_messages.cpp
    A clang/test/Parser/c23-constexpr.c
    A clang/test/Parser/cxx-declarator-attribute-crash.cpp
    M clang/test/ParserOpenACC/parse-clauses.c
    M clang/test/ParserOpenACC/parse-constructs.c
    M clang/test/Preprocessor/riscv-target-features.c
    M clang/test/Rewriter/rewrite-modern-class.mm
    M clang/test/Sema/aarch64-sve2p1-intrinsics/acle_sve2p1_imm.cpp
    A clang/test/Sema/attr-availability-visionos.c
    M clang/test/Sema/attr-target-version.c
    M clang/test/Sema/constant-builtins-2.c
    A clang/test/Sema/constexpr.c
    M clang/test/Sema/integer-overflow.c
    M clang/test/Sema/riscv-vector-float64-check.c
    M clang/test/Sema/static-assert.c
    M clang/test/Sema/switch-1.c
    A clang/test/SemaCUDA/float128.cu
    M clang/test/SemaCXX/constant-expression-cxx11.cpp
    M clang/test/SemaCXX/constant-expression-cxx14.cpp
    M clang/test/SemaCXX/constant-expression-cxx2b.cpp
    M clang/test/SemaCXX/cxx17-compat.cpp
    M clang/test/SemaCXX/cxx1z-class-template-argument-deduction.cpp
    A clang/test/SemaCXX/cxx20-ctad-type-alias.cpp
    A clang/test/SemaCXX/cxx23-invalid-constexpr.cpp
    M clang/test/SemaCXX/cxx2a-consteval-default-params.cpp
    M clang/test/SemaCXX/cxx2a-consteval.cpp
    M clang/test/SemaCXX/cxx2a-initializer-aggregates.cpp
    M clang/test/SemaCXX/cxx2b-p2266-disable-with-msvc-compat.cpp
    M clang/test/SemaCXX/deduced-return-type-cxx14.cpp
    M clang/test/SemaCXX/enum.cpp
    A clang/test/SemaCXX/gh84064-1.cpp
    A clang/test/SemaCXX/gh84064-2.cpp
    M clang/test/SemaCXX/integer-overflow.cpp
    M clang/test/SemaCXX/lambda-expressions.cpp
    M clang/test/SemaCXX/overload-template.cpp
    M clang/test/SemaCXX/overloaded-operator.cpp
    M clang/test/SemaCXX/source_location.cpp
    M clang/test/SemaCXX/type-traits-nonobject.cpp
    M clang/test/SemaCXX/type-traits.cpp
    M clang/test/SemaCXX/warn-self-move.cpp
    A clang/test/SemaCXX/warn-unsequenced-paren-list-init.cpp
    A clang/test/SemaHLSL/BuiltIns/any-errors.hlsl
    A clang/test/SemaHLSL/BuiltIns/exp-errors.hlsl
    A clang/test/SemaHLSL/BuiltIns/mad-errors.hlsl
    A clang/test/SemaHLSL/BuiltIns/rcp-errors.hlsl
    M clang/test/SemaObjC/integer-overflow.m
    M clang/test/SemaObjC/objc-literal-nsnumber.m
    M clang/test/SemaOpenACC/compute-construct-ast.cpp
    M clang/test/SemaOpenACC/no-branch-in-out.c
    M clang/test/SemaOpenACC/no-branch-in-out.cpp
    M clang/test/SemaOpenACC/parallel-assoc-stmt-inst.cpp
    M clang/test/SemaOpenACC/parallel-loc-and-stmt.c
    M clang/test/SemaOpenCLCXX/addrspace-constructors.clcpp
    M clang/test/SemaTemplate/concepts-lambda.cpp
    A clang/test/TableGen/target-builtins-prototype-parser.td
    M clang/tools/clang-fuzzer/proto-to-llvm/loop_proto_to_llvm.h
    M clang/tools/clang-installapi/Options.cpp
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M clang/tools/clang-linker-wrapper/LinkerWrapperOpts.td
    M clang/tools/clang-scan-deps/ClangScanDeps.cpp
    M clang/tools/diagtool/DiagTool.cpp
    M clang/tools/driver/cc1as_main.cpp
    M clang/unittests/AST/ASTImporterODRStrategiesTest.cpp
    M clang/unittests/AST/MatchVerifier.h
    M clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
    M clang/unittests/ASTMatchers/ASTMatchersNodeTest.cpp
    M clang/unittests/ASTMatchers/ASTMatchersTest.h
    M clang/unittests/ASTMatchers/Dynamic/RegistryTest.cpp
    M clang/unittests/ASTMatchers/Dynamic/VariantValueTest.cpp
    M clang/unittests/Analysis/FlowSensitive/DataflowEnvironmentTest.cpp
    M clang/unittests/Analysis/FlowSensitive/TestingSupport.cpp
    M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp
    M clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp
    M clang/unittests/Basic/DarwinSDKInfoTest.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp
    M clang/unittests/Interpreter/CMakeLists.txt
    A clang/unittests/Interpreter/IncrementalCompilerBuilderTest.cpp
    M clang/unittests/Sema/SemaNoloadLookupTest.cpp
    M clang/unittests/Serialization/ForceCheckFileInputTest.cpp
    M clang/unittests/Serialization/NoCommentsTest.cpp
    M clang/unittests/Serialization/VarDeclConstantInitTest.cpp
    M clang/unittests/StaticAnalyzer/CallDescriptionTest.cpp
    M clang/unittests/Tooling/RecursiveASTVisitorTests/CXXOperatorCallExprTraverser.cpp
    M clang/unittests/Tooling/RecursiveASTVisitorTests/CallbacksBinaryOperator.cpp
    M clang/unittests/Tooling/RecursiveASTVisitorTests/CallbacksCompoundAssignOperator.cpp
    M clang/unittests/Tooling/RecursiveASTVisitorTests/CallbacksUnaryOperator.cpp
    M clang/unittests/Tooling/RecursiveASTVisitorTests/InitListExprPostOrderNoQueue.cpp
    M clang/unittests/Tooling/RecursiveASTVisitorTests/InitListExprPreOrderNoQueue.cpp
    M clang/unittests/Tooling/RecursiveASTVisitorTests/TemplateArgumentLocTraverser.cpp
    M clang/utils/TableGen/ClangBuiltinsEmitter.cpp
    M clang/utils/TableGen/ClangOpcodesEmitter.cpp
    M clang/www/c_status.html
    M clang/www/cxx_dr_status.html
    M clang/www/cxx_status.html
    M clang/www/make_cxx_dr_status
    M compiler-rt/cmake/Modules/CompilerRTDarwinUtils.cmake
    M compiler-rt/cmake/Modules/CompilerRTUtils.cmake
    M compiler-rt/cmake/config-ix.cmake
    M compiler-rt/lib/builtins/CMakeLists.txt
    A compiler-rt/lib/builtins/extendbfsf2.c
    M compiler-rt/lib/builtins/fp_extend.h
    M compiler-rt/lib/fuzzer/FuzzerUtilWindows.cpp
    M compiler-rt/lib/msan/tests/CMakeLists.txt
    M compiler-rt/lib/profile/InstrProfilingPlatformWindows.c
    M compiler-rt/lib/sanitizer_common/sanitizer_common.h
    M compiler-rt/lib/sanitizer_common/sanitizer_common_syscalls.inc
    M compiler-rt/lib/sanitizer_common/sanitizer_internal_defs.h
    M compiler-rt/lib/sanitizer_common/sanitizer_mutex.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_placement_new.h
    M compiler-rt/lib/sanitizer_common/sanitizer_posix_libcdep.cpp
    M compiler-rt/lib/scudo/standalone/checksum.cpp
    M compiler-rt/lib/scudo/standalone/checksum.h
    M compiler-rt/lib/scudo/standalone/combined.h
    M compiler-rt/lib/scudo/standalone/crc32_hw.cpp
    M compiler-rt/lib/scudo/standalone/tests/memtag_test.cpp
    M compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
    A compiler-rt/test/asan/TestCases/Windows/issue64990.cpp
    M compiler-rt/test/builtins/Unit/ctor_dtor.c
    M compiler-rt/test/lit.common.cfg.py
    M compiler-rt/test/orc/lit.cfg.py
    M compiler-rt/test/sanitizer_common/TestCases/sanitizer_coverage_inline8bit_counter_default_impl.cpp
    M compiler-rt/test/sanitizer_common/TestCases/sanitizer_coverage_symbolize.cpp
    M cross-project-tests/debuginfo-tests/llgdb-tests/static-member-2.cpp
    M cross-project-tests/debuginfo-tests/llgdb-tests/static-member.cpp
    M flang/docs/Extensions.md
    A flang/docs/OpenMP-declare-target.md
    M flang/docs/conf.py
    M flang/docs/index.md
    M flang/include/flang/Evaluate/traverse.h
    M flang/include/flang/Lower/OpenMP.h
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    M flang/include/flang/Optimizer/CodeGen/CodeGen.h
    M flang/include/flang/Semantics/symbol.h
    M flang/include/flang/Semantics/type.h
    M flang/lib/Evaluate/check-expression.cpp
    M flang/lib/Evaluate/intrinsics.cpp
    M flang/lib/Evaluate/tools.cpp
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/ConvertCall.cpp
    M flang/lib/Lower/ConvertExprToHLFIR.cpp
    M flang/lib/Lower/OpenACC.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/OpenMP/Utils.h
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/lib/Optimizer/CodeGen/BoxedProcedure.cpp
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/CodeGen/TBAABuilder.cpp
    M flang/lib/Optimizer/CodeGen/Target.cpp
    M flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp
    M flang/lib/Optimizer/Transforms/MemoryAllocation.cpp
    M flang/lib/Optimizer/Transforms/OMPFunctionFiltering.cpp
    M flang/lib/Optimizer/Transforms/SimplifyIntrinsics.cpp
    M flang/lib/Semantics/check-declarations.cpp
    M flang/lib/Semantics/check-select-type.cpp
    M flang/lib/Semantics/mod-file.cpp
    M flang/lib/Semantics/resolve-names-utils.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/rewrite-directives.cpp
    M flang/lib/Semantics/symbol.cpp
    M flang/lib/Semantics/tools.cpp
    M flang/lib/Semantics/type.cpp
    M flang/runtime/CMakeLists.txt
    M flang/runtime/Float128Math/CMakeLists.txt
    R flang/runtime/Float128Math/cabs.cpp
    A flang/runtime/Float128Math/complex-math.c
    A flang/runtime/Float128Math/complex-math.h
    M flang/runtime/Float128Math/exponent.cpp
    M flang/runtime/Float128Math/fraction.cpp
    M flang/runtime/Float128Math/math-entries.h
    M flang/runtime/Float128Math/mod-real.cpp
    M flang/runtime/Float128Math/modulo-real.cpp
    M flang/runtime/Float128Math/nearest.cpp
    M flang/runtime/Float128Math/rrspacing.cpp
    M flang/runtime/Float128Math/scale.cpp
    M flang/runtime/Float128Math/set-exponent.cpp
    M flang/runtime/Float128Math/spacing.cpp
    M flang/runtime/complex-powi.cpp
    M flang/runtime/complex-reduction.c
    M flang/runtime/numeric.cpp
    A flang/test/Fir/target-complex16.f90
    A flang/test/HLFIR/assumed-type-actual-args.f90
    M flang/test/Lower/HLFIR/structure-constructor.f90
    A flang/test/Lower/Intrinsics/acos_complex16.f90
    A flang/test/Lower/Intrinsics/acosh_complex16.f90
    A flang/test/Lower/Intrinsics/asin_complex16.f90
    A flang/test/Lower/Intrinsics/asinh_complex16.f90
    A flang/test/Lower/Intrinsics/atan_complex16.f90
    A flang/test/Lower/Intrinsics/atanh_complex16.f90
    A flang/test/Lower/Intrinsics/cos_complex16.f90
    A flang/test/Lower/Intrinsics/cosh_complex16.f90
    A flang/test/Lower/Intrinsics/exp_complex16.f90
    A flang/test/Lower/Intrinsics/log_complex16.f90
    R flang/test/Lower/Intrinsics/missing-math-runtime.f90
    A flang/test/Lower/Intrinsics/pow_complex16.f90
    A flang/test/Lower/Intrinsics/pow_complex16i.f90
    A flang/test/Lower/Intrinsics/pow_complex16k.f90
    A flang/test/Lower/Intrinsics/sin_complex16.f90
    A flang/test/Lower/Intrinsics/sinh_complex16.f90
    A flang/test/Lower/Intrinsics/sqrt_complex16.f90
    A flang/test/Lower/Intrinsics/tan_complex16.f90
    A flang/test/Lower/Intrinsics/tanh_complex16.f90
    M flang/test/Lower/OpenMP/FIR/delayed-privatization-firstprivate.f90
    M flang/test/Lower/OpenMP/FIR/delayed-privatization-private.f90
    A flang/test/Lower/OpenMP/declare-target-deferred-marking.f90
    A flang/test/Lower/OpenMP/declare-target-link-tarop-cap.f90
    M flang/test/Lower/OpenMP/delayed-privatization-firstprivate.f90
    M flang/test/Lower/OpenMP/delayed-privatization-private-firstprivate.f90
    M flang/test/Lower/OpenMP/delayed-privatization-private.f90
    M flang/test/Lower/OpenMP/delayed-privatization-reduction.f90
    A flang/test/Lower/OpenMP/workshare.f90
    M flang/test/Semantics/declarations06.f90
    M flang/test/Semantics/forall01.f90
    M flang/test/Semantics/init01.f90
    A flang/test/Semantics/modfile64.f90
    M flang/test/Semantics/null01.f90
    M flang/test/Semantics/resolve09.f90
    M flang/test/Semantics/selecttype03.f90
    A flang/test/Semantics/selecttype04.f90
    M flang/test/Transforms/simplifyintrinsics.fir
    M flang/unittests/Frontend/FrontendActionTest.cpp
    M libc/CMakeLists.txt
    M libc/cmake/modules/LLVMLibCHeaderRules.cmake
    M libc/cmake/modules/LLVMLibCTestRules.cmake
    M libc/cmake/modules/prepare_libc_gpu_build.cmake
    M libc/config/baremetal/api.td
    M libc/config/baremetal/arm/entrypoints.txt
    M libc/config/baremetal/arm/headers.txt
    M libc/config/baremetal/riscv/entrypoints.txt
    M libc/config/baremetal/riscv/headers.txt
    M libc/config/darwin/arm/headers.txt
    M libc/config/darwin/x86_64/headers.txt
    M libc/config/gpu/api.td
    M libc/config/gpu/headers.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/aarch64/headers.txt
    M libc/config/linux/api.td
    M libc/config/linux/arm/headers.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/riscv/headers.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/config/linux/x86_64/headers.txt
    M libc/docs/c23.rst
    M libc/docs/full_cross_build.rst
    A libc/docs/gpu/building.rst
    M libc/docs/gpu/index.rst
    M libc/docs/gpu/rpc.rst
    M libc/docs/gpu/using.rst
    M libc/docs/index.rst
    M libc/docs/math/index.rst
    M libc/docs/math/stdfix.rst
    M libc/docs/stdbit.rst
    A libc/docs/talks.rst
    M libc/include/CMakeLists.txt
    M libc/include/llvm-libc-macros/CMakeLists.txt
    M libc/include/llvm-libc-macros/inttypes-macros.h
    M libc/include/llvm-libc-macros/stdbit-macros.h
    A libc/include/llvm-libc-macros/stdint-macros.h
    M libc/include/llvm-libc-types/float128.h
    A libc/include/stdint.h.def
    M libc/spec/gnu_ext.td
    M libc/spec/llvm_libc_ext.td
    A libc/spec/llvm_libc_stdfix_ext.td
    M libc/spec/stdc.td
    M libc/spec/stdc_ext.td
    M libc/src/__support/CMakeLists.txt
    M libc/src/__support/CPP/CMakeLists.txt
    M libc/src/__support/CPP/bit.h
    M libc/src/__support/CPP/limits.h
    M libc/src/__support/CPP/type_traits/is_integral.h
    M libc/src/__support/CPP/type_traits/make_signed.h
    M libc/src/__support/CPP/type_traits/make_unsigned.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/generic/sqrt.h
    M libc/src/__support/FPUtil/generic/sqrt_80_bit_long_double.h
    M libc/src/__support/FPUtil/x86_64/sqrt.h
    M libc/src/__support/GPU/CMakeLists.txt
    M libc/src/__support/RPC/rpc.h
    M libc/src/__support/UInt.h
    M libc/src/__support/UInt128.h
    M libc/src/__support/blockstore.h
    M libc/src/__support/fixed_point/CMakeLists.txt
    M libc/src/__support/fixed_point/fx_rep.h
    M libc/src/__support/fixed_point/sqrt.h
    M libc/src/__support/float_to_string.h
    M libc/src/__support/high_precision_decimal.h
    M libc/src/__support/integer_literals.h
    M libc/src/__support/integer_to_string.h
    R libc/src/__support/integer_utils.h
    M libc/src/__support/macros/properties/types.h
    M libc/src/__support/math_extras.h
    M libc/src/__support/str_to_float.h
    M libc/src/__support/str_to_integer.h
    M libc/src/math/CMakeLists.txt
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/hypotf.cpp
    A libc/src/math/generic/llrintf128.cpp
    A libc/src/math/generic/llroundf128.cpp
    A libc/src/math/generic/lrintf128.cpp
    A libc/src/math/generic/lroundf128.cpp
    A libc/src/math/generic/rintf128.cpp
    A libc/src/math/llrintf128.h
    A libc/src/math/llroundf128.h
    A libc/src/math/lrintf128.h
    A libc/src/math/lroundf128.h
    A libc/src/math/rintf128.h
    M libc/src/stdbit/CMakeLists.txt
    A libc/src/stdbit/stdc_bit_floor_uc.cpp
    A libc/src/stdbit/stdc_bit_floor_uc.h
    A libc/src/stdbit/stdc_bit_floor_ui.cpp
    A libc/src/stdbit/stdc_bit_floor_ui.h
    A libc/src/stdbit/stdc_bit_floor_ul.cpp
    A libc/src/stdbit/stdc_bit_floor_ul.h
    A libc/src/stdbit/stdc_bit_floor_ull.cpp
    A libc/src/stdbit/stdc_bit_floor_ull.h
    A libc/src/stdbit/stdc_bit_floor_us.cpp
    A libc/src/stdbit/stdc_bit_floor_us.h
    A libc/src/stdbit/stdc_bit_width_uc.cpp
    A libc/src/stdbit/stdc_bit_width_uc.h
    A libc/src/stdbit/stdc_bit_width_ui.cpp
    A libc/src/stdbit/stdc_bit_width_ui.h
    A libc/src/stdbit/stdc_bit_width_ul.cpp
    A libc/src/stdbit/stdc_bit_width_ul.h
    A libc/src/stdbit/stdc_bit_width_ull.cpp
    A libc/src/stdbit/stdc_bit_width_ull.h
    A libc/src/stdbit/stdc_bit_width_us.cpp
    A libc/src/stdbit/stdc_bit_width_us.h
    M libc/src/stdbit/stdc_count_ones_uc.cpp
    M libc/src/stdbit/stdc_count_ones_ui.cpp
    M libc/src/stdbit/stdc_count_ones_ul.cpp
    M libc/src/stdbit/stdc_count_ones_ull.cpp
    M libc/src/stdbit/stdc_count_ones_us.cpp
    M libc/src/stdfix/CMakeLists.txt
    A libc/src/stdfix/exphk.cpp
    A libc/src/stdfix/exphk.h
    A libc/src/stdfix/expk.cpp
    A libc/src/stdfix/expk.h
    A libc/src/stdfix/uhksqrtus.cpp
    A libc/src/stdfix/uhksqrtus.h
    A libc/src/stdfix/uksqrtui.cpp
    A libc/src/stdfix/uksqrtui.h
    M libc/src/stdio/printf_core/float_dec_converter.h
    M libc/src/string/CMakeLists.txt
    M libc/src/string/memory_utils/op_generic.h
    M libc/src/string/memory_utils/op_x86.h
    M libc/src/string/memory_utils/utils.h
    M libc/src/string/memory_utils/x86_64/inline_memcpy.h
    M libc/src/string/memory_utils/x86_64/inline_memset.h
    A libc/src/string/memset_explicit.cpp
    A libc/src/string/memset_explicit.h
    M libc/test/UnitTest/CMakeLists.txt
    M libc/test/UnitTest/LibcTest.cpp
    M libc/test/UnitTest/LibcTest.h
    M libc/test/UnitTest/StringUtils.h
    M libc/test/UnitTest/TestLogger.cpp
    M libc/test/include/stdbit_test.cpp
    M libc/test/src/CMakeLists.txt
    M libc/test/src/__support/CMakeLists.txt
    M libc/test/src/__support/CPP/CMakeLists.txt
    M libc/test/src/__support/CPP/bit_test.cpp
    M libc/test/src/__support/CPP/limits_test.cpp
    M libc/test/src/__support/FPUtil/fpbits_test.cpp
    M libc/test/src/__support/high_precision_decimal_test.cpp
    M libc/test/src/__support/integer_literals_test.cpp
    M libc/test/src/__support/integer_to_string_test.cpp
    M libc/test/src/__support/math_extras_test.cpp
    A libc/test/src/__support/str_to_integer_test.cpp
    M libc/test/src/__support/str_to_long_double_test.cpp
    M libc/test/src/__support/uint_test.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/llrintf128_test.cpp
    A libc/test/src/math/smoke/llroundf128_test.cpp
    A libc/test/src/math/smoke/lrintf128_test.cpp
    A libc/test/src/math/smoke/lroundf128_test.cpp
    M libc/test/src/math/smoke/nanl_test.cpp
    A libc/test/src/math/smoke/rintf128_test.cpp
    M libc/test/src/stdbit/CMakeLists.txt
    A libc/test/src/stdbit/stdc_bit_floor_uc_test.cpp
    A libc/test/src/stdbit/stdc_bit_floor_ui_test.cpp
    A libc/test/src/stdbit/stdc_bit_floor_ul_test.cpp
    A libc/test/src/stdbit/stdc_bit_floor_ull_test.cpp
    A libc/test/src/stdbit/stdc_bit_floor_us_test.cpp
    A libc/test/src/stdbit/stdc_bit_width_uc_test.cpp
    A libc/test/src/stdbit/stdc_bit_width_ui_test.cpp
    A libc/test/src/stdbit/stdc_bit_width_ul_test.cpp
    A libc/test/src/stdbit/stdc_bit_width_ull_test.cpp
    A libc/test/src/stdbit/stdc_bit_width_us_test.cpp
    M libc/test/src/stdbit/stdc_has_single_bit_uc_test.cpp
    M libc/test/src/stdbit/stdc_has_single_bit_ui_test.cpp
    M libc/test/src/stdbit/stdc_has_single_bit_ul_test.cpp
    M libc/test/src/stdbit/stdc_has_single_bit_ull_test.cpp
    M libc/test/src/stdbit/stdc_has_single_bit_us_test.cpp
    M libc/test/src/stdfix/CMakeLists.txt
    A libc/test/src/stdfix/ExpTest.h
    A libc/test/src/stdfix/ISqrtTest.h
    M libc/test/src/stdfix/RoundTest.h
    A libc/test/src/stdfix/exphk_test.cpp
    A libc/test/src/stdfix/expk_test.cpp
    A libc/test/src/stdfix/uhksqrtus_test.cpp
    A libc/test/src/stdfix/uksqrtui_test.cpp
    M libc/test/src/stdio/sprintf_test.cpp
    M libc/test/src/stdio/sscanf_test.cpp
    M libc/test/src/stdlib/strtold_test.cpp
    M libc/test/src/string/CMakeLists.txt
    A libc/test/src/string/memset_explicit_test.cpp
    M libc/utils/gpu/server/rpc_server.cpp
    M libcxx/CMakeLists.txt
    M libcxx/docs/Contributing.rst
    M libcxx/docs/FeatureTestMacroTable.rst
    M libcxx/docs/ReleaseNotes/19.rst
    M libcxx/docs/Status/Cxx2cPapers.csv
    M libcxx/docs/Status/SpaceshipPapers.csv
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__atomic/atomic_base.h
    M libcxx/include/__atomic/atomic_flag.h
    M libcxx/include/__atomic/atomic_sync.h
    M libcxx/include/__availability
    M libcxx/include/__config
    M libcxx/include/__filesystem/path.h
    M libcxx/include/__format/concepts.h
    M libcxx/include/__format/format_arg.h
    M libcxx/include/__format/format_args.h
    M libcxx/include/__format/format_context.h
    R libcxx/include/__format/format_fwd.h
    M libcxx/include/__format/formatter.h
    M libcxx/include/__format/parser_std_format_spec.h
    M libcxx/include/__functional/bind.h
    M libcxx/include/__functional/hash.h
    M libcxx/include/__functional/identity.h
    A libcxx/include/__fwd/format.h
    A libcxx/include/__fwd/functional.h
    R libcxx/include/__fwd/hash.h
    M libcxx/include/__iterator/wrap_iter.h
    M libcxx/include/__thread/id.h
    M libcxx/include/__thread/support/pthread.h
    M libcxx/include/__type_traits/is_convertible.h
    M libcxx/include/__type_traits/is_reference_wrapper.h
    M libcxx/include/__type_traits/remove_cv.h
    M libcxx/include/__type_traits/remove_cvref.h
    M libcxx/include/__type_traits/unwrap_ref.h
    M libcxx/include/array
    M libcxx/include/atomic
    M libcxx/include/experimental/propagate_const
    M libcxx/include/filesystem
    M libcxx/include/format
    M libcxx/include/fstream
    M libcxx/include/iosfwd
    M libcxx/include/latch
    M libcxx/include/libcxx.imp
    A libcxx/include/module.modulemap
    R libcxx/include/module.modulemap.in
    M libcxx/include/optional
    M libcxx/include/semaphore
    M libcxx/include/span
    M libcxx/include/sstream
    M libcxx/include/string_view
    M libcxx/include/tuple
    M libcxx/include/type_traits
    M libcxx/include/version
    M libcxx/modules/std/iosfwd.inc
    M libcxx/src/iostream.cpp
    M libcxx/test/libcxx/lint/lint_headers.sh.py
    M libcxx/test/libcxx/module_std.gen.py
    M libcxx/test/libcxx/module_std_compat.gen.py
    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
    A libcxx/test/libcxx/vendor/apple/availability-with-pedantic-errors.compile.pass.cpp
    M libcxx/test/std/containers/container.adaptors/container.adaptors.format/format.functions.tests.h
    M libcxx/test/std/containers/sequences/vector.bool/vector.bool.fmt/format.functions.tests.h
    M libcxx/test/std/input.output/iostream.objects/narrow.stream.objects/cin.sh.cpp
    M libcxx/test/std/input.output/iostream.objects/wide.stream.objects/wcin-imbue.sh.cpp
    M libcxx/test/std/input.output/iostream.objects/wide.stream.objects/wcin.sh.cpp
    A libcxx/test/std/input.output/string.streams/helper_concepts.h
    A libcxx/test/std/input.output/string.streams/helper_string_macros.h
    A libcxx/test/std/input.output/string.streams/helper_types.h
    A libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/string_view.alloc.pass.cpp
    A libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/string_view.mode.alloc.pass.cpp
    A libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/string_view.mode.pass.cpp
    A libcxx/test/std/input.output/string.streams/istringstream/istringstream.members/str.string_view.pass.cpp
    A libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/string_view.alloc.pass.cpp
    A libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/string_view.mode.alloc.pass.cpp
    A libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/string_view.mode.pass.cpp
    A libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.members/str.string_view.pass.cpp
    A libcxx/test/std/input.output/string.streams/stringbuf/stringbuf.cons/string_view.alloc.pass.cpp
    A libcxx/test/std/input.output/string.streams/stringbuf/stringbuf.cons/string_view.mode.alloc.pass.cpp
    A libcxx/test/std/input.output/string.streams/stringbuf/stringbuf.cons/string_view.mode.pass.cpp
    A libcxx/test/std/input.output/string.streams/stringbuf/stringbuf.members/str.string_view.pass.cpp
    A libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/string_view.alloc.pass.cpp
    A libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/string_view.mode.alloc.pass.cpp
    A libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/string_view.mode.pass.cpp
    A libcxx/test/std/input.output/string.streams/stringstream/stringstream.members/str.string_view.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/sstream.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.all/all.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.chunk.by/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.common.view/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.drop.while/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.drop/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.elements/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.filter/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.lazy.split/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.reverse/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.split/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.take.while/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.take/adaptor.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.transform/adaptor.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.file_time.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.local_time.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.sys_time.pass.cpp
    M libcxx/test/std/utilities/format/format.range/format.range.fmtmap/format.functions.tests.h
    M libcxx/test/std/utilities/format/format.range/format.range.fmtset/format.functions.tests.h
    M libcxx/test/std/utilities/format/format.range/format.range.fmtstr/format.functions.tests.h
    M libcxx/test/std/utilities/format/format.range/format.range.formatter/format.functions.tests.h
    M libcxx/test/std/utilities/format/format.tuple/format.functions.tests.h
    M libcxx/test/support/test_range.h
    M libcxx/utils/ci/docker-compose.yml
    M libcxx/utils/generate_feature_test_macro_components.py
    M libcxx/utils/generate_iwyu_mapping.py
    M libcxx/utils/libcxx/header_information.py
    M libcxx/utils/libcxx/test/format.py
    M libcxxabi/src/CMakeLists.txt
    M lld/CMakeLists.txt
    M lld/ELF/Arch/LoongArch.cpp
    M lld/ELF/DWARF.cpp
    M lld/ELF/ScriptParser.cpp
    M lld/ELF/SyntheticSections.cpp
    M lld/MachO/Writer.cpp
    M lld/test/CMakeLists.txt
    M lld/test/ELF/amdgpu-duplicate-sym.s
    M lld/test/ELF/i386-relax-reloc.s
    M lld/test/ELF/linkerscript/wildcards.s
    A lld/test/ELF/loongarch-reloc-leb128.s
    M lld/test/ELF/lto/amdgcn-oses.ll
    M lld/test/ELF/systemz-gotent-relax-align.s
    M lld/test/ELF/systemz-gotent-relax-und-dso.s
    M lld/test/ELF/systemz-gotent-relax.s
    M lld/test/ELF/weak-undef-got-pie.s
    M lld/test/ELF/x86-64-gotpc-relax-nopic.s
    M lld/test/ELF/x86-64-gotpc-relax-und-dso.s
    M lld/test/ELF/x86-64-gotpc-relax.s
    M lld/test/ELF/x86-64-relax-got-abs.s
    M lld/test/ELF/x86-64-relax-offset.s
    M lldb/bindings/lua/CMakeLists.txt
    M lldb/cmake/modules/LLDBConfig.cmake
    M lldb/docs/resources/build.rst
    M lldb/examples/python/crashlog.py
    M lldb/include/lldb/API/SBProcess.h
    M lldb/include/lldb/Core/Debugger.h
    M lldb/include/lldb/Core/Progress.h
    M lldb/include/lldb/Core/ValueObject.h
    M lldb/include/lldb/Core/ValueObjectCast.h
    M lldb/include/lldb/Core/ValueObjectChild.h
    M lldb/include/lldb/Core/ValueObjectConstResult.h
    M lldb/include/lldb/Core/ValueObjectDynamicValue.h
    M lldb/include/lldb/Core/ValueObjectMemory.h
    M lldb/include/lldb/Core/ValueObjectRegister.h
    M lldb/include/lldb/Core/ValueObjectSyntheticFilter.h
    M lldb/include/lldb/Core/ValueObjectVTable.h
    M lldb/include/lldb/Core/ValueObjectVariable.h
    M lldb/include/lldb/DataFormatters/TypeSynthetic.h
    M lldb/include/lldb/DataFormatters/VectorIterator.h
    M lldb/include/lldb/Symbol/CompilerType.h
    M lldb/include/lldb/Symbol/Type.h
    M lldb/include/lldb/Symbol/TypeSystem.h
    M lldb/include/lldb/Target/ABI.h
    M lldb/include/lldb/Target/Process.h
    M lldb/include/lldb/Target/StackFrameRecognizer.h
    M lldb/include/lldb/Target/Target.h
    M lldb/include/lldb/Utility/AddressableBits.h
    M lldb/include/lldb/Utility/Log.h
    M lldb/include/lldb/lldb-defines.h
    M lldb/include/lldb/lldb-enumerations.h
    M lldb/packages/Python/lldbsuite/test/lldbplatformutil.py
    M lldb/source/API/SBProcess.cpp
    M lldb/source/API/SBValue.cpp
    M lldb/source/Breakpoint/BreakpointLocation.cpp
    M lldb/source/Commands/CommandObjectProcess.cpp
    M lldb/source/Core/Debugger.cpp
    M lldb/source/Core/FormatEntity.cpp
    M lldb/source/Core/IOHandlerCursesGUI.cpp
    M lldb/source/Core/Progress.cpp
    M lldb/source/Core/ValueObject.cpp
    M lldb/source/Core/ValueObjectCast.cpp
    M lldb/source/Core/ValueObjectChild.cpp
    M lldb/source/Core/ValueObjectConstResult.cpp
    M lldb/source/Core/ValueObjectDynamicValue.cpp
    M lldb/source/Core/ValueObjectMemory.cpp
    M lldb/source/Core/ValueObjectRegister.cpp
    M lldb/source/Core/ValueObjectSyntheticFilter.cpp
    M lldb/source/Core/ValueObjectVTable.cpp
    M lldb/source/Core/ValueObjectVariable.cpp
    M lldb/source/DataFormatters/FormatManager.cpp
    M lldb/source/DataFormatters/TypeSynthetic.cpp
    M lldb/source/DataFormatters/ValueObjectPrinter.cpp
    M lldb/source/DataFormatters/VectorType.cpp
    M lldb/source/Host/common/Host.cpp
    M lldb/source/Plugins/ABI/AArch64/ABIAArch64.cpp
    M lldb/source/Plugins/ABI/AArch64/ABIMacOSX_arm64.cpp
    M lldb/source/Plugins/ABI/AArch64/ABISysV_arm64.cpp
    M lldb/source/Plugins/ABI/PowerPC/ABISysV_ppc64.cpp
    M lldb/source/Plugins/DynamicLoader/Darwin-Kernel/DynamicLoaderDarwinKernel.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp
    M lldb/source/Plugins/InstrumentationRuntime/TSan/InstrumentationRuntimeTSan.cpp
    M lldb/source/Plugins/Language/CPlusPlus/BlockPointer.cpp
    M lldb/source/Plugins/Language/CPlusPlus/Coroutines.cpp
    M lldb/source/Plugins/Language/CPlusPlus/Coroutines.h
    M lldb/source/Plugins/Language/CPlusPlus/GenericBitset.cpp
    M lldb/source/Plugins/Language/CPlusPlus/GenericOptional.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.h
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxAtomic.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxInitializerList.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxList.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxQueue.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxRangesRefView.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxSpan.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxTuple.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxUnorderedMap.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxValarray.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxVariant.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxVector.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcppTuple.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcppUniquePointer.cpp
    M lldb/source/Plugins/Language/ObjC/Cocoa.cpp
    M lldb/source/Plugins/Language/ObjC/NSArray.cpp
    M lldb/source/Plugins/Language/ObjC/NSDictionary.cpp
    M lldb/source/Plugins/Language/ObjC/NSError.cpp
    M lldb/source/Plugins/Language/ObjC/NSException.cpp
    M lldb/source/Plugins/Language/ObjC/NSIndexPath.cpp
    M lldb/source/Plugins/Language/ObjC/NSSet.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/Process/FreeBSD/NativeProcessFreeBSD.cpp
    M lldb/source/Plugins/Process/Linux/NativeThreadLinux.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
    M lldb/source/Symbol/CompilerType.cpp
    M lldb/source/Symbol/Symtab.cpp
    M lldb/source/Symbol/Type.cpp
    M lldb/source/Symbol/Variable.cpp
    M lldb/source/Target/ABI.cpp
    M lldb/source/Target/Process.cpp
    M lldb/source/Target/StackFrame.cpp
    M lldb/source/Target/Target.cpp
    M lldb/source/Utility/AddressableBits.cpp
    M lldb/test/API/commands/platform/connect/TestPlatformConnect.py
    M lldb/test/API/driver/quit_speed/TestQuitWithProcess.py
    M lldb/test/API/functionalities/breakpoint/breakpoint_options/TestBreakpointOptions.py
    A lldb/test/API/functionalities/fork/concurrent_vfork/Makefile
    A lldb/test/API/functionalities/fork/concurrent_vfork/TestConcurrentVFork.py
    A lldb/test/API/functionalities/fork/concurrent_vfork/main.cpp
    M lldb/test/API/functionalities/progress_reporting/TestTrimmedProgressReporting.py
    M lldb/test/API/lang/c/tls_globals/TestTlsGlobals.py
    A lldb/test/API/lang/cpp/gmodules/pch-chain/Makefile
    A lldb/test/API/lang/cpp/gmodules/pch-chain/TestPchChain.py
    A lldb/test/API/lang/cpp/gmodules/pch-chain/base-pch.h
    A lldb/test/API/lang/cpp/gmodules/pch-chain/main.cpp
    A lldb/test/API/lang/cpp/gmodules/pch-chain/pch.h
    A lldb/test/API/python_api/process/address-masks/Makefile
    A lldb/test/API/python_api/process/address-masks/TestAddressMasks.py
    A lldb/test/API/python_api/process/address-masks/main.c
    M lldb/test/API/terminal/TestSTTYBeforeAndAfter.py
    M lldb/test/CMakeLists.txt
    A lldb/test/Shell/ScriptInterpreter/Python/Crashlog/Inputs/altered_threadState.crash
    A lldb/test/Shell/ScriptInterpreter/Python/Crashlog/altered_threadState.test
    M lldb/test/Shell/SymbolFile/Breakpad/symtab-sorted-by-size.test
    M lldb/test/Shell/SymbolFile/DWARF/x86/dwp-separate-debug-file.cpp
    M lldb/test/Shell/Unwind/eh-frame-dwarf-unwind.test
    M lldb/test/Shell/Unwind/thread-step-out-ret-addr-check.test
    M lldb/test/Shell/lit.cfg.py
    M lldb/tools/driver/Driver.cpp
    M lldb/tools/lldb-server/lldb-gdbserver.cpp
    M lldb/unittests/Core/ProgressReportTest.cpp
    M lldb/unittests/Process/ProcessEventDataTest.cpp
    M llvm/CMakeLists.txt
    M llvm/bindings/ocaml/llvm/llvm_ocaml.c
    M llvm/cmake/modules/AddLLVM.cmake
    M llvm/cmake/modules/HandleLLVMOptions.cmake
    M llvm/docs/AMDGPUUsage.rst
    M llvm/docs/CodeReview.rst
    M llvm/docs/Contributing.rst
    M llvm/docs/DeveloperPolicy.rst
    M llvm/docs/DirectX/DXILArchitecture.rst
    M llvm/docs/Frontend/PerformanceTips.rst
    M llvm/docs/GettingInvolved.rst
    M llvm/docs/GitHub.rst
    M llvm/docs/GlobalISel/GenericOpcode.rst
    M llvm/docs/LangRef.rst
    M llvm/docs/ORCv2.rst
    R llvm/docs/Phabricator.rst
    R llvm/docs/Phabricator_premerge_results.png
    R llvm/docs/Phabricator_premerge_unit_tests.png
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/ReleaseNotes.rst
    M llvm/docs/SourceLevelDebugging.rst
    M llvm/docs/UserGuides.rst
    M llvm/docs/conf.py
    M llvm/examples/BrainF/BrainF.cpp
    M llvm/examples/Fibonacci/fibonacci.cpp
    M llvm/examples/ParallelJIT/ParallelJIT.cpp
    M llvm/examples/SpeculativeJIT/SpeculativeJIT.cpp
    M llvm/include/llvm-c/Core.h
    M llvm/include/llvm/ADT/APInt.h
    M llvm/include/llvm/ADT/GenericConvergenceVerifier.h
    M llvm/include/llvm/ADT/StringExtras.h
    M llvm/include/llvm/Analysis/ScalarEvolution.h
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/include/llvm/Analysis/ValueTracking.h
    M llvm/include/llvm/Analysis/VectorUtils.h
    M llvm/include/llvm/AsmParser/LLParser.h
    M llvm/include/llvm/AsmParser/LLToken.h
    M llvm/include/llvm/CodeGen/CommandFlags.h
    M llvm/include/llvm/CodeGen/FunctionLoweringInfo.h
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h
    M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    A llvm/include/llvm/CodeGen/MachineConvergenceVerifier.h
    M llvm/include/llvm/CodeGen/SelectionDAGISel.h
    M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
    M llvm/include/llvm/CodeGen/TargetInstrInfo.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/CodeGen/ValueTypes.h
    M llvm/include/llvm/DebugInfo/DWARF/DWARFDebugFrame.h
    M llvm/include/llvm/Debuginfod/Debuginfod.h
    A llvm/include/llvm/ExecutionEngine/Orc/Debugging/VTuneSupportPlugin.h
    M llvm/include/llvm/ExecutionEngine/Orc/LLJIT.h
    M llvm/include/llvm/ExecutionEngine/Orc/MachOBuilder.h
    M llvm/include/llvm/ExecutionEngine/Orc/MachOPlatform.h
    A llvm/include/llvm/ExecutionEngine/Orc/Shared/VTuneSharedStructs.h
    A llvm/include/llvm/ExecutionEngine/Orc/TargetProcess/JITLoaderVTune.h
    M llvm/include/llvm/Frontend/Directive/DirectiveBase.td
    M llvm/include/llvm/Frontend/OpenACC/ACC.td
    A llvm/include/llvm/Frontend/OpenMP/OMP.h
    M llvm/include/llvm/Frontend/OpenMP/OMP.td
    M llvm/include/llvm/Frontend/OpenMP/OMPConstants.h
    M llvm/include/llvm/IR/AutoUpgrade.h
    M llvm/include/llvm/IR/DIBuilder.h
    M llvm/include/llvm/IR/DebugInfoMetadata.h
    M llvm/include/llvm/IR/DebugProgramInstruction.h
    M llvm/include/llvm/IR/Dominators.h
    M llvm/include/llvm/IR/GenericConvergenceVerifierImpl.h
    M llvm/include/llvm/IR/Instructions.h
    M llvm/include/llvm/IR/IntrinsicInst.h
    M llvm/include/llvm/IR/IntrinsicsAArch64.td
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/IR/IntrinsicsPowerPC.td
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/include/llvm/IR/Operator.h
    M llvm/include/llvm/IR/RuntimeLibcalls.def
    M llvm/include/llvm/MC/MCAsmInfo.h
    M llvm/include/llvm/MC/MCContext.h
    M llvm/include/llvm/MC/MCObjectFileInfo.h
    M llvm/include/llvm/MC/MCTargetOptions.h
    M llvm/include/llvm/MC/MCTargetOptionsCommandFlags.h
    M llvm/include/llvm/ProfileData/InstrProfWriter.h
    M llvm/include/llvm/Support/BalancedPartitioning.h
    M llvm/include/llvm/Support/Casting.h
    M llvm/include/llvm/Support/KnownBits.h
    M llvm/include/llvm/Support/Program.h
    M llvm/include/llvm/Support/TargetOpcodes.def
    M llvm/include/llvm/Support/ThreadPool.h
    M llvm/include/llvm/Support/X86DisassemblerDecoderCommon.h
    M llvm/include/llvm/TableGen/DirectiveEmitter.h
    M llvm/include/llvm/Target/GenericOpcodes.td
    M llvm/include/llvm/Target/Target.td
    M llvm/include/llvm/Target/TargetOptions.h
    M llvm/include/llvm/Target/TargetSchedule.td
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/include/llvm/TargetParser/AArch64TargetParser.h
    M llvm/include/llvm/TargetParser/ARMTargetParser.def
    M llvm/include/llvm/TargetParser/ARMTargetParser.h
    M llvm/include/llvm/TargetParser/RISCVTargetParser.h
    M llvm/include/llvm/TextAPI/Record.h
    M llvm/include/llvm/TextAPI/RecordsSlice.h
    A llvm/include/llvm/Transforms/Instrumentation/RemoveTrapsPass.h
    M llvm/include/llvm/Transforms/Scalar/Reassociate.h
    M llvm/include/llvm/Transforms/Utils.h
    M llvm/include/llvm/Transforms/Utils/Local.h
    M llvm/include/llvm/Transforms/Utils/ScalarEvolutionExpander.h
    M llvm/lib/Analysis/AssumptionCache.cpp
    M llvm/lib/Analysis/DomConditionCache.cpp
    M llvm/lib/Analysis/LazyValueInfo.cpp
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Analysis/VectorUtils.cpp
    M llvm/lib/AsmParser/LLLexer.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/MetadataLoader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
    M llvm/lib/CodeGen/CMakeLists.txt
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/lib/CodeGen/CommandFlags.cpp
    M llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
    M llvm/lib/CodeGen/GlobalISel/CSEMIRBuilder.cpp
    M llvm/lib/CodeGen/GlobalISel/CallLowering.cpp
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/lib/CodeGen/GlobalISel/GISelKnownBits.cpp
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/CodeGen/GlobalISel/LoadStoreOpt.cpp
    M llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
    M llvm/lib/CodeGen/GlobalISel/Utils.cpp
    M llvm/lib/CodeGen/LLVMTargetMachine.cpp
    A llvm/lib/CodeGen/MachineConvergenceVerifier.cpp
    M llvm/lib/CodeGen/MachinePassManager.cpp
    M llvm/lib/CodeGen/MachinePipeliner.cpp
    M llvm/lib/CodeGen/MachineScheduler.cpp
    M llvm/lib/CodeGen/MachineVerifier.cpp
    M llvm/lib/CodeGen/ParallelCG.cpp
    M llvm/lib/CodeGen/ReachingDefAnalysis.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
    M llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/CodeGen/TargetInstrInfo.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/lib/CodeGen/ValueTypes.cpp
    M llvm/lib/DWARFLinker/Classic/CMakeLists.txt
    M llvm/lib/DWARFLinker/Classic/DWARFLinker.cpp
    M llvm/lib/DWARFLinker/Parallel/CMakeLists.txt
    M llvm/lib/DWARFLinker/Parallel/DWARFLinkerImpl.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFDebugFrame.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
    M llvm/lib/DebugInfo/GSYM/CMakeLists.txt
    M llvm/lib/DebugInfo/GSYM/DwarfTransformer.cpp
    M llvm/lib/Debuginfod/Debuginfod.cpp
    M llvm/lib/ExecutionEngine/CMakeLists.txt
    M llvm/lib/ExecutionEngine/IntelJITEvents/CMakeLists.txt
    M llvm/lib/ExecutionEngine/IntelJITEvents/IntelJITEventListener.cpp
    R llvm/lib/ExecutionEngine/IntelJITEvents/IntelJITEventsWrapper.h
    R llvm/lib/ExecutionEngine/IntelJITEvents/ittnotify_config.h
    R llvm/lib/ExecutionEngine/IntelJITEvents/ittnotify_types.h
    R llvm/lib/ExecutionEngine/IntelJITEvents/jitprofiling.c
    R llvm/lib/ExecutionEngine/IntelJITEvents/jitprofiling.h
    A llvm/lib/ExecutionEngine/IntelJITProfiling/CMakeLists.txt
    A llvm/lib/ExecutionEngine/IntelJITProfiling/IntelJITEventsWrapper.h
    A llvm/lib/ExecutionEngine/IntelJITProfiling/ittnotify_config.h
    A llvm/lib/ExecutionEngine/IntelJITProfiling/ittnotify_types.h
    A llvm/lib/ExecutionEngine/IntelJITProfiling/jitprofiling.c
    A llvm/lib/ExecutionEngine/IntelJITProfiling/jitprofiling.h
    M llvm/lib/ExecutionEngine/Orc/Debugging/CMakeLists.txt
    A llvm/lib/ExecutionEngine/Orc/Debugging/VTuneSupportPlugin.cpp
    M llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
    M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
    M llvm/lib/ExecutionEngine/Orc/ObjectLinkingLayer.cpp
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/CMakeLists.txt
    A llvm/lib/ExecutionEngine/Orc/TargetProcess/JITLoaderVTune.cpp
    M llvm/lib/FileCheck/FileCheck.cpp
    M llvm/lib/Frontend/OpenMP/OMP.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/IR/ConvergenceVerifier.cpp
    M llvm/lib/IR/Core.cpp
    M llvm/lib/IR/DIBuilder.cpp
    M llvm/lib/IR/DebugInfo.cpp
    M llvm/lib/IR/DebugInfoMetadata.cpp
    M llvm/lib/IR/DebugProgramInstruction.cpp
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/IR/LLVMContextImpl.h
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/LTO/CMakeLists.txt
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/LTO/LTOBackend.cpp
    M llvm/lib/LTO/ThinLTOCodeGenerator.cpp
    M llvm/lib/Linker/IRMover.cpp
    M llvm/lib/MC/ELFObjectWriter.cpp
    M llvm/lib/MC/MCObjectFileInfo.cpp
    M llvm/lib/MC/MCTargetOptionsCommandFlags.cpp
    M llvm/lib/MCA/Stages/InOrderIssueStage.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/ProfileData/InstrProf.cpp
    M llvm/lib/ProfileData/InstrProfWriter.cpp
    M llvm/lib/Support/APInt.cpp
    M llvm/lib/Support/BalancedPartitioning.cpp
    M llvm/lib/Support/KnownBits.cpp
    M llvm/lib/Support/LockFileManager.cpp
    M llvm/lib/Support/Program.cpp
    M llvm/lib/Support/RISCVISAInfo.cpp
    M llvm/lib/Support/ThreadPool.cpp
    M llvm/lib/Support/Unix/Program.inc
    M llvm/lib/Support/Windows/Program.inc
    M llvm/lib/Target/AArch64/AArch64.td
    M llvm/lib/Target/AArch64/AArch64FastISel.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.h
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
    M llvm/lib/Target/AArch64/AArch64SLSHardening.cpp
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SchedA510.td
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseN2.td
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseV1.td
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseV2.td
    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/GISel/AArch64CallLowering.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64PostLegalizerLowering.cpp
    M llvm/lib/Target/AArch64/SVEInstrFormats.td
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h
    A llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/BUFInstructions.td
    M llvm/lib/Target/AMDGPU/CMakeLists.txt
    M llvm/lib/Target/AMDGPU/DSDIRInstructions.td
    M llvm/lib/Target/AMDGPU/DSInstructions.td
    M llvm/lib/Target/AMDGPU/EXPInstructions.td
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.h
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
    M llvm/lib/Target/AMDGPU/MIMGInstructions.td
    M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.h
    M llvm/lib/Target/AMDGPU/SIInsertHardClauses.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp
    M llvm/lib/Target/AMDGPU/SIOptimizeExecMasking.cpp
    M llvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp
    M llvm/lib/Target/AMDGPU/SISchedule.td
    M llvm/lib/Target/AMDGPU/SOPInstructions.td
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    M llvm/lib/Target/AMDGPU/VINTERPInstructions.td
    M llvm/lib/Target/AMDGPU/VOP1Instructions.td
    M llvm/lib/Target/AMDGPU/VOP2Instructions.td
    M llvm/lib/Target/AMDGPU/VOP3Instructions.td
    M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
    M llvm/lib/Target/AMDGPU/VOPInstructions.td
    M llvm/lib/Target/ARM/ARM.td
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/ARM/ARMInstrNEON.td
    M llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
    M llvm/lib/Target/ARM/ARMSLSHardening.cpp
    M llvm/lib/Target/ARM/ARMSubtarget.cpp
    M llvm/lib/Target/ARM/ARMSubtarget.h
    M llvm/lib/Target/ARM/MVEGatherScatterLowering.cpp
    M llvm/lib/Target/AVR/AVRInstrInfo.td
    M llvm/lib/Target/AVR/AVRRegisterInfo.td
    M llvm/lib/Target/BPF/BPFISelLowering.cpp
    M llvm/lib/Target/BPF/BPFISelLowering.h
    M llvm/lib/Target/BPF/BPFInstrInfo.td
    M llvm/lib/Target/BPF/BPFMCInstLower.cpp
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/Hexagon/HexagonGenMux.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonInstrInfo.h
    M llvm/lib/Target/Hexagon/HexagonSubtarget.cpp
    M llvm/lib/Target/Lanai/LanaiInstrInfo.cpp
    M llvm/lib/Target/Lanai/LanaiInstrInfo.h
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
    M llvm/lib/Target/LoongArch/LoongArchSubtarget.h
    M llvm/lib/Target/Mips/MipsExpandPseudo.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/lib/Target/PowerPC/PPCBoolRetToInt.cpp
    M llvm/lib/Target/PowerPC/PPCFrameLowering.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
    M llvm/lib/Target/PowerPC/PPCInstrInfo.h
    M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/MCA/CMakeLists.txt
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVGatherScatterLowering.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.h
    M llvm/lib/Target/RISCV/RISCVInstrInfoM.td
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.h
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.td
    M llvm/lib/Target/RISCV/RISCVSchedRocket.td
    M llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
    M llvm/lib/Target/RISCV/RISCVSchedSiFiveP400.td
    M llvm/lib/Target/RISCV/RISCVSchedSyntacoreSCR1.td
    M llvm/lib/Target/RISCV/RISCVSchedXiangShanNanHu.td
    M llvm/lib/Target/RISCV/RISCVSchedule.td
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/SPIRV/CMakeLists.txt
    M llvm/lib/Target/SPIRV/SPIRV.h
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.h
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
    M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
    M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
    M llvm/lib/Target/SPIRV/SPIRVISelLowering.cpp
    M llvm/lib/Target/SPIRV/SPIRVISelLowering.h
    M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
    M llvm/lib/Target/SPIRV/SPIRVMetadata.cpp
    M llvm/lib/Target/SPIRV/SPIRVMetadata.h
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    A llvm/lib/Target/SPIRV/SPIRVPostLegalizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVSubtarget.cpp
    M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
    M llvm/lib/Target/SPIRV/SPIRVTargetMachine.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.h
    M llvm/lib/Target/SystemZ/CMakeLists.txt
    M llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp
    M llvm/lib/Target/SystemZ/SystemZElimCompare.cpp
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
    M llvm/lib/Target/SystemZ/SystemZShortenInst.cpp
    M llvm/lib/Target/SystemZ/SystemZTargetMachine.cpp
    A llvm/lib/Target/SystemZ/SystemZTargetObjectFile.cpp
    A llvm/lib/Target/SystemZ/SystemZTargetObjectFile.h
    M llvm/lib/Target/WebAssembly/WebAssemblyAddMissingPrototypes.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyFixBrTableDefaults.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
    M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
    M llvm/lib/Target/X86/Disassembler/X86Disassembler.cpp
    M llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.h
    M llvm/lib/Target/X86/GISel/X86InstructionSelector.cpp
    M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
    M llvm/lib/Target/X86/GISel/X86RegisterBankInfo.cpp
    M llvm/lib/Target/X86/GISel/X86RegisterBankInfo.h
    M llvm/lib/Target/X86/MCTargetDesc/X86BaseInfo.h
    M llvm/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86InstPrinterCommon.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86InstPrinterCommon.h
    M llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp
    M llvm/lib/Target/X86/X86.td
    M llvm/lib/Target/X86/X86ExpandPseudo.cpp
    M llvm/lib/Target/X86/X86FloatingPoint.cpp
    M llvm/lib/Target/X86/X86GenRegisterBankInfo.def
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
    M llvm/lib/Target/X86/X86IndirectThunks.cpp
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Target/X86/X86InstrAsmAlias.td
    A llvm/lib/Target/X86/X86InstrConditionalCompare.td
    M llvm/lib/Target/X86/X86InstrFormats.td
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/lib/Target/X86/X86InstrInfo.h
    M llvm/lib/Target/X86/X86InstrInfo.td
    M llvm/lib/Target/X86/X86InstrOperands.td
    M llvm/lib/Target/X86/X86InstrVecCompiler.td
    M llvm/lib/Target/X86/X86LowerAMXIntrinsics.cpp
    M llvm/lib/Target/X86/X86MCInstLower.cpp
    M llvm/lib/Target/X86/X86RegisterBanks.td
    M llvm/lib/Target/X86/X86SchedIceLake.td
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.h
    M llvm/lib/TargetParser/Host.cpp
    M llvm/lib/TargetParser/RISCVTargetParser.cpp
    M llvm/lib/TargetParser/TargetParser.cpp
    M llvm/lib/TextAPI/Platform.cpp
    M llvm/lib/TextAPI/RecordsSlice.cpp
    M llvm/lib/Transforms/CFGuard/CFGuard.cpp
    M llvm/lib/Transforms/Coroutines/CoroElide.cpp
    M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
    M llvm/lib/Transforms/Coroutines/Coroutines.cpp
    M llvm/lib/Transforms/IPO/ArgumentPromotion.cpp
    M llvm/lib/Transforms/IPO/Attributor.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp
    M llvm/lib/Transforms/IPO/GlobalOpt.cpp
    M llvm/lib/Transforms/IPO/IROutliner.cpp
    M llvm/lib/Transforms/IPO/OpenMPOpt.cpp
    M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
    M llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
    M llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/CMakeLists.txt
    M llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
    M llvm/lib/Transforms/Instrumentation/KCFI.cpp
    A llvm/lib/Transforms/Instrumentation/RemoveTrapsPass.cpp
    M llvm/lib/Transforms/ObjCARC/ObjCARC.cpp
    M llvm/lib/Transforms/ObjCARC/ObjCARC.h
    M llvm/lib/Transforms/ObjCARC/ObjCARCContract.cpp
    M llvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp
    M llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
    M llvm/lib/Transforms/Scalar/DivRemPairs.cpp
    M llvm/lib/Transforms/Scalar/GVN.cpp
    M llvm/lib/Transforms/Scalar/GuardWidening.cpp
    M llvm/lib/Transforms/Scalar/IndVarSimplify.cpp
    M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
    M llvm/lib/Transforms/Scalar/JumpThreading.cpp
    M llvm/lib/Transforms/Scalar/LICM.cpp
    M llvm/lib/Transforms/Scalar/LoopFlatten.cpp
    M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
    M llvm/lib/Transforms/Scalar/LoopLoadElimination.cpp
    M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
    M llvm/lib/Transforms/Scalar/NaryReassociate.cpp
    M llvm/lib/Transforms/Scalar/NewGVN.cpp
    M llvm/lib/Transforms/Scalar/PlaceSafepoints.cpp
    M llvm/lib/Transforms/Scalar/Reassociate.cpp
    M llvm/lib/Transforms/Scalar/Reg2Mem.cpp
    M llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
    M llvm/lib/Transforms/Scalar/SROA.cpp
    M llvm/lib/Transforms/Scalar/ScalarizeMaskedMemIntrin.cpp
    M llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp
    M llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
    M llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp
    M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
    M llvm/lib/Transforms/Utils/BreakCriticalEdges.cpp
    M llvm/lib/Transforms/Utils/CallPromotionUtils.cpp
    M llvm/lib/Transforms/Utils/CanonicalizeFreezeInLoops.cpp
    M llvm/lib/Transforms/Utils/CodeExtractor.cpp
    M llvm/lib/Transforms/Utils/DemoteRegToStack.cpp
    M llvm/lib/Transforms/Utils/EntryExitInstrumenter.cpp
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    M llvm/lib/Transforms/Utils/Local.cpp
    M llvm/lib/Transforms/Utils/LoopConstrainer.cpp
    M llvm/lib/Transforms/Utils/LoopRotationUtils.cpp
    M llvm/lib/Transforms/Utils/LoopSimplify.cpp
    M llvm/lib/Transforms/Utils/LoopUnroll.cpp
    M llvm/lib/Transforms/Utils/LoopUnrollAndJam.cpp
    M llvm/lib/Transforms/Utils/LoopUtils.cpp
    M llvm/lib/Transforms/Utils/LowerGlobalDtors.cpp
    M llvm/lib/Transforms/Utils/LowerInvoke.cpp
    M llvm/lib/Transforms/Utils/LowerMemIntrinsics.cpp
    M llvm/lib/Transforms/Utils/LowerSwitch.cpp
    M llvm/lib/Transforms/Utils/MatrixUtils.cpp
    M llvm/lib/Transforms/Utils/Mem2Reg.cpp
    M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
    M llvm/lib/Transforms/Utils/SCCPSolver.cpp
    M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Utils/SimplifyIndVar.cpp
    M llvm/lib/Transforms/Utils/StripGCRelocates.cpp
    M llvm/lib/Transforms/Utils/UnifyLoopExits.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    A llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
    M llvm/test/Analysis/CostModel/AArch64/reduce-fadd.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-intrinsics.ll
    M llvm/test/Analysis/CostModel/AMDGPU/shufflevector.ll
    M llvm/test/Analysis/CostModel/PowerPC/insert_extract-inseltpoison.ll
    M llvm/test/Analysis/CostModel/PowerPC/insert_extract.ll
    M llvm/test/Analysis/CostModel/RISCV/shuffle-extract_subvector.ll
    M llvm/test/Analysis/CostModel/RISCV/shuffle-interleave.ll
    A llvm/test/Analysis/CostModel/RISCV/vector-cost-without-v.ll
    A llvm/test/Analysis/CostModel/X86/shuffle-concat_subvector-codesize.ll
    A llvm/test/Analysis/CostModel/X86/shuffle-concat_subvector-latency.ll
    A llvm/test/Analysis/CostModel/X86/shuffle-concat_subvector-sizelatency.ll
    A llvm/test/Analysis/CostModel/X86/shuffle-concat_subvector.ll
    M llvm/test/Analysis/CostModel/X86/shuffle-extract_subvector-codesize.ll
    M llvm/test/Analysis/CostModel/X86/shuffle-extract_subvector-latency.ll
    M llvm/test/Analysis/CostModel/X86/shuffle-extract_subvector-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/shuffle-extract_subvector.ll
    A llvm/test/Analysis/LoopAccessAnalysis/underlying-object-loop-varying-phi.ll
    M llvm/test/Analysis/ScalarEvolution/2007-07-15-NegativeStride.ll
    M llvm/test/Analysis/ScalarEvolution/2007-09-27-LargeStepping.ll
    M llvm/test/Analysis/ScalarEvolution/2008-05-25-NegativeStepToZero.ll
    M llvm/test/Analysis/ScalarEvolution/2008-07-19-WrappingIV.ll
    M llvm/test/Analysis/ScalarEvolution/2008-11-18-Stride1.ll
    M llvm/test/Analysis/ScalarEvolution/2008-11-18-Stride2.ll
    M llvm/test/Analysis/ScalarEvolution/2008-12-08-FiniteSGE.ll
    M llvm/test/Analysis/ScalarEvolution/2009-05-09-PointerEdgeCount.ll
    M llvm/test/Analysis/ScalarEvolution/SolveQuadraticEquation.ll
    M llvm/test/Analysis/ScalarEvolution/ZeroStep.ll
    M llvm/test/Analysis/ScalarEvolution/add-expr-pointer-operand-sorting.ll
    M llvm/test/Analysis/ScalarEvolution/add-like-or.ll
    M llvm/test/Analysis/ScalarEvolution/addrec-computed-during-addrec-calculation.ll
    M llvm/test/Analysis/ScalarEvolution/addrec-sub-nsw.ll
    M llvm/test/Analysis/ScalarEvolution/alloca.ll
    M llvm/test/Analysis/ScalarEvolution/backedge-taken-count-guard-info.ll
    M llvm/test/Analysis/ScalarEvolution/becount-invalidation.ll
    M llvm/test/Analysis/ScalarEvolution/cycled_phis.ll
    M llvm/test/Analysis/ScalarEvolution/decrementing_addrecs.ll
    M llvm/test/Analysis/ScalarEvolution/exact-exit-count-more-precise.ll
    M llvm/test/Analysis/ScalarEvolution/exact_iter_count.ll
    M llvm/test/Analysis/ScalarEvolution/exhaustive-trip-counts.ll
    M llvm/test/Analysis/ScalarEvolution/exit-count-select-safe.ll
    M llvm/test/Analysis/ScalarEvolution/exit-count-select.ll
    M llvm/test/Analysis/ScalarEvolution/exponential-behavior.ll
    M llvm/test/Analysis/ScalarEvolution/finite-trip-count.ll
    M llvm/test/Analysis/ScalarEvolution/flags-from-poison-noautogen.ll
    M llvm/test/Analysis/ScalarEvolution/flags-from-poison.ll
    M llvm/test/Analysis/ScalarEvolution/fold.ll
    M llvm/test/Analysis/ScalarEvolution/huge-trip-multiple.ll
    M llvm/test/Analysis/ScalarEvolution/incorrect-exit-count.ll
    M llvm/test/Analysis/ScalarEvolution/increasing-or-decreasing-iv.ll
    M llvm/test/Analysis/ScalarEvolution/invalidation.ll
    M llvm/test/Analysis/ScalarEvolution/iv-poison.ll
    M llvm/test/Analysis/ScalarEvolution/load-with-range-metadata.ll
    M llvm/test/Analysis/ScalarEvolution/load.ll
    M llvm/test/Analysis/ScalarEvolution/logical-operations.ll
    M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info-rewrite-expressions.ll
    M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info.ll
    M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-limit-by-wrapping.ll
    M llvm/test/Analysis/ScalarEvolution/max-be-count-not-constant.ll
    M llvm/test/Analysis/ScalarEvolution/max-expr-cache.ll
    M llvm/test/Analysis/ScalarEvolution/max-trip-count-address-space.ll
    M llvm/test/Analysis/ScalarEvolution/max-trip-count.ll
    M llvm/test/Analysis/ScalarEvolution/min-max-exprs.ll
    M llvm/test/Analysis/ScalarEvolution/ne-overflow.ll
    M llvm/test/Analysis/ScalarEvolution/no-wrap-add-exprs.ll
    M llvm/test/Analysis/ScalarEvolution/no-wrap-symbolic-becount.ll
    M llvm/test/Analysis/ScalarEvolution/nsw-offset-assume.ll
    M llvm/test/Analysis/ScalarEvolution/nsw-offset.ll
    M llvm/test/Analysis/ScalarEvolution/nsw.ll
    M llvm/test/Analysis/ScalarEvolution/outer_phi.ll
    M llvm/test/Analysis/ScalarEvolution/overflow-intrinsics-trip-count.ll
    M llvm/test/Analysis/ScalarEvolution/overflow-intrinsics.ll
    M llvm/test/Analysis/ScalarEvolution/pr25369.ll
    M llvm/test/Analysis/ScalarEvolution/pr34538.ll
    M llvm/test/Analysis/ScalarEvolution/pr48225.ll
    M llvm/test/Analysis/ScalarEvolution/pr58402-large-number-of-zext-exprs.ll
    M llvm/test/Analysis/ScalarEvolution/pr76234.ll
    M llvm/test/Analysis/ScalarEvolution/ptrtoint-constantexpr-loop.ll
    M llvm/test/Analysis/ScalarEvolution/ptrtoint.ll
    M llvm/test/Analysis/ScalarEvolution/range-signedness.ll
    M llvm/test/Analysis/ScalarEvolution/range_nw_flag.ll
    M llvm/test/Analysis/ScalarEvolution/ranges.ll
    M llvm/test/Analysis/ScalarEvolution/sdiv.ll
    M llvm/test/Analysis/ScalarEvolution/sext-add-inreg-loop.ll
    M llvm/test/Analysis/ScalarEvolution/sext-mul.ll
    M llvm/test/Analysis/ScalarEvolution/sext-to-zext.ll
    M llvm/test/Analysis/ScalarEvolution/shift-op.ll
    M llvm/test/Analysis/ScalarEvolution/shift-recurrences.ll
    M llvm/test/Analysis/ScalarEvolution/sle.ll
    M llvm/test/Analysis/ScalarEvolution/smax-br-phi-idioms.ll
    M llvm/test/Analysis/ScalarEvolution/smin-smax-folds.ll
    M llvm/test/Analysis/ScalarEvolution/solve-quadratic-i1.ll
    M llvm/test/Analysis/ScalarEvolution/solve-quadratic-overflow.ll
    M llvm/test/Analysis/ScalarEvolution/solve-quadratic.ll
    M llvm/test/Analysis/ScalarEvolution/srem.ll
    M llvm/test/Analysis/ScalarEvolution/symbolic_max_exit_count.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-andor-selectform.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-andor.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-implied-addrec.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-minmax.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-negative-stride.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-non-unit-stride.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-pow2.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-switch.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count-unknown-stride.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count10.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count12.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count13.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count14.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count15.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count2.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count3.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count4.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count6.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count7.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count8.ll
    M llvm/test/Analysis/ScalarEvolution/trip-count9.ll
    M llvm/test/Analysis/ScalarEvolution/trip-multiple-guard-info.ll
    M llvm/test/Analysis/ScalarEvolution/trip-multiple.ll
    M llvm/test/Analysis/ScalarEvolution/umin-umax-folds.ll
    M llvm/test/Analysis/ScalarEvolution/unknown_phis.ll
    M llvm/test/Analysis/ScalarEvolution/widenable-condition.ll
    M llvm/test/Analysis/ValueTracking/numsignbits-from-assume.ll
    A llvm/test/Assembler/dbg-record-invalid-0.ll
    A llvm/test/Assembler/dbg-record-invalid-1.ll
    A llvm/test/Assembler/dbg-record-invalid-2.ll
    A llvm/test/Assembler/dbg-record-invalid-3.ll
    A llvm/test/Assembler/dbg-record-invalid-4.ll
    A llvm/test/Assembler/dbg-record-invalid-5.ll
    A llvm/test/Assembler/dbg-record-invalid-6.ll
    A llvm/test/Assembler/dbg-record-invalid-7.ll
    A llvm/test/Assembler/dbg-record-invalid-8.ll
    M llvm/test/Assembler/debug-info.ll
    M llvm/test/Bitcode/upgrade-module-flag.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-logic-of-compare.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-select.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/legalize-insert-vector-elt.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/legalize-select.mir
    A llvm/test/CodeGen/AArch64/GlobalISel/legalize-shuffle-vector-widen-crash.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/lower-neon-vector-fcmp.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/select-atomic-load-store.mir
    M llvm/test/CodeGen/AArch64/O0-pipeline.ll
    M llvm/test/CodeGen/AArch64/O3-pipeline.ll
    A llvm/test/CodeGen/AArch64/aarch64-known-bits-hadd.ll
    M llvm/test/CodeGen/AArch64/arm64-convert-v4f64.ll
    M llvm/test/CodeGen/AArch64/arm64-fast-isel-conversion-fallback.ll
    M llvm/test/CodeGen/AArch64/arm64-opt-remarks-lazy-bfi.ll
    M llvm/test/CodeGen/AArch64/arm64-vcvt_f.ll
    M llvm/test/CodeGen/AArch64/call-rv-marker.ll
    M llvm/test/CodeGen/AArch64/cvt-fp-int-fp.ll
    M llvm/test/CodeGen/AArch64/f16-instructions.ll
    M llvm/test/CodeGen/AArch64/fabs.ll
    M llvm/test/CodeGen/AArch64/faddp-half.ll
    M llvm/test/CodeGen/AArch64/faddsub.ll
    M llvm/test/CodeGen/AArch64/fcopysign.ll
    M llvm/test/CodeGen/AArch64/fcvt.ll
    M llvm/test/CodeGen/AArch64/fcvt_combine.ll
    M llvm/test/CodeGen/AArch64/fdiv.ll
    M llvm/test/CodeGen/AArch64/fmla.ll
    M llvm/test/CodeGen/AArch64/fmul.ll
    M llvm/test/CodeGen/AArch64/fneg.ll
    A llvm/test/CodeGen/AArch64/fp-veclib-expansion.ll
    M llvm/test/CodeGen/AArch64/fp16-v8-instructions.ll
    M llvm/test/CodeGen/AArch64/fpext.ll
    M llvm/test/CodeGen/AArch64/fptrunc.ll
    M llvm/test/CodeGen/AArch64/implicitly-set-zero-high-64-bits.ll
    M llvm/test/CodeGen/AArch64/itofp.ll
    A llvm/test/CodeGen/AArch64/ldp-stp-unknown-size.mir
    M llvm/test/CodeGen/AArch64/neon-compare-instructions.ll
    M llvm/test/CodeGen/AArch64/nonlazybind.ll
    M llvm/test/CodeGen/AArch64/round-fptosi-sat-scalar.ll
    A llvm/test/CodeGen/AArch64/scalar-mla-mls.ll
    M llvm/test/CodeGen/AArch64/shufflevector.ll
    M llvm/test/CodeGen/AArch64/sign-return-address-cfi-negate-ra-state.ll
    A llvm/test/CodeGen/AArch64/sls-crash.ll
    M llvm/test/CodeGen/AArch64/sls-stackprotector-outliner.ll
    M llvm/test/CodeGen/AArch64/stack-probing-no-scratch-reg.mir
    M llvm/test/CodeGen/AArch64/sve-cmp-folds.ll
    M llvm/test/CodeGen/AArch64/sve-extract-element.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-mask-opt.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-gather.ll
    M llvm/test/CodeGen/AArch64/sve-fp-int-min-max.ll
    M llvm/test/CodeGen/AArch64/sve-fp-reciprocal.ll
    M llvm/test/CodeGen/AArch64/sve-gather-scatter-dag-combine.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-ff-gather-loads-32bit-scaled-offsets.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-ff-gather-loads-32bit-unscaled-offsets.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-ff-gather-loads-64bit-scaled-offset.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-ff-gather-loads-64bit-unscaled-offset.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-ff-gather-loads-vector-base-imm-offset.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-ff-gather-loads-vector-base-scalar-offset.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-ffr-manipulation.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-loads-ff.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-loads-nf.ll
    M llvm/test/CodeGen/AArch64/sve-ldnf1.mir
    M llvm/test/CodeGen/AArch64/sve-masked-gather-legalize.ll
    M llvm/test/CodeGen/AArch64/sve-ptest-removal-rdffr.mir
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fcopysign.ll
    A llvm/test/CodeGen/AArch64/sve2p1-intrinsics-dupq.ll
    M llvm/test/CodeGen/AArch64/vecreduce-fadd.ll
    M llvm/test/CodeGen/AArch64/vecreduce-fmul.ll
    M llvm/test/CodeGen/AArch64/vector-fcopysign.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fpneg-one-fneg.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/crash-stack-address-O0.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/dropped_debug_info_assert.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/implicit-kernarg-backend-usage-global-isel.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fabs.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fneg.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-sext.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-zext.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-assert-align.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-atomicrmw.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call-abi-attribute-hints.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call-implicit-args.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call-return-values.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call-sret.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-constant-fold-vector-op.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-function-args.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-inline-asm.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-non-integral-address-spaces-vectors.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-non-integral-address-spaces.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-sibling-call.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-tail-call.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.dispatch.ptr.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.is.private.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.is.shared.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.kernarg.segment.ptr.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.queue.ptr.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.workgroup.id.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.workitem.id.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/mul-known-bits.i64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/non-entry-alloca.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/sdivrem.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/udivrem.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32-f16-f32-matrix-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32-imm.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32-iu-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32-swmmac-index_key.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-f16-f32-matrix-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-imm.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-iu-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-swmmac-index_key.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64.ll
    M llvm/test/CodeGen/AMDGPU/abi-attribute-hints-undefined-behavior.ll
    M llvm/test/CodeGen/AMDGPU/addrspacecast-constantexpr.ll
    M llvm/test/CodeGen/AMDGPU/addrspacecast.gfx6.ll
    M llvm/test/CodeGen/AMDGPU/addrspacecast.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow-codegen.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu.private-memory.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa-call.ll
    M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa.ll
    M llvm/test/CodeGen/AMDGPU/atomics_cond_sub.ll
    M llvm/test/CodeGen/AMDGPU/attr-amdgpu-flat-work-group-size.ll
    M llvm/test/CodeGen/AMDGPU/attributor-noopt.ll
    M llvm/test/CodeGen/AMDGPU/blender-no-live-segment-at-def-implicit-def.ll
    M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
    M llvm/test/CodeGen/AMDGPU/call-alias-register-usage-agpr.ll
    M llvm/test/CodeGen/AMDGPU/call-alias-register-usage0.ll
    M llvm/test/CodeGen/AMDGPU/call-alias-register-usage1.ll
    M llvm/test/CodeGen/AMDGPU/call-alias-register-usage2.ll
    M llvm/test/CodeGen/AMDGPU/call-alias-register-usage3.ll
    M llvm/test/CodeGen/AMDGPU/call-args-inreg.ll
    M llvm/test/CodeGen/AMDGPU/call-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/call-graph-register-usage.ll
    M llvm/test/CodeGen/AMDGPU/call-waitcnt.ll
    M llvm/test/CodeGen/AMDGPU/callee-special-input-sgprs-fixed-abi.ll
    M llvm/test/CodeGen/AMDGPU/callee-special-input-vgprs.ll
    M llvm/test/CodeGen/AMDGPU/cc-update.ll
    M llvm/test/CodeGen/AMDGPU/cf-loop-on-constant.ll
    M llvm/test/CodeGen/AMDGPU/cluster_stores.ll
    M llvm/test/CodeGen/AMDGPU/codegen-internal-only-func.ll
    M llvm/test/CodeGen/AMDGPU/collapse-endcf.ll
    M llvm/test/CodeGen/AMDGPU/control-flow-fastregalloc.ll
    A llvm/test/CodeGen/AMDGPU/convergence-tokens.ll
    M llvm/test/CodeGen/AMDGPU/cross-block-use-is-not-abi-copy.ll
    M llvm/test/CodeGen/AMDGPU/cvt_f32_ubyte.ll
    M llvm/test/CodeGen/AMDGPU/dagcombine-lshr-and-cmp.ll
    M llvm/test/CodeGen/AMDGPU/ds-sub-offset.ll
    M llvm/test/CodeGen/AMDGPU/ds_read2.ll
    M llvm/test/CodeGen/AMDGPU/dwarf-multi-register-use-crash.ll
    M llvm/test/CodeGen/AMDGPU/elf-notes.ll
    M llvm/test/CodeGen/AMDGPU/enable-scratch-only-dynamic-stack.ll
    M llvm/test/CodeGen/AMDGPU/flat-for-global-subtarget-feature.ll
    M llvm/test/CodeGen/AMDGPU/flat-scratch-init.ll
    M llvm/test/CodeGen/AMDGPU/flat-scratch-reg.ll
    M llvm/test/CodeGen/AMDGPU/fneg-fabs.ll
    A llvm/test/CodeGen/AMDGPU/fpenv.ll
    M llvm/test/CodeGen/AMDGPU/generic-targets-require-v6.ll
    M llvm/test/CodeGen/AMDGPU/gfx11-user-sgpr-init16-bug.ll
    M llvm/test/CodeGen/AMDGPU/gfx12_scalar_subword_loads.ll
    M llvm/test/CodeGen/AMDGPU/gfx902-without-xnack.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fadd.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmax.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmin.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fsub.ll
    M llvm/test/CodeGen/AMDGPU/hsa-default-device.ll
    M llvm/test/CodeGen/AMDGPU/hsa-fp-mode.ll
    M llvm/test/CodeGen/AMDGPU/hsa-func.ll
    M llvm/test/CodeGen/AMDGPU/hsa-generic-target-features.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-dynlds-func-hidden-args-v5.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-dynlds-funcarg-hidden-args-v5.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-dynlds-kernarg-hidden-args-v5.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-enqueue-kernel-.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-from-llvm-ctor-dtor-list.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-from-llvm-ir-full.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-heap-v5.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-hidden-args-v4.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-hidden-args-v5.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-hostcall-present-asan.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-hostcall-v4.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-hostcall-v5.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-images.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-invalid-ocl-version-1.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-invalid-ocl-version-3.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-kernel-code-props.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-multigrid-sync-arg-v5.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-queue-ptr-v5.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-queueptr-v5.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-resource-usage-function-ordering.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-uniform-workgroup-size-v5.ll
    M llvm/test/CodeGen/AMDGPU/hsa-metadata-workgroup-processor-mode-v5.ll
    M llvm/test/CodeGen/AMDGPU/hsa-note-no-func.ll
    M llvm/test/CodeGen/AMDGPU/hsa.ll
    M llvm/test/CodeGen/AMDGPU/immv216.ll
    M llvm/test/CodeGen/AMDGPU/implicit-arg-v5-opt.ll
    M llvm/test/CodeGen/AMDGPU/implicit-kernarg-backend-usage.ll
    M llvm/test/CodeGen/AMDGPU/implicit-kernel-argument-alignment.ll
    M llvm/test/CodeGen/AMDGPU/implicitarg-offset-attributes.ll
    M llvm/test/CodeGen/AMDGPU/indirect-addressing-term.ll
    M llvm/test/CodeGen/AMDGPU/indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/inline-constraints.ll
    M llvm/test/CodeGen/AMDGPU/insert-delay-alu-bug.ll
    M llvm/test/CodeGen/AMDGPU/insert-waitcnts-hang.mir
    M llvm/test/CodeGen/AMDGPU/integer-mad-patterns.ll
    M llvm/test/CodeGen/AMDGPU/isel-amdgpu-cs-chain-cc.ll
    M llvm/test/CodeGen/AMDGPU/kernarg-size.ll
    M llvm/test/CodeGen/AMDGPU/kernel-argument-dag-lowering.ll
    M llvm/test/CodeGen/AMDGPU/kernel-vgpr-spill-mubuf-with-voffset.ll
    M llvm/test/CodeGen/AMDGPU/large-alloca-compute.ll
    M llvm/test/CodeGen/AMDGPU/lds-alignment.ll
    M llvm/test/CodeGen/AMDGPU/lds-frame-extern.ll
    M llvm/test/CodeGen/AMDGPU/lds-global-non-entry-func.ll
    M llvm/test/CodeGen/AMDGPU/lds-size.ll
    M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.atomic.cond.sub.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.dispatch.id.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.dispatch.ptr.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.dot4.f32.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.amdgcn.implicitarg.ptr.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.private.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.shared.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.kernarg.segment.ptr.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.queue.ptr.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.wait.gfx12.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.workgroup.id.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.workitem.id.ll
    M llvm/test/CodeGen/AMDGPU/llvm.dbg.value.ll
    A llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-calls.ll
    A llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-constants.ll
    A llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-control-flow.ll
    A llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-memops.ll
    A llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-p7-in-memory.ll
    A llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-pointer-ops.ll
    A llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-unoptimized-debug-data.ll
    M llvm/test/CodeGen/AMDGPU/lower-kernargs.ll
    M llvm/test/CodeGen/AMDGPU/lower-module-lds-via-hybrid.ll
    M llvm/test/CodeGen/AMDGPU/lower-module-lds-via-table.ll
    M llvm/test/CodeGen/AMDGPU/machine-sink-temporal-divergence-swdev407790.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-agent.ll
    A llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-lastuse.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-singlethread.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-volatile.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-wavefront.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-workgroup.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-agent.ll
    A llvm/test/CodeGen/AMDGPU/memory-legalizer-global-lastuse.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-singlethread.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-volatile.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-wavefront.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-workgroup.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-singlethread.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-volatile.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-wavefront.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-workgroup.ll
    A llvm/test/CodeGen/AMDGPU/memory-legalizer-private-lastuse.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/module-lds-false-sharing.ll
    M llvm/test/CodeGen/AMDGPU/need-fp-from-vgpr-spills.ll
    M llvm/test/CodeGen/AMDGPU/no-hsa-graphics-shaders.ll
    M llvm/test/CodeGen/AMDGPU/no-source-locations-in-prologue.ll
    M llvm/test/CodeGen/AMDGPU/non-entry-alloca.ll
    M llvm/test/CodeGen/AMDGPU/nop-data.ll
    M llvm/test/CodeGen/AMDGPU/partial-sgpr-to-vgpr-spills.ll
    M llvm/test/CodeGen/AMDGPU/preserve-wwm-copy-dst-reg.ll
    M llvm/test/CodeGen/AMDGPU/promote-alloca-calling-conv.ll
    M llvm/test/CodeGen/AMDGPU/promote-alloca-no-opts.ll
    A llvm/test/CodeGen/AMDGPU/promote-alloca-non-constant-index.ll
    M llvm/test/CodeGen/AMDGPU/promote-alloca-padding-size-estimate.ll
    M llvm/test/CodeGen/AMDGPU/recursion.ll
    M llvm/test/CodeGen/AMDGPU/remove-no-kernel-id-attribute.ll
    M llvm/test/CodeGen/AMDGPU/reqd-work-group-size.ll
    M llvm/test/CodeGen/AMDGPU/resource-optimization-remarks.ll
    M llvm/test/CodeGen/AMDGPU/resource-usage-dead-function.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-no-vgprs.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-update-only-slot-indexes.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-spills-split-regalloc.ll
    M llvm/test/CodeGen/AMDGPU/shrink-add-sub-constant.ll
    M llvm/test/CodeGen/AMDGPU/simple-indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/sopk-no-literal.ll
    M llvm/test/CodeGen/AMDGPU/spill-m0.ll
    M llvm/test/CodeGen/AMDGPU/spill-regpressure-less.mir
    M llvm/test/CodeGen/AMDGPU/stack-realign-kernel.ll
    M llvm/test/CodeGen/AMDGPU/stacksave_stackrestore.ll
    M llvm/test/CodeGen/AMDGPU/tid-kd-xnack-any.ll
    M llvm/test/CodeGen/AMDGPU/tid-kd-xnack-off.ll
    M llvm/test/CodeGen/AMDGPU/tid-kd-xnack-on.ll
    M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-all-any.ll
    M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-all-not-supported.ll
    M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-all-off.ll
    M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-all-on.ll
    M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-any-off-1.ll
    M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-any-off-2.ll
    M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-any-on-1.ll
    M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-any-on-2.ll
    M llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-invalid-any-off-on.ll
    M llvm/test/CodeGen/AMDGPU/tid-one-func-xnack-any.ll
    M llvm/test/CodeGen/AMDGPU/tid-one-func-xnack-not-supported.ll
    M llvm/test/CodeGen/AMDGPU/tid-one-func-xnack-off.ll
    M llvm/test/CodeGen/AMDGPU/tid-one-func-xnack-on.ll
    M llvm/test/CodeGen/AMDGPU/trap-abis.ll
    M llvm/test/CodeGen/AMDGPU/trap.ll
    M llvm/test/CodeGen/AMDGPU/tuple-allocation-failure.ll
    M llvm/test/CodeGen/AMDGPU/unstructured-cfg-def-use-issue.ll
    M llvm/test/CodeGen/AMDGPU/unsupported-code-object-version.ll
    A llvm/test/CodeGen/AMDGPU/verifier-sdwa-cvt.mir
    M llvm/test/CodeGen/AMDGPU/vgpr-liverange-ir.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-spill-placement-issue61083.ll
    M llvm/test/CodeGen/AMDGPU/vgpr_constant_to_sgpr.ll
    M llvm/test/CodeGen/AMDGPU/wait-before-stores-with-scope_sys.ll
    M llvm/test/CodeGen/AMDGPU/whole-wave-register-spill.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w32-f16-f32-matrix-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w32-imm.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w32-iu-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w32-swmmac-index_key.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w32.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w64-f16-f32-matrix-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w64-imm.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w64-iu-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w64-swmmac-index_key.ll
    M llvm/test/CodeGen/AMDGPU/wmma-gfx12-w64.ll
    M llvm/test/CodeGen/AMDGPU/wmma-hazards-gfx12-w32.mir
    M llvm/test/CodeGen/AMDGPU/wmma-hazards-gfx12-w64.mir
    M llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved.ll
    M llvm/test/CodeGen/ARM/aes-erratum-fix.ll
    A llvm/test/CodeGen/ARM/aes.ll
    M llvm/test/CodeGen/ARM/arm-position-independence.ll
    A llvm/test/CodeGen/DirectX/exp2.ll
    A llvm/test/CodeGen/DirectX/fmad.ll
    A llvm/test/CodeGen/DirectX/imad.ll
    A llvm/test/CodeGen/DirectX/umad.ll
    A llvm/test/CodeGen/Hexagon/isel-fold-shl-zext.ll
    M llvm/test/CodeGen/LoongArch/alloca.ll
    M llvm/test/CodeGen/LoongArch/alsl.ll
    M llvm/test/CodeGen/LoongArch/atomicrmw-uinc-udec-wrap.ll
    M llvm/test/CodeGen/LoongArch/bitreverse.ll
    M llvm/test/CodeGen/LoongArch/branch-relaxation.ll
    M llvm/test/CodeGen/LoongArch/bswap-bitreverse.ll
    M llvm/test/CodeGen/LoongArch/bswap.ll
    M llvm/test/CodeGen/LoongArch/bytepick.ll
    M llvm/test/CodeGen/LoongArch/calling-conv-common.ll
    M llvm/test/CodeGen/LoongArch/calling-conv-lp64d.ll
    M llvm/test/CodeGen/LoongArch/calling-conv-lp64s.ll
    M llvm/test/CodeGen/LoongArch/can-not-realign-stack.ll
    M llvm/test/CodeGen/LoongArch/cfr-pseudo-copy.mir
    M llvm/test/CodeGen/LoongArch/ctlz-cttz-ctpop.ll
    M llvm/test/CodeGen/LoongArch/fcopysign.ll
    M llvm/test/CodeGen/LoongArch/get-setcc-result-type.ll
    M llvm/test/CodeGen/LoongArch/ghc-cc.ll
    M llvm/test/CodeGen/LoongArch/intrinsic-memcpy.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/and.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/ashr.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/atomic-cmpxchg.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/atomicrmw-fp.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/atomicrmw-minmax.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/atomicrmw.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/double-convert.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/float-convert.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/load-store.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/lshr.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/mul.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/shl.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/sub.ll
    M llvm/test/CodeGen/LoongArch/lasx/build-vector.ll
    M llvm/test/CodeGen/LoongArch/lasx/fma-v4f64.ll
    M llvm/test/CodeGen/LoongArch/lasx/fma-v8f32.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/add.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/and.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/ashr.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/fadd.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/fcmp.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/fdiv.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/fmul.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/fsub.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/icmp.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/insertelement.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/lshr.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/mul.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/or.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/sdiv.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/shl.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/sub.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/udiv.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/xor.ll
    M llvm/test/CodeGen/LoongArch/lasx/mulh.ll
    M llvm/test/CodeGen/LoongArch/lasx/vselect.ll
    M llvm/test/CodeGen/LoongArch/lsx/build-vector.ll
    M llvm/test/CodeGen/LoongArch/lsx/fma-v2f64.ll
    M llvm/test/CodeGen/LoongArch/lsx/fma-v4f32.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/add.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/and.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/ashr.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/extractelement.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/fadd.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/fcmp.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/fdiv.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/fmul.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/fsub.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/icmp.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/insertelement.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/lshr.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/mul.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/or.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/sdiv.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/shl.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/sub.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/udiv.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/xor.ll
    M llvm/test/CodeGen/LoongArch/lsx/mulh.ll
    M llvm/test/CodeGen/LoongArch/lsx/vselect.ll
    M llvm/test/CodeGen/LoongArch/preferred-alignments.ll
    M llvm/test/CodeGen/LoongArch/rotl-rotr.ll
    M llvm/test/CodeGen/LoongArch/select-to-shiftand.ll
    M llvm/test/CodeGen/LoongArch/shift-masked-shamt.ll
    M llvm/test/CodeGen/LoongArch/shrinkwrap.ll
    M llvm/test/CodeGen/LoongArch/smul-with-overflow.ll
    M llvm/test/CodeGen/LoongArch/soft-fp-to-int.ll
    M llvm/test/CodeGen/LoongArch/spill-ra-without-kill.ll
    M llvm/test/CodeGen/LoongArch/spill-reload-cfr.ll
    M llvm/test/CodeGen/LoongArch/tail-calls.ll
    M llvm/test/CodeGen/LoongArch/unaligned-access.ll
    M llvm/test/CodeGen/LoongArch/vararg.ll
    M llvm/test/CodeGen/LoongArch/vector-fp-imm.ll
    M llvm/test/CodeGen/LoongArch/zext-with-load-is-free.ll
    M llvm/test/CodeGen/Mips/atomic-min-max.ll
    M llvm/test/CodeGen/NVPTX/i16x2-instructions.ll
    M llvm/test/CodeGen/PowerPC/aix-tls-xcoff-reloc.ll
    M llvm/test/CodeGen/PowerPC/crsave.ll
    M llvm/test/CodeGen/PowerPC/fmf-propagation.ll
    A llvm/test/CodeGen/PowerPC/pr74951.ll
    M llvm/test/CodeGen/PowerPC/rldimi.ll
    M llvm/test/CodeGen/PowerPC/rlwimi.ll
    M llvm/test/CodeGen/PowerPC/rlwinm.ll
    A llvm/test/CodeGen/RISCV/GlobalISel/irtranslator/shufflevector.ll
    M llvm/test/CodeGen/RISCV/alu64.ll
    M llvm/test/CodeGen/RISCV/atomicrmw-uinc-udec-wrap.ll
    M llvm/test/CodeGen/RISCV/attributes.ll
    M llvm/test/CodeGen/RISCV/bfloat-convert.ll
    M llvm/test/CodeGen/RISCV/double-convert.ll
    M llvm/test/CodeGen/RISCV/double-round-conv-sat.ll
    M llvm/test/CodeGen/RISCV/float-convert.ll
    M llvm/test/CodeGen/RISCV/float-round-conv-sat.ll
    M llvm/test/CodeGen/RISCV/forced-atomics.ll
    M llvm/test/CodeGen/RISCV/fpclamptosat.ll
    M llvm/test/CodeGen/RISCV/half-convert.ll
    M llvm/test/CodeGen/RISCV/half-round-conv-sat.ll
    M llvm/test/CodeGen/RISCV/iabs.ll
    A llvm/test/CodeGen/RISCV/pr84200.ll
    M llvm/test/CodeGen/RISCV/rv32zbb-zbkb.ll
    M llvm/test/CodeGen/RISCV/rv32zbs.ll
    M llvm/test/CodeGen/RISCV/rv64-legal-i32/rv64xtheadbb.ll
    M llvm/test/CodeGen/RISCV/rv64-legal-i32/rv64zbb.ll
    M llvm/test/CodeGen/RISCV/rvv/active_lane_mask.ll
    M llvm/test/CodeGen/RISCV/rvv/allocate-lmul-2-4-8.ll
    M llvm/test/CodeGen/RISCV/rvv/combine-store-extract-crash.ll
    M llvm/test/CodeGen/RISCV/rvv/extract-subvector.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitreverse-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitreverse.ll
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-compressstore-fp.ll
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-compressstore-int.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctlz-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctlz.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctpop-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctpop.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-cttz-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-cttz.ll
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-expandload-fp.ll
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-expandload-int.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-concat.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-load-combine.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-vpload.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-trunc-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vpload.ll
    M llvm/test/CodeGen/RISCV/rvv/fpclamptosat_vec.ll
    M llvm/test/CodeGen/RISCV/rvv/mgather-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/mscatter-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/pr63596.ll
    A llvm/test/CodeGen/RISCV/rvv/pr83017.ll
    A llvm/test/CodeGen/RISCV/rvv/pr83920.ll
    M llvm/test/CodeGen/RISCV/rvv/vec3-setcc-crash.ll
    M llvm/test/CodeGen/RISCV/rvv/vle_vid-vfcvt.ll
    M llvm/test/CodeGen/RISCV/rvv/vwadd-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vwmul-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vwsub-sdnode.ll
    A llvm/test/CodeGen/SPIRV/bitcast.ll
    M llvm/test/CodeGen/SPIRV/constant/global-constants.ll
    M llvm/test/CodeGen/SPIRV/exec_mode_float_control_khr.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_bfloat16_conversion/bfloat16-conv-negative1.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_bfloat16_conversion/bfloat16-conv-negative2.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_bfloat16_conversion/bfloat16-conv-negative3.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_bfloat16_conversion/bfloat16-conv-negative4.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_bfloat16_conversion/bfloat16-conv.ll
    M llvm/test/CodeGen/SPIRV/function/alloca-load-store.ll
    M llvm/test/CodeGen/SPIRV/half_no_extension.ll
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/SV_DispatchThreadID.ll
    M llvm/test/CodeGen/SPIRV/instructions/undef-nested-composite-store.ll
    M llvm/test/CodeGen/SPIRV/instructions/undef-simple-composite-store.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/add.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/and.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fadd.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fmax.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fmaximum.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fmin.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fminimum.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/fmul.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/mul.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/or.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/smax.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/smin.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/umax.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/umin.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/llvm-vector-reduce/xor.ll
    M llvm/test/CodeGen/SPIRV/opaque_pointers.ll
    M llvm/test/CodeGen/SPIRV/opencl/basic/get_global_offset.ll
    R llvm/test/CodeGen/SPIRV/opencl/metadata/kernel_arg_type_function_metadata.ll
    R llvm/test/CodeGen/SPIRV/opencl/metadata/kernel_arg_type_module_metadata.ll
    M llvm/test/CodeGen/SPIRV/opencl/vload2.ll
    A llvm/test/CodeGen/SPIRV/opencl/vstore2.ll
    A llvm/test/CodeGen/SPIRV/passes/SPIRVEmitIntrinsics-TargetExtType-arg-no-spv_assign_type.ll
    A llvm/test/CodeGen/SPIRV/passes/SPIRVEmitIntrinsics-no-divergent-spv_assign_ptr_type.ll
    A llvm/test/CodeGen/SPIRV/passes/SPIRVEmitIntrinsics-no-duplicate-spv_assign_type.ll
    A llvm/test/CodeGen/SPIRV/pointers/bitcast-fix-load.ll
    A llvm/test/CodeGen/SPIRV/pointers/bitcast-fix-store.ll
    M llvm/test/CodeGen/SPIRV/pointers/getelementptr-kernel-arg-char.ll
    A llvm/test/CodeGen/SPIRV/pointers/kernel-argument-builtin-vload-type-discrapency.ll
    A llvm/test/CodeGen/SPIRV/pointers/kernel-argument-pointer-type-deduction-mismatch.ll
    A llvm/test/CodeGen/SPIRV/pointers/kernel-argument-pointer-type-deduction-no-metadata.ll
    A llvm/test/CodeGen/SPIRV/pointers/ptr-argument-byref.ll
    A llvm/test/CodeGen/SPIRV/pointers/ptr-argument-byval.ll
    A llvm/test/CodeGen/SPIRV/pointers/store-operand-ptr-to-struct.ll
    A llvm/test/CodeGen/SPIRV/pointers/two-bitcast-or-param-users.ll
    R llvm/test/CodeGen/SPIRV/pointers/two-bitcast-users.ll
    M llvm/test/CodeGen/SPIRV/pointers/two-subsequent-bitcasts.ll
    M llvm/test/CodeGen/SPIRV/sitofp-with-bool.ll
    M llvm/test/CodeGen/SPIRV/spirv-load-store.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpenCL/atomic_cmpxchg.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpenCL/atomic_legacy.ll
    M llvm/test/CodeGen/SPIRV/transcoding/spirv-private-array-initialization.ll
    M llvm/test/CodeGen/SPIRV/uitofp-with-bool.ll
    M llvm/test/CodeGen/WebAssembly/ref-type-mem2local.ll
    M llvm/test/CodeGen/X86/2007-03-15-GEP-Idx-Sink.ll
    M llvm/test/CodeGen/X86/2008-02-18-TailMergingBug.ll
    A llvm/test/CodeGen/X86/GlobalISel/legalize-sdiv.mir
    A llvm/test/CodeGen/X86/GlobalISel/legalize-srem.mir
    A llvm/test/CodeGen/X86/GlobalISel/legalize-udiv.mir
    A llvm/test/CodeGen/X86/GlobalISel/legalize-urem.mir
    A llvm/test/CodeGen/X86/GlobalISel/regbankselect-x87.ll
    R llvm/test/CodeGen/X86/GlobalISel/x86-legalize-sdiv.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86-legalize-srem.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86-legalize-udiv.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86-legalize-urem.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86-select-sdiv.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86-select-srem.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86-select-udiv.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86-select-urem.mir
    M llvm/test/CodeGen/X86/GlobalISel/x86_64-fallback.ll
    R llvm/test/CodeGen/X86/GlobalISel/x86_64-legalize-sdiv.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86_64-legalize-srem.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86_64-legalize-udiv.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86_64-legalize-urem.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86_64-select-sdiv.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86_64-select-srem.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86_64-select-udiv.mir
    R llvm/test/CodeGen/X86/GlobalISel/x86_64-select-urem.mir
    A llvm/test/CodeGen/X86/apx/long-instruction-fixup-x32.ll
    A llvm/test/CodeGen/X86/apx/long-instruction-fixup.ll
    M llvm/test/CodeGen/X86/avx512bf16-vl-intrinsics.ll
    A llvm/test/CodeGen/X86/bfloat-constrained.ll
    M llvm/test/CodeGen/X86/bfloat.ll
    M llvm/test/CodeGen/X86/bitcast-int-to-vector-bool-zext.ll
    M llvm/test/CodeGen/X86/bitcast-int-to-vector-bool.ll
    M llvm/test/CodeGen/X86/block-placement.ll
    M llvm/test/CodeGen/X86/cmp-shiftX-maskX.ll
    M llvm/test/CodeGen/X86/cmp.ll
    M llvm/test/CodeGen/X86/combine-smin.ll
    M llvm/test/CodeGen/X86/combine-umax.ll
    M llvm/test/CodeGen/X86/combine-umin.ll
    M llvm/test/CodeGen/X86/dagcombine-and-setcc.ll
    A llvm/test/CodeGen/X86/eq-or-eq-range-of-2.ll
    M llvm/test/CodeGen/X86/half-constrained.ll
    A llvm/test/CodeGen/X86/isel-sdiv.ll
    A llvm/test/CodeGen/X86/isel-srem.ll
    A llvm/test/CodeGen/X86/isel-udiv.ll
    A llvm/test/CodeGen/X86/isel-urem.ll
    M llvm/test/CodeGen/X86/lsr-addrecloops.ll
    M llvm/test/CodeGen/X86/masked_compressstore_isel.ll
    A llvm/test/CodeGen/X86/masked_expandload_isel.ll
    M llvm/test/CodeGen/X86/peephole-na-phys-copy-folding.ll
    M llvm/test/CodeGen/X86/pr59305.ll
    M llvm/test/CodeGen/X86/psadbw.ll
    M llvm/test/CodeGen/X86/sad.ll
    M llvm/test/CodeGen/X86/tailcall-extract.ll
    M llvm/test/CodeGen/X86/tailjmp_gotpcrel_relax_relocation.ll
    M llvm/test/CodeGen/X86/tls-no-plt.ll
    M llvm/test/CodeGen/X86/vselect.ll
    R llvm/test/DebugInfo/AArch64/ptrauth.ll
    M llvm/test/DebugInfo/dwarfdump-debug-frame-simple.test
    M llvm/test/DebugInfo/print-non-instruction-debug-info.ll
    A llvm/test/DebugInfo/roundtrip-non-instruction-debug-info.ll
    M llvm/test/ExecutionEngine/JITLink/AArch64/ELF_minimal.s
    M llvm/test/ExecutionEngine/JITLink/AArch64/ELF_relocations.s
    M llvm/test/ExecutionEngine/JITLink/x86-64/COFF_small_pic_relocations.s
    M llvm/test/ExecutionEngine/JITLink/x86-64/ELF_common_var.s
    A llvm/test/ExecutionEngine/JITLink/x86-64/ELF_vtune.s
    M llvm/test/ExecutionEngine/JITLink/x86-64/lit.local.cfg
    A llvm/test/FileCheck/empty-variable-name.txt
    M llvm/test/Instrumentation/AddressSanitizer/aarch64be.ll
    M llvm/test/Instrumentation/AddressSanitizer/asan-funclet.ll
    M llvm/test/Instrumentation/AddressSanitizer/localescape.ll
    M llvm/test/Instrumentation/AddressSanitizer/program-addrspace.ll
    A llvm/test/Instrumentation/HWAddressSanitizer/pgo-opt-out-no-ps.ll
    A llvm/test/Instrumentation/HWAddressSanitizer/pgo-opt-out.ll
    M llvm/test/Instrumentation/InstrProfiling/before-value-profile-lowering.ll
    M llvm/test/Instrumentation/InstrProfiling/timestamp-coverage.ll
    M llvm/test/Instrumentation/InstrProfiling/timestamp.ll
    M llvm/test/LTO/AArch64/link-branch-target-enforcement.ll
    A llvm/test/LTO/AArch64/link-sign-return-address.ll
    M llvm/test/Linker/link-arm-and-thumb.ll
    M llvm/test/MC/AMDGPU/bf16_imm.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vopc.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vopc_e64.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vopcx.s
    M llvm/test/MC/AMDGPU/gfx1150_asm_features.s
    M llvm/test/MC/AMDGPU/gfx1150_asm_salu_float.s
    M llvm/test/MC/AMDGPU/gfx1150_asm_sopp.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop1.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vopc.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vopcx.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopc.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopcx.s
    M llvm/test/MC/AMDGPU/gfx12_asm_ds.s
    M llvm/test/MC/AMDGPU/gfx12_asm_ds_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_exp.s
    M llvm/test/MC/AMDGPU/gfx12_asm_features.s
    M llvm/test/MC/AMDGPU/gfx12_asm_global_load_tr.s
    M llvm/test/MC/AMDGPU/gfx12_asm_smem.s
    M llvm/test/MC/AMDGPU/gfx12_asm_sop1.s
    M llvm/test/MC/AMDGPU/gfx12_asm_sop2.s
    M llvm/test/MC/AMDGPU/gfx12_asm_sop2_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_sopc.s
    M llvm/test/MC/AMDGPU/gfx12_asm_sopk.s
    M llvm/test/MC/AMDGPU/gfx12_asm_sopk_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_sopp.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vbuffer_mtbuf.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vbuffer_mtbuf_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vbuffer_mubuf.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vbuffer_mubuf_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vdsdir.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vflat.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vflat_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vimage.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vimage_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2_aliases.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2_t16_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_aliases.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3c.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3c_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3c_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3cx_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_aliases.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_dpp16_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_dpp8_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_features.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_t16_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx_t16_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopd.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopd_errs.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopd_features.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vsample.s
    M llvm/test/MC/AMDGPU/gfx12_asm_wmma_w32.s
    M llvm/test/MC/AMDGPU/gfx12_asm_wmma_w64.s
    M llvm/test/MC/AMDGPU/gfx12_err.s
    M llvm/test/MC/AMDGPU/gfx12_unsupported.s
    M llvm/test/MC/AMDGPU/gfx8_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx8_asm_vop2.s
    M llvm/test/MC/AMDGPU/gfx8_asm_vopc.s
    M llvm/test/MC/AMDGPU/gfx9-asm-err.s
    M llvm/test/MC/AMDGPU/gfx9_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx9_asm_vop2.s
    M llvm/test/MC/AMDGPU/gfx9_asm_vopc.s
    M llvm/test/MC/AMDGPU/gfx9_err_pos.s
    M llvm/test/MC/AMDGPU/vop3-gfx10.s
    M llvm/test/MC/AMDGPU/vop3-gfx9.s
    M llvm/test/MC/AMDGPU/vop3.s
    M llvm/test/MC/AMDGPU/vop_sdwa.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx1150_dasm_features.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1150_dasm_salu_float.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1150_dasm_sopp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_ds.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_exp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_features.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_global_load_tr.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_smem.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sopk.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sopp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vbuffer_mtbuf.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vbuffer_mubuf.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vdsdir.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vflat.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vimage.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vinterp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop1_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop1_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop2_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop2_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop2_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop2_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3p.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3p_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3p_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3p_err.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopc_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopc_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopcx_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopcx_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopd.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopd_features.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vsample.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_wmma_w32.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_wmma_w64.txt
    A llvm/test/MC/Disassembler/X86/apx/ccmp.txt
    M llvm/test/MC/Disassembler/X86/apx/reverse-encoding.txt
    M llvm/test/MC/ELF/got-relaxed-i386.s
    M llvm/test/MC/ELF/relocation-386.s
    M llvm/test/MC/RISCV/attribute-arch.s
    A llvm/test/MC/X86/apx/ccmp-att-error.s
    A llvm/test/MC/X86/apx/ccmp-att.s
    A llvm/test/MC/X86/apx/ccmp-intel-error.s
    A llvm/test/MC/X86/apx/ccmp-intel.s
    A llvm/test/MC/X86/apx/long-instruction-err.s
    M llvm/test/MC/X86/gotpcrelx.s
    A llvm/test/MachineVerifier/convergencectrl/AMDGPU/basic.mir
    A llvm/test/MachineVerifier/convergencectrl/AMDGPU/cycles.mir
    A llvm/test/MachineVerifier/convergencectrl/AMDGPU/lit.local.cfg
    A llvm/test/MachineVerifier/convergencectrl/AMDGPU/mixed2.mir
    A llvm/test/MachineVerifier/convergencectrl/AMDGPU/region-nesting.mir
    A llvm/test/MachineVerifier/test_g_splat_vector.mir
    M llvm/test/Object/Inputs/small.ll
    M llvm/test/Object/Inputs/trivial.ll
    M llvm/test/Object/X86/irsymtab-bad-alias.ll
    M llvm/test/Object/X86/nm-ir.ll
    M llvm/test/Object/dllimport-globalref.ll
    M llvm/test/Object/dllimport.ll
    M llvm/test/Object/mangle-ir.ll
    M llvm/test/Object/objc-swift-mixed-imageinfo-macho.ll
    M llvm/test/TableGen/GlobalISelCombinerEmitter/builtins/match-table-replacerreg.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-imms.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-intrinsics.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-patfrag-root.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-variadics.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table.td
    M llvm/test/TableGen/GlobalISelEmitter-multiple-output.td
    M llvm/test/TableGen/MacroFusion.td
    M llvm/test/TableGen/directive1.td
    M llvm/test/TableGen/directive2.td
    M llvm/test/TableGen/x86-fold-tables.inc
    M llvm/test/ThinLTO/X86/cache-config.ll
    M llvm/test/Transforms/ConstantHoisting/RISCV/immediates.ll
    M llvm/test/Transforms/CorrelatedValuePropagation/udiv-expansion.ll
    M llvm/test/Transforms/CorrelatedValuePropagation/urem-expansion.ll
    A llvm/test/Transforms/DeadStoreElimination/batchaa-caching-new-pointers.ll
    A llvm/test/Transforms/DeadStoreElimination/malloc-earliest-escape-info-invalidation.ll
    M llvm/test/Transforms/Inline/X86/call-abi-compatibility.ll
    M llvm/test/Transforms/InstCombine/RISCV/riscv-vsetvli-knownbits.ll
    A llvm/test/Transforms/InstCombine/RISCV/riscv-vsetvlimax-knownbits.ll
    M llvm/test/Transforms/InstCombine/add-sitofp.ll
    A llvm/test/Transforms/InstCombine/binop-itofp.ll
    M llvm/test/Transforms/InstCombine/bitcast.ll
    M llvm/test/Transforms/InstCombine/canonicalize-clamp-like-pattern-between-negative-and-positive-thresholds.ll
    M llvm/test/Transforms/InstCombine/cast-int-fcmp-eq-0.ll
    M llvm/test/Transforms/InstCombine/clamp-to-minmax.ll
    M llvm/test/Transforms/InstCombine/fold-log2-ceil-idiom.ll
    M llvm/test/Transforms/InstCombine/fpclass-from-dom-cond.ll
    M llvm/test/Transforms/InstCombine/icmp-sub.ll
    M llvm/test/Transforms/InstCombine/known-bits.ll
    M llvm/test/Transforms/InstCombine/maximum.ll
    M llvm/test/Transforms/InstCombine/maxnum.ll
    M llvm/test/Transforms/InstCombine/nested-select.ll
    M llvm/test/Transforms/InstCombine/phi-select-constant.ll
    M llvm/test/Transforms/InstCombine/pr33453.ll
    M llvm/test/Transforms/InstCombine/pr63791.ll
    A llvm/test/Transforms/InstCombine/pr82877.ll
    A llvm/test/Transforms/InstCombine/pr83931.ll
    A llvm/test/Transforms/InstCombine/pr83947.ll
    M llvm/test/Transforms/InstCombine/ptrmask.ll
    M llvm/test/Transforms/InstCombine/select.ll
    M llvm/test/Transforms/InstCombine/sink_to_unreachable.ll
    M llvm/test/Transforms/InstCombine/sitofp.ll
    M llvm/test/Transforms/InstCombine/sub.ll
    M llvm/test/Transforms/InstCombine/unreachable-code.ll
    M llvm/test/Transforms/InstCombine/vscale_cmp.ll
    M llvm/test/Transforms/LoopDeletion/invalidate-scev-after-hoisting.ll
    M llvm/test/Transforms/LoopSimplify/preserve-scev.ll
    A llvm/test/Transforms/LoopStrengthReduce/X86/pr83404.ll
    A llvm/test/Transforms/LoopStrengthReduce/lsr-unreachable-bb-phi-node.ll
    M llvm/test/Transforms/LoopUnroll/AArch64/scalable-vec-ins-ext.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/pr73894.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/uniform-args-call-variants.ll
    M llvm/test/Transforms/LoopVectorize/no-fold-tail-by-masking-iv-external-uses.ll
    M llvm/test/Transforms/LoopVectorize/strict-fadd-interleave-only.ll
    A llvm/test/Transforms/PhaseOrdering/X86/pr67803.ll
    M llvm/test/Transforms/PhaseOrdering/scev-custom-dl.ll
    A llvm/test/Transforms/RemoveTraps/remove-traps.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/ext-trunc.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/getelementptr.ll
    A llvm/test/Transforms/SLPVectorizer/AArch64/getelementptr2.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/reduce-add-i64.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/reductions.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/strided-loads-vectorized.ll
    M llvm/test/Transforms/SLPVectorizer/X86/PR35777.ll
    M llvm/test/Transforms/SLPVectorizer/X86/int-bitcast-minbitwidth.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-multiuse-with-insertelement.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-transformed-operand.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minimum-sizes.ll
    M llvm/test/Transforms/SLPVectorizer/X86/phi-undef-input.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reorder-possible-strided-node.ll
    M llvm/test/Transforms/SLPVectorizer/X86/resched.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reused-reductions-with-minbitwidth.ll
    M llvm/test/Transforms/SLPVectorizer/X86/store-insertelement-minbitwidth.ll
    M llvm/test/Transforms/SLPVectorizer/alt-cmp-vectorize.ll
    M llvm/test/Transforms/SROA/phi-and-select.ll
    M llvm/test/Transforms/SROA/phi-gep.ll
    M llvm/test/Transforms/SROA/vector-promotion.ll
    M llvm/test/Transforms/SimpleLoopUnswitch/update-scev-2.ll
    A llvm/test/Verifier/RemoveDI/blockbyref.ll
    A llvm/test/Verifier/RemoveDI/dbg-invalid-vector.ll
    A llvm/test/Verifier/RemoveDI/di-subroutine-localvar.ll
    A llvm/test/Verifier/RemoveDI/diexpression-entry-value-llvm-ir.ll
    A llvm/test/Verifier/RemoveDI/fnarg-debuginfo.ll
    A llvm/test/Verifier/RemoveDI/fnarg-nodebug.ll
    A llvm/test/Verifier/RemoveDI/invalid-disubrange-count-node.ll
    A llvm/test/Verifier/RemoveDI/llvm.dbg.declare-address.ll
    A llvm/test/Verifier/RemoveDI/llvm.dbg.declare-expression.ll
    A llvm/test/Verifier/RemoveDI/llvm.dbg.declare-variable.ll
    A llvm/test/Verifier/RemoveDI/llvm.dbg.intrinsic-dbg-attachment.ll
    A llvm/test/Verifier/RemoveDI/llvm.dbg.value-expression.ll
    A llvm/test/Verifier/RemoveDI/llvm.dbg.value-value.ll
    A llvm/test/Verifier/RemoveDI/llvm.dbg.value-variable.ll
    A llvm/test/Verifier/RemoveDI/set1.ll
    M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/loongarch_generated_funcs.ll.generated.expected
    M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/loongarch_generated_funcs.ll.nogenerated.expected
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values.ll
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values.ll.expected
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values.ll.expected.reset
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values2.ll
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values2.ll.expected
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values3.ll
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values3.ll.expected
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values4.ll
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/stable_ir_values4.ll.expected
    A llvm/test/tools/UpdateTestChecks/update_test_checks/stable_ir_values.test
    A llvm/test/tools/UpdateTestChecks/update_test_checks/stable_ir_values2.test
    A llvm/test/tools/UpdateTestChecks/update_test_checks/stable_ir_values3.test
    A llvm/test/tools/UpdateTestChecks/update_test_checks/stable_ir_values4.test
    M llvm/test/tools/llvm-mca/AArch64/A64FX/A64FX-sve-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A510-sve-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-sve-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-sve-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-sve-instructions.s
    A llvm/test/tools/llvm-mca/AMDGPU/carried-over.s
    A llvm/test/tools/llvm-mca/AMDGPU/gfx90a-mfma.s
    A llvm/test/tools/llvm-mca/AMDGPU/gfx940-mfma.s
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx1.s
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-avx2.s
    M llvm/test/tools/llvm-mca/X86/IceLakeServer/resources-sse41.s
    M llvm/test/tools/llvm-profdata/binary-ids-padding.test
    M llvm/test/tools/llvm-profdata/large-binary-id-size.test
    M llvm/test/tools/llvm-profdata/malformed-not-space-for-another-header.test
    M llvm/test/tools/llvm-profdata/malformed-num-counters-zero.test
    M llvm/test/tools/llvm-profdata/malformed-ptr-to-counter-array.test
    M llvm/test/tools/llvm-profdata/misaligned-binary-ids-size.test
    A llvm/test/tools/llvm-profdata/profile-version.test
    M llvm/test/tools/llvm-profdata/raw-32-bits-be.test
    M llvm/test/tools/llvm-profdata/raw-32-bits-le.test
    M llvm/test/tools/llvm-profdata/raw-64-bits-be.test
    M llvm/test/tools/llvm-profdata/raw-64-bits-le.test
    M llvm/test/tools/llvm-profdata/raw-two-profiles.test
    M llvm/test/tools/llvm-readobj/ELF/unwind.test
    M llvm/test/tools/llvm-reduce/reduce-module-flags.ll
    M llvm/tools/bugpoint/Miscompilation.cpp
    M llvm/tools/dsymutil/dsymutil.cpp
    M llvm/tools/gold/gold-plugin.cpp
    M llvm/tools/llvm-cov/CodeCoverage.cpp
    M llvm/tools/llvm-cov/CoverageExporterJson.cpp
    M llvm/tools/llvm-cov/CoverageReport.cpp
    M llvm/tools/llvm-cov/CoverageReport.h
    M llvm/tools/llvm-cov/SourceCoverageViewHTML.h
    M llvm/tools/llvm-debuginfod/llvm-debuginfod.cpp
    M llvm/tools/llvm-exegesis/lib/X86/Target.cpp
    M llvm/tools/llvm-jitlink/llvm-jitlink.cpp
    M llvm/tools/llvm-jitlistener/llvm-jitlistener.cpp
    M llvm/tools/llvm-mc/llvm-mc.cpp
    M llvm/tools/llvm-profdata/llvm-profdata.cpp
    M llvm/tools/llvm-readobj/DwarfCFIEHPrinter.h
    M llvm/tools/llvm-reduce/deltas/Delta.cpp
    M llvm/tools/opt/optdriver.cpp
    M llvm/unittests/ADT/APIntTest.cpp
    M llvm/unittests/ADT/LazyAtomicPointerTest.cpp
    M llvm/unittests/Analysis/ValueTrackingTest.cpp
    M llvm/unittests/CodeGen/GlobalISel/LegalizerHelperTest.cpp
    M llvm/unittests/CodeGen/GlobalISel/PatternMatchTest.cpp
    M llvm/unittests/Debuginfod/HTTPServerTests.cpp
    M llvm/unittests/IR/InstructionsTest.cpp
    M llvm/unittests/IR/MetadataTest.cpp
    M llvm/unittests/Support/Casting.cpp
    M llvm/unittests/Support/KnownBitsTest.cpp
    M llvm/unittests/Support/ParallelTest.cpp
    M llvm/unittests/Support/ProgramTest.cpp
    M llvm/unittests/Support/RISCVISAInfoTest.cpp
    M llvm/unittests/Support/RegexTest.cpp
    M llvm/unittests/Support/ThreadPool.cpp
    M llvm/unittests/Support/ThreadSafeAllocatorTest.cpp
    M llvm/unittests/Target/AArch64/AArch64SVESchedPseudoTest.cpp
    M llvm/unittests/Target/RISCV/CMakeLists.txt
    R llvm/unittests/Target/RISCV/RISCVBaseInfoTest.cpp
    M llvm/unittests/Target/RISCV/RISCVInstrInfoTest.cpp
    M llvm/unittests/TargetParser/CMakeLists.txt
    A llvm/unittests/TargetParser/RISCVTargetParserTest.cpp
    M llvm/unittests/TargetParser/TargetParserTest.cpp
    M llvm/unittests/TextAPI/RecordTests.cpp
    M llvm/utils/TableGen/DirectiveEmitter.cpp
    M llvm/utils/TableGen/GlobalISelEmitter.cpp
    M llvm/utils/TableGen/MacroFusionPredicatorEmitter.cpp
    M llvm/utils/TableGen/X86RecognizableInstr.cpp
    M llvm/utils/TableGen/X86RecognizableInstr.h
    M llvm/utils/UpdateTestChecks/common.py
    M llvm/utils/git/code-format-helper.py
    M llvm/utils/git/github-automation.py
    M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/bugprone/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/AST/BUILD.gn
    M llvm/utils/gn/secondary/clang/unittests/Interpreter/BUILD.gn
    M llvm/utils/gn/secondary/compiler-rt/lib/builtins/BUILD.gn
    M llvm/utils/gn/secondary/compiler-rt/lib/scudo/BUILD.gn
    R llvm/utils/gn/secondary/compiler-rt/lib/scudo/standalone/benchmarks/BUILD.gn
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/CodeGen/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/Debugging/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/TargetProcess/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Target/SystemZ/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Transforms/Instrumentation/BUILD.gn
    M llvm/utils/gn/secondary/llvm/unittests/Target/RISCV/BUILD.gn
    M llvm/utils/gn/secondary/llvm/unittests/TargetParser/BUILD.gn
    R llvm/utils/gn/secondary/third-party/benchmark/BUILD.gn
    M llvm/utils/not/not.cpp
    M llvm/utils/release/github-upload-release.py
    M llvm/utils/update_test_checks.py
    M mlir/CMakeLists.txt
    M mlir/docs/Dialects/emitc.md
    M mlir/include/mlir-c/BuiltinAttributes.h
    M mlir/include/mlir-c/Dialect/LLVM.h
    M mlir/include/mlir/Analysis/Presburger/Barvinok.h
    M mlir/include/mlir/CAPI/Support.h
    M mlir/include/mlir/Config/mlir-config.h.cmake
    A mlir/include/mlir/Conversion/ArithToEmitC/ArithToEmitC.h
    A mlir/include/mlir/Conversion/ArithToEmitC/ArithToEmitCPass.h
    M mlir/include/mlir/Conversion/Passes.h
    M mlir/include/mlir/Conversion/Passes.td
    A mlir/include/mlir/Dialect/ArmNeon/Transforms.h
    M mlir/include/mlir/Dialect/Bufferization/Transforms/Passes.h
    M mlir/include/mlir/Dialect/CMakeLists.txt
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.h
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
    A mlir/include/mlir/Dialect/EmitC/IR/EmitCTraits.h
    M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td
    A mlir/include/mlir/Dialect/Linalg/Transforms/AllInterfaces.h
    A mlir/include/mlir/Dialect/Linalg/Transforms/MeshShardingInterfaceImpl.h
    M mlir/include/mlir/Dialect/Mesh/IR/MeshBase.td
    M mlir/include/mlir/Dialect/Mesh/IR/MeshOps.td
    M mlir/include/mlir/Dialect/Mesh/Interfaces/ShardingInterfaceImpl.h
    M mlir/include/mlir/Dialect/Mesh/Transforms/Passes.td
    M mlir/include/mlir/Dialect/Mesh/Transforms/Transforms.h
    M mlir/include/mlir/Dialect/OpenACC/OpenACC.h
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/include/mlir/Dialect/PDL/IR/PDLOps.td
    M mlir/include/mlir/Dialect/PDLInterp/IR/PDLInterpOps.td
    M mlir/include/mlir/Dialect/SparseTensor/IR/Enums.h
    M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorAttrDefs.td
    M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorOps.td
    M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorStorageLayout.h
    M mlir/include/mlir/Dialect/SparseTensor/IR/SparseTensorType.h
    M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
    A mlir/include/mlir/Dialect/XeGPU/CMakeLists.txt
    A mlir/include/mlir/Dialect/XeGPU/IR/CMakeLists.txt
    A mlir/include/mlir/Dialect/XeGPU/IR/XeGPU.h
    A mlir/include/mlir/Dialect/XeGPU/IR/XeGPU.td
    A mlir/include/mlir/Dialect/XeGPU/IR/XeGPUAttrs.td
    A mlir/include/mlir/Dialect/XeGPU/IR/XeGPUDialect.td
    A mlir/include/mlir/Dialect/XeGPU/IR/XeGPUOps.td
    A mlir/include/mlir/Dialect/XeGPU/IR/XeGPUTypes.td
    M mlir/include/mlir/IR/CommonTypeConstraints.td
    M mlir/include/mlir/IR/Dialect.h
    M mlir/include/mlir/IR/MLIRContext.h
    M mlir/include/mlir/IR/PDLPatternMatch.h.inc
    M mlir/include/mlir/IR/PatternMatch.h
    M mlir/include/mlir/IR/Threading.h
    M mlir/include/mlir/IR/ValueRange.h
    M mlir/include/mlir/InitAllDialects.h
    M mlir/include/mlir/Pass/Pass.h
    M mlir/include/mlir/Query/Matcher/ErrorBuilder.h
    M mlir/include/mlir/Query/Matcher/MatchersInternal.h
    M mlir/include/mlir/Transforms/DialectConversion.h
    A mlir/include/mlir/Transforms/Inliner.h
    M mlir/include/mlir/Transforms/Passes.td
    M mlir/lib/Analysis/Presburger/Barvinok.cpp
    M mlir/lib/Analysis/Presburger/IntegerRelation.cpp
    M mlir/lib/CAPI/Dialect/LLVM.cpp
    M mlir/lib/CAPI/IR/BuiltinAttributes.cpp
    M mlir/lib/CAPI/IR/IR.cpp
    M mlir/lib/CAPI/IR/Support.cpp
    A mlir/lib/Conversion/ArithToEmitC/ArithToEmitC.cpp
    A mlir/lib/Conversion/ArithToEmitC/ArithToEmitCPass.cpp
    A mlir/lib/Conversion/ArithToEmitC/CMakeLists.txt
    M mlir/lib/Conversion/CMakeLists.txt
    M mlir/lib/Conversion/ComplexToStandard/ComplexToStandard.cpp
    M mlir/lib/Conversion/FuncToEmitC/FuncToEmitCPass.cpp
    M mlir/lib/Conversion/MemRefToSPIRV/MemRefToSPIRV.cpp
    M mlir/lib/Conversion/PDLToPDLInterp/PDLToPDLInterp.cpp
    M mlir/lib/Conversion/PDLToPDLInterp/Predicate.h
    M mlir/lib/Conversion/PDLToPDLInterp/PredicateTree.cpp
    M mlir/lib/Conversion/VectorToLLVM/CMakeLists.txt
    M mlir/lib/Dialect/ArmNeon/CMakeLists.txt
    A mlir/lib/Dialect/ArmNeon/IR/CMakeLists.txt
    A mlir/lib/Dialect/ArmNeon/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/ArmNeon/Transforms/LowerContractionToSMMLAPattern.cpp
    M mlir/lib/Dialect/ArmSME/Transforms/VectorLegalization.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/BufferResultsToOutParams.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation.cpp
    M mlir/lib/Dialect/CMakeLists.txt
    M mlir/lib/Dialect/ControlFlow/Transforms/BufferDeallocationOpInterfaceImpl.cpp
    M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
    M mlir/lib/Dialect/EmitC/Transforms/FormExpressions.cpp
    M mlir/lib/Dialect/EmitC/Transforms/Transforms.cpp
    M mlir/lib/Dialect/GPU/CMakeLists.txt
    M mlir/lib/Dialect/GPU/Transforms/ModuleToBinary.cpp
    M mlir/lib/Dialect/GPU/Transforms/SerializeToHsaco.cpp
    M mlir/lib/Dialect/Linalg/IR/CMakeLists.txt
    M mlir/lib/Dialect/Linalg/IR/LinalgDialect.cpp
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    A mlir/lib/Dialect/Linalg/Transforms/AllInterfaces.cpp
    M mlir/lib/Dialect/Linalg/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/Linalg/Transforms/DecomposeLinalgOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Fusion.cpp
    A mlir/lib/Dialect/Linalg/Transforms/MeshShardingInterfaceImpl.cpp
    M mlir/lib/Dialect/Linalg/Transforms/TilingInterfaceImpl.cpp
    M mlir/lib/Dialect/Linalg/Utils/Utils.cpp
    M mlir/lib/Dialect/Mesh/IR/MeshOps.cpp
    M mlir/lib/Dialect/Mesh/Interfaces/ShardingInterface.cpp
    M mlir/lib/Dialect/Mesh/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/Mesh/Transforms/ShardingPropagation.cpp
    M mlir/lib/Dialect/Mesh/Transforms/Spmdization.cpp
    M mlir/lib/Dialect/Mesh/Transforms/Transforms.cpp
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
    M mlir/lib/Dialect/PDL/IR/PDL.cpp
    M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseAssembler.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseGPUCodegen.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorCodegen.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorConversion.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Sparsification.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/CodegenUtils.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/CodegenUtils.h
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/LoopEmitter.h
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorLevel.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/SparseTensorLevel.h
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorLinearize.cpp
    A mlir/lib/Dialect/XeGPU/CMakeLists.txt
    A mlir/lib/Dialect/XeGPU/IR/CMakeLists.txt
    A mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
    A mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp
    M mlir/lib/ExecutionEngine/AsyncRuntime.cpp
    M mlir/lib/IR/MLIRContext.cpp
    M mlir/lib/IR/OperationSupport.cpp
    M mlir/lib/IR/PatternMatch.cpp
    M mlir/lib/Query/CMakeLists.txt
    M mlir/lib/Query/Matcher/Diagnostics.cpp
    M mlir/lib/Query/Matcher/Parser.cpp
    M mlir/lib/Query/Matcher/Parser.h
    M mlir/lib/Query/Matcher/RegistryManager.cpp
    M mlir/lib/Query/Matcher/RegistryManager.h
    M mlir/lib/Query/Query.cpp
    M mlir/lib/Rewrite/ByteCode.cpp
    M mlir/lib/Target/Cpp/CMakeLists.txt
    M mlir/lib/Target/Cpp/TranslateRegistration.cpp
    M mlir/lib/Target/Cpp/TranslateToCpp.cpp
    M mlir/lib/Target/LLVM/CMakeLists.txt

  Log Message:
  -----------
  Update commit message and comment, apply suggestions

Created using spr 1.3.6-beta.1


Compare: https://github.com/llvm/llvm-project/compare/347dab6d1b39...3bc115de9f8f

To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list