[all-commits] [llvm/llvm-project] 44556e: [amdgpu] Add llvm.amdgcn.init.whole.wave intrinsic...

Alexey Bataev via All-commits all-commits at lists.llvm.org
Mon Sep 16 14:15:05 PDT 2024


  Branch: refs/heads/users/alexey-bataev/spr/slpvectorize-of-gathered-loads
  Home:   https://github.com/llvm/llvm-project
  Commit: 44556e64f21c1e21dd0e8329bc0e54e1887261c5
      https://github.com/llvm/llvm-project/commit/44556e64f21c1e21dd0e8329bc0e54e1887261c5
  Author: Diana Picus <Diana-Magda.Picus at amd.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
    M llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.h
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
    M llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.whole.wave-w32.ll
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.whole.wave-w64.ll
    M llvm/test/CodeGen/AMDGPU/pei-amdgpu-cs-chain.mir
    A llvm/test/CodeGen/AMDGPU/si-init-whole-wave.mir
    M llvm/test/CodeGen/MIR/AMDGPU/long-branch-reg-all-sgpr-used.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-after-pei.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg-debug.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-no-ir.mir
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info.ll

  Log Message:
  -----------
  [amdgpu] Add llvm.amdgcn.init.whole.wave intrinsic (#105822)

This intrinsic is meant to be used in functions that have a "tail" that
needs to be run with all the lanes enabled. The "tail" may contain
complex control flow that makes it unsuitable for the use of the
existing WWM intrinsics. Instead, we will pretend that the function
starts with all the lanes enabled, then branches into the actual body of
the function for the lanes that were meant to run it, and then finally
all the lanes will rejoin and run the tail.

As such, the intrinsic will return the EXEC mask for the body of the
function, and is meant to be used only as part of a very limited pattern
(for now only in amdgpu_cs_chain functions):

```
entry:
  %func_exec = call i1 @llvm.amdgcn.init.whole.wave()
  br i1 %func_exec, label %func, label %tail

func:
  ; ... stuff that should run with the actual EXEC mask
  br label %tail

tail:
  ; ... stuff that runs with all the lanes enabled;
  ; can contain more than one basic block
```

It's an error to use the result of this intrinsic for anything
other than a branch (but unfortunately checking that in the verifier is
non-trivial because SIAnnotateControlFlow will introduce an amdgcn.if
between the intrinsic and the branch).

The intrinsic is lowered to a SI_INIT_WHOLE_WAVE pseudo, which for now
is expanded in si-wqm (which is where SI_INIT_EXEC is handled too);
however the information that the function was conceptually started in
whole wave mode is stored in the machine function info
(hasInitWholeWave). This will be useful in prolog epilog insertion,
where we can skip saving the inactive lanes for CSRs (since if the
function started with all the lanes active, then there are no inactive
lanes to preserve).


  Commit: 46870175c5425997154245cfa5b1bc31c29bdba4
      https://github.com/llvm/llvm-project/commit/46870175c5425997154245cfa5b1bc31c29bdba4
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

  Log Message:
  -----------
  [clang][bytecode][NFC] Fix CallBI function signature

This doesn't modify the PC, so pass OpPC as a copy.


  Commit: daf208598b06a0b8b3dc3c30b023334182bdf170
      https://github.com/llvm/llvm-project/commit/daf208598b06a0b8b3dc3c30b023334182bdf170
  Author: Simon Tatham <simon.tatham at arm.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M lld/ELF/Arch/AArch64.cpp
    M lld/test/ELF/aarch64-reloc-implicit-addend.test

  Log Message:
  -----------
  [lld][AArch64] Fix getImplicitAddend in big-endian mode. (#107845)

In AArch64, the endianness of instruction encodings is always little,
whereas the endianness of data swaps between LE and BE modes. So
getImplicitAddend must use the right one of read32() and read32le(), for
data and code respectively. It was using read32() throughout, causing
instructions to be read as big-endian in BE mode, getting the wrong
addend.

Fixed, and updated the existing test to check both endiannesses. The
expected results for data must be byte-swapped, but the ones for code
need no adjustment.


  Commit: 6a56f15211f034ad668d24dfec5d7f722e33a7a2
      https://github.com/llvm/llvm-project/commit/6a56f15211f034ad668d24dfec5d7f722e33a7a2
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M clang/test/AST/ByteCode/cxx20.cpp

  Log Message:
  -----------
  [clang][bytecode][NFC] Fix a commented-out test


  Commit: b0ffaa79050460d724eec1b12363c439b43d5ae5
      https://github.com/llvm/llvm-project/commit/b0ffaa79050460d724eec1b12363c439b43d5ae5
  Author: Momchil Velikov <momchil.velikov at arm.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    M llvm/test/CodeGen/AArch64/build-one-lane.ll
    M llvm/test/CodeGen/AArch64/insertextract.ll
    A llvm/test/CodeGen/AArch64/no-reorder-cfi-merge-back-load.mir
    A llvm/test/CodeGen/AArch64/no-reorder-cfi-merge-back-store.mir
    A llvm/test/CodeGen/AArch64/no-reorder-cfi-merge-fwd-load.mir
    A llvm/test/CodeGen/AArch64/no-reorder-cfi-merge-fwd.mir
    A llvm/test/CodeGen/AArch64/no-reorder-cfi-no-merge.mir
    A llvm/test/CodeGen/AArch64/no-reorder-cfi.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-bit-counting.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-insert-vector-elt.ll
    M llvm/test/CodeGen/AArch64/vector-compress.ll

  Log Message:
  -----------
  [AArch64] Prevent the AArch64LoadStoreOptimizer from reordering CFI instructions (#101317)

When AArch64LoadStoreOptimizer pass merges an SP update with a
load/store instruction and needs to adjust unwind information either:
* create the merged instruction at the location of the SP update
  (so no CFI  instructions are moved), or
* only move a CFI instruction if the move would not reorder it across
  other CFI  instructions

If neither of the above is possible, don't perform the optimisation.


  Commit: 306b08c3a9fea7d9a547478e013999938debfa47
      https://github.com/llvm/llvm-project/commit/306b08c3a9fea7d9a547478e013999938debfa47
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

  Log Message:
  -----------
  [AMDGPU] Remove unused SITargetLowering::isMemOpUniform


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

  Changed paths:
    M flang/include/flang/Optimizer/CodeGen/CGPasses.td
    M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
    M flang/test/Fir/struct-passing-x86-64-one-field-inreg.fir
    M flang/test/Fir/struct-passing-x86-64-several-fields-inreg.fir
    M flang/test/Fir/target-rewrite-complex16.fir

  Log Message:
  -----------
  [flang] Use LLVM dialect ops for stack save/restore in target-rewrite (#107879)

Mostly NFC, I was bothered by the declaration that were always made even
if unsued, and I think using LLVM Ops is nicer anyway with regards to
side effects here.

```
func.func private @llvm.stacksave.p0() -> !fir.ref<i8>
func.func private @llvm.stackrestore.p0(!fir.ref<i8>)
```

There are other places in lowering that are using the calls instead of
the LLVM intrinsics, but I will deal with them another time (the issue
there is mostly to get the proper address space for the llvm.ptr type).


  Commit: 930915a27a5bc8079de211c96bce15eb2bb18d22
      https://github.com/llvm/llvm-project/commit/930915a27a5bc8079de211c96bce15eb2bb18d22
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M libcxx/test/libcxx/transitive_includes/cxx03.csv
    M libcxx/test/libcxx/transitive_includes/cxx11.csv
    M libcxx/test/libcxx/transitive_includes/cxx14.csv
    M libcxx/test/libcxx/transitive_includes/cxx17.csv
    M libcxx/test/libcxx/transitive_includes/cxx20.csv
    M libcxx/test/libcxx/transitive_includes/cxx23.csv
    M libcxx/test/libcxx/transitive_includes/cxx26.csv
    M libcxx/test/libcxx/transitive_includes_to_csv.py
    R libcxx/utils/graph_header_deps.py

  Log Message:
  -----------
  [libc++] Include the full set of libc++ transitive includes in the CSV files (#107911)

When we introduced the machinery for transitive includes validation, at
some point we stopped including the full set of transitive includes in
the CSV files and instead only tracked the set of public headers
included *directly* by a top-level header.

The reason for doing that was so that the CSV files containing
"transitive" includes could be used to draw the dependency graph of
libc++ headers. However, the downside was that it made the contents of
the CSV files much harder to interpret.

In particular, many changes that modify the CSV files do not in fact
modify the effective set of transitive includes, which is confusing.
This patch goes back to storing the full set of transitive includes in
the CSV files and removes the ability to graph the libc++ includes
directly from those CSV files, which we never actually used.


  Commit: bda9474f57340ad4043e3740707498f606b827a5
      https://github.com/llvm/llvm-project/commit/bda9474f57340ad4043e3740707498f606b827a5
  Author: Sven van Haastregt <sven.vanhaastregt at arm.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/include/llvm/ADT/SmallVectorExtras.h
    M llvm/lib/Target/ARM/ARMCallLowering.cpp
    M mlir/include/mlir/Dialect/Transform/IR/Utils.h
    M mlir/lib/Transforms/PrintIR.cpp

  Log Message:
  -----------
  Add missing newlines at EOF; NFC


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    A llvm/test/Transforms/VectorCombine/RISCV/shuffle-of-intrinsics.ll
    A llvm/test/Transforms/VectorCombine/X86/shuffle-of-intrinsics.ll

  Log Message:
  -----------
  [VectorCombine] Add foldShuffleOfIntrinsics. (#106502)


  Commit: 4a63d62f686546f5d7329a5e48def09ba817e42a
      https://github.com/llvm/llvm-project/commit/4a63d62f686546f5d7329a5e48def09ba817e42a
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/utils/gn/secondary/compiler-rt/lib/asan/BUILD.gn
    M llvm/utils/gn/secondary/compiler-rt/lib/sanitizer_common/BUILD.gn
    M llvm/utils/gn/secondary/compiler-rt/lib/ubsan/BUILD.gn

  Log Message:
  -----------
  [gn] attempt to port 53a81d4d26f0 (win/asan dynamic runtime)

Based on the output of llvm/utils/gn/build/sync_source_lists_from_cmake.py
and reading the diff, but not actually tested on Windows.


  Commit: 4d55f0bf254517cfbdd1acb4297a9f9ff5c12303
      https://github.com/llvm/llvm-project/commit/4d55f0bf254517cfbdd1acb4297a9f9ff5c12303
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

  Log Message:
  -----------
  [gn] attempt to port 53a81d4d26f0 more (win/asan dynamic runtime)


  Commit: d1cad2290c10712ea27509081f50769ed597ee0f
      https://github.com/llvm/llvm-project/commit/d1cad2290c10712ea27509081f50769ed597ee0f
  Author: Henrich Lauko <xlauko at mail.muni.cz>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M mlir/include/mlir/Interfaces/CallInterfaces.h
    M mlir/include/mlir/Interfaces/CallInterfaces.td
    M mlir/lib/Analysis/CallGraph.cpp
    M mlir/lib/Analysis/DataFlow/DeadCodeAnalysis.cpp
    M mlir/lib/Analysis/DataFlow/DenseAnalysis.cpp
    M mlir/lib/Analysis/DataFlow/SparseAnalysis.cpp
    M mlir/lib/Dialect/Async/IR/CMakeLists.txt
    M mlir/lib/Dialect/Bufferization/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation.cpp
    M mlir/lib/Interfaces/CallInterfaces.cpp
    M mlir/lib/Transforms/Utils/CMakeLists.txt

  Log Message:
  -----------
  Reland [MLIR] Make resolveCallable customizable in CallOpInterface (#107989)

Relands #100361 with fixed dependencies.


  Commit: e610a0efc36ed9499eaba51178708dbc5ef8a6d7
      https://github.com/llvm/llvm-project/commit/e610a0efc36ed9499eaba51178708dbc5ef8a6d7
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

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


  Commit: 5dd1c82778f418b3de832dc4af3cf5449f2f18ed
      https://github.com/llvm/llvm-project/commit/5dd1c82778f418b3de832dc4af3cf5449f2f18ed
  Author: Amit Kumar Pandey <137622562+ampandey-1995 at users.noreply.github.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/lib/Driver/ToolChains/AMDGPU.h
    M clang/lib/Driver/ToolChains/HIPAMD.cpp

  Log Message:
  -----------
  [NFC][AMDGPU][Driver] Move 'shouldSkipSanitizeOption' utility to AMDGPU. (#107997)

HIPAMDToolChain and AMDGPUOpenMPToolChain both depends on the
"shouldSkipSanitizeOption" api to sanitize/not sanitize device code.


  Commit: f58312ef561fb6f8bb0af85737e396fc9d093294
      https://github.com/llvm/llvm-project/commit/f58312ef561fb6f8bb0af85737e396fc9d093294
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/test/Transforms/ConstraintElimination/monotonic-pointer-phis-chain-of-exits.ll

  Log Message:
  -----------
  [ConstraintElim] Add tests with exiting latch.


  Commit: 4290e34ebdddaa62210745c84ac3e6703cadfa34
      https://github.com/llvm/llvm-project/commit/4290e34ebdddaa62210745c84ac3e6703cadfa34
  Author: Jan Leyonberg <jan_sjodin at yahoo.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M flang/lib/Optimizer/CodeGen/CMakeLists.txt
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    A flang/test/Lower/OpenMP/math-amdgpu.f90

  Log Message:
  -----------
  [flang][AMDGPU] Convert math ops to AMD GPU library calls instead of libm calls (#99517)

This patch invokes a pass when compiling for an AMDGPU target to lower
math operations to AMD GPU library calls library calls instead of libm
calls.


  Commit: 69828c4230c6845be853c09fec1ba6325e6737b4
      https://github.com/llvm/llvm-project/commit/69828c4230c6845be853c09fec1ba6325e6737b4
  Author: Thorsten Schütt <schuett at gmail.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/GlobalISel/inline-memset.mir

  Log Message:
  -----------
  [GlobalIsel][NFC] update inline-memset.mir test (#108006)


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

  Changed paths:
    M llvm/lib/Target/SPIRV/CMakeLists.txt
    A llvm/lib/Target/SPIRV/SPIRVAPI.cpp
    A llvm/lib/Target/SPIRV/SPIRVAPI.h
    M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
    M llvm/lib/Target/SPIRV/SPIRVCommandLine.h
    M llvm/lib/Target/SPIRV/SPIRVSubtarget.cpp
    M llvm/lib/Target/SPIRV/SPIRVSubtarget.h
    M llvm/unittests/Target/SPIRV/CMakeLists.txt
    A llvm/unittests/Target/SPIRV/SPIRVAPITest.cpp

  Log Message:
  -----------
  [SPIR-V] Expose an API call to initialize SPIRV target and translate input LLVM IR module to SPIR-V (#107216)

The goal of this PR is to facilitate integration of SPIRV Backend into
misc 3rd party tools and libraries by means of exposing an API call that
translate LLVM module to SPIR-V and write results into a string as
binary SPIR-V output, providing diagnostics on fail and means of
configuring translation in a style of command line options.

An example of a use case may be Khronos Translator that provides
bidirectional translation LLVM IR <=> SPIR-V, where LLVM IR => SPIR-V
step may be substituted by the call to SPIR-V Backend API, implemented
by this PR.


  Commit: 46a76c33343c34c0eb5fa7ec849d0de42cfed412
      https://github.com/llvm/llvm-project/commit/46a76c33343c34c0eb5fa7ec849d0de42cfed412
  Author: A. Jiang <de34 at live.cn>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx20Issues.csv
    M libcxx/test/std/containers/associative/map/map.cons/move.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.cons/move.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/move.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/move.pass.cpp
    M libcxx/test/std/containers/container.requirements/container.requirements.general/allocator_move.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.cons/move.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/move.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.cons/move.pass.cpp
    M libcxx/test/support/test_allocator.h

  Log Message:
  -----------
  [libc++][test] LWG2593: Moved-from state of Allocators (#107344)

The resolution of LWG2593 didn't require the standard library
implementation to change. It merely strengthened requirements on
user-defined allocator types and allowed the implementation to make
stronger assumptions. The status is tentatively set to Nothing To Do.

However, `test_allocator` in libc++'s test suit needs to be fixed to
conform to the strengthened requirements.

Closes #100220.


  Commit: 0f525452896771cc8c579eb362dc7645e38fd0b9
      https://github.com/llvm/llvm-project/commit/0f525452896771cc8c579eb362dc7645e38fd0b9
  Author: Kyungwoo Lee <kyulee at meta.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/include/llvm/ADT/StableHashing.h
    M llvm/include/llvm/CodeGen/MachineOutliner.h
    M llvm/lib/CGData/CodeGenData.cpp
    M llvm/lib/CodeGen/CMakeLists.txt
    M llvm/lib/CodeGen/MachineOutliner.cpp
    M llvm/test/CodeGen/AArch64/O3-pipeline.ll
    A llvm/test/CodeGen/AArch64/cgdata-global-hash.ll
    A llvm/test/CodeGen/AArch64/cgdata-outlined-name.ll
    A llvm/test/CodeGen/AArch64/cgdata-read-double-outline.ll
    A llvm/test/CodeGen/AArch64/cgdata-read-lto-outline.ll
    A llvm/test/CodeGen/AArch64/cgdata-read-priority.ll
    A llvm/test/CodeGen/AArch64/cgdata-read-single-outline-suffix.ll
    A llvm/test/CodeGen/AArch64/cgdata-read-single-outline.ll
    A llvm/test/CodeGen/AArch64/cgdata-write-outline.ll
    M llvm/test/CodeGen/RISCV/O3-pipeline.ll
    M llvm/unittests/MIR/MachineStableHashTest.cpp

  Log Message:
  -----------
  [CGData][MachineOutliner] Global Outlining (#90074)

This commit introduces support for outlining functions across modules
using codegen data generated from previous codegen. The codegen data
currently manages the outlined hash tree, which records outlining
instances that occurred locally in the past.
    
The machine outliner now operates in one of three modes:

1. CGDataMode::None: This is the default outliner mode that uses the
suffix tree to identify (local) outlining candidates within a module.
This mode is also used by (full)LTO to maintain optimal behavior with
the combined module.
2. CGDataMode::Write (`-codegen-data-generate`): This mode is identical
to the default mode, but it also publishes the stable hash sequences of
instructions in the outlined functions into a local outlined hash tree.
It then encodes this into the `__llvm_outline` section, which will be
dead-stripped at link time.
3. CGDataMode::Read (`-codegen-data-use-path={.cgdata}`): This mode
reads a codegen data file (.cgdata) and initializes a global outlined
hash tree. This tree is used to generate global outlining candidates.
Note that the codegen data file has been post-processed with the raw
`__llvm_outline` sections from all native objects using the
`llvm-cgdata` tool (or a linker, `LLD`, or a new ThinLTO pipeline
later).

This depends on https://github.com/llvm/llvm-project/pull/105398. After
this PR, LLD (https://github.com/llvm/llvm-project/pull/90166) and Clang
(https://github.com/llvm/llvm-project/pull/90304) will follow for each
client side support.
This is a patch for
https://discourse.llvm.org/t/rfc-enhanced-machine-outliner-part-2-thinlto-nolto/78753.


  Commit: 719036887d31a40c7b951513f0f4c0281b78f6d1
      https://github.com/llvm/llvm-project/commit/719036887d31a40c7b951513f0f4c0281b78f6d1
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

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


  Commit: 2459679c7b233d332215c2463b81df9c203b3367
      https://github.com/llvm/llvm-project/commit/2459679c7b233d332215c2463b81df9c203b3367
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

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


  Commit: 53b59022b07317fa01bf8601d12915dce424baf0
      https://github.com/llvm/llvm-project/commit/53b59022b07317fa01bf8601d12915dce424baf0
  Author: David Truby <david.truby at arm.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/test/Lower/OpenMP/copyin.f90

  Log Message:
  -----------
  [flang][OpenMP] Implement copyin for pointers and allocatables. (#107425)

The copyin clause currently forbids pointer and allocatable variables,
which are allowed by the OpenMP 1.1 and 3.0 specifications respectively.


  Commit: 5823ac0a6534403c4e74e062180b61048ba6ee99
      https://github.com/llvm/llvm-project/commit/5823ac0a6534403c4e74e062180b61048ba6ee99
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/tools/llvm-exegesis/lib/BenchmarkResult.cpp
    M llvm/tools/llvm-exegesis/lib/LlvmState.cpp
    M llvm/tools/llvm-exegesis/lib/LlvmState.h
    M llvm/tools/llvm-exegesis/lib/SnippetFile.cpp

  Log Message:
  -----------
  [llvm-exegesis] Refactor getting register number from name to LLVMState (#107895)

This patch refactors the procedure of getting the register number from a
register name to LLVMState rather than having individual users get the
values themselves by getting a reference to the map from LLVMState. This
is primarily intended to make some downstream usage in Gematria simpler,
but also cleans up a little bit upstream by pulling the actual map
searching out and just leaving error handling to the clients.

The original getter is left to enable downstream migration in Gematria,
particularly before it gets imported into google internal.


  Commit: dfd7284c094bf42b76fdb6ff5cc1517f0b09e6fd
      https://github.com/llvm/llvm-project/commit/dfd7284c094bf42b76fdb6ff5cc1517f0b09e6fd
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

  Log Message:
  -----------
  [gn] port 0f525452896


  Commit: 33f1235b80255c585b1d16fe3c5769ee695f7ed5
      https://github.com/llvm/llvm-project/commit/33f1235b80255c585b1d16fe3c5769ee695f7ed5
  Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

  Log Message:
  -----------
  [libc][bazel] fix accidental rename

for 277371943fa48f2550df02870951f5e5a77efef5


  Commit: 13c14c61cd0d3ce1684270ff001e50dcc125c17a
      https://github.com/llvm/llvm-project/commit/13c14c61cd0d3ce1684270ff001e50dcc125c17a
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M clang/lib/APINotes/APINotesWriter.cpp

  Log Message:
  -----------
  [APINotes] Avoid repeated hash lookups (NFC) (#107959)


  Commit: 8530329994789fe495a5a472ec6f1e5ea24263a9
      https://github.com/llvm/llvm-project/commit/8530329994789fe495a5a472ec6f1e5ea24263a9
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

  Log Message:
  -----------
  [Tablegen] Avoid repeated hash lookps (NFC) (#107961)


  Commit: 19a2f178da513399ad54c34dec94d616002d9686
      https://github.com/llvm/llvm-project/commit/19a2f178da513399ad54c34dec94d616002d9686
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M clang/lib/Format/ObjCPropertyAttributeOrderFixer.cpp

  Log Message:
  -----------
  [Format] Avoid repeated hash lookups (NFC) (#107962)

Co-authored-by: Owen Pan <owenpiano at gmail.com>


  Commit: 97100855479027ccda30b17b1172ad49043b3338
      https://github.com/llvm/llvm-project/commit/97100855479027ccda30b17b1172ad49043b3338
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M clang/include/clang/Lex/Preprocessor.h

  Log Message:
  -----------
  [Lex] Avoid repeated hash lookups (NFC) (#107963)

MacroAnnotations has three std::optional fields.

Functions makeDeprecation, makeRestrictExpansion, and makeFinal
construct an instance of MacroAnnotations with one field initialized
with a non-default value (that is, some value other than
std::nullopt).

Functions addMacroDeprecationMsg, addRestrictExpansionMsg, and
addFinalLoc either create a new map entry with one field initialized
with a non-default value or replaces one field of an existing map
entry.

We can do all this with a simple statement of the form:

  AnnotationInfos[II].FieldName = NonDefaultValue;

which takes care of default initialization of the fields with
std::nullopt when a requested map entry does not exist.


  Commit: e982d7fd7c127f5be7b92c1c073e32816c266b7d
      https://github.com/llvm/llvm-project/commit/e982d7fd7c127f5be7b92c1c073e32816c266b7d
  Author: Max191 <44243577+Max191 at users.noreply.github.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
    M mlir/test/Dialect/Linalg/transform-lower-pack.mlir

  Log Message:
  -----------
  [mlir] Reuse pack dest in tensor.pack decomposition (#108025)

In the `lowerPack` transform, there is a special case for lowering into
a simple `tensor.pad` + `tensor.insert_slice`, but the destination
becomes a newly created `tensor.empty`. This PR fixes the transform to
reuse the original destination of the `tensor.pack`.


  Commit: 2bcab9ba7139cfa96c85433fa85b29c8a6d7008b
      https://github.com/llvm/llvm-project/commit/2bcab9ba7139cfa96c85433fa85b29c8a6d7008b
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M lldb/test/API/commands/expression/import-std-module/vector-dbg-info-content/TestDbgInfoContentVectorFromStdModule.py

  Log Message:
  -----------
  [lldb][test] TestDbgInfoContentVectorFromStdModule.py: skip test on Darwin (#108003)

This started failing on the macOS CI after
https://github.com/llvm/llvm-project/pull/106885:

```
  lldb-api :: commands/expression/import-std-module/vector-dbg-info-content/TestDbgInfoContentVectorFromStdModule.py

"/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/lldb-build/bin/clang"  -std=c++11 -g -O0 -isysroot "/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.2.sdk" -arch arm64  -I/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/llvm-project/lldb/packages/Python/lldbsuite/test/make/../../../../..//include -I/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/lldb-build/tools/lldb/include -I/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/llvm-project/lldb/test/API/commands/expression/import-std-module/vector-dbg-info-content -I/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/llvm-project/lldb/packages/Python/lldbsuite/test/make -include /Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/llvm-project/lldb/packages/Python/lldbsuite/test/make/test_common.h  -fno-limit-debug-info    -nostdlib++ -nostdinc++ -cxx-isystem /Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/lldb-build/include/c++/v1  --driver-mode=g++ -MT main.o -MD -MP -MF main.d -c -o main.o /Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/llvm-project/lldb/test/API/commands/expression/import-std-module/vector-dbg-info-content/main.cpp
"/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/lldb-build/bin/clang"  main.o -g -O0 -isysroot "/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.2.sdk" -arch arm64  -I/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/llvm-project/lldb/packages/Python/lldbsuite/test/make/../../../../..//include -I/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/lldb-build/tools/lldb/include -I/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/llvm-project/lldb/test/API/commands/expression/import-std-module/vector-dbg-info-content -I/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/llvm-project/lldb/packages/Python/lldbsuite/test/make -include /Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/llvm-project/lldb/packages/Python/lldbsuite/test/make/test_common.h  -fno-limit-debug-info     -L/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/lldb-build/lib -Wl,-rpath,/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/lldb-build/lib -lc++ --driver-mode=g++ -o "a.out"
ld: warning: ignoring duplicate libraries: '-lc++'
codesign --entitlements /Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/llvm-project/lldb/packages/Python/lldbsuite/test/make/entitlements-macos.plist -s - "a.out"
"/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/lldb-build/./bin/dsymutil"  -o "a.out.dSYM" "a.out"


runCmd: settings set target.import-std-module true

output: 

runCmd: expr std::reverse(a.begin(), a.end())

Assertion failed: (isa<InjectedClassNameType>(Decl->TypeForDecl)), function getInjectedClassNameType, file ASTContext.cpp, line 5057.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace.
Stack dump:
0.	HandleCommand(command = "expr std::reverse(a.begin(), a.end())")
1.	<eof> parser at end of file
2.	/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/lldb-build/include/c++/v1/__algorithm/reverse.h:54:1: instantiating function definition 'std::reverse<std::__wrap_iter<Foo *>>'
3.	/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/lldb-build/include/c++/v1/__algorithm/reverse.h:47:58: instantiating function definition 'std::__reverse<std::_ClassicAlgPolicy, std::__wrap_iter<Foo *>, std::__wrap_iter<Foo *>>'
4.	/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/lldb-build/include/c++/v1/__algorithm/reverse.h:40:1: instantiating function definition 'std::__reverse_impl<std::_ClassicAlgPolicy, std::__wrap_iter<Foo *>>'
```


  Commit: 56a033462ed28083042e8a99f3a0fb16c1933ba4
      https://github.com/llvm/llvm-project/commit/56a033462ed28083042e8a99f3a0fb16c1933ba4
  Author: Johannes Doerfert <johannes at jdoerfert.de>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

  Log Message:
  -----------
  [Attributor] Keep track of reached returns in AAPointerInfo (#107479)

Instead of visiting call sites in Attribute::checkForAllUses, we now
keep track of returns in AAPointerInfo and use the call site return
information as required. This way, the user of
AAPointerInfo(CallSite)Argument can determine if the call return should
be visited. We do not collect them as "may accesses" in the
AAPointerInfo(CallSite)Argument itself in case a return user is found.


  Commit: d778689fdc812033e7142ed87e4ee13c4997b3f9
      https://github.com/llvm/llvm-project/commit/d778689fdc812033e7142ed87e4ee13c4997b3f9
  Author: Dmitry Polukhin <34227995+dmpolukhin at users.noreply.github.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M clang/include/clang/Serialization/ASTReader.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    A clang/test/Headers/crash-instantiated-in-scope-cxx-modules.cpp
    A clang/test/Headers/crash-instantiated-in-scope-cxx-modules2.cpp

  Log Message:
  -----------
  [RFC][C++20][Modules] Fix crash when function and lambda inside loaded from different modules (#104512)

Summary:
Because AST loading code is lazy and happens in unpredictable order it
could happen that function and lambda inside function can be loaded from
different modules. In this case, captured DeclRefExpr won’t match the
corresponding VarDecl inside function. In AST it looks like this:
```
FunctionDecl 0x555564f4aff0 <Conv.h:33:1, line:41:1> line:33:35 imported in ./thrift_cpp2_base.h hidden tryTo 'Expected<Tgt, const char *> ()' inline
|-also in ./folly-conv.h
`-CompoundStmt 0x555564f7cfc8 <col:43, line:41:1>
  |-DeclStmt 0x555564f7ced8 <line:34:3, col:17>
  | `-VarDecl 0x555564f7cef8 <col:3, col:16> col:7 imported in ./thrift_cpp2_base.h hidden referenced result 'Tgt' cinit
  |   `-IntegerLiteral 0x555564f7d080 <col:16> 'int' 0
  |-CallExpr 0x555564f7cea8 <line:39:3, col:76> '<dependent type>'
  | |-UnresolvedLookupExpr 0x555564f7bea0 <col:3, col:19> '<overloaded function type>' lvalue (no ADL) = 'then_' 0x555564f7bef0
  | |-CXXTemporaryObjectExpr 0x555564f7bcb0 <col:25, col:45> 'Expected<bool, int>':'folly::Expected<bool, int>' 'void () noexcept' zeroing
  | `-LambdaExpr 0x555564f7bc88 <col:48, col:75> '(lambda at Conv.h:39:48)'
  |   |-CXXRecordDecl 0x555564f76b88 <col:48> col:48 imported in ./folly-conv.h hidden implicit <undeserialized declarations> class definition
  |   | |-also in ./thrift_cpp2_base.h
  |   | `-DefinitionData lambda empty standard_layout trivially_copyable literal can_const_default_init
  |   |   |-DefaultConstructor defaulted_is_constexpr
  |   |   |-CopyConstructor simple trivial has_const_param needs_implicit implicit_has_const_param
  |   |   |-MoveConstructor exists simple trivial needs_implicit
  |   |   |-CopyAssignment trivial has_const_param needs_implicit implicit_has_const_param
  |   |   |-MoveAssignment
  |   |   `-Destructor simple irrelevant trivial constexpr needs_implicit
  |   `-CompoundStmt 0x555564f7d1a8 <col:58, col:75>
  |     `-ReturnStmt 0x555564f7d198 <col:60, col:67>
  |       `-DeclRefExpr 0x555564f7d0a0 <col:67> 'Tgt' lvalue Var 0x555564f7d0c8 'result' 'Tgt' refers_to_enclosing_variable_or_capture
  `-ReturnStmt 0x555564f7bc78 <line:40:3, col:11>
    `-InitListExpr 0x555564f7bc38 <col:10, col:11> 'void'
```
This diff changes AST deserialization to load lambdas inside canonical
function declaration earlier right after the function to make sure that
their canonical decl is loaded from the same module.

Test Plan: check-clang


  Commit: bf684034844c660b778f0eba103582f582b710c9
      https://github.com/llvm/llvm-project/commit/bf684034844c660b778f0eba103582f582b710c9
  Author: Kyungwoo Lee <kyulee at meta.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

  Log Message:
  -----------
  Attempt to fix [CGData][MachineOutliner] Global Outlining (#90074) (#108037)


  Commit: ba2aa1dcf3e18aa9bd40c7016d7fb500c77959dc
      https://github.com/llvm/llvm-project/commit/ba2aa1dcf3e18aa9bd40c7016d7fb500c77959dc
  Author: Kyungwoo Lee <kyulee at meta.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/O3-pipeline.ll

  Log Message:
  -----------
  Fix for Attempt to fix [CGData][MachineOutliner] Global Outlining (#90074) #108037 (#108047)

The previous `attempt to fix [CGData][MachineOutliner] Global Outlining
(#90074) #108037` was incomplete because the
`ImmutableModuleSummaryIndexWrapperPass` is now optional for the
MachineOutliner pass.

With this fix, the test file `CodeGen/AArch64/O3-pipeline.ll` shows no
changes compared to its state before `[CGData][MachineOutliner] Global
Outlining (#90074)`.

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


  Commit: 2cfdcfb490ab3003caf336affd53575c9155b89b
      https://github.com/llvm/llvm-project/commit/2cfdcfb490ab3003caf336affd53575c9155b89b
  Author: Kyungwoo Lee <kyulee at meta.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/O3-pipeline.ll

  Log Message:
  -----------
  Fix for llvm/test/CodeGen/RISCV/O3-pipeline.ll (#108050)

The previous `Fix for Attempt to fix [CGData][MachineOutliner] Global
Outlining (#90074) #108037 (#108047)` somehow dropped this file.


  Commit: 14b43563d1618c71385f3ac15a475adf9d0ef5f9
      https://github.com/llvm/llvm-project/commit/14b43563d1618c71385f3ac15a475adf9d0ef5f9
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

  Log Message:
  -----------
  [RISCV] Separate more of scalar FP in CC_RISCV. NFC (#107908)

Scalar FP calling convention has gotten more complicated with recent
changes to Zfinx/Zdinx, proposed addition of a GPRF16 register class,
and using customReg for f16/bf16 and other FP types small than XLen.

The previous code tried to share a single getReg and getMem call for
many different cases. This patch separates all the FP register handling
to the top of the function with their own getReg calls. The only
exception is f64 with XLen==32, when we are out of FPRs or not able to
use FPRs due to ABI.

The way I've structured this, we no longer need to correct the LocVT for
FP back to ValVT before the call to getMem.


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

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
    M llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.h
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
    M llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp
    R llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.whole.wave-w32.ll
    R llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.whole.wave-w64.ll
    M llvm/test/CodeGen/AMDGPU/pei-amdgpu-cs-chain.mir
    R llvm/test/CodeGen/AMDGPU/si-init-whole-wave.mir
    M llvm/test/CodeGen/MIR/AMDGPU/long-branch-reg-all-sgpr-used.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-after-pei.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg-debug.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-no-ir.mir
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info.ll

  Log Message:
  -----------
  Revert "[amdgpu] Add llvm.amdgcn.init.whole.wave intrinsic" (#108054)

Breaks bots, see #105822.

Reverts llvm/llvm-project#105822


  Commit: 22144e20cbd237a432fdc4106abe3960555aff42
      https://github.com/llvm/llvm-project/commit/22144e20cbd237a432fdc4106abe3960555aff42
  Author: Jacob Lalonde <jalalonde at fb.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M lldb/include/lldb/DataFormatters/TypeSummary.h
    M lldb/include/lldb/Target/Statistics.h
    M lldb/include/lldb/Target/Target.h
    M lldb/source/Core/ValueObject.cpp
    M lldb/source/DataFormatters/TypeSummary.cpp
    M lldb/source/Target/Statistics.cpp
    M lldb/source/Target/Target.cpp
    A lldb/test/API/commands/statistics/basic/BoxFormatter.py
    M lldb/test/API/commands/statistics/basic/Makefile
    M lldb/test/API/commands/statistics/basic/TestStats.py
    R lldb/test/API/commands/statistics/basic/main.c
    A lldb/test/API/commands/statistics/basic/main.cpp
    M lldb/unittests/Target/CMakeLists.txt
    A lldb/unittests/Target/SummaryStatisticsTest.cpp

  Log Message:
  -----------
  [LLDB][Data Formatters] Calculate average and total time for summary providers within lldb (#102708)

This PR adds a statistics provider cache, which allows an individual
target to keep a rolling tally of it's total time and number of
invocations for a given summary provider. This information is then
available in statistics dump to help slow summary providers, and gleam
more into insight into LLDB's time use.


  Commit: ce9f9872950090eae9104ff49b77469e3dc0a3c5
      https://github.com/llvm/llvm-project/commit/ce9f9872950090eae9104ff49b77469e3dc0a3c5
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M libc/include/CMakeLists.txt

  Log Message:
  -----------
  [libc] fix locale dependency for stdlib (#108042)

Address the following issue:
```
❯ ninja libc.test.src.__support.OSUtil.linux.vdso_test.__unit__
[91/127] Building CXX object libc/test/src/__support/OSUtil/linux/CMakeFiles/libc.test.src.__support.OSUtil.linux.vdso_test.__unit__.__build__.dir/vdso_test.cpp.o
FAILED: libc/test/src/__support/OSUtil/linux/CMakeFiles/libc.test.src.__support.OSUtil.linux.vdso_test.__unit__.__build__.dir/vdso_test.cpp.o 
sccache /usr/bin/clang++ -DLIBC_NAMESPACE=__llvm_libc_20_0_0_git -D_DEBUG -I/home/schrodingerzy/Documents/llvm-project/libc -isystem /home/schrodingerzy/Documents/llvm-project/build/libc/include -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -g -std=gnu++17 -fpie -DLIBC_FULL_BUILD -ffreestanding -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-rtti -MD -MT libc/test/src/__support/OSUtil/linux/CMakeFiles/libc.test.src.__support.OSUtil.linux.vdso_test.__unit__.__build__.dir/vdso_test.cpp.o -MF libc/test/src/__support/OSUtil/linux/CMakeFiles/libc.test.src.__support.OSUtil.linux.vdso_test.__unit__.__build__.dir/vdso_test.cpp.o.d -o libc/test/src/__support/OSUtil/linux/CMakeFiles/libc.test.src.__support.OSUtil.linux.vdso_test.__unit__.__build__.dir/vdso_test.cpp.o -c /home/schrodingerzy/Documents/llvm-project/libc/test/src/__support/OSUtil/linux/vdso_test.cpp
In file included from /home/schrodingerzy/Documents/llvm-project/libc/test/src/__support/OSUtil/linux/vdso_test.cpp:21:
In file included from /home/schrodingerzy/Documents/llvm-project/libc/test/UnitTest/ErrnoSetterMatcher.h:13:
In file included from /home/schrodingerzy/Documents/llvm-project/libc/src/__support/FPUtil/fpbits_str.h:12:
In file included from /home/schrodingerzy/Documents/llvm-project/libc/src/__support/CPP/string.h:20:
/home/schrodingerzy/Documents/llvm-project/build/libc/include/stdlib.h:13:10: fatal error: 'llvm-libc-types/locale_t.h' file not found
   13 | #include "llvm-libc-types/locale_t.h"
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
[123/127] Building CXX object libc/test/UnitTest/CMakeFiles/LibcTest.unit.dir/LibcTestMain.cpp.o
ninja: build stopped: subcommand failed.
```


  Commit: 524a028f69cdf25503912c396ebda7ebf0065ed2
      https://github.com/llvm/llvm-project/commit/524a028f69cdf25503912c396ebda7ebf0065ed2
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp

  Log Message:
  -----------
  [MemProf] Streamline and avoid unnecessary context id duplication (#107918)

Sort the list of calls such that those with the same stack ids are also
sorted by function. This allows processing of all matching calls (that
can share a context node) in bulk as they are all adjacent.

This has 2 benefits:
1. It reduces unnecessary work, specifically the handling to intersect
   the context ids with those along the graph edges for the stack ids,
   for calls that we know can share a node.
2. It simplifies detecting when we have matching stack ids but don't
   need to duplicate context ids. Specifically, we were previously
   still duplicating context ids whenever we saw another call with the
   same stack ids, but that isn't necessary if they will share a context
   node. With this change we now only duplicate context ids if we see
   some that not only have the same ids but also are in different
   functions.

This change reduced the amount of context id duplication and provided
reductions in both both peak memory (~8%) and time (~%5) for a large
target.


  Commit: 7fb19cb24ca154dfffa300eaac1f037b74a9539e
      https://github.com/llvm/llvm-project/commit/7fb19cb24ca154dfffa300eaac1f037b74a9539e
  Author: Andrei Golubev <andrey.golubev at intel.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

  Log Message:
  -----------
  [ADT] Require base equality in indexed_accessor_iterator::operator==() (#107856)

Similarly to operator<(), equality-comparing iterators from different
ranges must really be forbidden. The preconditions for being able to do
`it1 < it2` and `it1 != it2` (or `it1 == it2` for the matter) ought to
be the same. Thus, there's little sense in keeping explicit base object
comparison in operator==() whilst having this is a precondition in
operator<() and operator-() (e.g. used for std::distance() and such).


  Commit: 90e841131aa82560b6c7d1c1840bdfc79c091b37
      https://github.com/llvm/llvm-project/commit/90e841131aa82560b6c7d1c1840bdfc79c091b37
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/docs/DirectX/DXILResources.rst
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILOpLowering.cpp
    A llvm/test/CodeGen/DirectX/BufferStore-errors.ll
    A llvm/test/CodeGen/DirectX/BufferStore.ll

  Log Message:
  -----------
  [DirectX] Lower `@llvm.dx.typedBufferStore` to DXIL ops

The `@llvm.dx.typedBufferStore` intrinsic is lowered to `@dx.op.bufferStore`.

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


  Commit: c8ed2b8733790926071940e41cd122b34e184660
      https://github.com/llvm/llvm-project/commit/c8ed2b8733790926071940e41cd122b34e184660
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.cpp
    M llvm/test/MC/WebAssembly/type-checker-errors.s

  Log Message:
  -----------
  [WebAssembly] Add a colon to type error message (#107980)


  Commit: 22067a8eb43a7194e65913b47a9c724fde3ed68f
      https://github.com/llvm/llvm-project/commit/22067a8eb43a7194e65913b47a9c724fde3ed68f
  Author: Zaara Syeda <syzaara at ca.ibm.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/test/CodeGen/PowerPC/f128-bitcast.ll

  Log Message:
  -----------
  [PowerPC] Fix assert exposed by PR 95931 in LowerBITCAST (#108062)

Hit Assertion failed: Num < NumOperands && "Invalid child # of SDNode!" 
Fix by checking opcode and value type before calling getOperand.


  Commit: 02c943a7ea7b798026baf34f108c18a5cde3821a
      https://github.com/llvm/llvm-project/commit/02c943a7ea7b798026baf34f108c18a5cde3821a
  Author: Pranav Kant <prka at google.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    R llvm/test/CodeGen/NVPTX/copysign.ll
    M llvm/test/CodeGen/NVPTX/math-intrins.ll

  Log Message:
  -----------
  Revert "[NVPTX] Support copysign PTX instruction (#107800)" (#108066)

This reverts commit b0d2411b53a0b55baf6d6dc7986d285ce59807fa.

Reverting because the original commit misses case of copysign from a
constant.


  Commit: 7a91af4f87d697c69274bfce9bfa57b743614ce5
      https://github.com/llvm/llvm-project/commit/7a91af4f87d697c69274bfce9bfa57b743614ce5
  Author: Shubham Sandeep Rastogi <srastogi22 at apple.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
    M llvm/test/Transforms/Coroutines/swift-async-dbg.ll

  Log Message:
  -----------
  Add DIExpression::foldConstantMath to CoroSplit (#107933)

The CoroSplit pass has it's own salvageDebugInfo implementation and it's
DIExpressions do not get folded. Add a call to
DIExpression::foldConstantMath in the CoroSplit pass to reduce the size
of those DIExpressions.

[The compile time tracker shows no significant increase in compile time
either.](https://llvm-compile-time-tracker.com/compare.php?from=bdf02249e7f8f95177ff58c881caf219699acb98&to=e1c1c1759c06bc4c42f79eebdb0e3cd45219cef4&stat=instructions:u)

rdar://134675402


  Commit: feeb6aa3039872a2202e6813c81235b7d7455942
      https://github.com/llvm/llvm-project/commit/feeb6aa3039872a2202e6813c81235b7d7455942
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

  Log Message:
  -----------
  [bazel] Add CGData targets/deps (#108070)

This is newly used as of 0f525452896771cc8c579eb362dc7645e38fd0b9.

The bulk of the targets were added earlier in
9bb555688caf6ae4ba89fee5baa3dc29fec6a9b1.


  Commit: 5537ae87b3a87b3abeb4e6983cecd9b103648243
      https://github.com/llvm/llvm-project/commit/5537ae87b3a87b3abeb4e6983cecd9b103648243
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoD.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoF.td
    M llvm/test/MC/RISCV/rv32zdinx-invalid.s
    M llvm/test/MC/RISCV/rv32zfinx-invalid.s
    M llvm/test/MC/RISCV/rvzdinx-aliases-valid.s
    M llvm/test/MC/RISCV/rvzfinx-aliases-valid.s
    M llvm/test/MC/RISCV/rvzhinx-aliases-valid.s

  Log Message:
  -----------
  [RISCV] Fix fneg.d/fabs.d aliasing handling for Zdinx. Add missing fmv.s/d aliases.

We were missing test coverage for fneg.d/fabs.d for Zdinx. When I
added it revealed it only worked on RV64. The assembler was not
creating a GPRPair register class on RV32 so the alias couldn't match.
The disassembler was also not using GPRPair registers preventing the
aliases from printing in disassembly too.

I've fixed the assembler by adding new parsing methods in an attempt
to get decent diagnostics. This is hard since the mnemonics are
ambiguous between D and Zdinx. Tests have been adjusted for some
differences in what errors are reported first.


  Commit: 5b4100cc354148a1140546e7f5ac2bf380bc5eff
      https://github.com/llvm/llvm-project/commit/5b4100cc354148a1140546e7f5ac2bf380bc5eff
  Author: John Harrison <harjohn at google.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/lldbplatformutil.py
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
    M lldb/test/API/tools/lldb-dap/exception/Makefile
    M lldb/test/API/tools/lldb-dap/exception/TestDAP_exception.py
    A lldb/test/API/tools/lldb-dap/exception/cpp/Makefile
    A lldb/test/API/tools/lldb-dap/exception/cpp/TestDAP_exception_cpp.py
    A lldb/test/API/tools/lldb-dap/exception/cpp/main.cpp
    A lldb/test/API/tools/lldb-dap/exception/main.c
    R lldb/test/API/tools/lldb-dap/exception/main.cpp
    A lldb/test/API/tools/lldb-dap/exception/objc/Makefile
    A lldb/test/API/tools/lldb-dap/exception/objc/TestDAP_exception_objc.py
    A lldb/test/API/tools/lldb-dap/exception/objc/main.m
    A lldb/test/API/tools/lldb-dap/extendedStackTrace/Makefile
    A lldb/test/API/tools/lldb-dap/extendedStackTrace/TestDAP_extendedStackTrace.py
    A lldb/test/API/tools/lldb-dap/extendedStackTrace/main.m
    M lldb/test/API/tools/lldb-dap/stackTrace/TestDAP_stackTrace.py
    M lldb/test/API/tools/lldb-dap/stackTrace/main.c
    M lldb/test/API/tools/lldb-dap/stackTraceMissingFunctionName/TestDAP_stackTraceMissingFunctionName.py
    M lldb/tools/lldb-dap/JSONUtils.cpp
    M lldb/tools/lldb-dap/JSONUtils.h
    M lldb/tools/lldb-dap/README.md
    M lldb/tools/lldb-dap/lldb-dap.cpp
    M lldb/tools/lldb-dap/package.json

  Log Message:
  -----------
  [lldb-dap] Improve `stackTrace` and `exceptionInfo` DAP request handlers (#105905)

Refactoring `stackTrace` to perform frame look ups in a more on-demand
fashion to improve overall performance.

Additionally adding additional information to the `exceptionInfo`
request to report exception stacks there instead of merging the
exception stack into the stack trace. The `exceptionInfo` request is
only called if a stop event occurs with `reason='exception'`, which
should mitigate the performance of `SBThread::GetCurrentException`
calls.

Adding unit tests for exception handling and stack trace supporting.


  Commit: becb03f3c624a9570fdb3f2d5dee1ed75922e70b
      https://github.com/llvm/llvm-project/commit/becb03f3c624a9570fdb3f2d5dee1ed75922e70b
  Author: Helena Kotas <hekotas at microsoft.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M clang/lib/CodeGen/CMakeLists.txt
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/TargetInfo.h
    A clang/lib/CodeGen/Targets/DirectX.cpp
    A clang/test/CodeGenHLSL/builtins/hlsl_resource_t.hlsl
    M llvm/lib/IR/Type.cpp

  Log Message:
  -----------
  [DirectX] Add DirectXTargetCodeGenInfo (#104856)

Adds target codegen info class for DirectX. For now it always translates
`__hlsl_resource_t` handle to `target("dx.TypedBuffer", i32, 1, 0, 1)`
(`RWBuffer<int>`). More work is needed to determine the actual target
exp type and parameters based on the resource handle attributes.

Part 1/2 of #95952


  Commit: f4e2d7bfc14324e0009154db57a589b5f252cfea
      https://github.com/llvm/llvm-project/commit/f4e2d7bfc14324e0009154db57a589b5f252cfea
  Author: Tyler Nowicki <tyler.nowicki at amd.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Coroutines/CMakeLists.txt
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
    A llvm/lib/Transforms/Coroutines/SpillUtils.cpp
    A llvm/lib/Transforms/Coroutines/SpillUtils.h

  Log Message:
  -----------
  [Coroutines] Move spill related methods to a Spill utils (#107884)

* Move code related to spilling into SpillUtils to help cleanup
CoroFrame

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


  Commit: 61372fc5db9b14fd612be8a58a76edd7f0ee38aa
      https://github.com/llvm/llvm-project/commit/61372fc5db9b14fd612be8a58a76edd7f0ee38aa
  Author: Helena Kotas <hekotas at microsoft.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M clang/lib/AST/TypePrinter.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/test/ParserHLSL/hlsl_is_rov_attr.hlsl
    M clang/test/ParserHLSL/hlsl_is_rov_attr_error.hlsl
    M clang/test/ParserHLSL/hlsl_resource_handle_attrs.hlsl

  Log Message:
  -----------
  [HLSL] Warn on duplicate is_rov attribute; remove unnecessary parentheses (#107973)

We should issue a warning whenever a duplicate resource type attribute
is found. Currently we do that only for `resource_class`. This PR fixes
that by checking for duplicate `is_rov` attributes as well.

Also removes unnecessary parenthesis on `is_rov`.


  Commit: 0b12cd227e593f5518da5170a399730bb314223e
      https://github.com/llvm/llvm-project/commit/0b12cd227e593f5518da5170a399730bb314223e
  Author: Chris Apple <cja-private at pm.me>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors.cpp

  Log Message:
  -----------
  [rtsan] Ensure pthread is initialized in test (#108040)


  Commit: b9703cb1a535b72f6f0812322225e50f9e325850
      https://github.com/llvm/llvm-project/commit/b9703cb1a535b72f6f0812322225e50f9e325850
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

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


  Commit: cb3eb068e6b008b4784a93ac181516ae69350bf1
      https://github.com/llvm/llvm-project/commit/cb3eb068e6b008b4784a93ac181516ae69350bf1
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

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


  Commit: 6dacc382f5158b28550c25cd452848f4ab3ecd63
      https://github.com/llvm/llvm-project/commit/6dacc382f5158b28550c25cd452848f4ab3ecd63
  Author: erichkeane <ekeane at nvidia.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M clang/lib/Sema/SemaOpenACC.cpp
    M clang/test/SemaOpenACC/compute-construct-ast.cpp

  Log Message:
  -----------
  [OpenACC] Properly ignore side-effects in clause arguments

The OpenACC standard makes depending on side effects to be effectively
UB, so this patch ensures we handle them reaonably by making it a potentially
evaluated context, and ignoring cleanups.


  Commit: 27a01f6b4c47baefc347e47e4d38ea26bb721b2d
      https://github.com/llvm/llvm-project/commit/27a01f6b4c47baefc347e47e4d38ea26bb721b2d
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/test/SemaTemplate/GH18291.cpp

  Log Message:
  -----------
  [clang] correct argument offset for function template partial ordering (#107972)


  Commit: 3363760f9a00c5d4dac1e08d44f9d79b8e322511
      https://github.com/llvm/llvm-project/commit/3363760f9a00c5d4dac1e08d44f9d79b8e322511
  Author: vporpo <vporpodas at google.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

  Log Message:
  -----------
  [SandboxIR] PassManager (#107932)

This patch implements a simple pass manager for Sandbox IR.


  Commit: 99fb1506a869fa5e82dbd36e1a63cd21450f1502
      https://github.com/llvm/llvm-project/commit/99fb1506a869fa5e82dbd36e1a63cd21450f1502
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

  Log Message:
  -----------
  [gn build] Port 3363760f9a00


  Commit: e3c537ff903af9a92ff43bab6d21c0ea759d65e5
      https://github.com/llvm/llvm-project/commit/e3c537ff903af9a92ff43bab6d21c0ea759d65e5
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll

  Log Message:
  -----------
  [VPlan] Consider non-header phis in planContainsAdditionalSimp.

Update planContainsAdditionalSimplifications to also check phis not in
the loop header. This ensures we don't miss cases where VPBlendRecipes
(which correspond to such phis) have been simplified.

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


  Commit: 0f56ba13bff7ab72bfafcf7c5cf9e5b8bd16d895
      https://github.com/llvm/llvm-project/commit/0f56ba13bff7ab72bfafcf7c5cf9e5b8bd16d895
  Author: Henrik G. Olsson <hnrklssn at gmail.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/utils/lit/lit/TestRunner.py
    A llvm/utils/lit/tests/Inputs/escape-color/color-escaped.txt
    A llvm/utils/lit/tests/Inputs/escape-color/color.txt
    A llvm/utils/lit/tests/Inputs/escape-color/lit.cfg
    A llvm/utils/lit/tests/escape-color.py

  Log Message:
  -----------
  [llvm-lit] Process ANSI color codes in test output when formatting (#106776)

Test output that carried color across newlines previously resulted in
the formatting around the output also being colored. Detect the current
ANSI color and reset it when printing formatting, and then reapply it.
As an added bonus an unterminated color code is also detected,
preventing it from leaking out into the rest of the terminal.

Fixes #106633


  Commit: b5ce7a9fbd898767d0c1fa13ef5c33bbbe67981f
      https://github.com/llvm/llvm-project/commit/b5ce7a9fbd898767d0c1fa13ef5c33bbbe67981f
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M flang/lib/Evaluate/tools.cpp
    M flang/test/Lower/CUDA/cuda-data-transfer.cuf

  Log Message:
  -----------
  [flang][cuda] Avoid generating data transfer when calling size intrinsic (#108081)

cuf.data_transfer was wrongly generated when calling the `size`
intrinsic on a device allocatable variable. Since the descriptor is
available on the host, there is no transfer needed.

Add `DescriptorInquiry` in the `CollectCudaSymbolsHelper` to filter out
symbols that are not needed for the transfer decision to be made.


  Commit: d8a8eae6daa6523b28526e2b8f65879e74858f68
      https://github.com/llvm/llvm-project/commit/d8a8eae6daa6523b28526e2b8f65879e74858f68
  Author: Daniel Thornburgh <dthorn at google.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M libcxx/include/string

  Log Message:
  -----------
  Revert "[libc++][string] Remove potential non-trailing 0-length array" (#108091)

Reverts llvm/llvm-project#105865

This breaks a pair of LLDB tests in CI.


  Commit: ce392471c0d9cb3ef88d05fcbcff59de8ea0c1e1
      https://github.com/llvm/llvm-project/commit/ce392471c0d9cb3ef88d05fcbcff59de8ea0c1e1
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M flang/include/flang/Semantics/type.h
    M flang/lib/Evaluate/type.cpp
    M flang/lib/Semantics/check-declarations.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/type.cpp
    A flang/test/Semantics/Inputs/modfile66.cuf
    A flang/test/Semantics/modfile66.f90

  Log Message:
  -----------
  [flang] Silence spurious error on non-CUDA use of CUDA module (#107444)

When a module file has been compiled with CUDA enabled, don't emit
spurious errors about non-interoperable types when that module is read
by a USE statement in a later non-CUDA compilation.


  Commit: 5a229dbca19f5ad7ebd15c85b432cd54e70fd09a
      https://github.com/llvm/llvm-project/commit/5a229dbca19f5ad7ebd15c85b432cd54e70fd09a
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M flang/docs/Extensions.md
    M flang/lib/Semantics/resolve-names.cpp
    M flang/test/Semantics/resolve24.f90

  Log Message:
  -----------
  [flang] Relax error into a warning (#107489)

The standard requires that a generic interface with the same name as a
derived type contain only functions. We generally allow a generic
interface to contain both functions and subroutines, since there's never
any ambiguity at the point of call; these is helpful when the specific
procedures of two generics are combined during USE association. Emit a
warning instead of a hard error when a generic interface with the same
name as a derived type contains a subroutine to improve portability of
code from compilers that don't check for this condition.


  Commit: d2126ec1af543b23817c742c283ec441f21bf42b
      https://github.com/llvm/llvm-project/commit/d2126ec1af543b23817c742c283ec441f21bf42b
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M flang/include/flang/Evaluate/expression.h
    M flang/include/flang/Evaluate/tools.h
    M flang/lib/Evaluate/expression.cpp
    M flang/lib/Evaluate/fold-implementation.h
    A flang/test/Semantics/Inputs/modfile67.mod
    A flang/test/Semantics/modfile67.f90

  Log Message:
  -----------
  [flang] Fix bogus error about procedure incompatbility (#107645)

This was a subtle problem. When the shape of a function result is
explicit but not constant, it is characterized with bounds expressions
that use Extremum<SubscriptInteger> operations to force extents to 0
rather than be negative. These Extremum operations are formatted as
"max()" intrinsic functions in the module file. Upon being read from the
module file, they are not folded back into Extremum operations, but
remain as function references; and this then leads to expressions not
comparing equal when the procedure characteristics are compared to those
of a local procedure declared identically.

The real fix here would be for folding to just always change max and min
function references into Extremum<> operations, constant operands or
not, and I tried that, but it lead to test failures and crashes in
lowering that I couldn't resolve. So, until those can be fixed, here's a
change that will read max/min operations in module file declarations
back into Extremum operations to solve the compatibility checking
problem, but leave other non-constant max/min operations as function
calls.


  Commit: fe58527305d86df8bd9770f3d41a6de420958af7
      https://github.com/llvm/llvm-project/commit/fe58527305d86df8bd9770f3d41a6de420958af7
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M flang/runtime/time-intrinsic.cpp

  Log Message:
  -----------
  [flang] Relax ETIME(VALUES=) runtime checking (#107647)

Don't require the "VALUES=" argument to the extension intrinsic
procedure ETIME to have exactly two elements. Other compilers that
support ETIME do not, and it's easy to adapt the behavior to whatever
the dynamic size turns out to be.


  Commit: 26ac30bcec71ae97ba740fb6cf473eac3ac37887
      https://github.com/llvm/llvm-project/commit/26ac30bcec71ae97ba740fb6cf473eac3ac37887
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M flang/docs/Extensions.md
    M flang/include/flang/Common/Fortran-features.h
    M flang/lib/Evaluate/check-expression.cpp
    M flang/test/Semantics/resolve69.f90
    M flang/test/Semantics/resolve77.f90
    M flang/test/Semantics/spec-expr.f90

  Log Message:
  -----------
  [flang] Accept initialized SAVE local in specification expression (#107656)

Specification expressions may contain references to dummy arguments,
host objects, module variables, and variables in COMMON blocks, since
they will have values on entry to the scope. A local variable with a
initializer and the SAVE attribute (which will always be implied by an
explicit initialization) will also always work, and is accepted by at
least one other compiler, so accept it with a warning.


  Commit: cd92c4255582299b9a55fa0dc485982b8f54c49a
      https://github.com/llvm/llvm-project/commit/cd92c4255582299b9a55fa0dc485982b8f54c49a
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M flang/runtime/format-implementation.h

  Log Message:
  -----------
  [flang][runtime] Don't emit runtime error for "AA" editing (#107714)

Commas are optional between edit descriptors in a format, so treat "AA"
as if it were "A,A".


  Commit: ea858e39bf5b1d09021d142f0c82ef1d4a82d367
      https://github.com/llvm/llvm-project/commit/ea858e39bf5b1d09021d142f0c82ef1d4a82d367
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M flang/runtime/io-stmt.h

  Log Message:
  -----------
  [flang][runtime] Accept '\n' as space in internal list-directed input (#107716)

When scanning ahead for the first character in the next input item in
list-directed internal input, allow a newline character to appear and
treat it as a space, matching the behavior of nearly all other Fortran
compilers.


  Commit: 15106c26662a573df31e8dfdd9350c313b8bfd84
      https://github.com/llvm/llvm-project/commit/15106c26662a573df31e8dfdd9350c313b8bfd84
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/runtime-type-info.cpp
    M flang/module/__fortran_type_info.f90
    M flang/runtime/assign.cpp
    M flang/runtime/descriptor-io.h
    M flang/runtime/namelist.cpp
    M flang/runtime/type-info.cpp
    M flang/runtime/type-info.h
    M flang/test/Semantics/typeinfo01.f90
    M flang/test/Semantics/typeinfo02.f90
    M flang/test/Semantics/typeinfo04.f90
    A flang/test/Semantics/typeinfo12.f90

  Log Message:
  -----------
  [flang][runtime] Fix odd "invalid descriptor" runtime crash (#107785)

A defined assignment generic interface for a given LHS/RHS type & rank
combination may have a specific procedure with LHS dummy argument that
is neither allocatable nor pointer, or specific procedure(s) whose LHS
dummy arguments are allocatable or pointer. It is possible to have two
specific procedures if one's LHS dummy argument is allocatable and the
other's is pointer.

However, the runtime doesn't work with LHS dummy arguments that are
allocatable, and will crash with a mysterious "invalid descriptor" error
message.

Extend the list of special bindings to include
ScalarAllocatableAssignment and ScalarPointerAssignment, use them when
appropriate in the runtime type information tables, and handle them in
Assign() in the runtime support library.


  Commit: 37f94cd99a5bc4b186651d6967d8595c4786d8ed
      https://github.com/llvm/llvm-project/commit/37f94cd99a5bc4b186651d6967d8595c4786d8ed
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M flang/lib/Evaluate/intrinsics.cpp
    A flang/test/Evaluate/fold-assumed-rank-kind.f90

  Log Message:
  -----------
  [flang] Accept KIND(x) when x is assumed-rank (#107787)

Don't emit a bogus error about being unable to forward an assumed-rank
dummy argument as an actual argument in the case of the KIND intrinsic
function.

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


  Commit: d418a03e01e6a31b51b0c9dd42ba46da6c47f89d
      https://github.com/llvm/llvm-project/commit/d418a03e01e6a31b51b0c9dd42ba46da6c47f89d
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M flang/include/flang/Semantics/scope.h
    M flang/lib/Semantics/compute-offsets.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/symbol.cpp
    A flang/test/Semantics/generic10.f90

  Log Message:
  -----------
  [flang] Fix error from semantics on use associated procedure pointer (#107928)

Use associated procedure pointers were eliciting bogus errors from
semantics if their modules also contained generic procedure interfaces
of the same name. (The compiler handles this case correctly when the
specific procedure of the same name is not a pointer.)

With this fix, the test case in
  https://github.com/llvm/llvm-project/issues/107784
no longer experiences semantic errors; however, it now crashes
unexpectedly in lowering.


  Commit: 5a2071b184e00f086f5b538f2209bcdb8aba3078
      https://github.com/llvm/llvm-project/commit/5a2071b184e00f086f5b538f2209bcdb8aba3078
  Author: Chris Apple <cja-private at pm.me>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M compiler-rt/lib/rtsan/rtsan_context.cpp
    M compiler-rt/lib/rtsan/tests/rtsan_test_utilities.h
    M compiler-rt/test/rtsan/basic.cpp
    M compiler-rt/test/rtsan/disabler.cpp

  Log Message:
  -----------
  [compiler-rt][rtsan] Improve error message wording to match ASan style (#107620)


  Commit: 5495c36104103c4172808a28e8b2df3c806b1d85
      https://github.com/llvm/llvm-project/commit/5495c36104103c4172808a28e8b2df3c806b1d85
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.cpp
    M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.h

  Log Message:
  -----------
  [WebAssembly] Misc. refactoring in AsmTypeCheck (NFC) (#107978)

Existing methods in AsmTypeCheck assumes symbol operand is the 0th
operand; they take a `MCInst` and take `getOperand(0)` on it. I think
passing a `MCOperand` removes this assumption and also is more
intuitive. This was motivated by a new `try_table` instruction, whose
support is going to be added to AsmTypeCheck soon, which has tag symbol
operands in any position, depending on the number and the kinds of catch
clauses. This PR changes all methods' signature that assumes the 0th
operand is the relevant one, even if it's not the symbol operand.

This also adds `getSignature` method, which factors out the common task
when getting a `WasmSignature` from a `MCOperand`.


  Commit: ace6d5f2ce53ae88205fc39dafa45e5682fd9a52
      https://github.com/llvm/llvm-project/commit/ace6d5f2ce53ae88205fc39dafa45e5682fd9a52
  Author: Jorge Gorbe Moya <jgorbe at google.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

  Log Message:
  -----------
  [SandboxIR] Fix base class of FenceInst. Verify instructions when building a BB in debug mode. (#108078)

@vporpo suggested in an offline conversation that verifying all
instructions during `BasicBlock::buildBasicBlockFromLLVMIR` would be a
good way to get coverage for errors like this during testing. He also
suggested not gating it on `SBVEC_EXPENSIVE_CHECKS` for now as the
checks are pretty basic at the moment and they only affect Debug builds.


  Commit: 0fc4147c6d0c5bfb1fd9ed2a9f1c3a70e9281813
      https://github.com/llvm/llvm-project/commit/0fc4147c6d0c5bfb1fd9ed2a9f1c3a70e9281813
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rv64zba.ll

  Log Message:
  -----------
  [RISCV] Add test coverage for mul X, C where C=2^N*(3,5,9)*(3,5,9)


  Commit: 2ddf21bc702de25a34bb4a13b3610d8cc6bf3ca0
      https://github.com/llvm/llvm-project/commit/2ddf21bc702de25a34bb4a13b3610d8cc6bf3ca0
  Author: vporpo <vporpodas at google.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

  Log Message:
  -----------
  [SandboxIR] Pass registry (#108084)

This patch implements a simple Pass Registry class, which takes
ownership of the passes registered with it and provides an interface to
get the pass pointer by its name.


  Commit: d452429821d3263a73b27387324bc272b47ed1bf
      https://github.com/llvm/llvm-project/commit/d452429821d3263a73b27387324bc272b47ed1bf
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M flang/lib/Evaluate/check-expression.cpp

  Log Message:
  -----------
  [flang] Fix shared library flang build (#108101)

I broke the shared library builds a few minutes ago by introducing a
cyclic dependency between two parts of the compiler. Fix.


  Commit: 957af7373881e62eec34ca87106fa2a2c2391d8e
      https://github.com/llvm/llvm-project/commit/957af7373881e62eec34ca87106fa2a2c2391d8e
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

  Log Message:
  -----------
  [sanitizer] Add CHECKs to validate calculated TLS range (#107941)


  Commit: 10c04d9873dbbbca26f4d996396da297b9144add
      https://github.com/llvm/llvm-project/commit/10c04d9873dbbbca26f4d996396da297b9144add
  Author: Jacob Lalonde <jalalonde at fb.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M lldb/test/API/commands/statistics/basic/TestStats.py

  Log Message:
  -----------
  [LLDB]Skip Summary Statistics Tests for Windows (#108079)

Follow up to #102708, the tests are failing for windows. There is a
large variance in these tests between summary strings and built in
types. I'm disabling these test for windows, and will add windows
specific tests as a follow up to this.


  Commit: 6007ad79afeffb1288781b4a7241290386293aff
      https://github.com/llvm/llvm-project/commit/6007ad79afeffb1288781b4a7241290386293aff
  Author: Henrik G. Olsson <hnrklssn at gmail.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/utils/lit/lit/TestRunner.py
    R llvm/utils/lit/tests/Inputs/escape-color/color-escaped.txt
    R llvm/utils/lit/tests/Inputs/escape-color/color.txt
    R llvm/utils/lit/tests/Inputs/escape-color/lit.cfg
    R llvm/utils/lit/tests/escape-color.py

  Log Message:
  -----------
  Revert "[llvm-lit] Process ANSI color codes in test output when formatting" (#108104)

Reverts llvm/llvm-project#106776 because of a test failure on Windows.


  Commit: d14a600b1eb650f05fcd56a7b790e30f1f52e751
      https://github.com/llvm/llvm-project/commit/d14a600b1eb650f05fcd56a7b790e30f1f52e751
  Author: vporpo <vporpodas at google.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

  Log Message:
  -----------
  [SandboxIR] Implement BlockAddress (#107940)

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


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

  Changed paths:
    M llvm/include/llvm/SandboxIR/Type.h
    M llvm/lib/SandboxIR/Type.cpp
    M llvm/unittests/SandboxIR/TypesTest.cpp

  Log Message:
  -----------
  [SandboxIR] Implement FixedVectorType (#107930)


  Commit: 5804193e38680683b370cb3ced46c018d4dbd1b2
      https://github.com/llvm/llvm-project/commit/5804193e38680683b370cb3ced46c018d4dbd1b2
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

  Log Message:
  -----------
  Revert "[sanitizer] Add CHECKs to validate calculated TLS range" (#108112)

Reverts llvm/llvm-project#107941

Broke PPC bot


  Commit: 829ea59ddaf0ddfa1d9316a9260bd3ba17562ffe
      https://github.com/llvm/llvm-project/commit/829ea59ddaf0ddfa1d9316a9260bd3ba17562ffe
  Author: Reid Kleckner <rnk at google.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/docs/DeveloperPolicy.rst
    M llvm/docs/FAQ.rst

  Log Message:
  -----------
  [docs] Add a section on AI-generated content to the developer policy (#91014)

Governments around the world are starting to require labelling for
AI-generated content, and some LLVM stakeholders have asked if LLVM
contains AI-generated content. Defining a policy on the use of AI tools
allows us to answer that question affirmatively, one way of the other.

The policy proposed here allows the use of AI tools in LLVM
contributions, flowing from the idea that any contribution is fine
regardless of how it is made, as long as the contributor has the right
to license it under the project license.

I gathered input from the community in this RFC and incorporated it into the policy:
https://discourse.llvm.org/t/rfc-define-policy-on-ai-tool-usage-in-contributions/78758


  Commit: ae5f1a78d3a930466f927989faac8e0b9d820a7b
      https://github.com/llvm/llvm-project/commit/ae5f1a78d3a930466f927989faac8e0b9d820a7b
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp

  Log Message:
  -----------
  [MemProf] Convert CallContextInfo to a struct (NFC) (#108086)

As suggested in #107918, improve readability by converting this tuple to
a struct.


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

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/lanai_isel.ll.expected

  Log Message:
  -----------
  [LegalizeTypes] Avoid creating an unused node in ExpandIntRes_ADDSUB. NFC

The Hi result is sometimes calculated a different way and this
node goes unused. Defer creation until we know for sure it is neeeded.

The test changes is because the node creation order changed the names
in the debug output.


  Commit: db7e8f2ae81fe10170dc202e45ee8b784e75c74c
      https://github.com/llvm/llvm-project/commit/db7e8f2ae81fe10170dc202e45ee8b784e75c74c
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_internal_defs.h

  Log Message:
  -----------
  [compiler-rt] Hardcode uptr/sptr typedefs on Linux Arm (#108105)

After #106155, Android arm32 asan builds stopped working with missing
definition linker errors. This is due to inconsistent definitions of
`uptr` of either `unsigned long` or `unsigned int` even between TUs in
compiler-rt. This is caused by Linux arm32 headers redefining
`__UINTPTR_TYPE__` (see `arch/arm/include/uapi/asm/types.h` in the Linux
kernel repo), meaning include order/whether or not the Linux header is
included changes compiler-rt symbol mangling.

As a workaround, this hardcodes `uptr`/`sptr` in compiler-rt to
`unsigned int`/`int` on Linux arm32, matching clang/gcc.


  Commit: 6e854a6a01d310689a8b5d50126decd46b3880ea
      https://github.com/llvm/llvm-project/commit/6e854a6a01d310689a8b5d50126decd46b3880ea
  Author: ChiaHungDuan <chiahungduan at google.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

  Log Message:
  -----------
  [scudo] Fix the logic of MaxAllowedFragmentedPages (#107927)

MTE doesn't support MaxReleasedCachePages which may break the assumption
that only the first 4 pages will have memory tagged.


  Commit: 68f31aaae95f9824e58001c7f9115034df51039e
      https://github.com/llvm/llvm-project/commit/68f31aaae95f9824e58001c7f9115034df51039e
  Author: SahilPatidar <patidarsahil2001 at gmail.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M compiler-rt/lib/orc/dlfcn_wrapper.cpp
    M compiler-rt/lib/orc/macho_platform.cpp
    M compiler-rt/lib/orc/macho_platform.h
    M llvm/include/llvm/ExecutionEngine/Orc/LLJIT.h
    M llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
    M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp

  Log Message:
  -----------
  [ORC][Runtime] Add `dlupdate` for MachO (#97441)

With the help of @lhames, This pull request introduces the `dlupdate`
function in the ORC runtime. `dlupdate` enables incremental execution of
new initializers introduced in the REPL environment. Unlike traditional
`dlopen`, which manages initializers, code mapping, and library
reference counts, `dlupdate` focuses exclusively on running new
initializers.


  Commit: 77fc8dae22ff1fa38c0271abc5521db76351f1fd
      https://github.com/llvm/llvm-project/commit/77fc8dae22ff1fa38c0271abc5521db76351f1fd
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/test/CodeGen/RISCV/rvv/ctpop-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/cttz-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/remat.ll

  Log Message:
  -----------
  [RISCV] Rematerialize vmv.v.x (#107993)

Even though vmv.v.x has a non constant scalar operand, we can still
rematerialize it because we have split register allocation between
vectors and scalars.

InlineSpiller will check to make sure that the scalar operand is live at
the point where the rematerialization occurs, so this won't extend any
scalar live ranges. However this also means we may not be able to
rematerialize in some cases, as shown in @vmv.v.x_needs_extended.

It might be worthwhile teaching InlineSpiller to extend scalar live
ranges in a future patch. I experimented with this locally and it
reduced spills on 531.deepsjeng_r by a further 3%.


  Commit: 69ed73380b9a1ec2d09d9b443a52b3ccd141334d
      https://github.com/llvm/llvm-project/commit/69ed73380b9a1ec2d09d9b443a52b3ccd141334d
  Author: Jim Lin <jim at andestech.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    A clang/test/Driver/riscv-mcmodel.c

  Log Message:
  -----------
  [RISCV] Add testcase for -mcmodel= (#107816)

This is a pre-commit test for #107817


  Commit: c641b611f86a846a51763a54a196375aba3e6e4e
      https://github.com/llvm/llvm-project/commit/c641b611f86a846a51763a54a196375aba3e6e4e
  Author: YunQiang Su <syq at debian.org>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/lib/Target/Mips/Mips32r6InstrInfo.td
    M llvm/lib/Target/Mips/MipsISelLowering.cpp
    M llvm/lib/Target/Mips/MipsInstrInfo.h
    A llvm/test/CodeGen/Mips/is_fpclass.ll

  Log Message:
  -----------
  MIPSr6: Add llvm.is.fpclasss intrinsic support (#107857)

MIPSr6 has class.s/class.d instructions.
Let's use them for llvm.is.fpclass intrinsic.


  Commit: 21a0176c584c47218f20322641af8a855b8ce5e2
      https://github.com/llvm/llvm-project/commit/21a0176c584c47218f20322641af8a855b8ce5e2
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/test/CodeGen/RISCV/rvv/remat.ll

  Log Message:
  -----------
  [RISCV] Rematerialize vfmv.v.f (#108007)

This is the same principle as vmv.v.x in #107993, but for floats.


  Commit: 933fc63a1d230896bc09a08cf08dde4ac5b51703
      https://github.com/llvm/llvm-project/commit/933fc63a1d230896bc09a08cf08dde4ac5b51703
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-interleaved-access.ll
    M llvm/test/CodeGen/RISCV/rvv/remat.ll

  Log Message:
  -----------
  [RISCV] Rematerialize vmv.s.x and vfmv.s.f (#108012)

Continuing with #107993 and #108007, this handles the last of the main
rematerializable vector instructions.

There's an extra spill in one of the test cases, but it's likely noise
from the spill weights and isn't an issue in practice.


  Commit: 901006f238aae8dd7e75d173bf9429e8e44f6385
      https://github.com/llvm/llvm-project/commit/901006f238aae8dd7e75d173bf9429e8e44f6385
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M flang/tools/f18/CMakeLists.txt

  Log Message:
  -----------
  [flang] Make flang module hidden dependency explicit to correct build… (#108129)

… failure

Any flang module with a derived type definition implicitly depends on
flang/module/__fortran_type_info.f90. Make this dependency explicit so
that an unlucky build order doesn't cause a crash.


  Commit: 12530015a45accd6cf9dd6d565c89b1d7e562be5
      https://github.com/llvm/llvm-project/commit/12530015a45accd6cf9dd6d565c89b1d7e562be5
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
    M llvm/test/CodeGen/RISCV/redundant-copy-from-tail-duplicate.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-formation.ll
    M llvm/test/CodeGen/RISCV/rvv/vreductions-fp-vp.ll

  Log Message:
  -----------
  [RISCV] Add reductions to list of roots in tryToReduceVL (#107595)

This allows us to reduce VLs feeding reduction instructions. In
particular, this means that <3 x Ty> reduce(load) like sequences no
longer require a VL toggle.

This was waiting on 3d72957; now that the latent correctness issue is
fixed, we can expand this transform.


  Commit: 5773adb0bfb72249fde00f1e4a02dc3f583d41c3
      https://github.com/llvm/llvm-project/commit/5773adb0bfb72249fde00f1e4a02dc3f583d41c3
  Author: YunQiang Su <syq at debian.org>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp

  Log Message:
  -----------
  SelectionDAG: Remove unneeded getSelectCC in expandFMINIMUMNUM_FMAXIMUMNUM (#107416)

ISD::FCANONICALIZE is enough, which can process NaN or non-NaN
correctly, thus getSelectCC is not needed here.


  Commit: 76151c449080b7239c8b442291514a4300d51cba
      https://github.com/llvm/llvm-project/commit/76151c449080b7239c8b442291514a4300d51cba
  Author: ChiaHungDuan <chiahungduan at google.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

  Log Message:
  -----------
  Revert "[scudo] Fix the logic of MaxAllowedFragmentedPages" (#108130)

Reverts llvm/llvm-project#107927

We are supposed to check the MaxAllowedFragmentedPages instead.


  Commit: c5711130be758ca82216abb81c6b870a830e8f82
      https://github.com/llvm/llvm-project/commit/c5711130be758ca82216abb81c6b870a830e8f82
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M flang/tools/f18/CMakeLists.txt

  Log Message:
  -----------
  [flang] Fix cycle of build dependencies (#108132)

While trying to fix one build problem, I made things worse. This should
clear things up.


  Commit: 3b4e7c9c4502d41ece4ef3431bbc12f055adabb5
      https://github.com/llvm/llvm-project/commit/3b4e7c9c4502d41ece4ef3431bbc12f055adabb5
  Author: Sterling-Augustine <56981066+Sterling-Augustine at users.noreply.github.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/Type.h
    M llvm/lib/SandboxIR/Type.cpp
    M llvm/unittests/SandboxIR/TypesTest.cpp

  Log Message:
  -----------
  [SandboxIR] Implement ScalableVectorType (#108124)

As in the heading.


  Commit: e67a6667dc2b46ece983321af89ae40ca7986b16
      https://github.com/llvm/llvm-project/commit/e67a6667dc2b46ece983321af89ae40ca7986b16
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/test/Lower/CUDA/cuda-devptr.cuf

  Log Message:
  -----------
  [flang][cuda] Avoid extra load in c_f_pointer lowering with c_devptr (#108090)

Remove unnecessary load of the `cptr` component when getting the
`__address`. `fir.coordinate_of` operation can be chained so the load is
not needed.


  Commit: 3dad29b677e427bf69c035605a16efd065576829
      https://github.com/llvm/llvm-project/commit/3dad29b677e427bf69c035605a16efd065576829
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

  Log Message:
  -----------
  [LTO] Remove unused includes (NFC) (#108110)

clangd reports these as unused headers.  My manual inspection agrees
with the findings.


  Commit: 6bbf7f06d8e4e84bbda9027252b26a0d9ae10cde
      https://github.com/llvm/llvm-project/commit/6bbf7f06d8e4e84bbda9027252b26a0d9ae10cde
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/include/llvm/BinaryFormat/Wasm.h
    M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyInstPrinter.cpp
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyInstPrinter.h
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTypeUtilities.h
    M llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyCFGStackify.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyISelDAGToDAG.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrControl.td
    M llvm/lib/Target/WebAssembly/WebAssemblyLateEHPrepare.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyMCInstLower.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyUtilities.cpp
    M llvm/test/CodeGen/WebAssembly/exception-legacy.ll
    A llvm/test/CodeGen/WebAssembly/exception.ll

  Log Message:
  -----------
  [WebAssembly] Add assembly support for final EH proposal (#107917)

This adds the basic assembly generation support for the final EH
proposal, which was newly adopted in Sep 2023 and advanced into Phase 4
in Jul 2024:

https://github.com/WebAssembly/exception-handling/blob/main/proposals/exception-handling/Exceptions.md

This adds support for the generation of new `try_table` and `throw_ref`
instruction in .s asesmbly format. This does NOT yet include
- Block annotation comment generation for .s format
- .o object file generation
- .s assembly parsing
- Type checking (AsmTypeCheck)
- Disassembler
- Fixing unwind mismatches in CFGStackify

These will be added as follow-up PRs.

---

The format for `TRY_TABLE`, both for `MachineInstr` and `MCInst`, is as
follows:
```
TRY_TABLE type number_of_catches catch_clauses*
```
where `catch_clause` is
```
catch_opcode tag+ destination
```
`catch_opcode` should be one of 0/1/2/3, which denotes
`CATCH`/`CATCH_REF`/`CATCH_ALL`/`CATCH_ALL_REF` respectively. (See
`BinaryFormat/Wasm.h`) `tag` exists when the catch is one of `CATCH` or
`CATCH_REF`.
The MIR format is printed as just the list of raw operands. The
(stack-based) assembly instruction supports pretty-printing, including
printing `catch` clauses by name, in InstPrinter.

In addition to the new instructions `TRY_TABLE` and `THROW_REF`, this
adds four pseudo instructions: `CATCH`, `CATCH_REF`, `CATCH_ALL`, and
`CATCH_ALL_REF`. These are pseudo instructions to simulate block return
values of `catch`, `catch_ref`, `catch_all`, `catch_all_ref` clauses in
`try_table` respectively, given that we don't support block return
values except for one case (`fixEndsAtEndOfFunction` in CFGStackify).
These will be omitted when we lower the instructions to `MCInst` at the
end.

LateEHPrepare now will have one more stage to covert
`CATCH`/`CATCH_ALL`s to `CATCH_REF`/`CATCH_ALL_REF`s when there is a
`RETHROW` to rethrow its exception. The pass also converts `RETHROW`s
into `THROW_REF`. Note that we still use `RETHROW` as an interim pseudo
instruction until we convert them to `THROW_REF` in LateEHPrepare.

CFGStackify has a new `placeTryTableMarker` function, which places
`try_table`/`end_try_table` markers with a necessary `catch` clause and
also `block`/`end_block` markers for the destination of the `catch`
clause.

In MCInstLower, now we need to support one more case for the multivalue
block signature (`catch_ref`'s destination's `(i32, exnref)` return
type).

InstPrinter has a new routine to print the `catch_list` type, which is
used to print `try_table` instructions.

The new test, `exception.ll`'s source is the same as
`exception-legacy.ll`, with the FileCheck expectations changed. One
difference is the commands in this file have `-wasm-enable-exnref` to
test the new format, and don't have `-wasm-disable-explicit-locals
-wasm-keep-registers`, because the new custom InstPrinter routine to
print `catch_list` only works for the stack-based instructions (`_S`),
and we can't use `-wasm-keep-registers` for them.

As in `exception-legacy.ll`, the FileCheck lines for the new tests do
not contain the whole program; they mostly contain only the control flow
instructions for readability.


  Commit: d03822d8887adc9312e65abf8d8ce1a16007f2a0
      https://github.com/llvm/llvm-project/commit/d03822d8887adc9312e65abf8d8ce1a16007f2a0
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/InterpFrame.cpp
    M clang/test/AST/ByteCode/builtin-functions.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix lookup of source locations in implicit ctors (#107992)

Implicit functions may still have a body. The !hasBody() check is
enough.


  Commit: 323911de277087b4898a96760c065a28f5d1bfa7
      https://github.com/llvm/llvm-project/commit/323911de277087b4898a96760c065a28f5d1bfa7
  Author: ChiaHungDuan <chiahungduan at google.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

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

  Log Message:
  -----------
  Reapply "[scudo] Fix the logic of MaxAllowedFragmentedPages" (#108130) (#108134)

This reverts commit 76151c449080b7239c8b442291514a4300d51cba.

Also changed to check MaxAllowedFragmentedPages.


  Commit: 203a2ca8cd6af505e11a38aebceeaf864271042c
      https://github.com/llvm/llvm-project/commit/203a2ca8cd6af505e11a38aebceeaf864271042c
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RefCntblBaseVirtualDtorChecker.cpp
    A clang/test/Analysis/Checkers/WebKit/ref-cntbl-crtp-base-no-virtual-dtor.cpp

  Log Message:
  -----------
  [webkit.RefCntblBaseVirtualDtor] Make ThreadSafeRefCounted not generate warnings (#107676)

This PR makes WebKit's RefCntblBaseVirtualDtor checker not generate a
warning for ThreadSafeRefCounted when the destruction thread is a
specific thread.

Prior to this PR, we only allowed CRTP classes without a virtual
destructor if its deref function had an explicit cast to the derived
type, skipping any lambda declarations which aren't invoked. This ends
up generating a warning for ThreadSafeRefCounted when a specific thread
is used to destruct the object because there is no inline body /
definition for ensureOnMainThread and ensureOnMainRunLoop and
DerefFuncDeleteExprVisitor concludes that there is no explicit delete of
the derived type.

This PR relaxes the condition DerefFuncDeleteExprVisitor checks by
allowing a delete expression to appear within a lambda declaration if
it's an argument to an "opaque" function; i.e. a function without
definition / body.


  Commit: 3c9022c965b85951f30af140da591f819acef8a0
      https://github.com/llvm/llvm-project/commit/3c9022c965b85951f30af140da591f819acef8a0
  Author: AdityaK <hiraditya at msn.com>
  Date:   2024-09-10 (Tue, 10 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Utils/Local.cpp
    A llvm/test/Transforms/SimplifyCFG/switch-branch-fold-indirectbr-102351.ll

  Log Message:
  -----------
  Bail out jump threading on indirect branches (#103688)

The bug was introduced by
https://github.com/llvm/llvm-project/pull/68473

Fixes: #102351


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

  Changed paths:
    M llvm/tools/llvm-debuginfod-find/CMakeLists.txt
    A llvm/tools/llvm-debuginfod-find/Opts.td
    M llvm/tools/llvm-debuginfod-find/llvm-debuginfod-find.cpp

  Log Message:
  -----------
  [llvm-debuginfod-find] Enable multicall driver (#108082)

Migrate llvm-debuginfod-find tool to use GenericOptTable. 
Enable multicall driver.


  Commit: 6dbdb8430b492959c399a7809247424c6962902f
      https://github.com/llvm/llvm-project/commit/6dbdb8430b492959c399a7809247424c6962902f
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/test/SemaCXX/type-traits.cpp

  Log Message:
  -----------
  [Clang] Fix crash due to invalid source location in __is_trivially_equality_comparable (#107815)

Fixes #107777


  Commit: cd0e867756dbab6184d2f250f768a60bc60a0849
      https://github.com/llvm/llvm-project/commit/cd0e867756dbab6184d2f250f768a60bc60a0849
  Author: David Green <david.green at arm.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/arm64-vector-imm.ll

  Log Message:
  -----------
  [AArch64] Update and cleanup arm64-vector-imm.ll test. NFC


  Commit: 748023dc3210533df2c1c6efc8af1b5954493701
      https://github.com/llvm/llvm-project/commit/748023dc3210533df2c1c6efc8af1b5954493701
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M libcxx/.clang-format
    M libcxx/include/__chrono/exception.h
    M libcxx/include/__config
    M libcxx/include/__exception/exception_ptr.h
    M libcxx/include/__exception/nested_exception.h
    M libcxx/include/__exception/operations.h
    M libcxx/include/__exception/terminate.h
    M libcxx/include/__filesystem/filesystem_error.h
    M libcxx/include/__format/format_error.h
    M libcxx/include/__format/parser_std_format_spec.h
    M libcxx/include/__functional/function.h
    M libcxx/include/__memory/shared_ptr.h
    M libcxx/include/__system_error/system_error.h
    M libcxx/include/__utility/unreachable.h
    M libcxx/include/__verbose_abort
    M libcxx/include/any
    M libcxx/include/future
    M libcxx/include/ios
    M libcxx/include/new
    M libcxx/include/optional
    M libcxx/include/regex
    M libcxx/include/stdexcept
    M libcxx/include/string
    M libcxx/include/typeinfo
    M libcxx/include/variant
    M libcxx/include/vector
    M libcxx/src/stdexcept.cpp
    M libcxx/src/string.cpp
    M libcxx/src/support/runtime/exception_fallback.ipp
    M libcxx/src/support/runtime/exception_msvc.ipp
    M libcxx/src/support/runtime/exception_pointer_cxxabi.ipp
    M libcxx/src/support/runtime/exception_pointer_glibcxx.ipp
    M libcxx/src/support/runtime/exception_pointer_msvc.ipp
    M libcxx/src/support/runtime/exception_pointer_unimplemented.ipp
    M libcxx/src/vector.cpp
    M libcxx/test/support/assert_macros.h
    M libcxx/test/support/check_assertion.h
    M libcxx/test/support/count_new.h
    M libcxx/test/support/test_macros.h

  Log Message:
  -----------
  [libc++][NFC] Replace _LIBCPP_NORETURN and TEST_NORETURN with [[noreturn]] (#80455)

`[[__noreturn__]]` is now always available, so we can simply use the
attribute directly instead of through a macro.


  Commit: 1e3a24d2e4eb63c17b962161ae6588d1b2c178f8
      https://github.com/llvm/llvm-project/commit/1e3a24d2e4eb63c17b962161ae6588d1b2c178f8
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetRegisterInfo.h
    M llvm/lib/CodeGen/InitUndef.cpp
    M llvm/lib/Target/ARM/ARMBaseRegisterInfo.h
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.h
    M llvm/test/CodeGen/RISCV/rvv/subregister-undef-early-clobber.mir

  Log Message:
  -----------
  [InitUndef] Don't use largest super class (#107885)

The InitUndef pass currently uses the getLargestSuperClass() hook (which
is only used by that pass) to chose the register to initialize. This was done
to reduce the number of undef init pseudos needed, e.g. so that the vrnov0
regclass would use the same pseudo as v0. After #106744 we use a single
generic pseudo, so this is no longer necessary.


  Commit: 19f604edfc015b35999b3b95e94f18389e4b392d
      https://github.com/llvm/llvm-project/commit/19f604edfc015b35999b3b95e94f18389e4b392d
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/string/TestDataFormatterLibcxxString.py

  Log Message:
  -----------
  [lldb][test] Add test for printing std::string through expression evaluator

This would've caught the failures in
https://github.com/llvm/llvm-project/pull/105865 in the libc++
data-formatter CI.


  Commit: 2afe678f0a246387977a8ca694d4489e2c868991
      https://github.com/llvm/llvm-project/commit/2afe678f0a246387977a8ca694d4489e2c868991
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
    M llvm/test/Transforms/MemCpyOpt/memcpy.ll

  Log Message:
  -----------
  [MemCpyOpt] Allow memcpy elision for non-noalias arguments (#107860)

We currently elide memcpys for readonly nocapture noalias arguments.
noalias is checked to make sure that there are no other ways to write
the memory, e.g. through a different argument or an escaped pointer.

In addition to the current noalias check, also query alias analysis, in
case it can prove that modification is not possible through other means.

This fixes the problem reported in
https://discourse.llvm.org/t/problem-about-memcpy-elimination/81121.


  Commit: 34cab2ed82a63ecf3d0ebf790def6d21bd4b87af
      https://github.com/llvm/llvm-project/commit/34cab2ed82a63ecf3d0ebf790def6d21bd4b87af
  Author: Weining Lu <luweining at loongson.cn>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M clang/test/Driver/mcmodel.c

  Log Message:
  -----------
  [Driver][test] Remove useless LoongArch test checks in mcmodel.c


  Commit: c9aa55da62b2a9e482c1877897152fb3c47719d2
      https://github.com/llvm/llvm-project/commit/c9aa55da62b2a9e482c1877897152fb3c47719d2
  Author: Kunwar Grover <groverkss at gmail.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/test/Transforms/loop-invariant-code-motion.mlir
    M mlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-yaml-gen.cpp

  Log Message:
  -----------
  [mlir][Linalg] Add speculation for LinalgStructuredOps (#108032)

This patch adds speculation behavior for linalg structured ops, allowing
them to be hoisted out of loops using LICM.


  Commit: db64e69fa250ea3a8d7a761220a7922fbdad0f2c
      https://github.com/llvm/llvm-project/commit/db64e69fa250ea3a8d7a761220a7922fbdad0f2c
  Author: Abid Qadeer <haqadeer at amd.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    M flang/test/Integration/debug-module-2.f90
    M flang/test/Transforms/debug-90683.fir
    M flang/test/Transforms/debug-fn-info.fir
    A flang/test/Transforms/debug-imported-entity.fir
    M flang/test/Transforms/debug-line-table-inc-file.fir
    M flang/test/Transforms/debug-local-global-storage-1.fir

  Log Message:
  -----------
  [flang][debug] Handle 'used' module. (#107626)

As described in #98883, we have to qualify a module variable name in
debugger to get its value. This PR tries to remove this limitation.
    
LLVM provides `DIImportedEntity` to handle such cases but the PR is made
more complicated due to the following 2 issues.
    
1. The MLIR attributes are readonly and we have a circular dependency
here. This has to be handled using the recursive interface provided by
the MLIR. This requires us to first create a place holder
`DISubprogramAttr` which is used in creating `DIImportedEntityAttr`.
Later another `DISubprogramAttr` is created which replaces the place
holder.
    
2. The flang IR does not provide any information about the 'used' module
so this has to be extracted by doing a pass over the
`DeclareOp` in the function. This presents certain limitation as 'only'
and module variable renaming may not be handled properly.
    
Due to the change in `DISubprogramAttr`, some tests also needed to be
adjusted.
    
Fixes #98883.


  Commit: 300161761df54f5f85630a8ad0e170d09d119ee3
      https://github.com/llvm/llvm-project/commit/300161761df54f5f85630a8ad0e170d09d119ee3
  Author: David Green <david.green at arm.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    A llvm/test/CodeGen/AArch64/load-insert-undef.ll
    M llvm/test/CodeGen/AArch64/load-insert-zero.ll

  Log Message:
  -----------
  [AArch64] Add tests for scalar_to_vector(load) and extend load into zero tests. NFC


  Commit: b4bb2f8aef01aeab8bf4fd164ed14a2c083d2858
      https://github.com/llvm/llvm-project/commit/b4bb2f8aef01aeab8bf4fd164ed14a2c083d2858
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/lib/IR/User.cpp
    A llvm/test/Transforms/LoopDeletion/noalias.ll

  Log Message:
  -----------
   [LoopDeletion] Unblock loop deletion with `llvm.experimental.noalias.scope.decl` (#108144)

Since `llvm.experimental.noalias.scope.decl` is marked as
`memory(inaccessiblemem: readwrite)`, we cannot treat this annotation
intrinsic as having no side effects. It will block loop deletion when
this intrinsic exists inside a dead loop:

https://github.com/llvm/llvm-project/blob/3dad29b677e427bf69c035605a16efd065576829/llvm/lib/Transforms/Scalar/LoopDeletion.cpp#L103-L110

This patch marks `llvm.experimental.noalias.scope.decl` as droppable to
address the issue.

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


  Commit: 596e7ccd30655faae9c4f35a1913dc23d08f3857
      https://github.com/llvm/llvm-project/commit/596e7ccd30655faae9c4f35a1913dc23d08f3857
  Author: Alex Bradbury <asb at igalia.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/docs/RISCVUsage.rst

  Log Message:
  -----------
  [RISCV][doc] Add note to RISCVUsage about supported atomics ABIs (#103879)

I've tried to avoid giving too much detailed explanation as the psABI docs are the
better source for this.


  Commit: a8f3d303122d049e65b699870615d464b77b489f
      https://github.com/llvm/llvm-project/commit/a8f3d303122d049e65b699870615d464b77b489f
  Author: Longsheng Mou <longshengmou at gmail.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  [mlir] Add dependent TensorDialect to ConvertVectorToLLVM pass (#108045)

This patch registers the tensor dialect as dependent of the
ConvertVectorToLLVM.
This which fixes a crash when `vector.transfer_write` is used with
dynamic tensor type.
The MaterializeTransferMask pattern would call
`vector::createOrFoldDimOp` which
creates a `tensor.dim` operation.

Fixes #107805.


  Commit: a4b0153c4f5f0d6bcf42fb2cb97dbdfad9c59e2c
      https://github.com/llvm/llvm-project/commit/a4b0153c4f5f0d6bcf42fb2cb97dbdfad9c59e2c
  Author: Longsheng Mou <longshengmou at gmail.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  [mlir][vector] Support for extracting 1-element vectors in VectorExtractOpConversion (#107549)

This patch adds support for converting `vector.extract` that extract
1-element vectors into LLVM, fixing a crash in such cases.
E.g., `vector.extract %1[0]: vector<1xf32> from vector<2xf32>`. Fix
#61372.


  Commit: f4dd1bc8fc625d3938f95b9d06aaaeebd2e90dca
      https://github.com/llvm/llvm-project/commit/f4dd1bc8fc625d3938f95b9d06aaaeebd2e90dca
  Author: Fraser Cormack <fraser at codeplay.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h

  Log Message:
  -----------
  [AMDGPU] Fix leak and self-assignment in copy assignment operator (#107847)

A static analyzer identified that this operator was unsafe in the case
of self-assignment.

In the placement new statement, StringValue's copy constructor was being
implicitly called, which received a reference to "itself". In fact, it
was being passed an old StringValue at the same address - one whose
lifetime had already ended. The copy constructor was thus copying fields
from a dead object.

We need to be careful when switching active union members, and calling
the destructor on the old StringValue will avoid memory leaks which I
believe the old code exhibited.


  Commit: 2e4e918bf03868bb4cd0d0415766cfba8dc1d899
      https://github.com/llvm/llvm-project/commit/2e4e918bf03868bb4cd0d0415766cfba8dc1d899
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

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


  Commit: c4a00be08aa10b5e51ee5db426d61ac87d9dc6fd
      https://github.com/llvm/llvm-project/commit/c4a00be08aa10b5e51ee5db426d61ac87d9dc6fd
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  [bazel] Add missing dependency for a8f3d303122d049e65b699870615d464b77b489f


  Commit: 935b9f6274b39b35f6b391aaf4c87c0605421fb3
      https://github.com/llvm/llvm-project/commit/935b9f6274b39b35f6b391aaf4c87c0605421fb3
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/lib/Target/AMDGPU/BUFInstructions.td
    M llvm/lib/Target/AMDGPU/VOP1Instructions.td
    M llvm/lib/Target/AMDGPU/VOP2Instructions.td

  Log Message:
  -----------
  [AMDGPU] Make use of multiclass inheritance. NFC.


  Commit: 704116373ae91a1b829dc3d3d269874fb27b579c
      https://github.com/llvm/llvm-project/commit/704116373ae91a1b829dc3d3d269874fb27b579c
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.load.format.d16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.load.format.d16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.store.format.d16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.store.format.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.store.ll

  Log Message:
  -----------
  [AMDGPU] Regenerate buffer intrinsic tests with update_llc_test_checks. NFC.


  Commit: 7e0008d5ad5ea7df0b9586f07e5af4a7225dac96
      https://github.com/llvm/llvm-project/commit/7e0008d5ad5ea7df0b9586f07e5af4a7225dac96
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M lld/COFF/InputFiles.cpp
    M lld/COFF/InputFiles.h
    M lld/COFF/SymbolTable.cpp
    M lld/COFF/SymbolTable.h
    M lld/COFF/Symbols.cpp
    M lld/COFF/Symbols.h

  Log Message:
  -----------
  [LLD][COFF][NFC] Create import thunks in ImportFile::parse. (#107929)


  Commit: e1ee07d0ff7a37bf5f52d560a52925c0507471e1
      https://github.com/llvm/llvm-project/commit/e1ee07d0ff7a37bf5f52d560a52925c0507471e1
  Author: Akshat Oke <76596238+Akshat-Oke at users.noreply.github.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp
    A llvm/lib/Target/AMDGPU/SIPeepholeSDWA.h
    M llvm/test/CodeGen/AMDGPU/sdwa-gfx9.mir
    M llvm/test/CodeGen/AMDGPU/sdwa-ops.mir
    M llvm/test/CodeGen/AMDGPU/sdwa-preserve.mir

  Log Message:
  -----------
  [AMDGPU][NewPM] Port SIPeepholeSDWA pass to NPM (#107049)


  Commit: da6944912baffa430468078c38f65d55fb83dd43
      https://github.com/llvm/llvm-project/commit/da6944912baffa430468078c38f65d55fb83dd43
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    A lldb/test/Shell/SymbolFile/DWARF/no_unique_address-with-bitfields.cpp

  Log Message:
  -----------
  [lldb][test] Add test for no_unique_address when mixed with bitfields (#108155)

This is the root-cause for the LLDB failures that started occurring
after https://github.com/llvm/llvm-project/pull/105865.

The DWARFASTParserClang has logic to try derive unnamed bitfields from
DWARF offsets. In this case we treat `padding` as a 1-byte size field
that would overlap with `flag`, and decide we need to introduce an
unnamed bitfield into the AST, which is incorrect.


  Commit: 2f3d061918ece414d6db544a34b2e44a9950bc23
      https://github.com/llvm/llvm-project/commit/2f3d061918ece414d6db544a34b2e44a9950bc23
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M mlir/include/mlir/Dialect/OpenMP/CMakeLists.txt
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauseOperands.h
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    A mlir/test/mlir-tblgen/openmp-clause-ops.td
    M mlir/tools/mlir-tblgen/OmpOpGen.cpp

  Log Message:
  -----------
  [MLIR][OpenMP] Automate operand structure definition (#99508)

This patch adds the "gen-openmp-clause-ops" `mlir-tblgen` generator to
produce the structure definitions previously in OpenMPClauseOperands.h
automatically from the information contained in OpenMPOps.td and
OpenMPClauses.td.

The original header is maintained to enable the definition of similar
structures that are not directly related to any single `OpenMP_Clause`
or `OpenMP_Op` tablegen definition.


  Commit: e50131aa068f74daa70d4135c92020aadae3af33
      https://github.com/llvm/llvm-project/commit/e50131aa068f74daa70d4135c92020aadae3af33
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/AttrDocs.td
    M clang/lib/Sema/CheckExprLifetime.cpp
    M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp

  Log Message:
  -----------
  [clang] Diagnose dangling issues for the "Container<GSLPointer>" case. (#107213)

This pull request enhances the GSL lifetime analysis to detect
situations where a dangling `Container<GSLPointer>` object is
constructed:

```cpp
std::vector<std::string_view> bad = {std::string()}; // dangling
```

The assignment case is not yet supported, but they will be addressed in
a follow-up.

Fixes #100526 (excluding the `push_back` case).


  Commit: 334873fe2df27a4fa613e8744f29e502d3358397
      https://github.com/llvm/llvm-project/commit/334873fe2df27a4fa613e8744f29e502d3358397
  Author: Amy Wang <kai.ting.wang at huawei.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M mlir/include/mlir-c/BuiltinAttributes.h
    M mlir/lib/Bindings/Python/IRAttributes.cpp
    M mlir/lib/CAPI/IR/BuiltinAttributes.cpp
    M mlir/python/mlir/_mlir_libs/_mlir/ir.pyi
    M mlir/python/mlir/ir.py
    M mlir/test/python/ir/attributes.py

  Log Message:
  -----------
  [MLIR][Python] Python binding support for IntegerSet attribute (#107640)

Support IntegerSet attribute python binding.


  Commit: 7c25ae87f7378f38aa49a92b9cf8092deb95a1f4
      https://github.com/llvm/llvm-project/commit/7c25ae87f7378f38aa49a92b9cf8092deb95a1f4
  Author: Frederik Carlier <frederik.carlier at keysight.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M clang/lib/CodeGen/CGObjCGNU.cpp
    M clang/test/CodeGenObjC/dllstorage.m
    M clang/test/SemaObjC/ivar-access-tests.m

  Log Message:
  -----------
  Set dllimport on Objective C ivar offsets (#107604)

Ensures that offsets for instance variables are marked with `dllimport`
if the interface to which they belong has this attribute.


  Commit: b35bb7b797e81e1d972c8e6d60e20e39c1917b99
      https://github.com/llvm/llvm-project/commit/b35bb7b797e81e1d972c8e6d60e20e39c1917b99
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M mlir/tools/mlir-tblgen/OmpOpGen.cpp

  Log Message:
  -----------
  [mlir] Fix 'StringSet' may not intend to support class template argument deduction (NFC)

/llvm-project/mlir/tools/mlir-tblgen/OmpOpGen.cpp:202:3:
error: 'StringSet' may not intend to support class template argument deduction [-Werror,-Wctad-maybe-unsupported]
  llvm::StringSet superClasses;
  ^
/llvm-project/llvm/include/llvm/ADT/StringSet.h:23:7: note: add a deduction guide to suppress this warning
class StringSet : public StringMap<std::nullopt_t, AllocatorTy> {
      ^


  Commit: 0856f12bb0a9829a282bef7c26ad536ff3b1e0a5
      https://github.com/llvm/llvm-project/commit/0856f12bb0a9829a282bef7c26ad536ff3b1e0a5
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M mlir/tools/mlir-tblgen/OmpOpGen.cpp

  Log Message:
  -----------
  [mlir] Fix -Wunused-variable in OmpOpGen.cpp (NFC)

/llvm-project/mlir/tools/mlir-tblgen/OmpOpGen.cpp:239:8:
error: unused variable 'isAttr' [-Werror,-Wunused-variable]
  bool isAttr = superClasses.contains("Attr");
       ^


  Commit: ed22029eea12b37c2a58f2c6b8d67f12009102a0
      https://github.com/llvm/llvm-project/commit/ed22029eea12b37c2a58f2c6b8d67f12009102a0
  Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVDuplicatesTracker.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
    A llvm/test/CodeGen/SPIRV/opt-gepoperator-of-gvar.ll

  Log Message:
  -----------
  [SPIR-V] Address the case when optimization uses GEP operator and GenCode creates G_PTR_ADD to convey the semantics (#107880)

When running SPIR-V Backend with optimization levels higher than 0, we
observe GEP Operator's as a new factor, massively used to convey the
semantics of the original LLVM IR. Previously, an issue related to GEP
Operator was mentioned and fixed on the consumer side of toolchains
(see, for example, Khronos Trandslator Issue
https://github.com/KhronosGroup/SPIRV-LLVM-Translator/issues/2486 and PR
https://github.com/KhronosGroup/SPIRV-LLVM-Translator/pull/2487).
However, there is a case when GenCode creates G_PTR_ADD to convey the
original semantics under optimization levels higher than 0 where it's
SPIR-V Backend that fails to translate source LLVM IR correctly.

Consider the following reproducer:

```
%struct = type { i32, [257 x i8], [257 x i8], [129 x i8], i32, i64, i64, i64, i64, i64, i64 }
@Mem = linkonce_odr dso_local addrspace(1) global %struct zeroinitializer, align 8

define weak dso_local spir_func void @__devicelib_assert_fail(ptr addrspace(4) noundef %expr, i32 noundef %line, i1 %fl) {
entry:
  %cmp = icmp eq i32 %line, 0
  br i1 %cmp, label %lbl, label %exit

lbl:
  store i32 %line, ptr addrspace(1) getelementptr inbounds (i8, ptr addrspace(1) @Mem, i64 648), align 8
  br i1 %fl, label %lbl, label %exit

exit:
  ret void
}
```

converted to the following machine instructions by SPIR-V Backend:

```
  %4:type(s64) = OpTypeInt 32, 0
  %22:type(s64) = OpTypePointer 5, %4:type(s64)
  %2:type(s64) = OpTypeInt 8, 0
  %28:type(s64) = OpTypePointer 5, %2:type(s64)

  %10:pid(p1) = G_GLOBAL_VALUE @Mem

  %36:type(s64) = OpTypeStruct %4:type(s64), %32:type(s64), %32:type(s64), %34:type(s64), %4:type(s64), %35:type(s64), %35:type(s64), %35:type(s64), %35:type(s64), %35:type(s64), %35:type(s64)
  %37:iid(s32) = G_INTRINSIC_W_SIDE_EFFECTS intrinsic(@llvm.spv.const.composite)

  %8:iid(s32) = ASSIGN_TYPE %37:iid(s32), %36:type(s64)
  G_INTRINSIC_W_SIDE_EFFECTS intrinsic(@llvm.spv.init.global), %10:pid(p1), %8:iid(s32)

  %29:pid(p1) = nuw G_PTR_ADD %10:pid, %16:iid(s64)
  %15:pid(p1) = nuw ASSIGN_TYPE %29:pid(p1), %28:type(s64)

  %27:pid(p2) = G_BITCAST %15:pid(p1)
  %17:pid(p2) = ASSIGN_TYPE %27:pid(p2), %22:type(s64)
  G_STORE %1:iid(s32), %17:pid(p2) :: (store (s32) into %ir.3, align 8, addrspace 1)
```

On the next stage of instruction selection this `G_PTR_ADD`-related
pattern would be interpreted as an initialization of a global variable
and converted to an invalid constant GEP pattern that, in its turn,
would fail to be verified by LLVM during back translation from SPIR-V to
LLVM IR.

This PR introduces a fix for the problem by adding one more case of
`G_PTR_ADD` translation, when we use a non-const GEP to convey the
meaning. The reproducer is attached as a new test case.


  Commit: 1b0400eed8613108d9f293b9ddd3380e3241ac60
      https://github.com/llvm/llvm-project/commit/1b0400eed8613108d9f293b9ddd3380e3241ac60
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/abds-neg.ll
    M llvm/test/CodeGen/X86/abdu-neg.ll

  Log Message:
  -----------
  [X86] combineSubABS - handle NEG(ABD()) expanded patterns

combineSubABS already handles the "(sub Y, cmovns X, -X) -> (add Y, cmovns -X, X)" fold by flipping the cmov operands.

We can do something similar for the negation of ABDS/U patterns which have been expanded to a CMOVL/CMOVB with a pair of commuted subtractions: "NEG(ABD(X,Y)) -> NEG(CMOV(SUB(X,Y),SUB(Y,X))) -> CMOV(SUB(Y,X),SUB(X,Y))"


  Commit: b9c2e2e3e910f8283f52c574fd8b6a7981d6cb0d
      https://github.com/llvm/llvm-project/commit/b9c2e2e3e910f8283f52c574fd8b6a7981d6cb0d
  Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  [bazel] port 2f3d061918ece414d6db544a34b2e44a9950bc23


  Commit: 80fcab8c26129a98f01ce4f8d9cc90f3653bf693
      https://github.com/llvm/llvm-project/commit/80fcab8c26129a98f01ce4f8d9cc90f3653bf693
  Author: MichelleCDjunaidi <michellechrisalyn at gmail.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  [Docs][clang-query] disclose Windows linetab bug on clang-query tab auto-complete (#107956)

As per
https://github.com/llvm/llvm-project/pull/106672/#issuecomment-2325577815
and https://github.com/llvm/llvm-project/issues/107377, the
documentation should be updated to note that the current bug on Windows
involving ``LineEditor`` causing Tab key related features to not work.

Fixes #107377


  Commit: 49b57df16144450331b4f90332d6918168b2a306
      https://github.com/llvm/llvm-project/commit/49b57df16144450331b4f90332d6918168b2a306
  Author: Tim Besard <tim.besard at gmail.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILWriter/DXILBitcodeWriter.cpp
    M llvm/test/tools/dxil-dis/metadata.ll
    M llvm/tools/dxil-dis/CMakeLists.txt

  Log Message:
  -----------
  DXIL: Use correct type ID when writing ValueAsMetadata. (#94337)

When emitting references to functions as part of `ValueAsMetadata`,
we currently emit the incorrect (typed) pointer, resulting in
crashes during deserialization. Avoid this by correctly mapping the
type during serialization.


  Commit: 99a235499337aff27d087c31916d6785d2e9a263
      https://github.com/llvm/llvm-project/commit/99a235499337aff27d087c31916d6785d2e9a263
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M lld/COFF/Chunks.cpp
    M lld/COFF/Chunks.h
    M lld/COFF/Config.h
    M lld/COFF/Driver.cpp
    M lld/COFF/Driver.h
    M lld/COFF/InputFiles.cpp
    M lld/COFF/InputFiles.h
    M lld/COFF/MarkLive.cpp
    M lld/COFF/SymbolTable.cpp
    M lld/COFF/SymbolTable.h
    M lld/COFF/Writer.cpp
    M lld/test/COFF/Inputs/loadconfig-arm64ec.s
    M lld/test/COFF/arm64ec-import.test

  Log Message:
  -----------
  [LLD][COFF] Add support for ARM64EC import call thunks. (#107931)

These thunks can be accessed using `__impchk_*` symbols, though they
are typically not called directly. Instead, they are used to populate the
auxiliary IAT. When the imported function is x86_64 (or an ARM64EC
function with a patched export thunk), the thunk is used to call it.
Otherwise, the OS may replace the thunk at runtime with a direct
pointer to the ARM64EC function to avoid the overhead.


  Commit: 5904448ceb67d6a7bd752aa4b54d9acb64bcc533
      https://github.com/llvm/llvm-project/commit/5904448ceb67d6a7bd752aa4b54d9acb64bcc533
  Author: Tulio Magno Quites Machado Filho <tuliom at redhat.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/cmake/modules/VersionFromVCS.cmake

  Log Message:
  -----------
  Avoid exposing password and token from git repositories (#105220)

Try to detect if the git remote URL has a password or a Github token and
return an error teaching the user how to avoid leaking their password or
token.


  Commit: 5f25b89513954b00e045b9fdf1a16f3a34e04c52
      https://github.com/llvm/llvm-project/commit/5f25b89513954b00e045b9fdf1a16f3a34e04c52
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/utils/TableGen/Common/OptEmitter.cpp
    M llvm/utils/TableGen/Common/OptEmitter.h
    M llvm/utils/TableGen/ExegesisEmitter.cpp
    M llvm/utils/TableGen/OptParserEmitter.cpp
    M llvm/utils/TableGen/OptRSTEmitter.cpp

  Log Message:
  -----------
  [TableGen] Migrate Option Emitters to const RecordKeeper (#107696)

Migrate Opt/OptRST Emitters to const RecordKeeper.

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


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


  Commit: 6043321127fa3c51481beaee683a34c2d2ca468d
      https://github.com/llvm/llvm-project/commit/6043321127fa3c51481beaee683a34c2d2ca468d
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  [gn] port bc152fbf4315 (llvm-debuginfod-find driver_exe)


  Commit: 135bd31975192654629c9bd453533ba705af1dba
      https://github.com/llvm/llvm-project/commit/135bd31975192654629c9bd453533ba705af1dba
  Author: Alex Rice <alexrice999 at hotmail.co.uk>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  [mlir] [tblgen-to-irdl] Refactor tblgen-to-irdl script and support more types (#105505)

Refactors the tblgen-to-irdl script slightly and adds support for
- Various integer types
- Various Float types
- Confined types
- Complex types (with fixed element type)

Also doesn't add the operand and result ops if they are empty.

I could potentially split this into smaller PRs if that'd be helpful
(refactor + integer/float/complex, confined type, optional
operand/result).

@math-fehr


  Commit: 2a130f1a140613445b8f387d3fa54328c1b94cde
      https://github.com/llvm/llvm-project/commit/2a130f1a140613445b8f387d3fa54328c1b94cde
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M clang/include/clang/Basic/AArch64SVEACLETypes.def
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/CodeGen/CodeGenTypes.cpp

  Log Message:
  -----------
  [NFC][Clang][SVE] Refactor AArch64SVEACLETypes.def to enabled more uses. (#107599)

Some switch statements require all SVE builtin types to be manually
specified. This patch refactors the SVE_*_TYPE macros so that such code
can be generated during preprocessing.

I've tried to establish a minimal interface that covers all types where
no special information is required and then created a set of macros that
are dedicated to specific datatypes (i.e. int, float).

This patch is groundwork to simplify the changing of SVE tuple types to
become struct based as well as work to support the FP8 ACLE.


  Commit: 44fc987ed174e32544a577387ab0df6886495e82
      https://github.com/llvm/llvm-project/commit/44fc987ed174e32544a577387ab0df6886495e82
  Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/builders/builder.py
    M lldb/packages/Python/lldbsuite/test/make/Makefile.rules
    M lldb/test/API/functionalities/breakpoint/breakpoint_ids/Makefile
    M lldb/test/API/functionalities/breakpoint/breakpoint_locations/Makefile
    M lldb/test/API/functionalities/breakpoint/consecutive_breakpoints/Makefile
    M lldb/test/API/functionalities/breakpoint/cpp/Makefile
    M lldb/test/API/functionalities/breakpoint/dummy_target_breakpoints/Makefile
    M lldb/test/API/functionalities/breakpoint/hardware_breakpoints/require_hw_breakpoints/Makefile
    M lldb/test/API/functionalities/breakpoint/step_over_breakpoint/Makefile
    M lldb/test/API/functionalities/breakpoint/thread_plan_user_breakpoint/Makefile
    M lldb/test/API/functionalities/data-formatter/data-formatter-objc/ObjCDataFormatterTestCase.py
    M lldb/test/API/functionalities/data-formatter/nsdictionarysynth/TestNSDictionarySynthetic.py
    M lldb/test/API/functionalities/data-formatter/nssetsynth/TestNSSetSynthetic.py
    M lldb/test/API/functionalities/data-formatter/poarray/TestPrintObjectArray.py
    M lldb/test/API/functionalities/inline-stepping/Makefile
    M lldb/test/API/functionalities/postmortem/minidump-new/makefile.txt
    M lldb/test/API/lang/objc/orderedset/TestOrderedSet.py
    M lldb/test/API/lang/objc/single-entry-dictionary/TestObjCSingleEntryDictionary.py
    M lldb/test/API/macosx/macCatalyst/Makefile
    M lldb/test/API/macosx/macCatalystAppMacOSFramework/Makefile
    M lldb/test/API/macosx/simulator/TestSimulatorPlatform.py
    M lldb/test/API/python_api/frame/inlines/Makefile
    M lldb/test/API/tools/lldb-server/TestAppleSimulatorOSType.py

  Log Message:
  -----------
  [lldb][test] Toolchain detection rewrite in Python (#102185)

This fix is based on a problem with cxx_compiler and cxx_linker macros
on Windows.
There was an issue with compiler detection in paths containing "icc". In
such case, Makefile.rules thought it was provided with icc compiler.

To solve that, utilities detection has been rewritten in Python.
The last element of compiler's path is separated, taking into account
the platform path delimiter, and compiler type is extracted, with regard
of possible cross-toolchain prefix.

---------

Co-authored-by: Pavel Labath <pavel at labath.sk>


  Commit: ba4bcce5f5ffa9e7d4af72c20fe4f1baf97075fc
      https://github.com/llvm/llvm-project/commit/ba4bcce5f5ffa9e7d4af72c20fe4f1baf97075fc
  Author: Thorsten Schütt <schuett at gmail.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/lib/CodeGen/GlobalISel/CombinerHelperCasts.cpp
    A llvm/test/CodeGen/AArch64/GlobalISel/combine-narrow-binop.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/inline-memset.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizer-combiner-divrem-insertpt-conflict.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-itofp.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-zext-trunc.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-phis-no-lane-mask-merging.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fshl.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fshr.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/sdiv.i64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/shl-ext-reduce.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/srem.i64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/udiv.i64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/urem.i64.ll
    M llvm/test/CodeGen/AMDGPU/constrained-shift.ll
    M llvm/test/CodeGen/AMDGPU/ctlz.ll

  Log Message:
  -----------
  [GlobalIsel] Combine trunc of binop (#107721)

trunc (binop X, C) --> binop (trunc X, trunc C)  --> binop (trunc X, C`)

Try to narrow the width of math or bitwise logic instructions by pulling
a truncate ahead of binary operators.

Vx and Nx cores consider 32-bit and 64-bit basic arithmetic equal in
costs.


  Commit: b88aced1abd8280e305d176c3cc5d85ae720ae50
      https://github.com/llvm/llvm-project/commit/b88aced1abd8280e305d176c3cc5d85ae720ae50
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M flang/lib/Lower/PFTBuilder.cpp
    A flang/test/Lower/HLFIR/procedure-pointer-in-generics.f90

  Log Message:
  -----------
  [flang][lowering] handle procedure pointers with generic name (#108043)

Handle procedure pointer with the same name as generics in lowering to avoid crashes after #107928.


  Commit: 7be6ea124430c3461fb85588d6eb1af70930cfe7
      https://github.com/llvm/llvm-project/commit/7be6ea124430c3461fb85588d6eb1af70930cfe7
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M mlir/lib/Dialect/Bufferization/IR/BufferizableOpInterface.cpp

  Log Message:
  -----------
  [Dialect] Avoid repeated hash lookups (NFC) (#108137)


  Commit: 7dfaedf86127620821da7d31bf08fe1403f19ffe
      https://github.com/llvm/llvm-project/commit/7dfaedf86127620821da7d31bf08fe1403f19ffe
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/utils/TableGen/DAGISelMatcherEmitter.cpp

  Log Message:
  -----------
  [TableGen] Avoid repeated hash lookups (NFC) (#108138)


  Commit: 4b1b450ae4b8fb9185f337c15315f4f473c3b429
      https://github.com/llvm/llvm-project/commit/4b1b450ae4b8fb9185f337c15315f4f473c3b429
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  [Transforms] Avoid repeated hash lookups (NFC) (#108139)


  Commit: 6ffa7cd8b04ab4b771925d329d7ee8788a3b00ca
      https://github.com/llvm/llvm-project/commit/6ffa7cd8b04ab4b771925d329d7ee8788a3b00ca
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M mlir/lib/Interfaces/ValueBoundsOpInterface.cpp

  Log Message:
  -----------
  [Interfaces] Avoid repeated hash lookups (NFC) (#108140)


  Commit: 01967e265889a9e242122087c41a97139e84bdc0
      https://github.com/llvm/llvm-project/commit/01967e265889a9e242122087c41a97139e84bdc0
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  [AMDGPU] Shrink a live interval instead of recomputing it. NFCI. (#108171)


  Commit: 7a30b9c0f0c9523e29b449d80c695e6d8df0f176
      https://github.com/llvm/llvm-project/commit/7a30b9c0f0c9523e29b449d80c695e6d8df0f176
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIFixSGPRCopies.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp

  Log Message:
  -----------
  [AMDGPU] Make more use of getWaveMaskRegClass. NFC. (#108186)


  Commit: ccc4fa18423f097a9f04d3198cacf094445ffd71
      https://github.com/llvm/llvm-project/commit/ccc4fa18423f097a9f04d3198cacf094445ffd71
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/utils/TableGen/Common/OptEmitter.cpp

  Log Message:
  -----------
  [TableGen] Fix MacOS failure in Option Emitter. (#108225)

Handle the case of same pointer used as both inputs to the
`CompareOptionRecords`, to avoid emitting errors for equivalent options.

Follow-up to #107696.


  Commit: 35f7cfb22420a7c94b48e54fa28195ada9863d1a
      https://github.com/llvm/llvm-project/commit/35f7cfb22420a7c94b48e54fa28195ada9863d1a
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/EvaluationResult.cpp
    M clang/test/AST/ByteCode/initializer_list.cpp

  Log Message:
  -----------
  [clang][bytecode] Check for Pointer dereference in EvaluationResult (#108207)

We will deref<>() it later, so this is the right check.


  Commit: 43da8a7a10237e8cb89e6d776bec81d97b5326d1
      https://github.com/llvm/llvm-project/commit/43da8a7a10237e8cb89e6d776bec81d97b5326d1
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/abds.ll
    M llvm/test/CodeGen/AArch64/abdu.ll
    M llvm/test/CodeGen/RISCV/abds.ll
    M llvm/test/CodeGen/RISCV/abdu.ll
    M llvm/test/CodeGen/X86/abds.ll
    M llvm/test/CodeGen/X86/abdu.ll

  Log Message:
  -----------
  [DAG] Add test coverage for ABD "sub of selects" patterns based off #53045

Add tests for "sub(select(icmp(a,b),a,b),select(icmp(a,b),b,a)) -> abd(a,b)" patterns that still fail to match to abd nodes

This will hopefully be helped by #108218


  Commit: ee61a4db3c6d21fcbdccd74606e3c050052b8e7c
      https://github.com/llvm/llvm-project/commit/ee61a4db3c6d21fcbdccd74606e3c050052b8e7c
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    A llvm/test/CodeGen/AMDGPU/maximumnum.ll
    A llvm/test/CodeGen/AMDGPU/minimumnum.ll

  Log Message:
  -----------
  AMDGPU: Add tests for minimumnum/maximumnum intrinsics

Vector cases are broken, so leave those for later.


  Commit: 1741b9c3d75ee34550210fadb9c6156419c3c892
      https://github.com/llvm/llvm-project/commit/1741b9c3d75ee34550210fadb9c6156419c3c892
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f32-stride-5.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f32-stride-7.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f32-stride-8.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f64-stride-2.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f64-stride-3.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f64-stride-4.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f64-stride-5.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f64-stride-6.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f64-stride-7.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f64-stride-8.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i16-stride-5.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i16-stride-7.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i16-stride-8.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i32-stride-4-indices-01uu.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i32-stride-5.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i32-stride-7.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i32-stride-8.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i64-stride-2.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i64-stride-3.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i64-stride-4.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i64-stride-5.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i64-stride-6.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i64-stride-7.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i64-stride-8.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i8-stride-5.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i8-stride-6.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i8-stride-7.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i8-stride-8.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-store-f32-stride-8.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-store-f64-stride-8.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-store-i64-stride-8.ll
    M llvm/test/Analysis/CostModel/X86/masked-interleaved-store-i16.ll

  Log Message:
  -----------
  [LV] Generalize check lines for interleave group costs.

Check cost of all instructions in an interleave group, to prepare for
follow-up changes.


  Commit: 9a9f155df1ed13fdc690d713242b13508f6d725e
      https://github.com/llvm/llvm-project/commit/9a9f155df1ed13fdc690d713242b13508f6d725e
  Author: Tyler Nowicki <tyler.nowicki at amd.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  [Coroutines] Split buildCoroutineFrame into normalization and frame building (#108076)

* Split buildCoroutineFrame into code related to normalization and code
related to actually building the coroutine frame.
* This will enable future specialization of buildCoroutineFrame for
different ABIs while the normalization can be done by splitCoroutine
prior to calling buildCoroutineFrame.

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


  Commit: 65e0574076b86fd5adb432387c23ce9954fb95c4
      https://github.com/llvm/llvm-project/commit/65e0574076b86fd5adb432387c23ce9954fb95c4
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  [RISCV] Expand mul X, C where C=2^N*(3,5,9)*(3,5,9) (#108100)

This is a three deep expression which is deeper than we've otherwise
gone for multiple expansions, but I think it's reasonable to do so. This
covers mul by 50, 100, and 200 which are reasonably common naturally
arising numbers.


  Commit: 050f785e2c57ce4ad4d788660c898b985a25ffe7
      https://github.com/llvm/llvm-project/commit/050f785e2c57ce4ad4d788660c898b985a25ffe7
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/runtime-type-info.cpp
    M flang/module/__fortran_type_info.f90
    M flang/runtime/assign.cpp
    M flang/runtime/descriptor-io.h
    M flang/runtime/namelist.cpp
    M flang/runtime/type-info.cpp
    M flang/runtime/type-info.h
    M flang/test/Semantics/typeinfo01.f90
    M flang/test/Semantics/typeinfo02.f90
    M flang/test/Semantics/typeinfo04.f90
    R flang/test/Semantics/typeinfo12.f90

  Log Message:
  -----------
  Revert "[flang][runtime] Fix odd "invalid descriptor" runtime crash (#107785)"

This reverts commit 15106c26662a573df31e8dfdd9350c313b8bfd84.  Commit does
not pass check-flang on x86 host.


  Commit: 35e27c0ee51f2822415c050c1cc4a73dfaa171d7
      https://github.com/llvm/llvm-project/commit/35e27c0ee51f2822415c050c1cc4a73dfaa171d7
  Author: Brox Chen <guochen2 at amd.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.td
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SIModeRegister.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
    M llvm/lib/Target/AMDGPU/VOP1Instructions.td
    M llvm/lib/Target/AMDGPU/VOP2Instructions.td
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.fcmp.constants.w32.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.fcmp.constants.w64.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fptosi.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fptoui.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-sitofp.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-uitofp.mir
    A llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-f16-fake16.mir
    A llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-f16-true16.mir
    M llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-f16.mir
    M llvm/test/CodeGen/AMDGPU/mode-register-fptrunc.mir
    M llvm/test/CodeGen/AMDGPU/schedule-regpressure-ilp-metric-spills.mir
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_dpp16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_dpp8.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop2_t16_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vop1.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vop1.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop1.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_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/Disassembler/AMDGPU/gfx11_dasm_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_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_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

  Log Message:
  -----------
  [AMDGPU][True16][MC] 16bit vsrc and vdst support in MC (#104510)

This is a large patch includes the MC level support for V_CVT_F16_F32,
V_CVT_F32_F16 and V_LDEXP_F16 in true16 format.

This patch includes the asm/disasm changes to encode/decode the 16bit
vsrc, vdst and src modifieres for vop and dpp format. This patch is a
dependency for many 16 bit instructions while only three instructions
are updated to make it easier to review.

There will be another patch to support these three instructions in the
codeGen level, this patch just replaces these two instructions with its
fake16 format.


  Commit: ccc52a817fb4b7579f2749d4242eff91371040f7
      https://github.com/llvm/llvm-project/commit/ccc52a817fb4b7579f2749d4242eff91371040f7
  Author: Nicolas Miller <nicolas.miller at codeplay.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  [AMDGPU] Remove dead code in SIISelLowering (NFC) (#108198)

This return is dead code as the return just above will always be taken.


  Commit: 2a4992e9e34de6b74aa8c254fea867d1271b3e97
      https://github.com/llvm/llvm-project/commit/2a4992e9e34de6b74aa8c254fea867d1271b3e97
  Author: ofri frishman <32477595+ofri-frishman at users.noreply.github.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  Fix mistake in comment regarding dyn_cast_or_null (#108026)

There was a mistake in a comment regarding dyn_cast_or_null deprication.
It was suggested to use cast_if_present instead of dyn_cast_or_null, but
that was probably a copy paste mistake, and dyn_cast_if_present is the
function that should be used instead of dyn_cast_or_null.

Authored-by: Ofri Frishman <ofri.frishman at mobileye.com>


  Commit: 512cecad4c384c84b79fea050a755cb7e46c6ac5
      https://github.com/llvm/llvm-project/commit/512cecad4c384c84b79fea050a755cb7e46c6ac5
  Author: Clement Courbet <courbet at google.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M clang/lib/Tooling/Transformer/Stencil.cpp
    M clang/unittests/Tooling/StencilTest.cpp

  Log Message:
  -----------
  [clang][transformer] Make `describe()` terser for `NamedDecl`s. (#108215)

Right now `describe()`ing a `FunctionDecl` dups the whole code of the
function. Dump only its name.


  Commit: 7858e14547c509c95503b74ff8ffc7bf2fc5b110
      https://github.com/llvm/llvm-project/commit/7858e14547c509c95503b74ff8ffc7bf2fc5b110
  Author: Hari Limaye <hari.limaye at arm.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    A llvm/test/Transforms/LoopVectorize/use-iv-start-value.ll

  Log Message:
  -----------
  [LV] Amend check for IV increments in collectUsersInEntryBlock (#108020)

The check for IV increments in collectUsersInEntryBlock currently
triggers for exit-block PHIs which use the IV start value, resulting in
us failing to add the input value for the middle block to these PHIs.

Fix this by amending the check for IV increments to only include
incoming values that are instructions inside the loop.

Fixes #108004


  Commit: 37865681962798a23f877562b44d241457c94bba
      https://github.com/llvm/llvm-project/commit/37865681962798a23f877562b44d241457c94bba
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/utils/TableGen/AsmMatcherEmitter.cpp
    M llvm/utils/TableGen/CodeEmitterGen.cpp
    M llvm/utils/TableGen/CodeGenMapTable.cpp
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.h
    M llvm/utils/TableGen/Common/CodeGenInstruction.cpp
    M llvm/utils/TableGen/Common/CodeGenInstruction.h
    M llvm/utils/TableGen/Common/CodeGenSchedule.cpp
    M llvm/utils/TableGen/Common/DAGISelMatcher.h
    M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.cpp
    M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.h
    M llvm/utils/TableGen/Common/VarLenCodeEmitterGen.cpp
    M llvm/utils/TableGen/DAGISelEmitter.cpp
    M llvm/utils/TableGen/DAGISelMatcherEmitter.cpp
    M llvm/utils/TableGen/DAGISelMatcherGen.cpp
    M llvm/utils/TableGen/FastISelEmitter.cpp
    M llvm/utils/TableGen/GlobalISelEmitter.cpp
    M llvm/utils/TableGen/InstrDocsEmitter.cpp
    M llvm/utils/TableGen/X86FoldTablesEmitter.cpp

  Log Message:
  -----------
  [TableGen] Change CodeGenInstruction record members to const (#107921)

Change CodeGenInstruction::{TheDef, InfereredFrom} to const pointers.

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


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


  Commit: ffa2f539ae2a4e79c01b3d54f8b12c63d8781a0c
      https://github.com/llvm/llvm-project/commit/ffa2f539ae2a4e79c01b3d54f8b12c63d8781a0c
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M lldb/include/lldb/Core/SourceManager.h
    M lldb/source/Core/SourceManager.cpp
    A lldb/test/Shell/SymbolFile/Inputs/main.c
    A lldb/test/Shell/SymbolFile/checksum-mismatch.test

  Log Message:
  -----------
  [lldb] Print a warning on checksum mismatch (#107968)

Print a warning when the debugger detects a mismatch between the MD5
checksum in the DWARF 5 line table and the file on disk. The warning is
printed only once per file.


  Commit: 2b452b455eefa0d91f59fefb8caf063983a72a02
      https://github.com/llvm/llvm-project/commit/2b452b455eefa0d91f59fefb8caf063983a72a02
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/utils/TableGen/AsmMatcherEmitter.cpp
    M llvm/utils/TableGen/Common/SubtargetFeatureInfo.cpp
    M llvm/utils/TableGen/Common/SubtargetFeatureInfo.h
    M llvm/utils/TableGen/InstrInfoEmitter.cpp

  Log Message:
  -----------
  [TableGen] Change SubtargetFeatureInfo to use const Record pointers (#108013)

Change SubtargetFeatureInfo to use const Record pointers.

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


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


  Commit: 7c6592f5a368e17c2b15469042c33a4e1cb7a0ff
      https://github.com/llvm/llvm-project/commit/7c6592f5a368e17c2b15469042c33a4e1cb7a0ff
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/utils/TableGen/AsmMatcherEmitter.cpp
    M llvm/utils/TableGen/Common/CodeGenRegisters.cpp
    M llvm/utils/TableGen/Common/CodeGenRegisters.h
    M llvm/utils/TableGen/Common/InfoByHwMode.cpp
    M llvm/utils/TableGen/Common/InfoByHwMode.h

  Log Message:
  -----------
  [TableGen] Change CodeGenRegister to use const Record pointer (#108027)

Change CodeGenRegister to use const Record pointer.

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


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


  Commit: 463c9d29664a27e3cb6d07928f44bd50064d3898
      https://github.com/llvm/llvm-project/commit/463c9d29664a27e3cb6d07928f44bd50064d3898
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  [clang][TableGen] Change ASTTableGen to use const Record pointers (#108193)

Change ASTTableGen to use const Record pointers.

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


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


  Commit: 970e2c1fe7e1fffb5de6aeaa18d84db406ba4c29
      https://github.com/llvm/llvm-project/commit/970e2c1fe7e1fffb5de6aeaa18d84db406ba4c29
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M clang/utils/TableGen/ClangBuiltinsEmitter.cpp
    M clang/utils/TableGen/TableGenBackends.h

  Log Message:
  -----------
  [clang][TableGen] Change Builtins emitter to use const RecordKeeper (#108195)

Change Builtins emitter to use const RecordKeeper.

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


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


  Commit: ff7eb1d0e900a6180e300a6f6a88ab3b12d80fc9
      https://github.com/llvm/llvm-project/commit/ff7eb1d0e900a6180e300a6f6a88ab3b12d80fc9
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  [AMDGPU] Simplify API of matchFPExtFromF16. NFC. (#108223)


  Commit: 3cfc733c96e67aa7444fd9af4c56c8b8010e6c8f
      https://github.com/llvm/llvm-project/commit/3cfc733c96e67aa7444fd9af4c56c8b8010e6c8f
  Author: Marc Auberer <marc.auberer at chillibits.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/include/llvm/ADT/DenseMap.h
    M llvm/include/llvm/ADT/DenseSet.h

  Log Message:
  -----------
  [ADT][NFC] Clang-format DenseMap and DenseSet (#108162)

This is a preparation for upcoming changes to Dense[Map|Set] regarding
hardening against OOM scenarios (see [this
RFC](https://discourse.llvm.org/t/rfc-malfunction-safe-densemap-denseset/81036/7)).
We have changed a lot of code inside Dense[Map|Set] and this preparation
change helps to isolate the relevant parts from pure formatting stuff.


  Commit: d5bc1f4a16194a41585240568c2818d163c6055b
      https://github.com/llvm/llvm-project/commit/d5bc1f4a16194a41585240568c2818d163c6055b
  Author: Vasileios Porpodas <vporpodas at google.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  [SandboxVec][NFC] Rename a variable


  Commit: 30fbfe577efd0f70cf3d745d7d89170666239d67
      https://github.com/llvm/llvm-project/commit/30fbfe577efd0f70cf3d745d7d89170666239d67
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

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

  Log Message:
  -----------
  [RISCV] Reorder zvfbfmin operation actions to match zvfhmin. NFC

This makes it slightly easier to see what's different between the two.


  Commit: e55d6f5ea2656bf842973d8bee86c3ace31bc865
      https://github.com/llvm/llvm-project/commit/e55d6f5ea2656bf842973d8bee86c3ace31bc865
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.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/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SIPreAllocateWWMRegs.cpp
    M llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.f32-no-rtn.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.f32-rtn.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.set.inactive.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_local_pointer.ll
    M llvm/test/CodeGen/AMDGPU/global-atomic-fadd.f32-no-rtn.ll
    M llvm/test/CodeGen/AMDGPU/global-atomic-fadd.f32-rtn.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/llvm.amdgcn.set.inactive.chain.arg.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.set.inactive.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-overlap-wwm-reserve.mir
    M llvm/test/CodeGen/AMDGPU/wave32.ll
    M llvm/test/CodeGen/AMDGPU/wqm.mir
    M llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved.ll

  Log Message:
  -----------
  [AMDGPU] Simplify and improve codegen for llvm.amdgcn.set.inactive (#107889)

Always generate v_cndmask_b32 instead of modifying exec around
v_mov_b32. This is expected to be faster because
modifying exec generally causes pipeline stalls.


  Commit: a54efdbdc474e8d3f249ce5f3d7b3bca8edb8f78
      https://github.com/llvm/llvm-project/commit/a54efdbdc474e8d3f249ce5f3d7b3bca8edb8f78
  Author: Arteen Abrishami <114886331+arteen1000 at users.noreply.github.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/CMakeLists.txt
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaTypesBase.td
    M mlir/include/mlir/Dialect/Tosa/Utils/ConversionUtils.h
    M mlir/lib/Conversion/TosaToLinalg/TosaToLinalgNamed.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-named.mlir
    M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-pipeline.mlir
    M mlir/test/Dialect/Tosa/constant-op-fold.mlir
    M mlir/test/Dialect/Tosa/invalid.mlir
    M mlir/test/Dialect/Tosa/ops.mlir

  Log Message:
  -----------
  [MLIR][TOSA] add additional verification to TOSA (#108133)

----------
Motivation:
----------

Spec conformance. Allows assumptions to be made in TOSA code.

------------
Changes Made:
------------

Add full permutation tensor verification to tosa.TRANSPOSE. Priorly
would not verify that permuted values were between 0 - (rank - 1).

Update tosa.TRANSPOSE perms data type to be strictly i32.

Verify input/output shapes for tosa.TRANSPOSE.

Add verifier to tosa.CONST, with consideration for quantization.

Fix TOSA conformance of tensor type to disallow dimensions with size 0
for ranked tensors, per spec.
This is not the same as rank 0 tensors. Here is an example of a
disallowed tensor: tensor<3x0xi32>. Naturally, this means that the
number of elements in a TOSA tensor will always be greater than 0.

Signed-off-by: Arteen Abrishami <arteen.abrishami at arm.com>


  Commit: 779a444009da190c47a2f820395ca001abc29b62
      https://github.com/llvm/llvm-project/commit/779a444009da190c47a2f820395ca001abc29b62
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M libc/src/stdlib/atexit.cpp
    M libc/src/stdlib/quick_exit.cpp
    M libc/startup/linux/do_start.cpp

  Log Message:
  -----------
  [libc] fix tls teardown while being used (#108229)

The call chain to `Mutex:lock` can be polluted by stack protector. For
completely safe, let's postpone the main TLS tearing down to a separate
phase.

fix #108030


  Commit: fa4a631fc63bdd9ffe5598bcc744656cea6fdb56
      https://github.com/llvm/llvm-project/commit/fa4a631fc63bdd9ffe5598bcc744656cea6fdb56
  Author: Chris B <chris.bieneman at me.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M clang/test/CodeGenHLSL/loops/unroll.hlsl

  Log Message:
  -----------
  [NFC] [HLSL] Update test for HLSL 202x (#108097)

HLSL 202x inherits from C++11, which generates additional loop hint
information for loops that must progress. Since HLSL 202x is going to be
the default for Clang we want to make sure all our tests pass with it.

Required for https://github.com/llvm/llvm-project/issues/108044


  Commit: d8e124dffaaea142d17b9911fc4de91039c8d1b1
      https://github.com/llvm/llvm-project/commit/d8e124dffaaea142d17b9911fc4de91039c8d1b1
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M libc/hdr/CMakeLists.txt
    A libc/hdr/link_macros.h
    A libc/hdr/sys_auxv_macros.h
    M libc/src/__support/OSUtil/linux/CMakeLists.txt
    M libc/src/__support/OSUtil/linux/aarch64/CMakeLists.txt
    A libc/src/__support/OSUtil/linux/aarch64/vdso.h
    M libc/src/__support/OSUtil/linux/arm/CMakeLists.txt
    A libc/src/__support/OSUtil/linux/arm/vdso.h
    M libc/src/__support/OSUtil/linux/riscv/CMakeLists.txt
    A libc/src/__support/OSUtil/linux/riscv/vdso.h
    A libc/src/__support/OSUtil/linux/vdso.cpp
    A libc/src/__support/OSUtil/linux/vdso.h
    A libc/src/__support/OSUtil/linux/vdso_sym.h
    M libc/src/__support/OSUtil/linux/x86_64/CMakeLists.txt
    A libc/src/__support/OSUtil/linux/x86_64/vdso.h
    M libc/src/sys/auxv/getauxval.h
    M libc/test/src/__support/OSUtil/linux/CMakeLists.txt
    A libc/test/src/__support/OSUtil/linux/vdso_test.cpp

  Log Message:
  -----------
  [libc] implement vdso (#91572)


  Commit: 2f321fac722e6c7913825f003c194b923d027354
      https://github.com/llvm/llvm-project/commit/2f321fac722e6c7913825f003c194b923d027354
  Author: Julian Schmidt <git.julian.schmidt at gmail.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/missing-std-forward.cpp

  Log Message:
  -----------
  [NFC][clang-tidy] fix tests of deleted functions for missing-std-forward (#106861)

Since #87832, unnamed identifiers are excluded from being diagnosed. As
a result, the tests that were supposed to test that deleted functions
are correctly ignored, are ignored because of the unnamed identifiers
instead of the deleted function. This change simply introduces names for
the parameters of the deleted functions.


  Commit: 866b93e6b33fac9a4bc62bbc32199bd98f434784
      https://github.com/llvm/llvm-project/commit/866b93e6b33fac9a4bc62bbc32199bd98f434784
  Author: Jonathon Penix <jpenix at quicinc.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/test/CodeGen/RISCV/machineoutliner-pcrel-lo.mir

  Log Message:
  -----------
  [RISCV] Don't outline pcrel_lo when the function has a section prefix (#107943)

GNU ld will error when encountering a pcrel_lo whose corresponding
pcrel_hi is in a different section. [1] introduced a check to help
prevent this issue by preventing outlining in a few circumstances.
However, we can also hit this same issue when outlining from functions
with prefixes ("hot"/"unlikely"/"unknown" from profile information, for
example) as the outlined function might not have the same prefix,
possibly resulting in a "paired" pcrel_lo and pcrel_hi ending up in
different sections.

To prevent this issue, take a similar approach as [1] and additionally
prevent outlining when we see a pcrel_lo and the function has a prefix.

[1]
https://github.com/llvm/llvm-project/commit/96c85f80f0d615ffde0f85d8270e0a8c9f4e5430

Fixes #107520


  Commit: 415288a2a7db0f55f5f6f0866e8f61faf86bf6fd
      https://github.com/llvm/llvm-project/commit/415288a2a7db0f55f5f6f0866e8f61faf86bf6fd
  Author: Brendan Dahl <brendan.dahl at gmail.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
    M llvm/test/CodeGen/WebAssembly/half-precision.ll

  Log Message:
  -----------
  [WebAssembly] Add load and store patterns for V8F16. (#108119)


  Commit: c076638c702b1d43e8f1c4a813deb3c09b748abb
      https://github.com/llvm/llvm-project/commit/c076638c702b1d43e8f1c4a813deb3c09b748abb
  Author: Brendan Dahl <brendan.dahl at gmail.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
    M llvm/test/CodeGen/WebAssembly/half-precision.ll

  Log Message:
  -----------
  [WebAssembly] Support BUILD_VECTOR with F16x8. (#108117)

Convert BUILD_VECTORS with FP16x8 to I16x8 since there's no FP16 scalar
value to intialize v128.const.


  Commit: 7721db489630166a220cfc27051d6259588229e1
      https://github.com/llvm/llvm-project/commit/7721db489630166a220cfc27051d6259588229e1
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp

  Log Message:
  -----------
  [WebKit Static Analyzer] Treat WTFReportBacktrace as a trivial function. (#108167)

Treat WTFReportBacktrace, which prints out the backtrace, as trivial.


  Commit: 0d48d4d835ec7a2e4d59a8fe4c26dc9823cee56a
      https://github.com/llvm/llvm-project/commit/0d48d4d835ec7a2e4d59a8fe4c26dc9823cee56a
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPU.td
    M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
    M mlir/test/Conversion/AMDGPUToROCDL/amdgpu-to-rocdl.mlir

  Log Message:
  -----------
  [mlir][AMDGPU] Support vector<2xf16> inputs to buffer atomic fadd (#108238)

Extend the lowering of atomic.fadd to support the v2f16 variant
avaliable on some AMDGPU chips.

Co-authored-by: Giuseppe Rossini <giuseppe.rossini at amd.com>


  Commit: cb031267bd7a5946dfd6e46e9a5441ddca057b47
      https://github.com/llvm/llvm-project/commit/cb031267bd7a5946dfd6e46e9a5441ddca057b47
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPU.td
    M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
    M mlir/test/Conversion/AMDGPUToROCDL/amdgpu-to-rocdl.mlir

  Log Message:
  -----------
  Revert "[mlir][AMDGPU] Support vector<2xf16> inputs to buffer atomic fadd (#108238)" (#108256)

This reverts commit 0d48d4d835ec7a2e4d59a8fe4c26dc9823cee56a.

Mistakenly landed without approval


  Commit: b7b28e770c461b2513ddc98953c6e019cb2f29a4
      https://github.com/llvm/llvm-project/commit/b7b28e770c461b2513ddc98953c6e019cb2f29a4
  Author: Artem Belevich <tra at google.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
    M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
    M llvm/test/CodeGen/NVPTX/lower-args-gridconstant.ll
    M llvm/test/CodeGen/NVPTX/lower-byval-args.ll

  Log Message:
  -----------
  [NVPTX] Improve copy avoidance during lowering. (#106423)

On newer GPUs, where `cvta.param` instruction is available we can avoid
making byval arguments when their pointers are used in a few more cases, 
even when `__grid_constant__` is not specified.

- phi
- select
- memcpy from the parameter.

Switched pointer traversal from a DIY implementation to PtrUseVisitor.


  Commit: 96b7c64b8a874584a9dad44bb8901904c14701c0
      https://github.com/llvm/llvm-project/commit/96b7c64b8a874584a9dad44bb8901904c14701c0
  Author: Jacob Lalonde <jalalonde at fb.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M lldb/include/lldb/API/SBMemoryRegionInfo.h
    M lldb/include/lldb/API/SBSaveCoreOptions.h
    M lldb/include/lldb/Symbol/SaveCoreOptions.h
    A lldb/include/lldb/Target/CoreFileMemoryRanges.h
    M lldb/include/lldb/Target/Process.h
    M lldb/include/lldb/Utility/RangeMap.h
    M lldb/include/lldb/lldb-enumerations.h
    M lldb/include/lldb/lldb-forward.h
    M lldb/include/lldb/lldb-private-interfaces.h
    M lldb/source/API/SBSaveCoreOptions.cpp
    M lldb/source/Commands/CommandObjectProcess.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.h
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.cpp
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.h
    M lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.h
    M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
    M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.h
    M lldb/source/Symbol/SaveCoreOptions.cpp
    M lldb/source/Target/CMakeLists.txt
    A lldb/source/Target/CoreFileMemoryRanges.cpp
    M lldb/source/Target/Process.cpp
    M lldb/test/API/functionalities/process_save_core_minidump/TestProcessSaveCoreMinidump.py
    M lldb/unittests/Process/Utility/CMakeLists.txt
    A lldb/unittests/Process/Utility/CoreFileMemoryRangesTest.cpp

  Log Message:
  -----------
  [LLDB] Reapply SBSaveCore Add Memory List (#107937)

Recently in #107731 this change was revereted due to excess memory size
in `TestSkinnyCore`. This was due to a bug where a range's end was being
passed as size. Creating massive memory ranges.

Additionally, and requiring additional review, I added more unit tests
and more verbose logic to the merging of save core memory regions.

@jasonmolenda as an FYI.


  Commit: f02c72f9f996b2ef99886d345d87f6c62a3ee897
      https://github.com/llvm/llvm-project/commit/f02c72f9f996b2ef99886d345d87f6c62a3ee897
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/utils/gn/secondary/lldb/source/Target/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 96b7c64b8a87


  Commit: 943182e3112756de8982babad6b5c8e74fdf8d02
      https://github.com/llvm/llvm-project/commit/943182e3112756de8982babad6b5c8e74fdf8d02
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M clang/utils/TableGen/ClangCommentCommandInfoEmitter.cpp
    M clang/utils/TableGen/TableGenBackends.h

  Log Message:
  -----------
  [clang][TableGen] Change comment command emitter to const RecordKeeper (#108199)

Change comment command emitter to const RecordKeeper.

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


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


  Commit: dca9f21724c2206973b78ddc3ab3327b85f1e3ec
      https://github.com/llvm/llvm-project/commit/dca9f21724c2206973b78ddc3ab3327b85f1e3ec
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M clang/utils/TableGen/ClangCommentHTMLNamedCharacterReferenceEmitter.cpp
    M clang/utils/TableGen/TableGenBackends.h

  Log Message:
  -----------
  [clang][TableGen] Change HTML Emitter to use const RecordKeeper (#108201)

Change HTMLNamedCharacterReferenceEmitter to use const RecordKeeper.

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


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


  Commit: e382b0c9972b4a3cf6c4bc21be50e12b76a488bd
      https://github.com/llvm/llvm-project/commit/e382b0c9972b4a3cf6c4bc21be50e12b76a488bd
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M clang/utils/TableGen/ClangCommentHTMLTagsEmitter.cpp
    M clang/utils/TableGen/TableGenBackends.h

  Log Message:
  -----------
  [clang][TableGen] Change HTML Tags emitter to use const RecordKeeper (#108202)

Change HTML Tags emitter to use const RecordKeeper.

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


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


  Commit: 07dc9b838efc32647aeafbf7325e3d710412a0bf
      https://github.com/llvm/llvm-project/commit/07dc9b838efc32647aeafbf7325e3d710412a0bf
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M clang/utils/TableGen/ClangDataCollectorsEmitter.cpp
    M clang/utils/TableGen/TableGenBackends.h

  Log Message:
  -----------
  [clang][TableGen] Change DataCollector to use const RecordKeeper (#108203)

Change DataCollectors Emitter to use const RecordKeeper.

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


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


  Commit: 0767027f363f81157657549a5db9ff9daf9198a5
      https://github.com/llvm/llvm-project/commit/0767027f363f81157657549a5db9ff9daf9198a5
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  [clang][TableGen] Change Opcode Emitter to use const RecordKeeper (#108211)

Change Opcode Emitter to use const RecordKeeper.

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


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


  Commit: 7c53a7aae7947bd3a400d6b5713fe31dcfb46648
      https://github.com/llvm/llvm-project/commit/7c53a7aae7947bd3a400d6b5713fe31dcfb46648
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  [clang][TableGen] Change OpenCL emitter to use const RecordKeeper (#108213)

Change OpenCL builtins emitter to use const RecordKeeper

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


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


  Commit: 8625eb0b87c86d3ef42a365d7593eed664b379e8
      https://github.com/llvm/llvm-project/commit/8625eb0b87c86d3ef42a365d7593eed664b379e8
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  [clang][TableGen] Change OptionDoc Emitter to use const RecordKeeper (#108216)

Change OptionDoc Emitter to use const RecordKeeper.

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


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


  Commit: 1896ee38898a73ea9c2894e848884c8999884ab1
      https://github.com/llvm/llvm-project/commit/1896ee38898a73ea9c2894e848884c8999884ab1
  Author: lntue <35648136+lntue at users.noreply.github.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
    M libc/config/config.json
    M libc/docs/configure.rst
    M libc/src/__support/CMakeLists.txt
    M libc/src/__support/macros/CMakeLists.txt
    A libc/src/__support/macros/null_check.h
    M libc/src/__support/macros/sanitizer.h
    M libc/src/__support/str_to_float.h
    M libc/test/src/compiler/CMakeLists.txt
    M libc/test/src/compiler/stack_chk_guard_test.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    M libc/test/src/math/smoke/nan_test.cpp
    M libc/test/src/math/smoke/nanf128_test.cpp
    M libc/test/src/math/smoke/nanf16_test.cpp
    M libc/test/src/math/smoke/nanf_test.cpp
    M libc/test/src/math/smoke/nanl_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc] Fix undefined behavior for nan functions. (#106468)

Currently the nan* functions use nullptr dereferencing to crash with
SIGSEGV if the input is nullptr. Both `nan(nullptr)` and `nullptr`
dereferencing are undefined behaviors according to the C standard.
Employing `nullptr` dereference in the `nan` function implementation is
ok if users only linked against the pre-built library, but it might be
completely removed by the compilers' optimizations if it is built from
source together with the users' code.

See for instance:  https://godbolt.org/z/fd8KcM9bx

This PR uses volatile load to prevent the undefined behavior if libc is
built without sanitizers, and leave the current undefined behavior if
libc is built with sanitizers, so that the undefined behavior can be
caught for users' codes.


  Commit: be770edee59310b158bf3a30ddc2645007ab8da3
      https://github.com/llvm/llvm-project/commit/be770edee59310b158bf3a30ddc2645007ab8da3
  Author: Sam Clegg <sbc at chromium.org>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    A lld/test/wasm/static-error.s
    M lld/wasm/Driver.cpp

  Log Message:
  -----------
  [lld][WebAssembly] Reject shared libraries when `-static`/`-Bstatic` is used (#108263)

This matches the behaviour of GNU ld and the ELF version of lld.


  Commit: e3f936eb755d9ae37019ffcc7f53d71d2d58d188
      https://github.com/llvm/llvm-project/commit/e3f936eb755d9ae37019ffcc7f53d71d2d58d188
  Author: Daniel Paoliello <danpao at microsoft.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/MemorySSA.h
    M llvm/include/llvm/IR/Constant.h
    M llvm/include/llvm/IR/Constants.h
    M llvm/include/llvm/IR/DerivedUser.h
    M llvm/include/llvm/IR/Function.h
    M llvm/include/llvm/IR/GlobalAlias.h
    M llvm/include/llvm/IR/GlobalIFunc.h
    M llvm/include/llvm/IR/GlobalObject.h
    M llvm/include/llvm/IR/GlobalValue.h
    M llvm/include/llvm/IR/GlobalVariable.h
    M llvm/include/llvm/IR/InstrTypes.h
    M llvm/include/llvm/IR/Instruction.h
    M llvm/include/llvm/IR/Instructions.h
    M llvm/include/llvm/IR/User.h
    M llvm/lib/IR/Constants.cpp
    M llvm/lib/IR/ConstantsContext.h
    M llvm/lib/IR/Function.cpp
    M llvm/lib/IR/Globals.cpp
    M llvm/lib/IR/Instruction.cpp
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/IR/User.cpp

  Log Message:
  -----------
  Don't rely on undefined behavior to store how a `User` object's allocation is laid out (#105714)

In `User::operator new` a single allocation is created to store the
`User` object itself, "intrusive" operands or a pointer for "hung off"
operands, and the descriptor. After allocation, details about the layout
(number of operands, how the operands are stored, if there is a
descriptor) are stored in the `User` object by settings its fields. The
`Value` and `User` constructors are then very careful not to initialize
these fields so that the values set during allocation can be
subsequently read. However, when the `User` object is returned from
`operator new` [its value is technically "indeterminate" and so reading
a field without first initializing it is undefined behavior (and will be
erroneous in
C++26)](https://en.cppreference.com/w/cpp/language/default_initialization#Indeterminate_and_erroneous_values).

We discovered this issue when trying to build LLVM using MSVC's [`/sdl`
flag](https://learn.microsoft.com/en-us/cpp/build/reference/sdl-enable-additional-security-checks?view=msvc-170)
which clears class fields after allocation (the docs say that this
feature shouldn't be turned on for custom allocators and should only
clear pointers, but that doesn't seem to match the implementation).
MSVC's behavior both with and without the `/sdl` flag is standards
conforming since a program is supposed to initialize storage before
reading from it, thus the compiler implementation changing any values
will never be observed in a well-formed program. The standard also
provides no provisions for making storage bytes not indeterminate by
setting them during allocation or `operator new`.

The fix for this is to create a set of types that encode the layout and
provide these to both `operator new` and the constructor:
* The `AllocMarker` types are used to select which `operator new` to
use.
* `AllocMarker` can then be implicitly converted to a `AllocInfo` which
tells the constructor how the type was laid out.


  Commit: 666a3f4ed4f62a9b1b732dae6a34a66d31217563
      https://github.com/llvm/llvm-project/commit/666a3f4ed4f62a9b1b732dae6a34a66d31217563
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M libc/startup/gpu/amdgpu/start.cpp
    M libc/startup/gpu/nvptx/start.cpp

  Log Message:
  -----------
  [libc] Stub TLS functions on the GPU temporarily (#108267)

Summary:
There's an extern weak symbol for this, we should just factor these into
a more common interface. Stub them temporarily to make the bots happy.
PTXAS does not handle extern weak.


  Commit: bd4e0dfa945fb7fe73801bcee63c21aa8123b928
      https://github.com/llvm/llvm-project/commit/bd4e0dfa945fb7fe73801bcee63c21aa8123b928
  Author: vporpo <vporpodas at google.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/benchmarks/SandboxIRBench.cpp

  Log Message:
  -----------
  [SandboxIR][Bench] Benchmark RUOW (#107456)

This patch adds a benchmark for ReplaceUsesOfWith().


  Commit: c3d39cbb9a5e76f253c865dd544ccdf8eec95029
      https://github.com/llvm/llvm-project/commit/c3d39cbb9a5e76f253c865dd544ccdf8eec95029
  Author: Marc Auberer <marc.auberer at chillibits.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  [ADT][NFC] Constexpr-ify if in DenseMap::clear (#108243)

Make if constexpr due to constexpr condition.


  Commit: bbff52bfd49336bc0fdc83d8dfc616266bc07cbf
      https://github.com/llvm/llvm-project/commit/bbff52bfd49336bc0fdc83d8dfc616266bc07cbf
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M libcxx/include/__pstl/backend.h
    M libcxx/include/__pstl/backend_fwd.h
    M libcxx/include/__pstl/backends/default.h
    M libcxx/include/__pstl/backends/libdispatch.h
    M libcxx/include/__pstl/backends/serial.h
    M libcxx/include/__pstl/backends/std_thread.h
    M libcxx/include/__pstl/cpu_algos/any_of.h
    M libcxx/include/__pstl/cpu_algos/cpu_traits.h
    M libcxx/include/__pstl/cpu_algos/fill.h
    M libcxx/include/__pstl/cpu_algos/find_if.h
    M libcxx/include/__pstl/cpu_algos/for_each.h
    M libcxx/include/__pstl/cpu_algos/merge.h
    M libcxx/include/__pstl/cpu_algos/stable_sort.h
    M libcxx/include/__pstl/cpu_algos/transform.h
    M libcxx/include/__pstl/cpu_algos/transform_reduce.h
    M libcxx/include/__pstl/dispatch.h
    M libcxx/include/__pstl/handle_exception.h

  Log Message:
  -----------
  [libc++] Guard PSTL headers with >= C++17 (#108234)

Otherwise we fail to build with modules in C++03 mode once we migrate to
a single top-level module, because those headers get pulled in but they
don't compile as C++03.


  Commit: 118f120eaab8d763b28c71f0d2e2c1e0c752832b
      https://github.com/llvm/llvm-project/commit/118f120eaab8d763b28c71f0d2e2c1e0c752832b
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__config
    R libcxx/include/experimental/__config
    M libcxx/include/experimental/__simd/aligned_tag.h
    M libcxx/include/experimental/__simd/declaration.h
    M libcxx/include/experimental/__simd/reference.h
    M libcxx/include/experimental/__simd/scalar.h
    M libcxx/include/experimental/__simd/simd.h
    M libcxx/include/experimental/__simd/simd_mask.h
    M libcxx/include/experimental/__simd/traits.h
    M libcxx/include/experimental/__simd/utility.h
    M libcxx/include/experimental/__simd/vec_ext.h
    M libcxx/include/experimental/iterator
    M libcxx/include/experimental/memory
    M libcxx/include/experimental/propagate_const
    M libcxx/include/experimental/simd
    M libcxx/include/experimental/type_traits
    M libcxx/include/experimental/utility
    M libcxx/include/module.modulemap
    M libcxx/src/any.cpp
    M libcxx/src/optional.cpp

  Log Message:
  -----------
  [libc++] Get rid of experimental/__config (#108233)

It doesn't serve much of a purpose since we can easily put its contents
inside __config. Removing it simplifies the modulemap once we are trying
to create a single top-level module.


  Commit: 882f21ec87abd960b7ce3e10225f2bfeda3e1f74
      https://github.com/llvm/llvm-project/commit/882f21ec87abd960b7ce3e10225f2bfeda3e1f74
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp

  Log Message:
  -----------
  [WebKit Checkers] Allow "singleton" suffix to be camelCased. (#108257)

We should allow singleton and fooSingleton as singleton function names.


  Commit: aabb0121eece5243aca847cf2962f6464679c3c4
      https://github.com/llvm/llvm-project/commit/aabb0121eece5243aca847cf2962f6464679c3c4
  Author: Matteo Franciolini <mfranciolini at tesla.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h

  Log Message:
  -----------
  [mlir][bufferization] Fix OpFilter::denyDialect (#108249)

The implementation would crash with unloaded dialects.


  Commit: b06954a5d02a41a38b72f7914c791428ccd95318
      https://github.com/llvm/llvm-project/commit/b06954a5d02a41a38b72f7914c791428ccd95318
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.h
    M clang/lib/StaticAnalyzer/Checkers/WebKit/UncountedCallArgsChecker.cpp
    A clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.mm

  Log Message:
  -----------
  [alpha.webkit.UncountedCallArgsChecker] Allow protector functions in Objective-C++ (#108184)

This PR fixes the bug that WebKit checkers didn't recognize the return
value of an Objective-C++ selector which returns Ref or RefPtr to be
safe.


  Commit: 0cfa5abd9ddb59bb4dfd8690ba9f8634cfc48e78
      https://github.com/llvm/llvm-project/commit/0cfa5abd9ddb59bb4dfd8690ba9f8634cfc48e78
  Author: vporpo <vporpodas at google.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/benchmarks/SandboxIRBench.cpp

  Log Message:
  -----------
  [SandboxIR][Bench] Add tests with tracking enabled (#108273)

Benchmarks RAUW and RUOW when tracking is enabled.


  Commit: 4570984e7fe7409cec10d2305fb43c0b52806683
      https://github.com/llvm/llvm-project/commit/4570984e7fe7409cec10d2305fb43c0b52806683
  Author: Saleem Abdulrasool <abdulras at thebrowser.company>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M compiler-rt/lib/builtins/cpu_model/aarch64.c

  Log Message:
  -----------
  builtins: honour `_M_ARM64` as `__aarch64__`

When clang is used as `clang-cl`, we use MSVC style macros. The spelling
of `__aarch64__` is converted to `_M_ARM64`. Account for this
alternative spelling in the conditional check. While in the area, add a
tertiary spelling of `__arm64__` to ensure that we catch more of the
variants.


  Commit: 108ed9d9fe33abc7337350329d048ec3000b1cb6
      https://github.com/llvm/llvm-project/commit/108ed9d9fe33abc7337350329d048ec3000b1cb6
  Author: Abid Qadeer <haqadeer at amd.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M flang/lib/Semantics/expression.cpp

  Log Message:
  -----------
  [flang] Remove a leftover debugging message. (#108175)


  Commit: c31d343857f514dde9146279797ebdcd4010e60b
      https://github.com/llvm/llvm-project/commit/c31d343857f514dde9146279797ebdcd4010e60b
  Author: Nirvedh Meshram <96096277+nirvedhmeshram at users.noreply.github.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp

  Log Message:
  -----------
  Update legalizations for LowerGpuOpsToROCDLOps (#108266)

LLVM::FAbsOp and LLVM::SqrtOp are legal after
https://github.com/llvm/llvm-project/pull/102971


  Commit: b8239e1201f5871bed5b633b76fa9536672f287f
      https://github.com/llvm/llvm-project/commit/b8239e1201f5871bed5b633b76fa9536672f287f
  Author: Joshua Batista <jbatista at microsoft.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M clang/lib/Sema/HLSLExternalSemaSource.cpp
    A clang/test/AST/HLSL/StructuredBuffer-AST.hlsl
    A clang/test/CodeGenHLSL/builtins/StructuredBuffer-annotations.hlsl
    A clang/test/CodeGenHLSL/builtins/StructuredBuffer-constructor.hlsl
    A clang/test/CodeGenHLSL/builtins/StructuredBuffer-elementtype.hlsl
    A clang/test/CodeGenHLSL/builtins/StructuredBuffer-subscript.hlsl
    A clang/test/SemaHLSL/BuiltIns/StructuredBuffers.hlsl

  Log Message:
  -----------
  [HLSL] Add StructuredBuffer to external sema source (#106316)

This PR adds `StructuredBuffer` to `HLSLExternalSemaSource.cpp`, by
copying the logic from RWBuffer but just replacing the name with
StructuredBuffer. The change now allows StructuredBuffers to be defined
in HLSL, though they function the same as RWBuffers.

Further work to apply the appropriate attributes that distinguish
StructuredBuffers from other Buffer types will be deferred.
This improves our position on
https://github.com/llvm/llvm-project/issues/106189


  Commit: ea83e1c05a5adee5d8f9e680356ee57556ba64a1
      https://github.com/llvm/llvm-project/commit/ea83e1c05a5adee5d8f9e680356ee57556ba64a1
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f32-stride-5.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f32-stride-7.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f32-stride-8.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f64-stride-2.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f64-stride-3.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f64-stride-4.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f64-stride-5.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f64-stride-6.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f64-stride-7.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f64-stride-8.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i16-stride-5.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i16-stride-7.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i16-stride-8.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i32-stride-4-indices-01uu.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i32-stride-5.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i32-stride-7.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i32-stride-8.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i64-stride-2.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i64-stride-3.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i64-stride-4.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i64-stride-5.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i64-stride-6.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i64-stride-7.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i64-stride-8.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i8-stride-5.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i8-stride-7.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i8-stride-8.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-store-f64-stride-8.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-store-i64-stride-8.ll
    M llvm/test/Analysis/CostModel/X86/masked-interleaved-store-i16.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/interleaved-vs-scalar.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/interleaved_cost.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-interleaved-cost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll
    M llvm/test/Transforms/LoopVectorize/SystemZ/mem-interleaving-costs-03.ll

  Log Message:
  -----------
  [LV] Assign cost to all interleave members when not interleaving.

At the moment, the full cost of all interleave group members is assigned
to the instruction at the group's insert position, even if the decision
was to not form an interleave group.

This can lead to inaccurate cost estimates, e.g. if the instruction at
the insert position is dead. If the decision is to not vectorize but
scalarize or scather/gather, then the cost will be to total cost for all
members. In those cases, assign individual the cost per member, to more
closely reflect to choice per instruction.

This fixes a divergence between legacy and VPlan-based cost model.

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


  Commit: 956591bec5ffe5d293c4ac8044686f56ba8c118c
      https://github.com/llvm/llvm-project/commit/956591bec5ffe5d293c4ac8044686f56ba8c118c
  Author: Jorge Gorbe Moya <jgorbe at google.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  [SandboxIR] Add remaining SelectInst methods and track swapValues() (#108114)


  Commit: b3f3c0c63358b412348022d10308b97332d02bcd
      https://github.com/llvm/llvm-project/commit/b3f3c0c63358b412348022d10308b97332d02bcd
  Author: Jon Roelofs <jonathan_roelofs at apple.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M clang/lib/CodeGen/Targets/AArch64.cpp

  Log Message:
  -----------
  [clang][AArch64] Put soft-float ABI checks under isSoftFloat(). NFC


  Commit: 9c0ba62010b5850adf6b4c3979128aa6e9189aca
      https://github.com/llvm/llvm-project/commit/9c0ba62010b5850adf6b4c3979128aa6e9189aca
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/test/Transforms/PGOProfile/ctx-prof-use-prelink.ll

  Log Message:
  -----------
  [ctx_prof] Relax the "profile use" case around `PGOOpt` (#108265)

`PGOOpt` could have a value if, for instance, debug info for profiling
is requested. Relaxing the requirement, for now, following that
eventually we would factor `PGOOpt` to better capture the supported
interplay between the various profiling options.


  Commit: c2b93e0671d8cfd6b1a24c6e1d7be290125b8974
      https://github.com/llvm/llvm-project/commit/c2b93e0671d8cfd6b1a24c6e1d7be290125b8974
  Author: Xiaofeng Tian <110771974+txff99 at users.noreply.github.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  update llvm-dis header with available options (#108073)

update llvm-dis header options

Closes #108069


  Commit: 5c7957dd4f12e7c9128068c5ed92464cdc59947e
      https://github.com/llvm/llvm-project/commit/5c7957dd4f12e7c9128068c5ed92464cdc59947e
  Author: David Green <david.green at arm.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/fp-conversion-to-tbl.ll

  Log Message:
  -----------
  [AArch64] Allow i16->f64 uitofp tbl shuffles

Just as we convert i8->f32 uitofp to tbl to perform the zext, we can do the
same for i16->f64.


  Commit: 63d8bd27275458ccd5fd4010671ad781b0a3698c
      https://github.com/llvm/llvm-project/commit/63d8bd27275458ccd5fd4010671ad781b0a3698c
  Author: ChiaHungDuan <chiahungduan at google.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  [scudo] Add thread-safety annotation on getMemoryGroupFragmentationIn… (#108277)

Add thread-safety annotation on getMemoryGroupFragmentationInfoInRegion


  Commit: 60efbe99cb2ad19373d07de4806472094258508e
      https://github.com/llvm/llvm-project/commit/60efbe99cb2ad19373d07de4806472094258508e
  Author: Chris Apple <cja-private at pm.me>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M clang/docs/RealtimeSanitizer.rst

  Log Message:
  -----------
  [NFC][rtsan] Docs of how to disable rtsan (#107707)


  Commit: 54c6e1c3f51758469cc06cbcc2ad28af210fc004
      https://github.com/llvm/llvm-project/commit/54c6e1c3f51758469cc06cbcc2ad28af210fc004
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  [SLP] Move a non-power-of-two bailout down slightly

The first part of CheckForShuffledLoads isn't doing any subvector
analysis, so it's perfectly safe for arbitrary VL.


  Commit: ec7c8cd45fa3ca8cc5584caee4b1eaf843294af5
      https://github.com/llvm/llvm-project/commit/ec7c8cd45fa3ca8cc5584caee4b1eaf843294af5
  Author: Chris Apple <cja-private at pm.me>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h

  Log Message:
  -----------
  [compiler-rt][NFC] Add preprocessor definitions for 64 bit file interceptors that were missing (#108059)

These are needed in #108057


  Commit: 4618b67b48447ed924bc195cfe735a73841e312c
      https://github.com/llvm/llvm-project/commit/4618b67b48447ed924bc195cfe735a73841e312c
  Author: Michael Jones <michaelrj at google.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/src/sys/epoll/BUILD.bazel

  Log Message:
  -----------
  [libc][bazel] Enable epoll_pwait2 on bazel (#108254)

The wrapper for epoll_pwait2 has been difficult to enable since it
requires a very new version of the linux kernel (5.11). On cmake we
still need to create a mechanism to check if we can build it, but our
current bazel users are all on a new enough kernel version we can just
enable it.


  Commit: a66ce58ac6f338c91cccb9801bca04efae9f3f37
      https://github.com/llvm/llvm-project/commit/a66ce58ac6f338c91cccb9801bca04efae9f3f37
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M bolt/include/bolt/Utils/Utils.h
    M bolt/lib/Rewrite/PseudoProbeRewriter.cpp
    M bolt/lib/Utils/Utils.cpp

  Log Message:
  -----------
  [BOLT] Drop suffixes in parsePseudoProbe GUID assignment (#106243)

Pseudo probe function records contain GUIDs assigned by the compiler
using an IR function name. Thus suffixes added later (e.g. `.llvm.`
for internal symbols, `.destroy`/`.resume` for coroutine fragments, 
and `.cold`/`.warm` for split fragments) cause GUID mismatch.

Address that by dropping those suffixes using `getCommonName` which is
a parametrized form of `getLTOCommonName`.


  Commit: 1797174ea6adab08474658f9c9748991d172321c
      https://github.com/llvm/llvm-project/commit/1797174ea6adab08474658f9c9748991d172321c
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    A compiler-rt/test/sanitizer_common/TestCases/dlsym_alloc.c

  Log Message:
  -----------
  [NFC][sanitizer] Commit test for #106912 (#108289)

Almost all sanitizers already support the test.
* Tsan does not use DlsymAlloc yet.
* Lsan will support with #106912.

memprof,rtsan,nsan are not tested as part of
sanitizer_common, but we should keep them here to
show up when it happen.

---------

Co-authored-by: Xiaofeng Tian <110771974+txff99 at users.noreply.github.com>


  Commit: 3a0ef2a2d3113d162d0133d7384df52abb2e3d92
      https://github.com/llvm/llvm-project/commit/3a0ef2a2d3113d162d0133d7384df52abb2e3d92
  Author: A. Jiang <de34 at live.cn>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx17Issues.csv
    M libcxx/docs/Status/Cxx20Issues.csv
    M libcxx/include/future
    M libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor2.compile.pass.cpp

  Log Message:
  -----------
  [libc++] Reland LWG2921 and LWG2976 (#107960)

They were originally implemented in d42db7e083ee0 but reverted later in
a2f3c63282330be0.

This PR implement both LWG issues again, guarding the removed functions
with `_LIBCPP_STD_VER <= 14`, because they should be treated as patches 
for P0302R1 which was adopted for C++17.

Fixes #103598
Fixes #103755


  Commit: 695cb55ccb34a3cf659c12e1cbca1b916372a199
      https://github.com/llvm/llvm-project/commit/695cb55ccb34a3cf659c12e1cbca1b916372a199
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M libcxx/include/__std_clang_module
    M libcxx/modules/std.cppm.in
    M libcxx/utils/libcxx/header_information.py

  Log Message:
  -----------
  [libc++] Remove obsolete header restrictions for _LIBCPP_HAS_NO_THREADS (#107437)

The _LIBCPP_HAS_NO_THREADS carve-out does not result in hard errors
anymore, but the patch that changed that forgot to update the header
restrictions we use to auto-generate several files.

We can also remove the restrictions for the no-localization build and
no-wide-characters, but doing it is less straightforward so I'm leaving
it out of this patch.


  Commit: a85883662ad1904844b1bd5a34bf93d9b383e3b8
      https://github.com/llvm/llvm-project/commit/a85883662ad1904844b1bd5a34bf93d9b383e3b8
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  [clangl[TableGen] Change Diagnostic Emitter to use const RecordKeeper (#108209)

Change Diagnostic Emitter to use const RecordKeeper.

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


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


  Commit: a29afb754fb445a2cccc361c556d4e072604b3be
      https://github.com/llvm/llvm-project/commit/a29afb754fb445a2cccc361c556d4e072604b3be
  Author: Chris B <chris.bieneman at me.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M clang/lib/AST/Expr.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/test/CodeGenHLSL/BasicFeatures/standard_conversion_sequences.hlsl
    M clang/test/CodeGenHLSL/builtins/dot.hlsl
    M clang/test/CodeGenHLSL/builtins/lerp.hlsl
    M clang/test/CodeGenHLSL/builtins/mad.hlsl
    M clang/test/SemaHLSL/TruncationOverloadResolution.hlsl
    M clang/test/SemaHLSL/Types/BuiltinVector/ScalarSwizzleErrors.hlsl
    A clang/test/SemaHLSL/Types/BuiltinVector/TruncationConstantExpr.hlsl

  Log Message:
  -----------
  [HLSL] Allow truncation to scalar (#104844)

HLSL allows implicit conversions to truncate vectors to scalar
pr-values. These conversions are scored as vector truncations and should
warn appropriately.

This change allows forming a truncation cast to a pr-value, but not an
l-value. Truncating a vector to a scalar is performed by loading the
first element of the vector and disregarding the remaining elements.

Fixes #102964


  Commit: 07a7bdc806961ef63b1fd7bdd63f27c6c803aa7c
      https://github.com/llvm/llvm-project/commit/07a7bdc806961ef63b1fd7bdd63f27c6c803aa7c
  Author: Brendan Dahl <brendan.dahl at gmail.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td

  Log Message:
  -----------
  [WebAssembly] Fix lane index size for f16x8 extract_lane. (#108118)


  Commit: 31d48372732bc3fd3606aeb9c5cceb7cce739b4e
      https://github.com/llvm/llvm-project/commit/31d48372732bc3fd3606aeb9c5cceb7cce739b4e
  Author: vporpo <vporpodas at google.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/benchmarks/SandboxIRBench.cpp

  Log Message:
  -----------
  [SandboxIR][Bench] SandboxIR creation (#108278)

Adds a benchmark for the overhead of SandboxIR creation.


  Commit: c98d6c2e4293a4ab352e08d49dac3c1357cbbc6a
      https://github.com/llvm/llvm-project/commit/c98d6c2e4293a4ab352e08d49dac3c1357cbbc6a
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  [NFC] Reformat ClangASTPropertiesEmitter `ASTPropsEmitter` class (#108275)


  Commit: 060137038ab9246b377e190ae3c6f272fa57cbfc
      https://github.com/llvm/llvm-project/commit/060137038ab9246b377e190ae3c6f272fa57cbfc
  Author: yronglin <yronglin777 at gmail.com>
  Date:   2024-09-12 (Thu, 12 Sep 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/Parse/ParseDecl.cpp
    M clang/lib/Sema/CheckExprLifetime.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaInit.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/test/AST/ast-dump-default-init-json.cpp
    M clang/test/AST/ast-dump-default-init.cpp
    M clang/test/Analysis/lifetime-extended-regions.cpp
    M clang/test/CXX/drs/cwg16xx.cpp
    M clang/test/CXX/drs/cwg18xx.cpp
    M clang/test/CXX/special/class.temporary/p6.cpp
    A clang/test/SemaCXX/PR97308.cpp
    M clang/test/SemaCXX/constexpr-default-arg.cpp
    M clang/test/SemaCXX/cxx11-default-member-initializers.cpp
    M clang/test/SemaCXX/eval-crashes.cpp
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  Reapply "[Clang][CWG1815] Support lifetime extension of temporary created by aggregate initialization using a default member initializer" (#108039)

The PR reapply https://github.com/llvm/llvm-project/pull/97308. 

- Implement [CWG1815](https://wg21.link/CWG1815): Support lifetime
extension of temporary created by aggregate initialization using a
default member initializer.

- Fix crash that introduced in
https://github.com/llvm/llvm-project/pull/97308. In
`InitListChecker::FillInEmptyInitForField`, when we enter
rebuild-default-init context, we copy all the contents of the parent
context to the current context, which will cause the `MaybeODRUseExprs`
to be lost. But we don't need to copy the entire context, only the
`DelayedDefaultInitializationContext` was required, which is used to
build `SourceLocExpr`, etc.

---------

Signed-off-by: yronglin <yronglin777 at gmail.com>


  Commit: 0909e3027004bb710b1d761569eb15452ce10346
      https://github.com/llvm/llvm-project/commit/0909e3027004bb710b1d761569eb15452ce10346
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M lldb/test/Shell/SymbolFile/checksum-mismatch.test

  Log Message:
  -----------
  [lldb] Skip checksum-mismatch.test on Windows


  Commit: ae0ed3d58600da9ec266bf86d0084775f561ba3a
      https://github.com/llvm/llvm-project/commit/ae0ed3d58600da9ec266bf86d0084775f561ba3a
  Author: tmiasko <tomasz.miasko at gmail.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M compiler-rt/lib/lsan/lsan_interceptors.cpp
    M compiler-rt/test/sanitizer_common/TestCases/dlsym_alloc.c

  Log Message:
  -----------
  [lsan] Fix free(NULL) interception during initialization (#106912)

Previously an attempt to free a null pointer during initialization would
fail on ENSURE_LSAN_INITED assertion (since a null pointer is not owned
by DlsymAlloc).


  Commit: 2a9208b0c9ddec4d321bf3af1d06a60210c89da3
      https://github.com/llvm/llvm-project/commit/2a9208b0c9ddec4d321bf3af1d06a60210c89da3
  Author: Brendan Dahl <brendan.dahl at gmail.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsWebAssembly.def
    M clang/lib/Headers/wasm_simd128.h
    M clang/test/CodeGen/builtins-wasm.c

  Log Message:
  -----------
  [WebAssembly] Change F16x8 extract lane to require constant integer. (#108116)

Building with no optimizations resulted in failures since the lane
constant wasn't a constant in LLVM IR.


  Commit: b5fd9463a3b9aecfc132828510f7e2a47b581b14
      https://github.com/llvm/llvm-project/commit/b5fd9463a3b9aecfc132828510f7e2a47b581b14
  Author: jofrn <jofernau at amd.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M clang/lib/CodeGen/CGCUDANV.cpp
    M clang/test/CodeGenCUDA/device-stub.cu

  Log Message:
  -----------
  [HIP][Clang][CodeGen] Handle hip bin symbols properly. (#107458)

Remove '_' in fatbin and gpubin symbol suffixes when missing TU hash ID.
Internalize gpubin symbol so that it is not unresolved at link-time when
symbol is not relocatable.


  Commit: 7910812414108ed9085548e2704f3ad5c018e970
      https://github.com/llvm/llvm-project/commit/7910812414108ed9085548e2704f3ad5c018e970
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/RISCV/complex-loads.ll

  Log Message:
  -----------
  [SLP] Regen a test to pick up naming changes


  Commit: aa60a3e4d0664dedc8ae0ea005459186fdc1aab9
      https://github.com/llvm/llvm-project/commit/aa60a3e4d0664dedc8ae0ea005459186fdc1aab9
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPU.td
    M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
    M mlir/test/Conversion/AMDGPUToROCDL/amdgpu-to-rocdl.mlir

  Log Message:
  -----------
  [mlir][AMDGPU] Support vector<2xf16> inputs to buffer atomic fadd (#108286)

Extend the lowering of atomic.fadd to support the v2f16 variant
avaliable on some AMDGPU chips.

Re-lands #108238 (and addresses review comments from there)

Co-authored-by: Giuseppe Rossini <giuseppe.rossini at amd.com>


  Commit: fa8b737a81c310b297d1120dae1f915c63486498
      https://github.com/llvm/llvm-project/commit/fa8b737a81c310b297d1120dae1f915c63486498
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/RISCV/vec3-base.ll

  Log Message:
  -----------
  [SLP][RISCV] Add test for 3 element build vector feeding reduce

Our costs for build vectors are currently a bit off which inhibits
vectorization.  Fix forthcoming.


  Commit: d32982b6b3753091a532530c7a66f9686deb5233
      https://github.com/llvm/llvm-project/commit/d32982b6b3753091a532530c7a66f9686deb5233
  Author: Sarah Spall <spall at users.noreply.github.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M clang/test/Sema/builtins-elementwise-math.c

  Log Message:
  -----------
  [HLSL] fix elementwise bitreverse test (#108128)

The test called 'ceil' instead of 'bitreverse', which I assume was a
copy paste leftover.


  Commit: 6e4dcbb21dab47e520f2cd19e7017af27328669e
      https://github.com/llvm/llvm-project/commit/6e4dcbb21dab47e520f2cd19e7017af27328669e
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M clang/include/clang/Tooling/DependencyScanning/DependencyScanningService.h
    M clang/include/clang/Tooling/DependencyScanning/DependencyScanningTool.h
    M clang/include/clang/Tooling/DependencyScanning/DependencyScanningWorker.h
    M clang/lib/Basic/FileManager.cpp
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Tooling/DependencyScanning/DependencyScanningService.cpp
    M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
    A clang/test/ClangScanDeps/verbose.test
    A clang/test/Misc/print-stats-vfs.test
    M clang/tools/clang-scan-deps/ClangScanDeps.cpp

  Log Message:
  -----------
  [clang][deps] Print tracing VFS data (#108056)

Clang's `-cc1 -print-stats` shows lots of useful internal data including
basic `FileManager` stats. Since this layer caches some results, it is
unclear how that information translates to actual filesystem accesses.
This PR uses `llvm::vfs::TracingFileSystem` to provide that missing
information.

Similar mechanism is implemented for `clang-scan-deps`'s verbose mode
(`-v`). IO contention proved to be a real bottleneck a couple of times
already and this new feature should make those easier to detect in the
future. The tracing VFS is inserted below the caching FS and above the
real FS.


  Commit: 1b3e64a9d2a85871a28fc98bcca236df640c64e8
      https://github.com/llvm/llvm-project/commit/1b3e64a9d2a85871a28fc98bcca236df640c64e8
  Author: Elvis Wang <elvis.wang at sifive.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    A llvm/test/Analysis/CostModel/RISCV/cmp.ll

  Log Message:
  -----------
  [RISCV][TTI] Add vp.cmp intrinsic cost with functionalOPC. (#107504)

This patch make the instruction cost of VP compare intrinsics as same as
their non-VP counterpart.


  Commit: b690cae01af03237f6b5304e00d529227137b53d
      https://github.com/llvm/llvm-project/commit/b690cae01af03237f6b5304e00d529227137b53d
  Author: Joshua Batista <jbatista at microsoft.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M clang/test/AST/HLSL/StructuredBuffer-AST.hlsl

  Log Message:
  -----------
  Update StructuredBuffer-AST test after removal of HLSLResourceClassAttr (#108292)

In a previous PR, the `HLSLResourceClassAttr` attribute was removed from
the AST, in favor of using an attributed type that stores the same
information instead. This PR fixes test failures that assumed that
`HLSLResourceClassAttr` was still in the AST, and adjusts for the new
AST representation.


  Commit: 93e45a69dde16e6a3ac0ddbcc596ac3843d59c43
      https://github.com/llvm/llvm-project/commit/93e45a69dde16e6a3ac0ddbcc596ac3843d59c43
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb/LLDB.py

  Log Message:
  -----------
  [Dexter] Adapt to upcoming lldb stepping behavior (#108127)

lldb will change how it reports stop reasons around breakpoints in the
near future. I landed an earlier version of this change and noticed
debuginfo test failures on the CI bots due to the changes. I'm
addressing the issues found by CI at
https://github.com/llvm/llvm-project/pull/105594 and will re-land once
I've done all of them.

Currently, when lldb stops at a breakpoint instruction -- but has not
yet executed the instruction -- it will overwrite the thread's Stop
Reason with "breakpoint-hit". This caused bugs when the original stop
reason was important to the user - for instance, a watchpoint on an
AArch64 system where we have to instruction-step past the watchpoint to
find the new value. Normally we would instruction step, fetch the new
value, then report the user that a watchpoint has been hit with the old
and new values. But if the instruction after this access is a breakpoint
site, we overwrite the "watchpoint hit" stop reason (and related
actions) with "breakpoint hit".

dexter sets breakpoints on all source lines, then steps line-to-line,
hitting the breakpoints. But with this new behavior, we see two steps
per source line: The first step gets us to the start of the next line,
with a "step completed" stop reason. Then we step again and we execute
the breakpoint instruction, stop with the pc the same, and report
"breakpoint hit". Now we can step a second time and move past the
breakpoint.

I've changed the `step` method in LLDB.py to check if we step to a
breakpoint site but have a "step completed" stop reason -- in which case
we have this new breakpoint behavior, and we need to step a second time
to actually hit the breakpoint like the debuginfo tests expect.


  Commit: 34e20f18f0a77cece57e13e179dcf5b58992a705
      https://github.com/llvm/llvm-project/commit/34e20f18f0a77cece57e13e179dcf5b58992a705
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/docs/DirectX/DXILResources.rst
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILOpLowering.cpp
    M llvm/test/CodeGen/DirectX/BufferLoad.ll

  Log Message:
  -----------
  [DirectX] Implement typedBufferLoad_checkbit (#108087)

This represents a typedBufferLoad that's followed by
"CheckAccessFullyMapped". It returns an extra `i1` representing that
value.

Fixes #108085


  Commit: c820bd3e33caf8fb8a2ec984c584d54108430b65
      https://github.com/llvm/llvm-project/commit/c820bd3e33caf8fb8a2ec984c584d54108430b65
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M bolt/lib/Profile/DataAggregator.cpp
    M bolt/lib/Profile/YAMLProfileReader.cpp
    M bolt/lib/Profile/YAMLProfileWriter.cpp
    M bolt/lib/Rewrite/PseudoProbeRewriter.cpp
    M bolt/test/X86/pseudoprobe-decoding-inline.test

  Log Message:
  -----------
  [BOLT][NFC] Rename profile-use-pseudo-probes

The flag currently controls writing of probe information in YAML
profile. #99891 adds a separate flag to use probe information for stale
profile matching. Thus `profile-use-pseudo-probes` becomes a misnomer
and `profile-write-pseudo-probes` better captures the intent.

Reviewers: maksfb, WenleiHe, ayermolo, rafaelauler, dcci

Reviewed By: rafaelauler

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


  Commit: 86ec59e2f789ae6469ff434f3b6455f09af5919c
      https://github.com/llvm/llvm-project/commit/86ec59e2f789ae6469ff434f3b6455f09af5919c
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M bolt/lib/Rewrite/PseudoProbeRewriter.cpp

  Log Message:
  -----------
  [BOLT] Only parse probes for profiled functions in profile-write-pseudo-probes mode (#106365)

Implement selective probe parsing for profiled functions only when
emitting probe information to YAML profile as suggested in

https://github.com/llvm/llvm-project/pull/102904#pullrequestreview-2248714190

For a large binary, this reduces probe parsing 
- processing time from 10.5925s to 5.6295s,
- peak RSS from 10.54 to 7.98 GiB.


  Commit: ccc7a072db05592cc42c0caac835b22f9a01a89f
      https://github.com/llvm/llvm-project/commit/ccc7a072db05592cc42c0caac835b22f9a01a89f
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M bolt/lib/Profile/DataAggregator.cpp

  Log Message:
  -----------
  [BOLT] Drop blocks without profile in BAT YAML (#107970)

Align BAT YAML (DataAggregator) to YAMLProfileWriter which drops blocks
without profile:

https://github.com/llvm/llvm-project/blob/61372fc5db9b14fd612be8a58a76edd7f0ee38aa/bolt/lib/Profile/YAMLProfileWriter.cpp#L162-L176

Test Plan: NFCI


  Commit: 828783177f71d95522763fba92ef1e42dc6101c7
      https://github.com/llvm/llvm-project/commit/828783177f71d95522763fba92ef1e42dc6101c7
  Author: Henrik G. Olsson <hnrklssn at gmail.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/utils/lit/lit/TestRunner.py
    A llvm/utils/lit/tests/Inputs/escape-color/color-escaped.txt
    A llvm/utils/lit/tests/Inputs/escape-color/color.txt
    A llvm/utils/lit/tests/Inputs/escape-color/lit.cfg
    A llvm/utils/lit/tests/escape-color.py

  Log Message:
  -----------
  Reland "[llvm-lit] Process ANSI color codes in test output when forma… (#108107)

…tting" (#108104)"

This recommits 0f56ba13bff7ab72bfafcf7c5cf9e5b8bd16d895 (reverted by
6007ad79afeffb1288781b4a7241290386293aff). In the original patch
llvm/utils/lit/tests/escape-color.py failed on Windows because it diffed
llvm-lit output with a file containing '\n' newlines rather than '\r\n'.
This issue is avoided by calling 'diff --strip-trailing-cr'.

Original description below:
Test output that carried color across newlines previously resulted in
the formatting around the output also being colored. Detect the current
ANSI color and reset it when printing formatting, and then reapply it.
As an added bonus an unterminated color code is also detected,
preventing it from leaking out into the rest of the terminal.

Fixes #106633


  Commit: 3cd01371e007b2a8fe32e5d8ce1154057e5e1c2e
      https://github.com/llvm/llvm-project/commit/3cd01371e007b2a8fe32e5d8ce1154057e5e1c2e
  Author: Pranav Kant <prka at google.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M clang/include/clang/Serialization/ASTReader.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    R clang/test/Headers/crash-instantiated-in-scope-cxx-modules.cpp
    R clang/test/Headers/crash-instantiated-in-scope-cxx-modules2.cpp

  Log Message:
  -----------
  Revert "[RFC][C++20][Modules] Fix crash when function and lambda insi… (#108311)

…de loaded from different modules (#104512)"

This reverts commit d778689fdc812033e7142ed87e4ee13c4997b3f9.


  Commit: 480f07ff6c7ac2d928b6f1862698dbd51069735c
      https://github.com/llvm/llvm-project/commit/480f07ff6c7ac2d928b6f1862698dbd51069735c
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfwmaccbf16.ll

  Log Message:
  -----------
  [RISCV] Add fixed length vector patterns for vfwmaccbf16.vv (#108204)

This adds VL patterns for vfwmaccbf16.vv so that we can handle fixed
length vectors.

It does this by teaching combineOp_VLToVWOp_VL to emit
RISCVISD::VFWMADD_VL for bf16. The change in getOrCreateExtendedOp is
needed because getNarrowType is based off of the bitwidth so returns
f16. We need to explicitly check for bf16.

Note that the .vf patterns don't work yet, since the build_vector splat
gets lowered to a (vmv_v_x_vl (fmv_x_anyexth x)) instead of a vfmv.v.f,
which SplatFP doesn't pick up, see #106637.


  Commit: 44d122188e0edf4a834bcd97256cf4af0de05890
      https://github.com/llvm/llvm-project/commit/44d122188e0edf4a834bcd97256cf4af0de05890
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    A llvm/test/CodeGen/RISCV/rvv/load-bf16.ll
    A llvm/test/CodeGen/RISCV/rvv/store-bf16.ll

  Log Message:
  -----------
  [RISCV] Expand bf16 vector truncstores and extloads (#108235)

Previously they were legal by default, so the truncstore/extload test
cases would get combined and crash during selection.
These are set to expand for f16 so do the same for bf16.


  Commit: 1a431bcea7c2606ebaab47b58e5bba082189675c
      https://github.com/llvm/llvm-project/commit/1a431bcea7c2606ebaab47b58e5bba082189675c
  Author: Longsheng Mou <longshengmou at gmail.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaTypesBase.td
    M mlir/include/mlir/IR/CommonAttrConstraints.td
    M mlir/test/Dialect/Tosa/invalid.mlir

  Log Message:
  -----------
  [mlir][Tosa] Fix attr type of out_shape for `tosa.transpose_conv2d` (#108041)

This patch fixes attr type of out_shape, which is i64 dense array
attribute with exactly 4 elements.

- Fix description of DenseArrayMaxCt
- Add DenseArrayMinCt and move it to CommonAttrConstraints.td
- Change type of out_shape to Tosa_IntArrayAttr4

Fixes #107804.


  Commit: 757d8b3efdd82a02973d0ab4ebaa2e05e9ab7ae0
      https://github.com/llvm/llvm-project/commit/757d8b3efdd82a02973d0ab4ebaa2e05e9ab7ae0
  Author: Jim Lin <jim at andestech.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/test/Driver/riscv-mcmodel.c

  Log Message:
  -----------
  [RISCV] Allow -mcmodel= to accept large for RV64 (#107817)


  Commit: 3d129016b1a0cb00a26bfab521350ef824d6d76d
      https://github.com/llvm/llvm-project/commit/3d129016b1a0cb00a26bfab521350ef824d6d76d
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILOpBuilder.cpp
    M llvm/lib/Target/DirectX/DXILOpBuilder.h
    M llvm/lib/Target/DirectX/DXILOpLowering.cpp
    M llvm/test/CodeGen/DirectX/CreateHandleFromBinding.ll

  Log Message:
  -----------
  [DirectX] Preserve value names in DXILOpLowering. NFC (#108089)

If the value we're replacing has a name, we might as well preserve it.


  Commit: 39751e7ff998266bdefeaaf3b3bf3cdba26b0322
      https://github.com/llvm/llvm-project/commit/39751e7ff998266bdefeaaf3b3bf3cdba26b0322
  Author: Congcong Cai <congcongcai0907 at 163.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/add_new_check.py

  Log Message:
  -----------
  [clang-tidy][NFC] fix add_new_check python3.8 incompatibility (#107871)

Fixes: #107846


  Commit: c9ab69798ff92f1fcd150a0e1988d08fb8c2a59d
      https://github.com/llvm/llvm-project/commit/c9ab69798ff92f1fcd150a0e1988d08fb8c2a59d
  Author: vporpo <vporpodas at google.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  [SandboxIR] Implement ConstantTokenNone (#108106)

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


  Commit: 2d4bdfba96d4cf88b12226b2b511bf55ee5e6559
      https://github.com/llvm/llvm-project/commit/2d4bdfba96d4cf88b12226b2b511bf55ee5e6559
  Author: Yun-Fly <yunfei.song at intel.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
    M mlir/test/Interfaces/TilingInterface/tile-and-fuse-consumer.mlir

  Log Message:
  -----------
  [mlir][scf] Extend consumer fuse to single nested `scf.for` (#94190)

Refactor current consumer fusion based on `addInitOperandsToLoopNest` to support single nested `scf.for`, E.g.

```
%0 = scf.for() {
  %1 = scf.for() {
     tiledProducer
  }
  yield %1
}
%2 = consumer ins(%0)
```


  Commit: 335538c271c9c71ef3f2e23680265e7b77595be0
      https://github.com/llvm/llvm-project/commit/335538c271c9c71ef3f2e23680265e7b77595be0
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
    M mlir/test/Interfaces/TilingInterface/tile-and-fuse-consumer.mlir

  Log Message:
  -----------
  Revert "[mlir][scf] Extend consumer fuse to single nested `scf.for` (#94190)"

This reverts commit 2d4bdfba96d4cf88b12226b2b511bf55ee5e6559.

A build breakage is reported at:

https://lab.llvm.org/buildbot/#/builders/138/builds/3524


  Commit: 8168088f0a9015bc6d930e8bc1c639dee06ca82c
      https://github.com/llvm/llvm-project/commit/8168088f0a9015bc6d930e8bc1c639dee06ca82c
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  [clang-format] Fix regressions in BAS_AlwaysBreak (#107506)

Fixes #107401.
Fixes #107574.


  Commit: 5e80fc88f484b471ec61ac28894698a946c4fb89
      https://github.com/llvm/llvm-project/commit/5e80fc88f484b471ec61ac28894698a946c4fb89
  Author: Lang Hames <lhames at gmail.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/tools/opt/CMakeLists.txt

  Log Message:
  -----------
  [opt] Fix opt for LLVM_ENABLE_EXPORTED_SYMBOLS_IN_EXECUTABLES=Off.

Building with -DLLVM_ENABLE_EXPORTED_SYMBOLS_IN_EXECUTABLES=Off should not
prevent use of opt plugins.

This fix uses the approach implemented in
https://github.com/llvm/llvm-project/pull/101741.

rdar://135841478


  Commit: 2740273505ab27c0d8531d35948f0647309842cd
      https://github.com/llvm/llvm-project/commit/2740273505ab27c0d8531d35948f0647309842cd
  Author: Amy Wang <kai.ting.wang at huawei.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M mlir/include/mlir/Analysis/Presburger/Utils.h
    M mlir/lib/Analysis/Presburger/IntegerRelation.cpp
    M mlir/lib/Analysis/Presburger/Matrix.cpp
    M mlir/lib/Analysis/Presburger/Simplex.cpp

  Log Message:
  -----------
  [MLIR][Presburger] Make printing aligned to assist in debugging (#107648)

Hello Arjun! Please allow me to contribute this patch as it helps me
debugging significantly! When the 1's and 0's don't line up when
debugging farkas lemma of numerous polyhedrons using simplex lexmin
solver, it is truly straining on the eyes. Hopefully this patch can help
others!

The unfortunate part is the lack of testcase as I'm not sure how to add
testcase for debug dumps. :) However, you can add this testcase to the
SimplexTest.cpp to witness the nice printing!

```c++
TEST(SimplexTest, DumpTest) {
  int COLUMNS = 2;
  int ROWS = 2;
  LexSimplex simplex(COLUMNS * 2);
  IntMatrix m1(ROWS, COLUMNS * 2 + 1);
  // Adding LHS columns.
  for (int i = 0; i < ROWS; i++) {
    // an arbitrary formula to test all kinds of integers
    for (int j = 0; j < COLUMNS; j++) 
      m1(i, j) = i + (2 << (i % 3)) * (-1 * ((i + j) % 2));
  }
  // Adding RHS columns.
  for (int i = 0; i < ROWS; i++) {
    for (int j = 0; j < COLUMNS; j++)
      m1(i, j + COLUMNS) = j - (3 << (j % 4)) * (-1 * ((i + j * 2) % 2));
  }
  for (int i = 0; i < m1.getNumRows(); i++) {
    ArrayRef<DynamicAPInt> curRow = m1.getRow(i);
    simplex.addInequality(curRow);
  }
  IntegerRelation rel =
      parseRelationFromSet("(x, y, z)[] : (z - x - 17 * y == 0, x - 11 * z >= 1)",2);
  simplex.dump();
  m1.dump();
  rel.dump();
}
```

```
rows = 2, columns = 7
var: c3, c4, c5, c6
con: r0 [>=0], r1 [>=0]
r0: -1, r1: -2
c0: denom, c1: const, c2: 2147483647, c3: 0, c4: 1, c5: 2, c6: 3
  1  0  1  0 -2  0  1
  1  0 -8 -3  1  3  7

  0 -2  0  1  0
 -3  1  3  7  0
Domain: 2, Range: 1, Symbols: 0, Locals: 0
2 constraints
 -1  -17  1   0   = 0
  1   0  -11 -1  >= 0

```


  Commit: 94698369e9cc211b4d1e666b82dc5848c40ab5ce
      https://github.com/llvm/llvm-project/commit/94698369e9cc211b4d1e666b82dc5848c40ab5ce
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  [clang-format][NFC] Minor clean of TokenAnnotatorTest


  Commit: ded080152acceca5d68014d63f5027a6d8266cbb
      https://github.com/llvm/llvm-project/commit/ded080152acceca5d68014d63f5027a6d8266cbb
  Author: Sirui Mu <msrlancern at gmail.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M libc/cmake/modules/LLVMLibCArchitectures.cmake
    M libc/include/llvm-libc-macros/float16-macros.h
    M libc/include/llvm-libc-macros/stdckdint-macros.h
    M libc/src/__support/CPP/CMakeLists.txt
    M libc/src/__support/CPP/new.cpp
    M libc/src/__support/CPP/new.h
    M libc/src/__support/OSUtil/io.h
    A libc/src/__support/OSUtil/windows/CMakeLists.txt
    A libc/src/__support/OSUtil/windows/exit.cpp
    A libc/src/__support/OSUtil/windows/io.cpp
    A libc/src/__support/OSUtil/windows/io.h
    M libc/src/__support/macros/properties/types.h
    M libc/test/src/__support/CMakeLists.txt
    M libc/test/src/__support/FPUtil/CMakeLists.txt
    M libc/test/src/__support/FPUtil/fpbits_test.cpp
    M libc/test/src/__support/arg_list_test.cpp
    M libc/test/src/fenv/CMakeLists.txt
    M libc/test/src/fenv/getenv_and_setenv_test.cpp
    M libc/test/src/math/smoke/AddTest.h
    M libc/test/src/math/smoke/CMakeLists.txt
    M libc/test/src/math/smoke/SubTest.h
    M libc/test/src/string/memory_utils/CMakeLists.txt
    M libc/test/src/string/memory_utils/op_tests.cpp

  Log Message:
  -----------
  [libc] Add osutils for Windows and make libc and its tests build on Windows target (#104676)

This PR first adds osutils for Windows, and changes some libc code to
make libc and its tests build on the Windows target. It then temporarily
disables some libc tests that are currently problematic on Windows.

Specifically, the changes besides the addition of osutils include:

- Macro `LIBC_TYPES_HAS_FLOAT16` is disabled on Windows. `clang-cl`
generates calls to functions in `compiler-rt` to handle float16
arithmetic and these functions are currently not linked in on Windows.
- Macro `LIBC_TYPES_HAS_INT128` is disabled on Windows.
- The invocation to `::aligned_malloc` is changed to an invocation to
`::_aligned_malloc`.
- The following unit tests are temporarily disabled because they
currently fail on Windows:
  - `test.src.__support.big_int_test`
  - `test.src.__support.arg_list_test`
  - `test.src.fenv.getenv_and_setenv_test`
- Tests involving `__m128i`, `__m256i`, and `__m512i` in
`test.src.string.memory_utils.op_tests.cpp`
- `test_range_errors` in `libc/test/src/math/smoke/AddTest.h` and
`libc/test/src/math/smoke/SubTest.h`


  Commit: b7167c784486581dad3f3188232951b79c6d0fd9
      https://github.com/llvm/llvm-project/commit/b7167c784486581dad3f3188232951b79c6d0fd9
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M mlir/include/mlir/Analysis/Presburger/Utils.h

  Log Message:
  -----------
  [mlir] Fix incorrect comparison due to -Wtautological-constant-out-of-range-compare (NFC)

/llvm-project/mlir/include/mlir/Analysis/Presburger/Utils.h:320:26:
error: result of comparison of constant 18446744073709551615 with expression of type 'unsigned int' is always true [-Werror,-Wtautological-constant-out-of-range-compare]
  preIndent = (preIndent != std::string::npos) ? preIndent + 1 : 0;
               ~~~~~~~~~ ^  ~~~~~~~~~~~~~~~~~
/llvm-project/mlir/include/mlir/Analysis/Presburger/Utils.h:335:28:
error: result of comparison of constant 18446744073709551615 with expression of type 'unsigned int' is always true [-Werror,-Wtautological-constant-out-of-range-compare]
    preIndent = (preIndent != std::string::npos) ? preIndent + 1 : 0;
                 ~~~~~~~~~ ^  ~~~~~~~~~~~~~~~~~
2 errors generated.


  Commit: a9ba1b6dd5133aa4432759c203e807d8039b4cbd
      https://github.com/llvm/llvm-project/commit/a9ba1b6dd5133aa4432759c203e807d8039b4cbd
  Author: Yun-Fly <yunfei.song at intel.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
    M mlir/test/Interfaces/TilingInterface/tile-and-fuse-consumer.mlir

  Log Message:
  -----------
  [mlir][scf] Extend consumer fuse to single nested `scf.for` (#108318)

Refactor current consumer fusion based on `addInitOperandsToLoopNest` to support single nested `scf.for`, E.g.

```
%0 = scf.for() {
  %1 = scf.for() {
     tiledProducer
  }
  yield %1
}
%2 = consumer ins(%0)
```

Compared with #94190, this PR fix build failure by making C++17 happy.


  Commit: 08740a6157375c4173023f28fc9e90689afee5ba
      https://github.com/llvm/llvm-project/commit/08740a6157375c4173023f28fc9e90689afee5ba
  Author: Peilin Ye <yepeilin at google.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  [CodeGen] Fix documentation for ISD::ATOMIC_STORE. NFC (#108126)

Update ISDOpcodes.h documentation according to commit ad9d13d
("SelectionDAG: Swap operands of atomic_store") for less confusion.


  Commit: 8c17ed1512239a5a9b1320f678a8cd89db8b0981
      https://github.com/llvm/llvm-project/commit/8c17ed1512239a5a9b1320f678a8cd89db8b0981
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.h
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-buildvec.ll

  Log Message:
  -----------
  [RISCV] Generalize RISCVDAGToDAGISel::selectFPImm to handle bitcasts from int to FP. (#108284)

selectFPImm previously handled cases where an FPImm could be
materialized in an integer register.

We can generalize this to cases where a value was in an integer register
and then copied to a scalar FP register to be used by a vector
instruction.

In the affected test, the call lowering code used up all of the FP
argument registers and started using GPRs. Now we use integer vector
instructions to consume those GPRs instead of moving them to scalar FP
first.


  Commit: 1211d97922d62470ac8bc658f7bfe57e8b46a107
      https://github.com/llvm/llvm-project/commit/1211d97922d62470ac8bc658f7bfe57e8b46a107
  Author: David Majnemer <david.majnemer at gmail.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/vector-shift-lshr-128.ll
    M llvm/test/CodeGen/X86/vector-shift-lshr-256.ll
    M llvm/test/CodeGen/X86/vector-shift-lshr-512.ll

  Log Message:
  -----------
  [X86] Use SWAR techniques for some vector i8 shifts

SSE & AVX do not include instructions for shifting i8 vectors. Instead,
they must be synthesized via other instructions.

If pairs of i8 vectors share a shift amount, we can use SWAR techniques
to substantially reduce the amount of code generated.

Say we were going to execute this shift right:
  x >> {0, 0, 0, 0, 4, 4, 4, 4, 0, 0, 0, 0, ...}

LLVM would previously generate:
        vpxor   %xmm1, %xmm1, %xmm1
        vpunpckhbw      %ymm0, %ymm1, %ymm2
        vpunpckhbw      %ymm1, %ymm0, %ymm3
        vpsllw  $4, %ymm3, %ymm3
        vpblendd        $204, %ymm3, %ymm2, %ymm2
        vpsrlw  $8, %ymm2, %ymm2
        vpunpcklbw      %ymm0, %ymm1, %ymm3
        vpunpcklbw      %ymm1, %ymm0, %ymm0
        vpsllw  $4, %ymm0, %ymm0
        vpblendd        $204, %ymm0, %ymm3, %ymm0
        vpsrlw  $8, %ymm0, %ymm0
        vpackuswb       %ymm2, %ymm0, %ymm0

Instead, we can reinterpret a pair of i8 elements as an i16 and shift
use the same shift amount. The only thing we need to do is mask out any
bits which crossed the boundary from the top i8 to the bottom i8.

This SWAR-style technique achieves:
        vpsrlw  $4, %ymm0, %ymm1
        vpblendd        $170, %ymm1, %ymm0, %ymm0
        vpand   .LCPI0_0(%rip), %ymm0, %ymm0

This is implemented for both left and right logical shift operations.
Arithmetic shifts are less well behaved here because the shift cannot
also perform the sign extension for the lower 8 bits.


  Commit: d5f0969c96224a44062715751da3c369ce5ea3f8
      https://github.com/llvm/llvm-project/commit/d5f0969c96224a44062715751da3c369ce5ea3f8
  Author: MaheshRavishankar <1663364+MaheshRavishankar at users.noreply.github.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/Utils/Utils.h
    M mlir/include/mlir/Dialect/SCF/Transforms/TileUsingInterface.h
    M mlir/include/mlir/Interfaces/TilingInterface.h
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/TilingInterfaceImpl.cpp
    M mlir/lib/Dialect/Linalg/Utils/Utils.cpp
    M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
    M mlir/lib/Dialect/Tensor/IR/TensorTilingInterfaceImpl.cpp
    M mlir/test/Interfaces/TilingInterface/tile-and-fuse-using-interface.mlir
    M mlir/test/lib/Interfaces/TilingInterface/TestTilingInterfaceTransformOps.cpp

  Log Message:
  -----------
  [mlir][TilingInterface] Avoid looking at operands for getting slices to continue tile + fuse. (#107882)

Current implementation of `scf::tileConsumerAndFuseProducerUsingSCF`
looks at operands of tiled/tiled+fused operations to see if they are
produced by `extract_slice` operations to populate the worklist used to
continue fusion. This implicit assumption does not always work. Instead
make the implementations of `getTiledImplementation` return the slices
to use to continue fusion.

This is a breaking change

- To continue to get the same behavior of
`scf::tileConsumerAndFuseProducerUsingSCF`, change all out-of-tree
implementation of `TilingInterface::getTiledImplementation` to return
the slices to continue fusion on. All in-tree implementations have been
adapted to this.
- This change touches parts that required a simplification to the
`ControlFn` in `scf::SCFTileAndFuseOptions`. It now returns a
`std::optional<scf::SCFTileAndFuseOptions::ControlFnResult>` object that
should be `std::nullopt` if fusion is not to be performed.

Signed-off-by: MaheshRavishankar <mahesh.revishankar at gmail.com>


  Commit: 2e18f636fd39b59a85194c2a8f10732138a0f8ec
      https://github.com/llvm/llvm-project/commit/2e18f636fd39b59a85194c2a8f10732138a0f8ec
  Author: Lang Hames <lhames at gmail.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/unittests/Passes/Plugins/CMakeLists.txt
    M llvm/unittests/Support/DynamicLibrary/CMakeLists.txt

  Log Message:
  -----------
  Fix some unit tests for LLVM_ENABLE_EXPORTED_SYMBOLS_IN_EXECUTABLES=Off.

Building with -DLLVM_ENABLE_EXPORTED_SYMBOLS_IN_EXECUTABLES=Off should not
prevent the PluginsTests and DynamicLibraryTests unit tests from working.

This fix uses the approach implemented in
https://github.com/llvm/llvm-project/pull/101741.

rdar://135849875


  Commit: cbcf5313e8da5446d808b73e91b64e4c6e0da0c3
      https://github.com/llvm/llvm-project/commit/cbcf5313e8da5446d808b73e91b64e4c6e0da0c3
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    A llvm/test/CodeGen/RISCV/rvv/vfabs-sdnode-bf16.ll
    A llvm/test/CodeGen/RISCV/rvv/vfcopysign-sdnode-bf16.ll
    A llvm/test/CodeGen/RISCV/rvv/vfneg-sdnode-bf16.ll

  Log Message:
  -----------
  [RISCV] Expand bf16 FNEG/FABS/FCOPYSIGN (#108245)

The motivation for this is to start promoting bf16 ops to f32 so that we
can mark bf16 as a supported type in
RISCVTTIImpl::isElementTypeLegalForScalableVector and scalably-vectorize
it.

This starts with expanding the nodes that can't be promoted to f32 due
to canonicalizing NaNs, similarly to f16 in #106652.


  Commit: 35a0fd507f8975a97edeeeccbddcc7e8608fe5ca
      https://github.com/llvm/llvm-project/commit/35a0fd507f8975a97edeeeccbddcc7e8608fe5ca
  Author: Lang Hames <lhames at gmail.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

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

  Log Message:
  -----------
  Fix some another unit test for LLVM_ENABLE_EXPORTED_SYMBOLS_IN_EXECUTABLES=Off.

Building with -DLLVM_ENABLE_EXPORTED_SYMBOLS_IN_EXECUTABLES=Off should not
prevent the AnalysisTests unit test from working.

This fix uses the approach implemented in
https://github.com/llvm/llvm-project/pull/101741.

rdar://135849875


  Commit: b2e8b8fac031127ab513da6a6677f64c0a9ad2e4
      https://github.com/llvm/llvm-project/commit/b2e8b8fac031127ab513da6a6677f64c0a9ad2e4
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/setcc-fp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/setcc-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfadd-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfadd-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfadd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfcopysign-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfdiv-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfdiv-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfdiv-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmadd-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmadd-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmax-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmin-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmsub-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmul-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmul-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmul-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfnmadd-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfnmsub-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfsub-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfsub-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfsub-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfwmacc-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfwmsac-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfwnmacc-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfwnmsac-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vpmerge-sdnode-bf16.ll
    M llvm/test/CodeGen/RISCV/rvv/vpmerge-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vselect-bf16.ll
    M llvm/test/CodeGen/RISCV/rvv/vselect-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/vsplats-bf16.ll
    A llvm/test/CodeGen/RISCV/rvv/vsplats-f16.ll
    M llvm/test/CodeGen/RISCV/rvv/vsplats-fp.ll

  Log Message:
  -----------
  [RISCV] Lower f16/bf16 splat_vector by bitcasting to i16 instead of promoting to f32. (#108298)

If f16/bf16 scalar types are not legal we also need to custom legalize
to prevent a crash. We do similar lowering for build_vector.


  Commit: de6d7a6c3093f725bec6980e925166f0f363687a
      https://github.com/llvm/llvm-project/commit/de6d7a6c3093f725bec6980e925166f0f363687a
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/lib/Target/RISCV/RISCVInstrInfoZfa.td
    M llvm/test/CodeGen/RISCV/double-zfa.ll
    M llvm/test/CodeGen/RISCV/float-zfa.ll
    M llvm/test/CodeGen/RISCV/half-zfa.ll

  Log Message:
  -----------
  [RISCV] Expand Zfa fli+fneg cases during lowering instead of during isel. (#108316)

Most of the constants fli can generate are positive numbers. We can use
fli+fneg to generate their negative versions.

Previously, we considered such negative constants as "legal" and let
isel generate the fli+fneg. However, it is useful to expose the fneg to
DAG combines to fold with fadd to produce fsub or with fma to produce
fnmadd, fnmsub, or fmsub.

This patch moves the fneg creation to lowering so that the fneg will be
visible to the last DAG combine.

I might move the rest of Zfa handling from isel to lowering as a follow
up.

Fixes #107772.


  Commit: c7cf2cc59e402cfeaece5f58c70cfdda72a1be99
      https://github.com/llvm/llvm-project/commit/c7cf2cc59e402cfeaece5f58c70cfdda72a1be99
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

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

  Log Message:
  -----------
  [RISCV] Remove unneeded customization of bf16 bitcast. NFC

We custom legalize the bitcast using the i16 type not the bf16 type.


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

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

  Log Message:
  -----------
  [RISCV] Combine two hasStdExtZfhminOrZhinxmin() blocks in RISCVTargetLowering constructor. NFC


  Commit: e31efd8f6fbc27000a4933f889e0deb922411006
      https://github.com/llvm/llvm-project/commit/e31efd8f6fbc27000a4933f889e0deb922411006
  Author: Charlie Barto <chbarto at microsoft.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_win_thunk_interception.h

  Log Message:
  -----------
  [asan][windows] use __builtin_function_address to avoid problematic codegen in weak function registration (#108327)

Previously we were relying on optnone for this, but that didn't seem to
be sufficient.


  Commit: 447b32fb192b90be00164a027f990e16c0325de3
      https://github.com/llvm/llvm-project/commit/447b32fb192b90be00164a027f990e16c0325de3
  Author: Charlie Barto <chbarto at microsoft.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M compiler-rt/lib/asan/CMakeLists.txt

  Log Message:
  -----------
  [asan] add the new/delete code back to RTAsan_dynamic (#108329)

the new/delete code was removed from RTAsan_dynamic in
https://github.com/llvm/llvm-project/pull/107899, but that broke things
on macos. This reverts the offending change.


  Commit: e2723c2a8af69677d68e9c11a394f08e6c205153
      https://github.com/llvm/llvm-project/commit/e2723c2a8af69677d68e9c11a394f08e6c205153
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

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

  Log Message:
  -----------
  [InitUndef] Only compute DeadLaneDetector if subreg liveness enabled (NFC) (#108279)

InitUndef currently always computes DeadLaneDetector, but only actually
uses it if subreg liveness is enabled for the target. Make the
calculation optional to avoid an unnecessary compile-time impact for
targets that don't enable subreg liveness.


  Commit: c22b68c225a8dcdffa7b30c3acf315e308b16f7c
      https://github.com/llvm/llvm-project/commit/c22b68c225a8dcdffa7b30c3acf315e308b16f7c
  Author: Viktoriia Bakalova <115406782+VitaNuo at users.noreply.github.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M libcxxabi/src/demangle/ItaniumDemangle.h
    M libcxxabi/test/test_demangle.pass.cpp
    M llvm/include/llvm/Demangle/ItaniumDemangle.h

  Log Message:
  -----------
  [ItaniumDemangle] Set `InConstraintExpr` to `true` when demangling a constraint expression (#107385)

This prevents demangler failures until the TODO in the
[demangler](https://github.com/llvm/llvm-project/blob/3e070906eff720dc44aee86e533e12aafc8bb14b/llvm/include/llvm/Demangle/ItaniumDemangle.h#L5678)
is implemented.

This is a temporary fix for
[#89914](https://github.com/llvm/llvm-project/issues/89914).


  Commit: f0c6d30a5d80dd42cb298f857987aa2c8f01e63e
      https://github.com/llvm/llvm-project/commit/f0c6d30a5d80dd42cb298f857987aa2c8f01e63e
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.h

  Log Message:
  -----------
  [lldb][DWARFASTParserClang][NFC] Factor out unnamed bitfield creation into helper (#108196)

This logic will need adjusting soon for
https://github.com/llvm/llvm-project/pull/108155

This patch pulls out the logic for detecting/creating unnamed bitfields
out of `ParseSingleMember` to make the latter (in my opinion) more
readable. Otherwise we have a large number of similarly named variables
in scope.


  Commit: 703ebca869e1e684147d316b7bdb15437c12206a
      https://github.com/llvm/llvm-project/commit/703ebca869e1e684147d316b7bdb15437c12206a
  Author: Diana Picus <Diana-Magda.Picus at amd.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
    M llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.h
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
    M llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.whole.wave-w32.ll
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.whole.wave-w64.ll
    M llvm/test/CodeGen/AMDGPU/pei-amdgpu-cs-chain.mir
    A llvm/test/CodeGen/AMDGPU/si-init-whole-wave.mir
    M llvm/test/CodeGen/MIR/AMDGPU/long-branch-reg-all-sgpr-used.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-after-pei.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg-debug.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-no-ir.mir
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info.ll

  Log Message:
  -----------
  Reland "[amdgpu] Add llvm.amdgcn.init.whole.wave intrinsic" (#108054)" (#108173)

This reverts commit
https://github.com/llvm/llvm-project/commit/c7a7767fca736d0447832ea4d4587fb3b9e797c2.

The buildbots failed because I removed a MI from its parent before
updating LIS. This PR should fix that.


  Commit: 0683c4e839524c37fe4ddfa1bce1e31ba556041b
      https://github.com/llvm/llvm-project/commit/0683c4e839524c37fe4ddfa1bce1e31ba556041b
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/AttrDocs.td
    M clang/lib/Sema/CheckExprLifetime.cpp
    M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp

  Log Message:
  -----------
  Revert "[clang] Diagnose dangling issues for the "Container<GSLPointer>" case. (#107213)"

This reverts commit e50131aa068f74daa70d4135c92020aadae3af33.

It introduces a new false positive, see comment https://github.com/llvm/llvm-project/pull/107213#issuecomment-2345465256


  Commit: b07f1be92c1350d8d5b0952f49a2c3aeedcccb2f
      https://github.com/llvm/llvm-project/commit/b07f1be92c1350d8d5b0952f49a2c3aeedcccb2f
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M compiler-rt/lib/asan/asan_malloc_linux.cpp
    M compiler-rt/lib/dfsan/dfsan_interceptors.cpp
    M compiler-rt/lib/hwasan/hwasan_allocation_functions.cpp
    M compiler-rt/lib/lsan/lsan_interceptors.cpp
    M compiler-rt/lib/memprof/memprof_malloc_linux.cpp
    M compiler-rt/lib/msan/msan_interceptors.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_tls_get_addr.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_tls_get_addr.h

  Log Message:
  -----------
  [sanitizer] Remove DTLS_on_libc_memalign (#108120)

`DTLS_on_libc_memalign` is called from primary
allocator, so `__sanitizer_get_allocated_begin`
should also be aware of allocation,
and correctly handled by `GetDTLSRange`.


  Commit: 18b39497957a597a630a8daa4b4691b23f0d52c3
      https://github.com/llvm/llvm-project/commit/18b39497957a597a630a8daa4b4691b23f0d52c3
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M mlir/lib/TableGen/CodeGenHelpers.cpp

  Log Message:
  -----------
  [TableGen] Avoid repeated hash lookups (NFC) (#108321)


  Commit: 85c97c1cec63da27d9f16b0b7c44d65a0e3da0a4
      https://github.com/llvm/llvm-project/commit/85c97c1cec63da27d9f16b0b7c44d65a0e3da0a4
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M mlir/lib/Bytecode/Reader/BytecodeReader.cpp

  Log Message:
  -----------
  [Bytecode] Avoid repeated hash lookups (NFC) (#108320)


  Commit: 67e7f05aa0efb1fd61f74efb6e95b7720f94bcdd
      https://github.com/llvm/llvm-project/commit/67e7f05aa0efb1fd61f74efb6e95b7720f94bcdd
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M mlir/lib/Dialect/Transform/IR/TransformOps.cpp

  Log Message:
  -----------
  [Dialect] Avoid repeated hash lookups (NFC) (#108319)


  Commit: 42494e51753823f6e2bd8f9abf665006a9bdc445
      https://github.com/llvm/llvm-project/commit/42494e51753823f6e2bd8f9abf665006a9bdc445
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M mlir/lib/Transforms/Mem2Reg.cpp

  Log Message:
  -----------
  [Transforms] Avoid repeated hash lookups (NFC) (#108322)


  Commit: 7792b4ae79e5ac9355ee13b01f16e25455f8427f
      https://github.com/llvm/llvm-project/commit/7792b4ae79e5ac9355ee13b01f16e25455f8427f
  Author: Diana Picus <Diana-Magda.Picus at amd.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
    M llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.h
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
    M llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp
    R llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.whole.wave-w32.ll
    R llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.whole.wave-w64.ll
    M llvm/test/CodeGen/AMDGPU/pei-amdgpu-cs-chain.mir
    R llvm/test/CodeGen/AMDGPU/si-init-whole-wave.mir
    M llvm/test/CodeGen/MIR/AMDGPU/long-branch-reg-all-sgpr-used.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-after-pei.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg-debug.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-no-ir.mir
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info.ll

  Log Message:
  -----------
  Revert "Reland "[amdgpu] Add llvm.amdgcn.init.whole.wave intrinsic" (#108054)"" (#108341)

Reverts llvm/llvm-project#108173

si-init-whole-wave.mir crashes on some buildbots (although it passed
both locally with sanitizers enabled and in pre-merge tests).
Investigating.


  Commit: ed41497498a40ff0441df34aef0c92f5467c8c42
      https://github.com/llvm/llvm-project/commit/ed41497498a40ff0441df34aef0c92f5467c8c42
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
    M llvm/test/Transforms/LoopVectorize/runtime-checks-difference.ll

  Log Message:
  -----------
  [LAA] Also reset CanUseDiffCheck in RTPointerChecking::reset().

RuntimePointerChecking::reset() is used to reset its state between
subsequent analysis invocations. Also reset CanUseDiffCheck to its
default (true). Otherwise it might have been set to false during a
previous analysis invocation, which unnecessarily pessimizes the
subsequent analysis invocations with a pruned set of dependences.

This is in line with the other fields being reset.


  Commit: 2149914ea10c05c17fc6e994af5cc96b6b312f1b
      https://github.com/llvm/llvm-project/commit/2149914ea10c05c17fc6e994af5cc96b6b312f1b
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/test/Parser/cxx1z-class-template-argument-deduction.cpp

  Log Message:
  -----------
  [Clang][Parser] Build up QualifiedTemplateName for typo correction (#108148)

Since #93433, we have switched to `QualifiedTemplateName`s in more
situations to preserve sugars in diagnostics. However, there is one
missed case in typo correction that might not meet the expectation in
`CheckDeductionGuideDeclarator()`.

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


  Commit: 7294396a0878a6bd179fac9aa5c3743832c799f4
      https://github.com/llvm/llvm-project/commit/7294396a0878a6bd179fac9aa5c3743832c799f4
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/lldbtest.py

  Log Message:
  -----------
  [lldb][test] Handle failure to get /proc/cpuinfo from a remote Linux platform (#108183)

I've been testing against qemu-aarch64 using the qemu-user platform,
which doesn't support get-file:
```
AssertionError: False is not true : Command 'platform get-file "/proc/cpuinfo" <...>/TestAArch64LinuxMTEMemoryRegion.test_mte_regions/cpuinfo
Command output:
get-file failed: unimplemented
' did not return successfully
```

QEMU itself does support overriding cpuinfo for the emulated process
(https://gitlab.com/qemu-project/qemu/-/commit/a55b9e72267085957cadb0af0a8811cfbd7c61a9)
however we'd need to be able to read the cpuinfo before the process
starts, so I'm not attempting to use this feature.

Instead if the get-file fails, assume empty cpuinfo so we can at least
carry on testing. I've logged the failure and the reason to the trace so
developers can find it.

```
runCmd: platform get-file "/proc/cpuinfo" <...>/TestAArch64LinuxMTEMemoryRegion.test_mte_regions/cpuinfo
check of return status not required

runCmd failed!

Failed to get /proc/cpuinfo from remote: "get-file failed: unimplemented"
All cpuinfo feature checks will fail.
```

For now this only helps AArch64 but I suspect that RISC-V, being even
more mix and match when it comes to extensions, may need this in future.
And I know we have some folks testing against qemu-riscv at the moment.


  Commit: 128bb29e6d9f0aec03ea34e1477efeb561d97f8f
      https://github.com/llvm/llvm-project/commit/128bb29e6d9f0aec03ea34e1477efeb561d97f8f
  Author: GkvJwa <gkvjwa at gmail.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/utils/gn/build/BUILD.gn

  Log Message:
  -----------
  [gn] Add "/Zc:preprocessor" build flag on windows when using cl.exe (#108252)

Add ```/Zc:preprocessor``` to fix the ```__VA_ARGS__``` expansion error 
encountered when building with gn and cl.exe(msvc)


  Commit: 958a3371324917c5816b6d0999373a2ae2a1ac2e
      https://github.com/llvm/llvm-project/commit/958a3371324917c5816b6d0999373a2ae2a1ac2e
  Author: Igor Kirillov <igor.kirillov at arm.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Transforms/VectorCombine/AArch64/shrink-types.ll

  Log Message:
  -----------
  [VectorCombine] Fix trunc generated between PHINodes (#108228)


  Commit: a71407ed3a5f11e9f7ab2060f2557384c643eff4
      https://github.com/llvm/llvm-project/commit/a71407ed3a5f11e9f7ab2060f2557384c643eff4
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/arm64-ldxr-stxr.ll

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


  Commit: 37cf39fdd7ab6dcfbce4633ea5fe743daf2ab358
      https://github.com/llvm/llvm-project/commit/37cf39fdd7ab6dcfbce4633ea5fe743daf2ab358
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/arm64-ldxr-stxr.ll

  Log Message:
  -----------
  [AArch64] Add test for incorrect stxp register allocation (NFC)

This is a variant of https://github.com/llvm/llvm-project/issues/106380
without inline assembly.


  Commit: 63dab72fd5b96cd98bba6d041d08bb2a6f3aaa0a
      https://github.com/llvm/llvm-project/commit/63dab72fd5b96cd98bba6d041d08bb2a6f3aaa0a
  Author: Mikael Holmen <mikael.holmen at ericsson.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

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

  Log Message:
  -----------
  [Sema] Remove unused variable 'FromExtType' [NFC]

Last use of the variable was removed in a29afb754fb4
 [HLSL] Allow truncation to scalar (#104844)

gcc warned about this:
  ../../clang/lib/Sema/SemaOverload.cpp:2070:15: warning: unused variable 'FromExtType' [-Wunused-variable]
  2070 |     if (auto *FromExtType = FromType->getAs<ExtVectorType>()) {
       |               ^~~~~~~~~~~


  Commit: 59731eebf8f24e3e90dc77e91a08d068b529cfc5
      https://github.com/llvm/llvm-project/commit/59731eebf8f24e3e90dc77e91a08d068b529cfc5
  Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/src/__support/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/src/__support/FPUtil/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/src/fenv/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/src/math/libc_math_test_rules.bzl

  Log Message:
  -----------
  [bazel] port ded080152acceca5d68014d63f5027a6d8266cbb


  Commit: ffcebcdb96c7575d3dc8e6afe70d83d56c241f02
      https://github.com/llvm/llvm-project/commit/ffcebcdb96c7575d3dc8e6afe70d83d56c241f02
  Author: Lu Weining <luweining at loongson.cn>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchAsmPrinter.cpp
    M llvm/lib/Target/LoongArch/LoongArchAsmPrinter.h
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.cpp
    A llvm/test/CodeGen/LoongArch/statepoint-call-lowering-r1.ll
    A llvm/test/CodeGen/LoongArch/statepoint-call-lowering.ll
    M llvm/unittests/Target/LoongArch/InstSizes.cpp

  Log Message:
  -----------
  [LoongArch] Implement Statepoint lowering (#108212)

The functionality has been validated in OpenHarmony's arkcompiler.


  Commit: adde85e7c3ade54b22c99d405fc9c3add869db0a
      https://github.com/llvm/llvm-project/commit/adde85e7c3ade54b22c99d405fc9c3add869db0a
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    A lldb/test/API/functionalities/watchpoint/categories

  Log Message:
  -----------
  [lldb][test] Mark some more watchpoint tests

Noticed when testing with qemu-aarch64 that does not support watchpoints.


  Commit: ecf260e1dd8fb1c3d81e6f8af99907ae250058cb
      https://github.com/llvm/llvm-project/commit/ecf260e1dd8fb1c3d81e6f8af99907ae250058cb
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    R llvm/test/CodeGen/RISCV/rvv/vfabs-sdnode-bf16.ll
    M llvm/test/CodeGen/RISCV/rvv/vfabs-sdnode.ll
    R llvm/test/CodeGen/RISCV/rvv/vfcopysign-sdnode-bf16.ll
    M llvm/test/CodeGen/RISCV/rvv/vfcopysign-sdnode.ll
    R llvm/test/CodeGen/RISCV/rvv/vfneg-sdnode-bf16.ll
    M llvm/test/CodeGen/RISCV/rvv/vfneg-sdnode.ll

  Log Message:
  -----------
  [RISCV] Merge bf16 tests into respective tests. NFC

I added these in #108245, but given the sheer number of tests that
will need to be added to cover bf16 promotion to f32 it seems better
to keep them in one place to avoid an explosion of files.


  Commit: 89c10e27d8b4d5f44998aad9abd2590d9f96c5df
      https://github.com/llvm/llvm-project/commit/89c10e27d8b4d5f44998aad9abd2590d9f96c5df
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/test/Analysis/CostModel/RISCV/arith-fp.ll
    M llvm/test/Analysis/CostModel/RISCV/fp-min-max-abs.ll
    M llvm/test/Analysis/CostModel/RISCV/fround.ll
    M llvm/test/Analysis/CostModel/RISCV/scalable-gather.ll
    M llvm/test/Analysis/CostModel/RISCV/scalable-scatter.ll
    M llvm/test/Analysis/CostModel/RISCV/shuffle-broadcast.ll
    M llvm/test/Analysis/CostModel/RISCV/shuffle-permute.ll
    M llvm/test/Analysis/CostModel/RISCV/shuffle-reverse.ll
    M llvm/test/Analysis/CostModel/RISCV/shuffle-transpose.ll
    M llvm/test/Analysis/CostModel/RISCV/splice.ll

  Log Message:
  -----------
  [RISCV] Add zvfhmin cost model test coverage. NFC

This adds tests coverage for zvfhmin and halfs in general in the cost
model tests.

Some existing half tests were split into separate functions so that if
the check prefixes diverge it won't affect the rest of the non-half
instructions.

Whilst we're here, also remove the redundant
-riscv-vector-bits-min=128 and declares.


  Commit: 849d1b8b1f1fc16dc28b07da358515a52b79ea81
      https://github.com/llvm/llvm-project/commit/849d1b8b1f1fc16dc28b07da358515a52b79ea81
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/TreeTransform.h
    M clang/test/SemaTemplate/pack-deduction.cpp

  Log Message:
  -----------
  [clang] Do not substitute parameter pack while retaining the pack expansion (#108197)

(In reference to https://github.com/llvm/llvm-project/pull/108197/commits/5901d82ea0543074853b963f7dc9106a6fe3bcee)
Consider when `Input[I]` is a `VarDecl` with parameter pack. We would
have already expanded the pack before the code change in the loop`for
(unsigned I = 0; I != *NumExpansions; ++I) {`.

Now in `if (RetainExpansion) {`, without this change, we continue to
substitute the pack in the pattern even when we do not have meaningful
`ArgumentPackSubstitutionIndex` set.

This leads to use of an invalid pack substitution index in
`TemplateInstantiator::TransformFunctionParmPackRefExpr` in
`TransformedDecl = (*Pack)[getSema().ArgumentPackSubstitutionIndex];`

This change sets `ArgumentPackSubstitutionIndex` to `-1` while retaining
expansion to instruct `TransformFunctionParmPackRefExpr` to build
`FunctionParmPackExpr` instead of substituting the param pack.

---

There are other instances of `RetainExpansion` and IIUC, they should
also unset the `ArgumentPackSubstitutionIndex`. It would be great if
someone can verify my understanding. If this is correct then we could
instead have a `ArgumentPackSubstitutionIndexRAII` as part of
`ForgetPartiallySubstitutedPackRAII`.

EDIT: I have moved this to `ForgetPartiallySubstitutedPackRAII`.

Fixes https://github.com/llvm/llvm-project/issues/63819
Fixes https://github.com/llvm/llvm-project/issues/107560


  Commit: f22a8d18229fe94fe340afbf02ad9592ca199784
      https://github.com/llvm/llvm-project/commit/f22a8d18229fe94fe340afbf02ad9592ca199784
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

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

  Log Message:
  -----------
  [clang][bytecode] Fix modify_global diagnostics in C++11 (#108358)

We shouldn't emit this until C++14.


  Commit: ddd2af3c5a076f2c5f2024019067b206d1b411b4
      https://github.com/llvm/llvm-project/commit/ddd2af3c5a076f2c5f2024019067b206d1b411b4
  Author: Hans <hans at hanshq.net>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M clang/tools/CMakeLists.txt
    R clang/tools/clang-format-vs/.gitignore
    R clang/tools/clang-format-vs/CMakeLists.txt
    R clang/tools/clang-format-vs/ClangFormat.sln
    R clang/tools/clang-format-vs/ClangFormat/ClangFormat.csproj
    R clang/tools/clang-format-vs/ClangFormat/ClangFormat.vsct
    R clang/tools/clang-format-vs/ClangFormat/ClangFormatPackage.cs
    R clang/tools/clang-format-vs/ClangFormat/GlobalSuppressions.cs
    R clang/tools/clang-format-vs/ClangFormat/Guids.cs
    R clang/tools/clang-format-vs/ClangFormat/PkgCmdID.cs
    R clang/tools/clang-format-vs/ClangFormat/Properties/AssemblyInfo.cs
    R clang/tools/clang-format-vs/ClangFormat/Resources.Designer.cs
    R clang/tools/clang-format-vs/ClangFormat/Resources.resx
    R clang/tools/clang-format-vs/ClangFormat/Resources/Images_32bit.bmp
    R clang/tools/clang-format-vs/ClangFormat/Resources/Package.ico
    R clang/tools/clang-format-vs/ClangFormat/RunningDocTableEventsDispatcher.cs
    R clang/tools/clang-format-vs/ClangFormat/VSPackage.resx
    R clang/tools/clang-format-vs/ClangFormat/Vsix.cs
    R clang/tools/clang-format-vs/ClangFormat/license.txt
    R clang/tools/clang-format-vs/ClangFormat/packages.config
    R clang/tools/clang-format-vs/README.txt
    R clang/tools/clang-format-vs/source.extension.vsixmanifest.in
    M llvm/utils/release/build_llvm_release.bat

  Log Message:
  -----------
  Delete the clang-format Visual Studio plugin code (#108342)

This was obsoleted by Visual Studio providing built-in support for
running clang-format in VS2017.

We haven't shipped it for years (since
10d2195305ac49605f2b7b6a25a4076c31923191), never got it working with
VS2019, and never even tried with VS2022.

It's time to retire the code.


  Commit: d5d6b447840f80a78047cf5ba769e4a09b44b83e
      https://github.com/llvm/llvm-project/commit/d5d6b447840f80a78047cf5ba769e4a09b44b83e
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/include/llvm/Support/FormatVariadic.h
    M llvm/lib/Support/FormatVariadic.cpp
    M llvm/unittests/Support/FormatVariadicTest.cpp

  Log Message:
  -----------
  [Support] Add automatic index assignment in formatv (#107459)

Make index in replacement field optional. It will be automatically
assigned in incremental order by formatv.

Make mixed use of automatic and explicit indices an error that will fail
validation.
Adopt uses of formatv() within FormatVariadic to use automatic index.


  Commit: ebb979d6363be97ece020bb52477430025996962
      https://github.com/llvm/llvm-project/commit/ebb979d6363be97ece020bb52477430025996962
  Author: Nico Weber <thakis at chromium.org>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

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

  Log Message:
  -----------
  [gn] port 118f120eaab8d


  Commit: 36ad0720de623221e3cc17d30f4173331c099a72
      https://github.com/llvm/llvm-project/commit/36ad0720de623221e3cc17d30f4173331c099a72
  Author: Aditi Medhane <Aditi.Medhane at amd.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/phi-vgpr-input-moveimm.mir

  Log Message:
  -----------
  [AMDGPU] Autogenerate checks for phi-vgpr-input-moveimm.mir (#108372)

Update the MIR checks for phi-vgpr-input-moveimm testcase.


  Commit: 36adf8ecedb64047021265a1e1730773d3b3a9e8
      https://github.com/llvm/llvm-project/commit/36adf8ecedb64047021265a1e1730773d3b3a9e8
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

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

  Log Message:
  -----------
  [NFC][Analysis] Add more SCEV tests for ptr inductions (#108210)

I've added more tests to

Analysis/ScalarEvolution/max-backedge-taken-count-guard-info.ll

to cover more cases of ptr inductions, in particular highlighting what
seems to be a disparity between single exit and multiple exit loops.


  Commit: c657a6f6aa7e802d65aba84b8b3fe2eb5e2459d8
      https://github.com/llvm/llvm-project/commit/c657a6f6aa7e802d65aba84b8b3fe2eb5e2459d8
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    A llvm/test/CodeGen/AMDGPU/load-constant-always-uniform.ll

  Log Message:
  -----------
  [AMDGPU] Fix selection of s_load_b96 on GFX11 (#108029)

Fix a bug which resulted in selection of s_load_b96 on GFX11, which only
exists in GFX12.

The root cause was a mismatch between legalization and selection. The
condition used to check that the load was uniform in legalization
(SITargetLowering::LowerLOAD) was "!Op->isDivergent()". The condition
used to detect a non-uniform load during selection
(AMDGPUDAGToDAGISel::isUniformLoad()) was
"N->isDivergent() && !AMDGPUInstrInfo::isUniformMMO(MMO)". This makes a
difference when IR uniformity analysis has more information than SDAG's
built in analysis. In the test case this is because IR UA reports that
everything is uniform if isSingleLaneExecution() returns true, e.g. if
the specified max flat workgroup size is 1, but SDAG does not have this
optimization.

The immediate fix is to use the same condition to detect uniform loads
in legalization and selection. In future SDAG should learn about
isSingleLaneExecution(), and then it could probably stop relying on IR
metadata to detect uniform loads.


  Commit: bf8101e4fd1a532aed4c6b6a33d202e143ce303f
      https://github.com/llvm/llvm-project/commit/bf8101e4fd1a532aed4c6b6a33d202e143ce303f
  Author: Joe Faulls <67795994+joe-img at users.noreply.github.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/lib/CodeGen/InitUndef.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-buildvec-of-binop.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-gather.ll

  Log Message:
  -----------
  [CodeGen] Clear InitUndef pass new register cache between pass runs (#90967)

Multiple invocations of the pass could interfere with eachother,
preventing some undefs being initialised.

I found it very difficult to create a unit test for this due to it being
dependent on particular allocations of a previous function. However, the
bug can be observed here: https://godbolt.org/z/7xnMo41Gv with the
creation of the illegal instruction `vnsrl.wi v9, v8, 0`


  Commit: 229f391f836c9250b7e0c3824e7152748bab220e
      https://github.com/llvm/llvm-project/commit/229f391f836c9250b7e0c3824e7152748bab220e
  Author: rjmansfield <rjmansfield at users.noreply.github.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/tools/dsymutil/Options.td

  Log Message:
  -----------
  [dsymutil] Fix whitespace issues and typo in HelpText. (#108310)

Co-authored-by: Ryan Mansfield <ryan_mansfield at apple.com>


  Commit: 6093c26ac9e1f6ba919c0c3e18c6425ba1a625f8
      https://github.com/llvm/llvm-project/commit/6093c26ac9e1f6ba919c0c3e18c6425ba1a625f8
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/test/Transforms/test-legalize-erased-op-with-uses.mlir

  Log Message:
  -----------
  [mlir][Transforms] Dialect conversion: Align handling of dropped values (#106760)

Handle dropped block arguments and dropped op results in the same way:
build a source materialization (that may fold away if unused). This
simplifies the code base a bit and makes it possible to merge
`legalizeConvertedArgumentTypes` and `legalizeConvertedOpResultTypes` in
a future commit. These two functions are almost doing the same thing
now.

As a side effect, this commit also changes the dialect conversion such
that temporary circular cast ops are no longer generated. (There was a
workaround in #107109 that can now be removed again.) Example:
```
%0 = "builtin.unrealized_conversion_cast"(%1) : (!a) -> !b
%1 = "builtin.unrealized_conversion_cast"(%0) : (!b) -> !a
// No further uses of %0, %1.
```

This happened when:
1. An op was erased. (No replacement values provided.)
2. A conversion pattern for another op builds a replacement value for
the erased op's results (first cast op) during `remapValues`, but that
SSA value is not used during the pattern application.
3. During the finalization phase, `legalizeConvertedOpResultTypes`
thinks that the erased op is alive because of the cast op that was built
in Step 2. It builds a cast from that replacement value to the original
type.
4. During the commit phase, all uses of the original op are replaced
with the casted value produced in Step 3. We have generated circular IR.

This problem can be avoided by making sure that source materializations
are generated for all dropped results. This ensures that we always have
some replacement SSA value in the mapping. Previously, we sometimes had
a value mapped and sometimes not. (No more special casing is needed
anymore to distinguish between "value dropped" or "value replaced with
SSA value".)


  Commit: b9674cb10fbe34d54bdfaa584e2eb89b65034e91
      https://github.com/llvm/llvm-project/commit/b9674cb10fbe34d54bdfaa584e2eb89b65034e91
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M mlir/test/Conversion/VectorToSPIRV/vector-to-spirv.mlir

  Log Message:
  -----------
  [mlir][SPIRV] Make test case more robust (#108388)

This commit is in preparation of #108381, which changes the insertion
point source materializations during a block type conversion slightly.


  Commit: 7c82b56116d402aa6b86d734ea481a1e90a2f1c3
      https://github.com/llvm/llvm-project/commit/7c82b56116d402aa6b86d734ea481a1e90a2f1c3
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M lld/COFF/Chunks.h

  Log Message:
  -----------
  [LLD][COFF] Define importThunkARM64EC as uint8_t array to fix big-endian hosts.

Fixes #107931, spotted by Nikita Popov.


  Commit: 5237f0dbcbb3883d81cb872d386547c7ff416894
      https://github.com/llvm/llvm-project/commit/5237f0dbcbb3883d81cb872d386547c7ff416894
  Author: Aditi Medhane <Aditi.Medhane at amd.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/phi-vgpr-input-moveimm.mir

  Log Message:
  -----------
  [AMDGPU] Precommit and Modify `phi_moveimm_subreg_input` testcase (#108389)

- Updated `phi_moveimm_subreg_input` test case to introduce
sub-registers as PHI input operands.
Currently subreg is making the testcase in non-SSA format, need to fix
this by giving subreg as an input operand to PHI instead defining the
subreg register.

This change is relevant for : [[AMDGPU] Add MachineVerifier check to
detect illegal copies from vector register to SGPR
](https://github.com/llvm/llvm-project/pull/105494)


  Commit: b43302372f592fd48a22d32b2603f8efee40a88e
      https://github.com/llvm/llvm-project/commit/b43302372f592fd48a22d32b2603f8efee40a88e
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M clang/tools/libclang/CXStoredDiagnostic.cpp

  Log Message:
  -----------
   [Clang][NFC] Remove trailing whitespace from clang/tools/libclang/CXStoredDIagnostic.cpp


  Commit: 1642f64b525e1d73ca5a0456a187433c7f0eff4c
      https://github.com/llvm/llvm-project/commit/1642f64b525e1d73ca5a0456a187433c7f0eff4c
  Author: David Green <david.green at arm.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseN2.td
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseV2.td

  Log Message:
  -----------
  [AArch64] Replace _Ncyc_ with _Nc_ in Neoverse scheduling models.

This brings them in line with the other Neoverse scheduling models, reducing
the amount of differences between them.


  Commit: 99174842aedf9aa571bdb23d07566965ff3c21e3
      https://github.com/llvm/llvm-project/commit/99174842aedf9aa571bdb23d07566965ff3c21e3
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M libcxx/docs/ReleaseNotes/20.rst
    M libcxx/docs/Status/Cxx20Papers.csv
    M libcxx/docs/UserDocumentation.rst
    M libcxx/include/__config
    M libcxx/include/__stop_token/atomic_unique_lock.h
    M libcxx/include/__stop_token/stop_callback.h
    M libcxx/include/__stop_token/stop_source.h
    M libcxx/include/__stop_token/stop_token.h
    M libcxx/include/__thread/jthread.h
    M libcxx/include/condition_variable
    M libcxx/include/version
    M libcxx/modules/std/stop_token.inc
    M libcxx/modules/std/thread.inc
    M libcxx/test/libcxx/experimental/fexperimental-library.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/stop_token.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/thread.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    M libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_terminates.sh.cpp
    M libcxx/test/support/make_test_thread.h
    M libcxx/utils/generate_feature_test_macro_components.py

  Log Message:
  -----------
  [libc++] Make std::jthread supported in non-experimental mode (#107900)

We waited before supporting std::jthread fully because we wanted to
investigate other implementation strategies (in particular one involving
std::mutex). Since then, we did some benchmarking and decided that we
wouldn't be moving forward with std::mutex. Hence, there is no real
reason to punt on making std::jthread & friends non-experimental.


  Commit: dbc90b55e832695c96d8dc1427e9df3bfeb73e5a
      https://github.com/llvm/llvm-project/commit/dbc90b55e832695c96d8dc1427e9df3bfeb73e5a
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

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

  Log Message:
  -----------
  [clang][TableGen] Change AttrEmitter to use const RecordKeeper (#108269)

Change AttrEmitter to use const RecordKeeper.

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


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


  Commit: b6ff8ed5d4d03b28e41b73ef8e76ce94a8fa76f0
      https://github.com/llvm/llvm-project/commit/b6ff8ed5d4d03b28e41b73ef8e76ce94a8fa76f0
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M clang/utils/TableGen/ClangASTNodesEmitter.cpp
    M clang/utils/TableGen/TableGenBackends.h

  Log Message:
  -----------
  [clang][TableGen] Change AST Nodes Emitter to use const RecordKeeper (#108270)

Change AST Nodes Emitter to use const RecordKeeper.

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


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


  Commit: 7e74472801486cc702fba3e831c8fcd77c120142
      https://github.com/llvm/llvm-project/commit/7e74472801486cc702fba3e831c8fcd77c120142
  Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/lldbutil.py

  Log Message:
  -----------
  [lldb][testing] Check all stop reasons in get_threads_stopped_at_breakpoint_id (#108281)

If multiple breakpoints are hit at the same time, multiple stop reasons
are reported, one per breakpoint.

Currently, `get_threads_stopped_at_breakpoint_id` only checks the first
such reason.


  Commit: c0b3e491cc9afe10c310334ceac1971482bb0410
      https://github.com/llvm/llvm-project/commit/c0b3e491cc9afe10c310334ceac1971482bb0410
  Author: Alex Rønne Petersen <alex at alexrp.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/lib/Target/Mips/MipsFastISel.cpp
    A llvm/test/CodeGen/Mips/Fast-ISel/underaligned-load-store.ll

  Log Message:
  -----------
  [llvm][Mips] Bail on underaligned loads/stores in FastISel. (#106231)

We encountered this problem in Zig, causing all of our
`mips(el)-linux-gnueabi*` tests to fail:
https://github.com/ziglang/zig/issues/21215

For these unusual cases, let's just bail in `MipsFastISel` since
`MipsTargetLowering` can handle them fine.

Note: I don't have commit access.


  Commit: 64dba97a981393c21cff8bddc0d2272535da45d5
      https://github.com/llvm/llvm-project/commit/64dba97a981393c21cff8bddc0d2272535da45d5
  Author: Michael Park <mcypark at gmail.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M clang/lib/Parse/ParseStmt.cpp

  Log Message:
  -----------
  [NFC] Fix an inaccurate comment about typo-correction. (#108143)

The comment describes "If the identifier was typo-corrected", but it
doesn't need to have been typo-corrected, just being annotated is enough
to retry.


  Commit: ef7a847be2db0325fe8bbad7febac9e42c96d232
      https://github.com/llvm/llvm-project/commit/ef7a847be2db0325fe8bbad7febac9e42c96d232
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

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

  Log Message:
  -----------
  [LoopUnswitch] Remove redundant condition. (NFC) (#107893)

Remove redundant condition from  '!A || (A && B)' to '!A || B' 

Fixes: #99799


  Commit: a409ebc1fc136be4004073a12cd7f847a5f3a588
      https://github.com/llvm/llvm-project/commit/a409ebc1fc136be4004073a12cd7f847a5f3a588
  Author: Malay Sanghi <malay.sanghi at intel.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsX86.def
    M clang/include/clang/Basic/BuiltinsX86_64.def
    M clang/lib/Headers/CMakeLists.txt
    A clang/lib/Headers/avx10_2_512satcvtdsintrin.h
    A clang/lib/Headers/avx10_2satcvtdsintrin.h
    M clang/lib/Headers/immintrin.h
    M clang/lib/Sema/SemaX86.cpp
    A clang/test/CodeGen/X86/avx10_2_512satcvtds-builtins-errors.c
    A clang/test/CodeGen/X86/avx10_2_512satcvtds-builtins-x64-error.c
    A clang/test/CodeGen/X86/avx10_2_512satcvtds-builtins-x64.c
    A clang/test/CodeGen/X86/avx10_2_512satcvtds-builtins.c
    A clang/test/CodeGen/X86/avx10_2satcvtds-builtins-errors.c
    A clang/test/CodeGen/X86/avx10_2satcvtds-builtins-x64.c
    A clang/test/CodeGen/X86/avx10_2satcvtds-builtins.c
    M llvm/include/llvm/IR/IntrinsicsX86.td
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/lib/Target/X86/X86InstrAVX10.td
    M llvm/lib/Target/X86/X86InstrFragmentsSIMD.td
    M llvm/lib/Target/X86/X86IntrinsicsInfo.h
    A llvm/test/CodeGen/X86/avx10_2_512satcvtds-intrinsics.ll
    A llvm/test/CodeGen/X86/avx10_2fptosi_satcvtds.ll
    A llvm/test/CodeGen/X86/avx10_2satcvtds-intrinsics.ll
    A llvm/test/CodeGen/X86/avx10_2satcvtds-x64-intrinsics.ll
    A llvm/test/MC/Disassembler/X86/avx10.2-satcvtds-32.txt
    A llvm/test/MC/Disassembler/X86/avx10.2-satcvtds-64.txt
    A llvm/test/MC/X86/avx10_2satcvtds-32-att.s
    A llvm/test/MC/X86/avx10_2satcvtds-32-intel.s
    A llvm/test/MC/X86/avx10_2satcvtds-64-att.s
    A llvm/test/MC/X86/avx10_2satcvtds-64-intel.s
    M llvm/test/TableGen/x86-fold-tables.inc

  Log Message:
  -----------
  [X86][AVX10.2] Support AVX10.2-SATCVT-DS new instructions. (#102592)

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


  Commit: 90a0be9482ad00acc1772440f13656190ec1ac22
      https://github.com/llvm/llvm-project/commit/90a0be9482ad00acc1772440f13656190ec1ac22
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMOpBase.td
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
    M mlir/lib/Conversion/GPUCommon/IndexIntrinsicsOpLowering.h
    M mlir/lib/Dialect/LLVMIR/IR/LLVMAttrs.cpp
    M mlir/lib/Target/LLVMIR/Dialect/ROCDL/ROCDLToLLVMIRTranslation.cpp
    M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl.mlir
    M mlir/test/Target/LLVMIR/rocdl.mlir

  Log Message:
  -----------
  [mlir][LLVM] Refactor how range() annotations are handled for ROCDL intrinsics (#107658)

This commit introduces a ConstantRange attribute to match the
ConstantRange attribute type present in LLVM IR.

It then refactors the LLVM_IntrOpBase so that the basic part of the
intrinsic builder code can be re-used without needing to copy it or
get rid of important context. This, along with adding code for
handling an optional `range` attribute to that same base, allows us to
make the support for range() annotations generic without adding
another bit to IntrOpBase.

This commit then updates the lowering of index intrinsic operations to
use the new ConstantRange attribute and fixes a bug (where we'd be
subtracting 1 from upper bounds instead of adding it on operations
like gpu.block_dim) along the way.

The point of these changes is to enable these range annotations to be
used for the corresponding NVVM operations in a future commit.


  Commit: 9596e83b2aa9017f4ebec3c150ca3aadd047762b
      https://github.com/llvm/llvm-project/commit/9596e83b2aa9017f4ebec3c150ca3aadd047762b
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPU.td
    M mlir/include/mlir/Dialect/AMDGPU/Transforms/Passes.td
    M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
    M mlir/lib/Dialect/AMDGPU/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/AMDGPU/Transforms/EmulateAtomics.cpp
    M mlir/test/Conversion/AMDGPUToROCDL/amdgpu-to-rocdl.mlir
    M mlir/test/Dialect/AMDGPU/amdgpu-emulate-atomics.mlir

  Log Message:
  -----------
  [mlir][AMDGPU] Enable emulating vector buffer_atomic_fadd on gfx11 (#108312)

* Fix a bug introduced by the Chipset refactoring in #107720 where
atomics emulation for adds was mistakenly applied to gfx11+
* Add the case needed for gfx11+ atomic emulation, namely that gfx11
doesn't support atomically adding a v2f16 or v2bf16, thus requiring
MLIR-level legalization for buffer intrinsics that attempt to do such an
addition
* Add tests, including tests for gfx11 atomic emulation

Co-authored-by: Manupa Karunaratne <manupa.karunaratne at amd.com>


  Commit: 8cf3eb49a5d9831620b290b9a0686149bd438267
      https://github.com/llvm/llvm-project/commit/8cf3eb49a5d9831620b290b9a0686149bd438267
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

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

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


  Commit: 2e30f8d114e1406b35dc63868a92f4279330251b
      https://github.com/llvm/llvm-project/commit/2e30f8d114e1406b35dc63868a92f4279330251b
  Author: Balazs Benics <benicsbalazs at gmail.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
    M clang/test/Analysis/fread.c

  Log Message:
  -----------
  [analyzer] Fix StreamChecker crash in fread modeling (#108393)

In #93408
https://github.com/llvm/llvm-project/commit/69bc159142c6e4ed168e32a6168392d396f891de
I refined how invalidation is done for `fread`. It can crash, if the
"size" or "count" parameters of "fread" is a perfectly constrained
negative value. In such cases, when it will try to allocate a
SmallVector with a negative size, which will cause a crash.

To mitigate this issue, let's just guard against negative values.

CPP-3247


  Commit: 43fd2c401edd4f3ca0c687dd6937c2603fb15f71
      https://github.com/llvm/llvm-project/commit/43fd2c401edd4f3ca0c687dd6937c2603fb15f71
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/Pointer.cpp
    M clang/lib/AST/ByteCode/Pointer.h
    A clang/test/AST/ByteCode/const-base-cast.cpp
    M clang/test/CodeGenCXX/const-base-cast.cpp

  Log Message:
  -----------
  [clang][bytecode] Implement base casts on integral pointers (#108340)

Get the right offset to apply from the RecordLayout.


  Commit: bd8d432d7bd0891132ae69daa70e18ba387df43f
      https://github.com/llvm/llvm-project/commit/bd8d432d7bd0891132ae69daa70e18ba387df43f
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Program.cpp
    M clang/lib/AST/ByteCode/Program.h
    M clang/test/CodeGenObjC/boxing.m

  Log Message:
  -----------
  [clang][bytecode] Add support for creating dummies for expressions (#108394)

And use that to fix VisitObjCBoxedExprs.


  Commit: 8c0551503219b8e1da7dd6c24de1d9e79cb7cae6
      https://github.com/llvm/llvm-project/commit/8c0551503219b8e1da7dd6c24de1d9e79cb7cae6
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/test/CodeGen/RISCV/half-convert.ll

  Log Message:
  -----------
  [LegalizeIntegerTypes] Simplify ExpandIntRes_FP_TO_XINT when operand needs to be SoftPromoted. (#107634)

Create an FP_EXTEND instead of handling the soft promote directly. This
FP_EXTEND will be visited and soft promoted itself.

This removes a zero extend from the generated code when the f32 type is
itself softened. Previously we softened it as an fp16_to_fp which sees
the operand as an integer type so we extend it. When we soften the
result as an fp_extend we see the source as f16 and don't extend. It
only becomes an integer inside call lowering not by type legalization.

If this extend is really necessary, then we have an issue when an
f16->f32 fp_extend exists in the source and f32 needs to be softened.

This simplifies part of #102503.


  Commit: 859b785bb6a1ee20ffca58102d877fc9a4a639e4
      https://github.com/llvm/llvm-project/commit/859b785bb6a1ee20ffca58102d877fc9a4a639e4
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

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

  Log Message:
  -----------
  [RISCV] Restructure CC_RISCV_FastCC to reduce code duplication. NFC (#107671)

Move GPR handling closer to the end so we can share it with the indirect
handling for vector. Use a single block for storing any type to the
stack.


  Commit: e42f4734c61ac139eba6f880e204c5231b431b9b
      https://github.com/llvm/llvm-project/commit/e42f4734c61ac139eba6f880e204c5231b431b9b
  Author: Alex MacLean <amaclean at nvidia.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.h
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    A llvm/test/CodeGen/NVPTX/copysign.ll
    M llvm/test/CodeGen/NVPTX/math-intrins.ll

  Log Message:
  -----------
  Reland "[NVPTX] Support copysign PTX instruction" (#108125)

Lower `fcopysign` SDNodes into `copysign` PTX instructions where
possible. See [PTX ISA: 9.7.3.2. Floating Point Instructions: copysign]
(https://docs.nvidia.com/cuda/parallel-thread-execution/index.html#floating-point-instructions-copysign).

Copysign SDNodes with mismatched types are expanded as before, since the
PTX instruction requires the types to match.


  Commit: 73535076f2c517fd04c43cccab4c47bd38b39d49
      https://github.com/llvm/llvm-project/commit/73535076f2c517fd04c43cccab4c47bd38b39d49
  Author: Saleem Abdulrasool <abdulras at thebrowser.company>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M compiler-rt/lib/builtins/cpu_model/aarch64.h

  Log Message:
  -----------
  builtins: replicate `aarch64.c` change into `aarch64.h`

Perform the same macro expansion in the header to improve handling
the various ARM64 environments which use different CPU architecture
identification macro spellings.


  Commit: 1ad84d7961ec3ddab9233370066110ecaa5eb329
      https://github.com/llvm/llvm-project/commit/1ad84d7961ec3ddab9233370066110ecaa5eb329
  Author: yingopq <115543042+yingopq at users.noreply.github.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Target/Mips/MipsISelLowering.cpp
    A llvm/test/CodeGen/Mips/ins.ll

  Log Message:
  -----------
  [Mips] Optimize `or (and $src1, mask), (shl $src2, shift)` to `ins` (#103017)

Optimize `$dst = or (and $src1, (2**size0 - 1)), (shl $src2, size0)` to
`ins $src1, $src2, pos, size`,
where `pos = size0, size = 32 - pos`.

Fix #90325


  Commit: fc1c481cf45b41137a08a753c543d8a69d393671
      https://github.com/llvm/llvm-project/commit/fc1c481cf45b41137a08a753c543d8a69d393671
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M flang/lib/Parser/preprocessor.cpp
    M flang/lib/Parser/prescan.cpp
    M flang/lib/Parser/prescan.h
    M flang/module/__fortran_builtins.f90
    M flang/module/__fortran_ieee_exceptions.f90
    M flang/module/ieee_arithmetic.f90
    M flang/module/iso_fortran_env.f90
    M flang/test/Driver/include-header.f90
    A flang/test/Preprocessing/include-file.h
    A flang/test/Preprocessing/include-line.F90

  Log Message:
  -----------
  [flang][preprocessor] Change handling of macros in text from Fortran … (#108113)

…INCLUDE lines

The compiler current treats an INCLUDE line as essentially a synonym for
a preprocessing #include directive. The causes macros that have been
defined at the point where the INCLUDE line is processed to be replaced
within the text of the included file.

This behavior is surprising to users who expect an INCLUDE line to be
expanded into its contents *after* preprocessing has been applied to the
original source file, with no further macro expansion.

Change INCLUDE line processing to use a fresh instance of Preprocessor
containing no macro definitions except _CUDA in CUDA Fortran
compilations and, if the original file was being preprocessed, the
standard definitions of __FILE__, __LINE__, and so forth.


  Commit: c6ca13db41e135d593e33f85cf955d2c041580c3
      https://github.com/llvm/llvm-project/commit/c6ca13db41e135d593e33f85cf955d2c041580c3
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll

  Log Message:
  -----------
  [RISCV] Lower interleave + deinterleave for zvfhmin and zvfbfmin (#108404)

Fortunately f16 and bf16 are always < EEW, so we can always lower via
widening or narrowing. This means we don't need to add patterns for
vrgather_vv_vl just yet.


  Commit: 8ed8210690816084159a166bf698c16ce9ed6a9b
      https://github.com/llvm/llvm-project/commit/8ed8210690816084159a166bf698c16ce9ed6a9b
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M flang/lib/Semantics/check-declarations.cpp
    M flang/test/Semantics/local-vs-global.f90

  Log Message:
  -----------
  [flang] Downgrade error message to warning (#108115)

It is a non-mandatory error to reference an external procedure via an
implicit interface declaration (EXTERNAL or PROCEDURE()) when the
external procedure has an interface that requires the presence of an
explicit interface to be called.

Until now, the compiler has issued a fatal error message from semantics
for this situation. But (1) there are situations, such as passing such
an EXTERNAL as an actual argument, or as the target of a procedure
pointer assignment, where little or no harm is done, (2) other compilers
don't/can't detect this error, even when the procedure's definition is
in the same source file, and (3) it shows up in some real applications.

So downgrade this error to a stern warning. Perhaps in the future the
compiler could resume emission of a hard error in the cases where the
EXTERNAL procedure is actually known to be called via its implicit
interface.


  Commit: eb8cc89295fca2d6436afc38938ca5365a82707c
      https://github.com/llvm/llvm-project/commit/eb8cc89295fca2d6436afc38938ca5365a82707c
  Author: cchen <chichun.chen at hpe.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M clang/docs/OpenMPSupport.rst

  Log Message:
  -----------
  [NFC] Claim OpenMP feature - target_device selector set


  Commit: 1d3bcf99bd0698fb5ebf5fccc24cebf2596dce0a
      https://github.com/llvm/llvm-project/commit/1d3bcf99bd0698fb5ebf5fccc24cebf2596dce0a
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M flang/lib/Evaluate/intrinsics.cpp
    A flang/test/Semantics/kinds06.f90

  Log Message:
  -----------
  [flang] Better error recovery for REAL(x, [KIND=]bad) (#108222)

There's two entries in the intrinsic table for REAL; the first handles
the REAL(z) case of a COMPLEX argument, and the second handles the data
type/kind conversion case.

In the case of REAL(x,bad) with a bad or unsupported kind of REAL,
neither table entry was matching. In the event of an unrecognized
intrinsic function, the compiler emits the first error message that
resulted, which was confusing here because it was a complaint about
having too many arguments.

Reversing the order of the intrinsic table entries would fix the error
message, but would also have broken REAL(z) with a complex argument,
since it would then be treated as REAL(z,KIND=KIND(0.)) rather than
REAL(z,KIND=KIND(z)).

The fix is to let the second entry "hit" with improved error recovery.


  Commit: 1595ca435ca9e85a3f693267b5f928bf3cfc2cc1
      https://github.com/llvm/llvm-project/commit/1595ca435ca9e85a3f693267b5f928bf3cfc2cc1
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M flang/lib/Semantics/check-call.cpp
    A flang/test/Semantics/elemental02.f90

  Log Message:
  -----------
  [flang] Catch whole assumed-size array passed to elemental (#108239)

A whole assumed-size array is not a valid argument to an elemental
procedure (intrinsic or otherwise).


  Commit: 524201881562d696841561e44f0a70a7cc7dc18d
      https://github.com/llvm/llvm-project/commit/524201881562d696841561e44f0a70a7cc7dc18d
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M flang/include/flang/Semantics/expression.h
    M flang/lib/Semantics/expression.cpp
    M flang/test/Semantics/expr-errors06.f90

  Log Message:
  -----------
  [flang] Catch attempts to subscribe empty arrays (#108246)

An array that has one or more empty dimensions cannot have subscripts
unless there's a possibility that they constitute an empty array
section.

We previously only checked that constant subscripts are in bounds.


  Commit: 7aad87312a00a6ce4cdf7fd5bd5d597ff413a600
      https://github.com/llvm/llvm-project/commit/7aad87312a00a6ce4cdf7fd5bd5d597ff413a600
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M flang/runtime/edit-input.cpp
    M flang/unittests/Runtime/Namelist.cpp

  Log Message:
  -----------
  [flang][runtime] Accept some real input for integer NAMELIST (#108268)

A few other Fortran compilers silently accept real values for integer
variables in NAMELIST input. Handling an exponent would be difficult,
but it's easy to skip and ignore a fractional part when one is present.


  Commit: a16164d0c258b284117f8c150efaef891e9aa057
      https://github.com/llvm/llvm-project/commit/a16164d0c258b284117f8c150efaef891e9aa057
  Author: Nirvedh Meshram <96096277+nirvedhmeshram at users.noreply.github.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
    M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl.mlir
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [MLIR][ROCDL] Add dynamically legal ops to LowerGpuOpsToROCDLOpsPass (#108302)

Similar to https://github.com/llvm/llvm-project/pull/108266
After https://github.com/llvm/llvm-project/pull/102971
It is legal to generate `LLVM::ExpOp` and `LLVM::LogOp` if the type is
is a float16 or float32


  Commit: a6a547f18d99f0b0bf5ffac55443d687200f972d
      https://github.com/llvm/llvm-project/commit/a6a547f18d99f0b0bf5ffac55443d687200f972d
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.h
    M lldb/test/Shell/SymbolFile/DWARF/no_unique_address-with-bitfields.cpp

  Log Message:
  -----------
  [lldb][DWARFASTParserClang] Prevent unnamed bitfield creation in the presence of overlapping fields (#108343)

This bug surfaced after https://github.com/llvm/llvm-project/pull/105865
(currently reverted, but blocked on this to be relanded).

Because Clang doesn't emit `DW_TAG_member`s for unnamed bitfields, LLDB
has to make an educated guess about whether they existed in the source.
It does so by checking whether there is a gap between where the last
field ended and the currently parsed field starts. In the example test
case, the empty field `padding` was folded into the storage of `data`.
Because the `bit_offset` of `padding` is `0x0` and its `DW_AT_byte_size`
is `0x1`, LLDB thinks the field ends at `0x1` (not quite because we
first round the size to a word size, but this is an implementation
detail), erroneously deducing that there's a gap between `flag` and
`padding`.

This patch adds the notion of "effective field end", which accounts for
fields that share storage. It is set to the end of the storage that the
two fields occupy. Then we use this to check for gaps in the unnamed
bitfield creation logic.


  Commit: ee40ffd1ee3a13f504cfca6bae5e65c868a5b762
      https://github.com/llvm/llvm-project/commit/ee40ffd1ee3a13f504cfca6bae5e65c868a5b762
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ScheduleZnver4.td
    M llvm/test/tools/llvm-mca/X86/Znver4/zero-idioms.s

  Log Message:
  -----------
  [X86] Recognize VPXORDZrr as a zero-idiom on Znver4 (#108314)

This patch adds information about VPXORDZrr to the znver4 scheduling
model, particularly that it is a zero-idiom.

This fixes a proximal cause of #108157.


  Commit: ab96409180aaad5417030f06a386253722a99d71
      https://github.com/llvm/llvm-project/commit/ab96409180aaad5417030f06a386253722a99d71
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

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

  Log Message:
  -----------
  workflows/release-binaries: Fix automatic upload (#107315)


  Commit: 6eb3519fd70bb50bc3773fdf0bf9435dae2abfe7
      https://github.com/llvm/llvm-project/commit/6eb3519fd70bb50bc3773fdf0bf9435dae2abfe7
  Author: Chris B <chris.bieneman at me.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M clang/lib/Sema/SemaInit.cpp
    M clang/test/AST/HLSL/vector-constructors.hlsl

  Log Message:
  -----------
  [HLSL] Allow narrowing in initialization lists (#108035)

HLSL's initialization lists are _extremely_ generous about allowing
conversions. This change demotes the C++11 warning to the legacy warning
when in HLSL mode.

Required for #56067


  Commit: bea2f2511b69521dc73766b8e3503f11e378113b
      https://github.com/llvm/llvm-project/commit/bea2f2511b69521dc73766b8e3503f11e378113b
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/utils/gn/build/toolchain/target_flags.gni
    M llvm/utils/gn/secondary/compiler-rt/lib/BUILD.gn
    M llvm/utils/gn/secondary/compiler-rt/lib/asan/BUILD.gn

  Log Message:
  -----------
  [gn build] Port win asan runtime rules (#108293)

Windows doesn't have a static runtime after #107899.


  Commit: 9e2bb418b4a21fb8ca1fe83fb01a26e3f72d59a1
      https://github.com/llvm/llvm-project/commit/9e2bb418b4a21fb8ca1fe83fb01a26e3f72d59a1
  Author: Marc Auberer <marc.auberer at chillibits.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

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

  Log Message:
  -----------
  [ADT][NFC] Remove unused parameter from DenseMap::InsertIntoBucketImpl (#108382)

Remove unused parameter `Key` from `InsertIntoBucketImpl`


  Commit: 2d47a0baba6f18b5cdf14c007e01b79e37d15c72
      https://github.com/llvm/llvm-project/commit/2d47a0baba6f18b5cdf14c007e01b79e37d15c72
  Author: Joshua Batista <jbatista at microsoft.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

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

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

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

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


  Commit: ee9264522caacad34c5dc2bfb239c223229b870d
      https://github.com/llvm/llvm-project/commit/ee9264522caacad34c5dc2bfb239c223229b870d
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

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

  Log Message:
  -----------
  [sanitizer] Change GetDTLSRange (#108345)

We only need to change size, tls_beg should be unchanged.


  Commit: a30b1d5a38fb7c371293c2b90d0200d0353a3be1
      https://github.com/llvm/llvm-project/commit/a30b1d5a38fb7c371293c2b90d0200d0353a3be1
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp

  Log Message:
  -----------
  [SelectionDAG] Use Register in a few places in InstrEmitter. NFC


  Commit: 81935c5e96ef9310bb16a18ea1d74fb64eaf43da
      https://github.com/llvm/llvm-project/commit/81935c5e96ef9310bb16a18ea1d74fb64eaf43da
  Author: Charlie Barto <chbarto at microsoft.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M compiler-rt/cmake/base-config-ix.cmake
    M compiler-rt/test/lit.common.cfg.py

  Log Message:
  -----------
  [compiler-rt] [MSVC] Detect MSVC as a compiler-id for lit. (#108255)

This is only for "real" msvc and is to support running sanitizer tests
with "real" MSVC. Most compiler-rt tests do not yet pass with msvc,
which will be addressed in future PRs for asan, sanitizer_common, and
the fuzzer.

We've been using these changes to lit to run CI for the version of
address sanitizer that ships with MSVC, by upstreaming them we can avoid
being broken by future lit changes and allow contributors (importantly
_us_) to run the MSVC tests on changes developed in the open.


  Commit: 885ac29910a23db923292fe3fc09d0ec105186dc
      https://github.com/llvm/llvm-project/commit/885ac29910a23db923292fe3fc09d0ec105186dc
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/CtxProfAnalysis.h
    M llvm/include/llvm/ProfileData/PGOCtxProfReader.h
    M llvm/lib/ProfileData/PGOCtxProfReader.cpp
    M llvm/lib/Transforms/IPO/FunctionImport.cpp

  Log Message:
  -----------
  [nfc][ctx_prof] Change some internal "set" types

- the set used for targets under a callsite is simpler to use if iterators
  are stable (it gets manipulated during updates)
- the set used to fetch the transitive closure of GUIDs under a node can
  be left as a choice to the user.


  Commit: 04d3a6be62d338600f72d4dc2c7b24508cecd541
      https://github.com/llvm/llvm-project/commit/04d3a6be62d338600f72d4dc2c7b24508cecd541
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M libcxx/include/CMakeLists.txt
    A libcxx/include/__fwd/get.h
    A libcxx/include/__fwd/variant.h
    M libcxx/include/__ranges/elements_view.h
    M libcxx/include/module.modulemap
    M libcxx/include/variant

  Log Message:
  -----------
  [libc++][modules] Add a header to forward-declare std::get (#108285)

This is necessary because e.g. ranges::elements_view uses std::get but
it needs to have in scope the declaration of all the versions of
std::get that exist in the library. This need is what had originally led
to elements_view.h gaining an include of __fwd/complex.h, but in reality
it is a more general issue that requires a canonical declration point
for all the std::get variations.


  Commit: 7a6945fcf65f58ac6e4800c92f1e6d47930ec648
      https://github.com/llvm/llvm-project/commit/7a6945fcf65f58ac6e4800c92f1e6d47930ec648
  Author: Sushant Gokhale <sgokhale at nvidia.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/test/Analysis/CostModel/AArch64/reduce-fadd.ll
    A llvm/test/Transforms/SLPVectorizer/AArch64/reduce-fadd.ll

  Log Message:
  -----------
  [AArch64][SLP] Add NFC test cases for floating point reductions (#106507)

A successive patch would be added to fix some of the tests.

Pull request: #106507


  Commit: 0446b403b04ad3df709f23a63c2e1cea087459b3
      https://github.com/llvm/llvm-project/commit/0446b403b04ad3df709f23a63c2e1cea087459b3
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

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

  Log Message:
  -----------
  [NFC][AMDGPU][Attributor] Only iterate over filtered functions when creating AAs (#108417)


  Commit: 5d17293caaf0f62ea94fecc137b9b6f07c659dac
      https://github.com/llvm/llvm-project/commit/5d17293caaf0f62ea94fecc137b9b6f07c659dac
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp

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

This patch fixes:

  lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp:2935:31:
  error: designated initializers are a C++20 extension
  [-Werror,-Wc++20-designator]


  Commit: 853bff2122e1f42398587f76234c05d56f16318e
      https://github.com/llvm/llvm-project/commit/853bff2122e1f42398587f76234c05d56f16318e
  Author: Yuxuan Chen <ych at fb.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
    A llvm/test/Transforms/Coroutines/gh107139-split-in-scc.ll

  Log Message:
  -----------
  [Coroutines] properly update CallGraph in CoroSplit (#107935)

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

We weren't updating the call graph properly in CoroSplit. This crash is
due to the await_suspend() function calling the coroutine, forming a
multi-node SCC. The issue bisected to
https://github.com/llvm/llvm-project/pull/79712 but I think this is red
herring. We haven't been properly updating the call graph.

Added an example of such code as a test case.


  Commit: adc1ab33a4db93be74487663259617c9346ef1d2
      https://github.com/llvm/llvm-project/commit/adc1ab33a4db93be74487663259617c9346ef1d2
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/unittests/ProfileData/PGOCtxProfReaderWriterTest.cpp

  Log Message:
  -----------
  Add missing include to `PGOCtxProfReaderWriterTest.cpp`


  Commit: 0989a775ae779c7df783537a2b796ac7707e13e4
      https://github.com/llvm/llvm-project/commit/0989a775ae779c7df783537a2b796ac7707e13e4
  Author: Tyler Nowicki <tyler.nowicki at amd.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
    M llvm/lib/Transforms/Coroutines/SuspendCrossingInfo.cpp

  Log Message:
  -----------
  [Coroutines] Verify normalization was not missed (#108096)

* Add asserts to verify normalization of the coroutine happened.
* This will be important when normalization becomes part of an ABI
object.

--- From a previous discussion here
https://github.com/llvm/llvm-project/pull/108076

Normalization performs these important steps:

split around each suspend, this adds BBs before/after each suspend so
each suspend now exists in its own block.
split around coro.end (similar to above)
break critical edges and add single-edge phis in the new blocks (also
removing other single-edge phis).
Each of these things can individually be tested
A) Check that each suspend is the only inst in its BB
B) Check that coro.end is the only inst in its BB
C) Check that each edge of a multi-edge phis is preceded by single-edge
phi in an immediate pred

For 1) and 2) I believe the purpose of the transform is in part for
suspend crossing info's analysis so it can specifically 'mark' the
suspend blocks and identify the end of the coroutine. There are some
existing places within suspend crossing info that visit the CoroSuspends
and CoroEnds so we could check A) and B) there.

For 3) I believe the purpose of this transform is for insertSpills to
work properly. Infact there is already a check for the result of this
transform!

assert(PN->getNumIncomingValues() == 1 &&
           "unexpected number of incoming "
           "values in the PHINode");

I think to verify the result of normalization we just need to add checks
A) and B) to suspend crossing info.


  Commit: 2670565afc4ec855fa406b8f582dde44ce1739fb
      https://github.com/llvm/llvm-project/commit/2670565afc4ec855fa406b8f582dde44ce1739fb
  Author: Tyler Nowicki <tyler.nowicki at amd.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Coroutines/CMakeLists.txt
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
    M llvm/lib/Transforms/Coroutines/CoroInternal.h
    M llvm/lib/Transforms/Coroutines/Coroutines.cpp
    A llvm/lib/Transforms/Coroutines/MaterializationUtils.cpp
    A llvm/lib/Transforms/Coroutines/MaterializationUtils.h
    M llvm/lib/Transforms/Coroutines/SpillUtils.cpp
    M llvm/lib/Transforms/Coroutines/SpillUtils.h

  Log Message:
  -----------
  [Coroutines] Move materialization code into its own utils (#108240)

* Move materialization out of CoroFrame to MaterializationUtils.h
* Move spill related utilities that were used by materialization to
SpillUtils
* Move isSuspendBlock (needed by materialization) to CoroInternal

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


  Commit: 030c6da7af826b641db005be925b20f956c3a6bb
      https://github.com/llvm/llvm-project/commit/030c6da7af826b641db005be925b20f956c3a6bb
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M clang-tools-extra/clangd/Diagnostics.cpp
    M clang-tools-extra/clangd/Diagnostics.h
    M clang-tools-extra/clangd/ParsedAST.cpp
    M clang-tools-extra/clangd/Preamble.cpp
    M clang-tools-extra/clangd/unittests/ConfigCompileTests.cpp
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/Diagnostic.h
    M clang/include/clang/Basic/DiagnosticCategories.h
    M clang/include/clang/Basic/DiagnosticIDs.h
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Basic/Diagnostic.cpp
    M clang/lib/Basic/DiagnosticIDs.cpp
    M clang/lib/Frontend/LogDiagnosticPrinter.cpp
    M clang/lib/Frontend/SerializedDiagnosticPrinter.cpp
    M clang/lib/Frontend/TextDiagnosticPrinter.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaCUDA.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/StaticAnalyzer/Core/TextDiagnostics.cpp
    M clang/test/Sema/diagnose_if.c
    A clang/test/SemaCXX/diagnose_if-warning-group.cpp
    M clang/tools/diagtool/ListWarnings.cpp
    M clang/tools/diagtool/ShowEnabledWarnings.cpp
    M clang/tools/libclang/CXStoredDiagnostic.cpp

  Log Message:
  -----------
  [clang] Extend diagnose_if to accept more detailed warning information (#70976)

This implements parts of the extension proposed in
https://discourse.llvm.org/t/exposing-the-diagnostic-engine-to-c/73092/7.

Specifically, this makes it possible to specify a diagnostic group in an
optional third argument.


  Commit: 33325524f5e80a898a7ae875e208a54af132001b
      https://github.com/llvm/llvm-project/commit/33325524f5e80a898a7ae875e208a54af132001b
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M libcxx/include/type_traits
    M libcxx/test/std/containers/sequences/vector.bool/enabled_hash.pass.cpp
    M libcxx/test/std/diagnostics/syserr/syserr.hash/enabled_hash.pass.cpp
    M libcxx/test/std/experimental/memory/memory.observer.ptr/hash.pass.cpp
    M libcxx/test/std/input.output/filesystems/class.path/path.member/path.hash_enabled.pass.cpp
    M libcxx/test/std/strings/basic.string.hash/enabled_hashes.pass.cpp
    M libcxx/test/std/strings/string.view/string.view.hash/enabled_hashes.pass.cpp
    M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/enabled_hashes.pass.cpp
    M libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.hash/hash_shared_ptr.pass.cpp
    M libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.hash/hash_unique_ptr.pass.cpp
    M libcxx/test/std/utilities/optional/optional.hash/hash.pass.cpp
    M libcxx/test/std/utilities/template.bitset/bitset.hash/enabled_hash.pass.cpp
    M libcxx/test/std/utilities/type.index/type.index.synopsis/hash_type_index.pass.cpp
    M libcxx/test/std/utilities/variant/variant.hash/hash.pass.cpp
    M libcxx/test/support/poisoned_hash_helper.h
    R libcxx/test/support/test.support/test_poisoned_hash_helper.pass.cpp

  Log Message:
  -----------
  [libc++][modules] Refactor poisoned_hash_helper (#108296)

The poisoned_hash_helper header was relying on an implicit forward
declaration of std::hash located in <type_traits>. When we improve the
modularization of the library, that causes issues, in addition to being
a fundamentally non-portable assumption in the test suite.

It turns out that the reason for relying on a forward declaration is to
be able to test that std::hash is *not* provided if we don't include any
header that provides it. But testing that is actually both non-portable
and not really useful.

Indeed, what harm does it make if additional headers provide std::hash
specializations? That would certainly be conforming -- the Standard
never requires an implementation to avoid providing a declaration when a
given header is included, instead it mandates what *must* be provided
for sure. In that spirit, it would be conforming for e.g. `<cstddef>` to
define the hash specializations if that was our desire. I also don't
read https://wg21.link/P0513R0 as going against that statement. Hence,
this patch just removes that test which doesn't carry its weight.

Fixes #56938


  Commit: c6b2aa1896e44c3b96a77f9f6ae1b1df6294cf2e
      https://github.com/llvm/llvm-project/commit/c6b2aa1896e44c3b96a77f9f6ae1b1df6294cf2e
  Author: Robin Caloudis <robin.caloudis at gmx.de>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M libcxx/include/__math/traits.h
    M libcxx/test/std/numerics/c.math/signbit.pass.cpp

  Log Message:
  -----------
  [libc++][math] Provide overloads for cv-unqualified floating point types for `std::signbit` (#106566)

## Why
Following up on https://github.com/llvm/llvm-project/pull/105946, this
patch provides the floating point overloads for `std::signbit` as
defined by
[P0533R9](https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2021/p0533r9.pdf).

## What
* Test and add overloads for cv-unqualified floating point types
* Remove constrained overload as it is not needed anymore
* Make use of `template<class = void>` as the universal C runtime (UCRT)
needed for Clang-Cl comes with overloads for all cv-unqualified floating
point types (float, double, long double) for `std::signbit()` by itself
[in the
WinSDK](https://github.com/microsoft/win32metadata/blob/e012b29924c53aa941fc010850b68331b0c3ea80/generation/WinSDK/RecompiledIdlHeaders/ucrt/corecrt_math.h#L309-L322).
In a certain way, this can be seen as a deviation from the C standard.
We need to work around it as the compilation would otherwise error out
due to duplicated definitions.


  Commit: 17e0686ab1107a1a675d8783383dedf70fa24033
      https://github.com/llvm/llvm-project/commit/17e0686ab1107a1a675d8783383dedf70fa24033
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M libcxx/.clang-format
    M libcxx/include/__algorithm/adjacent_find.h
    M libcxx/include/__algorithm/all_of.h
    M libcxx/include/__algorithm/any_of.h
    M libcxx/include/__algorithm/binary_search.h
    M libcxx/include/__algorithm/count.h
    M libcxx/include/__algorithm/count_if.h
    M libcxx/include/__algorithm/equal.h
    M libcxx/include/__algorithm/equal_range.h
    M libcxx/include/__algorithm/find.h
    M libcxx/include/__algorithm/find_end.h
    M libcxx/include/__algorithm/find_first_of.h
    M libcxx/include/__algorithm/find_if.h
    M libcxx/include/__algorithm/find_if_not.h
    M libcxx/include/__algorithm/includes.h
    M libcxx/include/__algorithm/is_heap.h
    M libcxx/include/__algorithm/is_heap_until.h
    M libcxx/include/__algorithm/is_partitioned.h
    M libcxx/include/__algorithm/is_permutation.h
    M libcxx/include/__algorithm/is_sorted.h
    M libcxx/include/__algorithm/is_sorted_until.h
    M libcxx/include/__algorithm/lexicographical_compare.h
    M libcxx/include/__algorithm/lower_bound.h
    M libcxx/include/__algorithm/max.h
    M libcxx/include/__algorithm/max_element.h
    M libcxx/include/__algorithm/min.h
    M libcxx/include/__algorithm/min_element.h
    M libcxx/include/__algorithm/minmax.h
    M libcxx/include/__algorithm/minmax_element.h
    M libcxx/include/__algorithm/mismatch.h
    M libcxx/include/__algorithm/none_of.h
    M libcxx/include/__algorithm/pstl.h
    M libcxx/include/__algorithm/remove.h
    M libcxx/include/__algorithm/remove_if.h
    M libcxx/include/__algorithm/search.h
    M libcxx/include/__algorithm/search_n.h
    M libcxx/include/__algorithm/set_intersection.h
    M libcxx/include/__algorithm/simd_utils.h
    M libcxx/include/__algorithm/unique.h
    M libcxx/include/__algorithm/upper_bound.h
    M libcxx/include/__bit/bit_cast.h
    M libcxx/include/__bit/countl.h
    M libcxx/include/__bit/countr.h
    M libcxx/include/__chrono/leap_second.h
    M libcxx/include/__config
    M libcxx/include/__filesystem/path.h
    M libcxx/include/__functional/identity.h
    M libcxx/include/__math/abs.h
    M libcxx/include/__math/copysign.h
    M libcxx/include/__math/min_max.h
    M libcxx/include/__math/roots.h
    M libcxx/include/__math/rounding_functions.h
    M libcxx/include/__math/traits.h
    M libcxx/include/__memory/allocate_at_least.h
    M libcxx/include/__memory/allocator.h
    M libcxx/include/__memory/allocator_traits.h
    M libcxx/include/__memory/assume_aligned.h
    M libcxx/include/__memory/temporary_buffer.h
    M libcxx/include/__mutex/lock_guard.h
    M libcxx/include/__mutex/unique_lock.h
    M libcxx/include/__utility/forward.h
    M libcxx/include/__utility/move.h
    M libcxx/include/array
    M libcxx/include/barrier
    M libcxx/include/deque
    M libcxx/include/forward_list
    M libcxx/include/future
    M libcxx/include/limits
    M libcxx/include/list
    M libcxx/include/map
    M libcxx/include/math.h
    M libcxx/include/new
    M libcxx/include/queue
    M libcxx/include/regex
    M libcxx/include/scoped_allocator
    M libcxx/include/set
    M libcxx/include/stack
    M libcxx/include/stdlib.h
    M libcxx/include/string
    M libcxx/include/string_view
    M libcxx/include/unordered_map
    M libcxx/include/unordered_set
    M libcxx/include/vector

  Log Message:
  -----------
  [libc++][NFC] Use [[__nodiscard__]] unconditionally (#80454)

`__has_cpp_attribute(__nodiscard__)` is always true now, so we might as
well replace `_LIBCPP_NODISCARD`. It's one less macro that can result in
bad diagnostics.


  Commit: e0cd11eba526234ca14a0b91f5598ca3363b6aca
      https://github.com/llvm/llvm-project/commit/e0cd11eba526234ca14a0b91f5598ca3363b6aca
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M clang-tools-extra/clangd/Diagnostics.cpp
    M clang-tools-extra/clangd/Diagnostics.h
    M clang-tools-extra/clangd/ParsedAST.cpp
    M clang-tools-extra/clangd/Preamble.cpp
    M clang-tools-extra/clangd/unittests/ConfigCompileTests.cpp
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/Diagnostic.h
    M clang/include/clang/Basic/DiagnosticCategories.h
    M clang/include/clang/Basic/DiagnosticIDs.h
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Basic/Diagnostic.cpp
    M clang/lib/Basic/DiagnosticIDs.cpp
    M clang/lib/Frontend/LogDiagnosticPrinter.cpp
    M clang/lib/Frontend/SerializedDiagnosticPrinter.cpp
    M clang/lib/Frontend/TextDiagnosticPrinter.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaCUDA.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/StaticAnalyzer/Core/TextDiagnostics.cpp
    M clang/test/Sema/diagnose_if.c
    R clang/test/SemaCXX/diagnose_if-warning-group.cpp
    M clang/tools/diagtool/ListWarnings.cpp
    M clang/tools/diagtool/ShowEnabledWarnings.cpp
    M clang/tools/libclang/CXStoredDiagnostic.cpp

  Log Message:
  -----------
  Revert "[clang] Extend diagnose_if to accept more detailed warning information (#70976)"

This reverts commit 030c6da7af826b641db005be925b20f956c3a6bb.

Several build bots are failing:
https://lab.llvm.org/buildbot/#/builders/89/builds/6211
https://lab.llvm.org/buildbot/#/builders/157/builds/7578
https://lab.llvm.org/buildbot/#/builders/140/builds/6429


  Commit: 87e1104cf0e2de0d04bee2944893fa7897277b2f
      https://github.com/llvm/llvm-project/commit/87e1104cf0e2de0d04bee2944893fa7897277b2f
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    A clang/test/ClangScanDeps/implicit-target.c
    M clang/tools/clang-scan-deps/ClangScanDeps.cpp

  Log Message:
  -----------
  [clang-scan-deps] Infer the target from the executable name (#108189)

This allows clang-scan-deps to work correctly when using cross compilers
with names like <triple>-clang.


  Commit: d37d05795dbbdd1b7e629e966013df5967d2da5b
      https://github.com/llvm/llvm-project/commit/d37d05795dbbdd1b7e629e966013df5967d2da5b
  Author: Sushant Gokhale <sgokhale at nvidia.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/AArch64/reduce-fadd.ll

  Log Message:
  -----------
  [SLP][AArch64] Fix test failure for PR #106507 (#108442)

Updating the failing test in this patch.


  Commit: a81a4b2a7ac2d0b8195bb008b2c0f464cfbda223
      https://github.com/llvm/llvm-project/commit/a81a4b2a7ac2d0b8195bb008b2c0f464cfbda223
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M lldb/include/lldb/Core/SourceManager.h

  Log Message:
  -----------
  [lldb] Fix building with lldb::once_flag != std::once_flag

This fixes build breakage on e.g. mingw platforms since
ffa2f539ae2a4e79c01b3d54f8b12c63d8781a0c.

The Debugger::ReportWarning function takes a pointer to a
std::once_flag. On many platforms, llvm::once_flag is a typedef
for std::once_flag, but on others, llvm::once_flag is a custom
reimplementation.


  Commit: 159e5b3fdf26325403ad3756d43e625b7d59443a
      https://github.com/llvm/llvm-project/commit/159e5b3fdf26325403ad3756d43e625b7d59443a
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

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

  Log Message:
  -----------
  MemCpyOpt: avoid unnecessary getMemorySSA (NFC) (#108405)


  Commit: 085c88c3ad4a9802fb6ad3d96db4af6d66b4d588
      https://github.com/llvm/llvm-project/commit/085c88c3ad4a9802fb6ad3d96db4af6d66b4d588
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

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

  Log Message:
  -----------
  [gn build] Port 04d3a6be62d3


  Commit: 3733528e521b7ee6af3950c65c3ff421c8fd0af6
      https://github.com/llvm/llvm-project/commit/3733528e521b7ee6af3950c65c3ff421c8fd0af6
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

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

  Log Message:
  -----------
  [gn build] Port 2670565afc4e


  Commit: c05e29bff036060f0811b887a92715104abdceb5
      https://github.com/llvm/llvm-project/commit/c05e29bff036060f0811b887a92715104abdceb5
  Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/LinkAllPasses.h
    M llvm/include/llvm/Transforms/Scalar/Scalarizer.h
    M llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
    M llvm/lib/Transforms/Scalar/Scalar.cpp
    M llvm/lib/Transforms/Scalar/Scalarizer.cpp
    M llvm/test/CodeGen/DirectX/acos.ll
    M llvm/test/CodeGen/DirectX/asin.ll
    M llvm/test/CodeGen/DirectX/atan.ll
    M llvm/test/CodeGen/DirectX/ceil.ll
    M llvm/test/CodeGen/DirectX/cos.ll
    M llvm/test/CodeGen/DirectX/cosh.ll
    M llvm/test/CodeGen/DirectX/exp2.ll
    M llvm/test/CodeGen/DirectX/fabs.ll
    M llvm/test/CodeGen/DirectX/floor.ll
    M llvm/test/CodeGen/DirectX/isinf.ll
    A llvm/test/CodeGen/DirectX/llc-pipeline.ll
    M llvm/test/CodeGen/DirectX/reversebits.ll
    M llvm/test/CodeGen/DirectX/round.ll
    M llvm/test/CodeGen/DirectX/saturate.ll
    A llvm/test/CodeGen/DirectX/scalar-store.ll
    A llvm/test/CodeGen/DirectX/scalarize-two-calls.ll
    M llvm/test/CodeGen/DirectX/sin.ll
    M llvm/test/CodeGen/DirectX/sinh.ll
    M llvm/test/CodeGen/DirectX/sqrt.ll
    M llvm/test/CodeGen/DirectX/tan.ll
    M llvm/test/CodeGen/DirectX/tanh.ll
    M llvm/test/CodeGen/DirectX/trunc.ll
    M llvm/tools/opt/optdriver.cpp

  Log Message:
  -----------
  [LegacyPM][DirectX] Add legacy scalarizer back for use in the DirectX backend (#107427)

As discussed in this
[proposal](https://github.com/llvm/wg-hlsl/pull/62/files?short_path=ac6e592#diff-ac6e59276afe8016e307eedc5c835f534c0cb353707760b44df0fa9d905a5cf8).
We had to bring back the legacy pass manager interface for the
scalarizer pass. Two reasons for this:
1. The DirectX backend is still using the legacy pass manager
2. The new PM isn't hooked up in clang yet via `BackendUtil.cpp`'s
`AddEmitPasses` That means even if we add a `buildCodeGenPipeline` we
won't be able to benefit from the new pass manager's scalarizer pass
interface.

The remaining changes are hooking up the scalarizer pass to the DirectX
backend, updating the DirectX test cases,
and allowing the `optdriver` to not block the legacy invocation of the
scalarizer pass.

Future work still needs to be done to allow the scalarizer pass to
handle target specific intrinsics.

closes #105178


  Commit: ad3ad15229cc65874eae173137e47b5c817d77ea
      https://github.com/llvm/llvm-project/commit/ad3ad15229cc65874eae173137e47b5c817d77ea
  Author: David Green <david.green at arm.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    A llvm/test/Transforms/InstCombine/fmod.ll
    M llvm/test/Transforms/InstCombine/pow-1.ll

  Log Message:
  -----------
  [InstCombine] Test for fmod -> frem folding. NFC


  Commit: aa3465793a250faa5426ac626989375465256658
      https://github.com/llvm/llvm-project/commit/aa3465793a250faa5426ac626989375465256658
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M clang/tools/clang-scan-deps/CMakeLists.txt

  Log Message:
  -----------
  [clang-scan-deps] Fix builds with BUILD_SHARED_LIBS=ON

This fixes building in this configuration after
87e1104cf0e2de0d04bee2944893fa7897277b2f.


  Commit: 7e9bd12cd9ebb1f14c3716d5e45fb88aff23e671
      https://github.com/llvm/llvm-project/commit/7e9bd12cd9ebb1f14c3716d5e45fb88aff23e671
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

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

  Log Message:
  -----------
  MemCpyOpt: clarify logic in processStoreOfLoad (NFC) (#108400)


  Commit: 82a36468c74a29b6154639d659550c62457e655b
      https://github.com/llvm/llvm-project/commit/82a36468c74a29b6154639d659550c62457e655b
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M lld/COFF/DLL.cpp
    M lld/COFF/DLL.h
    M lld/COFF/Driver.cpp
    M lld/COFF/InputFiles.cpp
    M lld/COFF/InputFiles.h
    M lld/COFF/SymbolTable.cpp
    M lld/COFF/SymbolTable.h
    M lld/COFF/Symbols.h
    M lld/COFF/Writer.cpp
    M lld/test/COFF/Inputs/loadconfig-arm64ec.s
    M lld/test/COFF/arm64ec-import.test

  Log Message:
  -----------
  [LLD][COFF] Add support for ARM64EC auxiliary IAT (#108304)

In addition to the regular IAT, ARM64EC also includes an auxiliary IAT.
At runtime, the regular IAT is populated with the addresses of imported
functions, which may be x86_64 functions or the export thunks of ARM64EC
functions. The auxiliary IAT contains versions of functions that are
guaranteed to be directly callable by ARM64 code.

The linker fills the auxiliary IAT with the addresses of `__impchk_`
thunks. These thunks perform a call on the IAT address using
`__icall_helper_arm64ec` with the target address from the IAT. If the
imported function is an ARM64EC function, the OS may replace the address
in the auxiliary IAT with the address of the ARM64EC version of the
function (not its export thunk), avoiding the runtime call checker for
better performance.


  Commit: dd66aaf85a2258324851ac19eb08094928ac1eac
      https://github.com/llvm/llvm-project/commit/dd66aaf85a2258324851ac19eb08094928ac1eac
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_common_interface.inc
    M compiler-rt/lib/sanitizer_common/sanitizer_interface_internal.h
    M compiler-rt/lib/sanitizer_common/sanitizer_tls_get_addr.cpp
    M compiler-rt/lib/sanitizer_common/weak_symbols.txt

  Log Message:
  -----------
  [sanitizer] Allow to override GetDTLSRange (#108348)

And rename it into __sanitizer_get_dtls_size.

The test will be in a separate patch, as I
expected reverts of the test.


  Commit: de0fdcb2b04d0eb85b408a459824c6c07d0656ad
      https://github.com/llvm/llvm-project/commit/de0fdcb2b04d0eb85b408a459824c6c07d0656ad
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/multi-extracts-bv-combined.ll

  Log Message:
  -----------
  [SLP][NFC]Add a test for incorrectly combined extracts with the buildvector


  Commit: 95eab0d195fdfac03ddccbd3941dcb365b87a6be
      https://github.com/llvm/llvm-project/commit/95eab0d195fdfac03ddccbd3941dcb365b87a6be
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    A compiler-rt/test/sanitizer_common/TestCases/Linux/tls_get_addr.c

  Log Message:
  -----------
  [sanitizer] Test for __sanitizer_get_dtls_size (#108349)

Test for #108348 which is almost NFC. However, the test
may fail on some platforms, and a few iterations could be
needed to filter out unsupported platforms.


  Commit: 5d7cf504ce02f387660ceaedf890c35cfd0ad55f
      https://github.com/llvm/llvm-project/commit/5d7cf504ce02f387660ceaedf890c35cfd0ad55f
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/multi-extracts-bv-combined.ll

  Log Message:
  -----------
  [SLP]Fix PR108421: Correctly deduce VF from the masks

Need to select the max of CommonMask and V1 Mask size to correctly
perform reshuffling of the vectors, otherwise incorrect result is
generated.

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


  Commit: 71cb7811bbfedb400f86286a31f0a9bea3d834c6
      https://github.com/llvm/llvm-project/commit/71cb7811bbfedb400f86286a31f0a9bea3d834c6
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

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

  Log Message:
  -----------
  [LV] Remove stale completeLoopSkeleton (NFCI).

The function has been removed a while ago, also remove the stable
declaration.


  Commit: 4808842771f8b009f9366db13249890698aee7b6
      https://github.com/llvm/llvm-project/commit/4808842771f8b009f9366db13249890698aee7b6
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/IPO/Attributor.h
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp

  Log Message:
  -----------
  [NFC][Attributor] Use unsigned integer for address space tracking (#108447)


  Commit: 08d294df5513e1914077ced91a9b44a00874fe0f
      https://github.com/llvm/llvm-project/commit/08d294df5513e1914077ced91a9b44a00874fe0f
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-sink-replicate-region.ll

  Log Message:
  -----------
  [VPlan] Simplify VPBuilder insert point when adding users in exit block.

Simplifies setting the insert point, addressing a TODO.


  Commit: 2e58d923a1a543166a2aa72d8b579bb5c7cc320b
      https://github.com/llvm/llvm-project/commit/2e58d923a1a543166a2aa72d8b579bb5c7cc320b
  Author: weiwei chen <weiwei.chen at modular.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXLowerAlloca.cpp
    M llvm/test/CodeGen/NVPTX/lower-alloca.ll

  Log Message:
  -----------
  [NVPTX] Check Before inserting AddrSpaceCastInst in NVPTXLoweringAlloca (#106127)

If `allocaInst` is already in `ADDRESS_SPACE_LOCAL`, there is no need to
do an explicit cast which will actually fail assertion with
`AddrSpaceCastInst`. Only insert the cast when needed.


  Commit: 6db8292d4865e00a5a6fa2aae5aacdb9cab3c2ef
      https://github.com/llvm/llvm-project/commit/6db8292d4865e00a5a6fa2aae5aacdb9cab3c2ef
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

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

  Log Message:
  -----------
  [RISCV] Put ADDI InstAliases together and give them explicit priorities.

Make the priorities explicit instead of relying on the order in the .td file.


  Commit: f02a0d0e73d90a5f8b207ba4fb95f3ae9cc23f53
      https://github.com/llvm/llvm-project/commit/f02a0d0e73d90a5f8b207ba4fb95f3ae9cc23f53
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/test/MC/RISCV/csr-aliases.s

  Log Message:
  -----------
  [RISCV] Consistently use CHECK-EXT-F instead of CHECK-EXT-F-ON in csr-aliases.s. NFC

We only have RUN lines for CHECK-EXT-F, but he had a mix of checks.


  Commit: 8814b6db3809b1cc341a3672e680faa5d167f52b
      https://github.com/llvm/llvm-project/commit/8814b6db3809b1cc341a3672e680faa5d167f52b
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M clang/test/Driver/cl-link.c
    M clang/test/Driver/windows-cross.c

  Log Message:
  -----------
  [clang][test] Fix some windows driver tests with legacy runtime dir layout (#108452)

With the legacy runtime directory layout, the runtime libraries are
under `lib/clang/20/lib/windows` and have an arch suffix.


  Commit: 853bb8f635595c382caf112b804d76b8f4520b74
      https://github.com/llvm/llvm-project/commit/853bb8f635595c382caf112b804d76b8f4520b74
  Author: Marc Auberer <marc.auberer at chillibits.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [ADT][NFC] Refactor/optimize DenseMap::copyFrom (#108377)

Simplify code, constexpr-ify if with constexpr condition


  Commit: 48088dc01b85e93b56475f9d4c6ad9f1874eed82
      https://github.com/llvm/llvm-project/commit/48088dc01b85e93b56475f9d4c6ad9f1874eed82
  Author: rjmansfield <ryan_mansfield at apple.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/test/tools/llvm-dwp/X86/cu_tu_units_manual_v4.s
    M llvm/test/tools/llvm-dwp/X86/cu_tu_units_manual_v5.s
    M llvm/test/tools/llvm-dwp/X86/cu_tu_units_manual_v5_invalid.s
    M llvm/test/tools/llvm-dwp/X86/debug_macro_v5.s
    M llvm/test/tools/llvm-dwp/X86/type_dedup.test
    M llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp

  Log Message:
  -----------
  [llvm-dwarfdump] Rename manaully-generate-unit-index. (#108399)

-manaully-generate-unit-index was misspelled.


  Commit: 6292ea6879217468cd9187d4f4dd3ee7c713431c
      https://github.com/llvm/llvm-project/commit/6292ea6879217468cd9187d4f4dd3ee7c713431c
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
    M mlir/test/Conversion/AMDGPUToROCDL/wmma.mlir
    M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl.mlir

  Log Message:
  -----------
  [mlir][AMDGPU] Remove an old bf16 workaround (#108409)

The AMDGPU backend now implements LLVM's `bfloat` type. Therefore, we no
longer need to type convert MLIR's `bf16` to `i16` during lowerings to
ROCDL.

As a result of this change, we discovered that, whel the code for MFMA
and WMMA intrinsics was mainly prepared for this change, we were failing
to bitcast the bf16 results of WMMA operations out from the i16 they're
natively represented as. This commit also fixes that issue.

---------

Co-authored-by: Jakub Kuderski <kubakuderski at gmail.com>


  Commit: 6d859c1712b539fb36e799bd7b1801f4acacc1ac
      https://github.com/llvm/llvm-project/commit/6d859c1712b539fb36e799bd7b1801f4acacc1ac
  Author: vporpo <vporpodas at google.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

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

  Log Message:
  -----------
  [SandboxIR] Implement GlobalValue (#108317)

This patch implements sandboxir::GlobalValue mirroring
llvm::GlobalValue. Please note that the implementation is incomplete as
it's missing several member functions.


  Commit: 981bb9dcc926ec91e5c3dd9e5064740ab19e1928
      https://github.com/llvm/llvm-project/commit/981bb9dcc926ec91e5c3dd9e5064740ab19e1928
  Author: Xiang Li <python3kgae at outlook.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/lib/Target/DirectX/DXContainerGlobals.cpp
    M llvm/lib/Target/DirectX/DXILFinalizeLinkage.cpp
    M llvm/lib/Target/DirectX/DXILFinalizeLinkage.h
    M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
    M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.h
    M llvm/lib/Target/DirectX/DXILPrepare.cpp
    A llvm/test/CodeGen/DirectX/ContainerData/PSVResources.ll
    M llvm/test/CodeGen/DirectX/llc-pipeline.ll

  Log Message:
  -----------
  [DirectX] generate resource table for PSV part (#106607)

Use DXILResourceWrapperPass to build the resource table.

Since DXILResourceWrapperPass operates on LLVM intrinsics rather than
DXIL operations, add addPreserved for DXILResourceWrapperPass in the
passes before DXContainerGlobals

Fixes #103275


  Commit: 13280d99aec5b4f383a2f3d5c10ecb148a07384e
      https://github.com/llvm/llvm-project/commit/13280d99aec5b4f383a2f3d5c10ecb148a07384e
  Author: YANG Xudong <yangxudong at ymatrix.cn>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
    M llvm/test/CodeGen/LoongArch/fp16-promote.ll

  Log Message:
  -----------
  [loongarch][DAG][FREEZE] Fix crash when FREEZE a half(f16) type on loongarch (#107791)

For zig with LLVM 19.1.0rc4, we are seeing the following error when
bootstrapping a `loongarch64-linux-musl` target.


https://github.com/ziglang/zig-bootstrap/issues/164#issuecomment-2332357069

It seems that this issue is caused by `PromoteFloatResult` is not
handling FREEZE OP on loongarch.

Here is the reproduction of the error: https://godbolt.org/z/PPfvWjjG5

~~This patch adds the FREEZE OP handling with `PromoteFloatRes_UnaryOp`
and adds a test case.~~

This patch changes loongarch's way of floating point promotion to soft
promotion to avoid this problem.

See: loongarch's handling of `half`:
- https://github.com/llvm/llvm-project/issues/93894
- https://github.com/llvm/llvm-project/pull/94456

Also see: other float promotion FREEZE handling
-
https://github.com/llvm/llvm-project/commit/0019c2f194a5e1f4cd65c5284e204328cc40ab3d


  Commit: 2ca75df1d18caa244dc7f3acd61e491e055c6c60
      https://github.com/llvm/llvm-project/commit/2ca75df1d18caa244dc7f3acd61e491e055c6c60
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/ValueTracking.h
    M llvm/include/llvm/Transforms/InstCombine/InstCombiner.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/InstCombine/rem.ll

  Log Message:
  -----------
  [ValueTracking] Infer is-power-of-2 from dominating conditions (#107994)

Addresses downstream rustc issue:
https://github.com/rust-lang/rust/issues/129795


  Commit: ec1922b52302fd9083eeac35e81e3a0c621b5469
      https://github.com/llvm/llvm-project/commit/ec1922b52302fd9083eeac35e81e3a0c621b5469
  Author: Xiang Li <python3kgae at outlook.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/test/CodeGen/DirectX/floor.ll

  Log Message:
  -----------
  [DirectX] fix fail test (#108468)

Fix fails in floor.ll.
1. Need to enable scalarizer.
2. Need to use 27 for floor.


  Commit: e7a1dc231ad2c8dcf034585472f311617e24006e
      https://github.com/llvm/llvm-project/commit/e7a1dc231ad2c8dcf034585472f311617e24006e
  Author: Erick Ochoa <github at ceci-nest-pas.me>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M mlir/cmake/modules/MLIRDetectPythonEnv.cmake

  Log Message:
  -----------
  [CMake] Remove requirement of NumPy header files (#108465)

NumPy header files were required for building MLIR, however the NumPy
C-API is never used. In other words, NumPy is not a build time
dependency. `numpy`, the python package, is required at runtime for the
python bindings tests. In particular the file
`mlir/python/mlir/runtime/np_to_memref.py` and all tests which may use
it. This commit removes the build time dependency, but the runtime
dependency remains through the `requirements.txt` file.

Co-authored-by: Erick Ochoa <erick at ceci-nest-pas.me>


  Commit: 17ff6161b83e6a5e86fcb6a13c5551bba1438405
      https://github.com/llvm/llvm-project/commit/17ff6161b83e6a5e86fcb6a13c5551bba1438405
  Author: Erick Ochoa <github at ceci-nest-pas.me>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M mlir/test/CMakeLists.txt

  Log Message:
  -----------
  [CMake] Add missing dependency (#108461)

The [`mlir-capi-execution-engine-test` test
executable](https://github.com/llvm/llvm-project/blob/main/mlir/test/CAPI/CMakeLists.txt#L26-L34)

```cmake
if(MLIR_ENABLE_EXECUTION_ENGINE)
  _add_capi_test_executable(mlir-capi-execution-engine-test
    execution_engine.c
  LINK_LIBS PRIVATE
    MLIRCAPIConversion
    MLIRCAPIExecutionEngine
    MLIRCAPIRegisterEverything
)
endif()
```


is run by lit tests, but it is not properly listed as a dependency. It
is added in places conditionally across the file
[`tests/CMakeLists.txt`](https://github.com/llvm/llvm-project/blob/main/mlir/test/CMakeLists.txt#L130-L143)

```cmake
# The native target may not be enabled, in this case we won't
# run tests that involves executing on the host: do not build
# useless binaries.
if(LLVM_ENABLE_PIC AND TARGET ${LLVM_NATIVE_ARCH})
  list(APPEND MLIR_TEST_DEPENDS
    mlir-cpu-runner
    llc
    mlir_async_runtime
    mlir-capi-execution-engine-test
    mlir_c_runner_utils
    mlir_runner_utils
    mlir_float16_utils
  )
endif()
```

But this condition is not the same as the one where the test executable
is added. [It has been reported on discord that the following error
occurred:](https://discord.com/channels/636084430946959380/642426447167881246/1283811636725022730)

```
FAIL: MLIR :: CAPI/execution_engine.c (2 of 2121)
******************** TEST 'MLIR :: CAPI/execution_engine.c' FAILED ********************
Exit Code: 127
Command Output (stdout):
--
# RUN: at line 10
/usr/bin/mlir-capi-execution-engine-test 2>&1 | /usr/bin/FileCheck /builddir/build/BUILD/mlir-19.1.0_rc4-build/mlir-19.1.0-rc4.src/test/CAPI/execution_engine.c
# executed command: /usr/bin/mlir-capi-execution-engine-test
# .---command stderr------------
# | '/usr/bin/mlir-capi-execution-engine-test': command not found
# `-----------------------------
```

This error will not be deterministic and is dependent on the order in
which tools are built. If by any chance,
`mlir-capi-execution-engine-test` is built before the lit tests run,
then nothing will happen. But lit tests can be run before
`mlir-capi-execution-engine-test` is built.

This patch adds the `mlir-capi-execution-engine` to the
`MLIR_TEST_DEPENDS` list when the `MLIR_ENABLE_EXECUTION_ENGINE` flag is
present.

Happy to make changes like:
* removing `mlir-capi-execution-engine-test` from the other place where
it is included in the tests
* and merge and sort alphabetically these two commands

```cmake
set(MLIR_TEST_DEPENDS
FileCheck count not split-file
mlir-capi-ir-test
mlir-capi-irdl-test
mlir-capi-llvm-test
mlir-capi-pass-test
mlir-capi-quant-test
mlir-capi-rewrite-test
mlir-capi-sparse-tensor-test
mlir-capi-transform-test
mlir-capi-transform-interpreter-test
mlir-capi-translation-test
mlir-linalg-ods-yaml-gen
mlir-lsp-server
mlir-opt
  mlir-query
  mlir-reduce
  mlir-tblgen
  mlir-translate
  tblgen-lsp-server
  tblgen-to-irdl
  )

set(MLIR_TEST_DEPENDS ${MLIR_TEST_DEPENDS}
  mlir-capi-pdl-test
  mlir-pdll-lsp-server
  mlir-pdll
  ) 
```

Co-authored-by: Erick Ochoa <erick at ceci-nest-pas.me>


  Commit: 3c9db3a627811f656cc569fe3b8bdb54ba8192bc
      https://github.com/llvm/llvm-project/commit/3c9db3a627811f656cc569fe3b8bdb54ba8192bc
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M clang/utils/TableGen/ClangASTPropertiesEmitter.cpp
    M clang/utils/TableGen/TableGenBackends.h

  Log Message:
  -----------
  [clang][TableGen] Change ASTProperties Emitter to use const RecordKeeper (#108274)

Change ASTProperties Emitter to use const RecordKeeper.

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


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


  Commit: 7ba49685c020f7059fe0ba27c157ecf08b937d44
      https://github.com/llvm/llvm-project/commit/7ba49685c020f7059fe0ba27c157ecf08b937d44
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoF.td
    M llvm/test/CodeGen/RISCV/double-fcmp-strict.ll
    M llvm/test/CodeGen/RISCV/float-fcmp-strict.ll
    M llvm/test/CodeGen/RISCV/half-fcmp-strict.ll
    M llvm/test/MC/RISCV/csr-aliases.s
    M llvm/test/MC/RISCV/rvf-aliases-valid.s
    M llvm/test/MC/RISCV/rvzfinx-aliases-valid.s

  Log Message:
  -----------
  [RISCV] Enable floating point CSR alias mnemonics for Zfinx. (#108464)


  Commit: e323b40bf1dee704801d44e099592d4f6932cc1e
      https://github.com/llvm/llvm-project/commit/e323b40bf1dee704801d44e099592d4f6932cc1e
  Author: Jianjian Guan <jacquesguan at me.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M mlir/lib/Dialect/Transform/Interfaces/TransformInterfaces.cpp

  Log Message:
  -----------
  [NFC][mlir] Simplify code (#108346)


  Commit: cc40a461df1b67dc84ed0334e2818ef8d14f04f5
      https://github.com/llvm/llvm-project/commit/cc40a461df1b67dc84ed0334e2818ef8d14f04f5
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/test/MC/RISCV/rv32ih-aliases-valid.s
    M llvm/test/MC/RISCV/rvi-aliases-valid.s

  Log Message:
  -----------
  [RISCV] Increase EmitPriority on some InstAliases. NFC

Use EmitPriority instead of relying on file ordering when there
are multiple InstAliases for the same instruction.

Enhance tests to check that we are printing the alias correctly
by checking to end of line.
Remove -no-aliases from some RUN lines that expect to check alias.
Remove encoding checks from alias test.


  Commit: dee058f9e3ae95b8f4b95034b65c3d7408060c8e
      https://github.com/llvm/llvm-project/commit/dee058f9e3ae95b8f4b95034b65c3d7408060c8e
  Author: Jim Lin <jim at andestech.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/lib/Basic/Targets/RISCV.cpp
    M clang/test/Preprocessor/riscv-cmodel.c

  Log Message:
  -----------
  [RISCV] Emit predefined macro __riscv_cmodel_large for large code model (#108131)

Co-authored-by: patrick <patrick at andestech.com>


  Commit: c00c62c113d1ac121891d644a9f18f247c24d9b1
      https://github.com/llvm/llvm-project/commit/c00c62c113d1ac121891d644a9f18f247c24d9b1
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M bolt/include/bolt/Profile/ProfileYAMLMapping.h
    M bolt/include/bolt/Profile/YAMLProfileWriter.h
    M bolt/lib/Profile/DataAggregator.cpp
    M bolt/lib/Profile/YAMLProfileWriter.cpp
    M bolt/test/X86/pseudoprobe-decoding-inline.test
    M bolt/test/X86/pseudoprobe-decoding-noinline.test
    M llvm/include/llvm/MC/MCPseudoProbe.h

  Log Message:
  -----------
  [BOLT] Add pseudo probe inline tree to YAML profile

Add probe inline tree information to YAML profile, at function level:
- function GUID,
- checksum,
- parent node id,
- call site in the parent.

This information is used for pseudo probe block matching (#99891).

The encoding adds/changes probe information in multiple levels of
YAML profile:
- BinaryProfile: add pseudo_probe_desc with GUIDs and Hashes, which
  permits deduplication of data:
  - many GUIDs are duplicate as the same callee is commonly inlined
    into multiple callers,
  - hashes are also very repetitive, especially for functions with
    low block counts.
- FunctionProfile: add inline tree (see above). Top-level function
  is included as root of function inline tree, which makes guid and
  pseudo_probe_desc_hash fields redundant.
- BlockProfile: densely-encoded block probe information:
  - probes reference their containing inline tree node,
  - separate lists for block, call, indirect call probes,
  - block probe encoding is specialized: ids are encoded as bitset
    in uint64_t. If only block probe with id=1 is present, it's
    encoded as implicit entry (id=0, omitted).
  - inline tree nodes with identical probes share probe description
    where node indices are combined into a list.

On top of #107970, profile with new probe encoding has the following
characteristics (profile for a large binary):

- Profile without probe information: 33MB, 3.8MB compressed (baseline).
- Profile with inline tree information: 92MB, 14MB compressed.

Profile processing time (YAML parsing, inference, attaching steps):
- profile without pseudo probes: 5s,
- profile with pseudo probes, without pseudo probe matching: 11s,
- with pseudo probe matching: 12.5s.

Test Plan: updated pseudoprobe-decoding-inline.test

Reviewers: wlei-llvm, ayermolo, rafaelauler, dcci, maksfb

Reviewed By: wlei-llvm, rafaelauler

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


  Commit: d9ed8b018df725faec4076a3efdfcbd7a24c99f0
      https://github.com/llvm/llvm-project/commit/d9ed8b018df725faec4076a3efdfcbd7a24c99f0
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

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

  Log Message:
  -----------
  [test][compiler-rt] Mark dlsym_alloc.c as unsupported on macos (#108439)

With #106912, the test now fails on macos, e.g.

https://green.lab.llvm.org/job/llvm.org/job/clang-stage1-RA/2058/.


  Commit: cd774c873c891776403ada6962d3f1602efd4054
      https://github.com/llvm/llvm-project/commit/cd774c873c891776403ada6962d3f1602efd4054
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M bolt/include/bolt/Profile/ProfileYAMLMapping.h
    M bolt/include/bolt/Profile/YAMLProfileWriter.h
    M bolt/lib/Profile/YAMLProfileWriter.cpp

  Log Message:
  -----------
  [BOLT][NFC] Rename ProfilePseudoProbeDesc

Address build issues due to aliasing PseudoProbeDesc, e.g.
https://lab.llvm.org/buildbot/#/builders/113/builds/2743


  Commit: d04c2ed60c6a1acef75b0cfff6f1bf9a5a7bea89
      https://github.com/llvm/llvm-project/commit/d04c2ed60c6a1acef75b0cfff6f1bf9a5a7bea89
  Author: Mainak Sil <mainaksil0 at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/pointer-arithmetic-on-polymorphic-object.rst

  Log Message:
  -----------
  [clang-tidy] Improve documentation of bugprone-pointer-arithmetic-on-polymorphic-object (#108324)

Fix #107831.


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

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoXCV.td
    M llvm/test/CodeGen/RISCV/xcvalu.ll
    M llvm/test/MC/RISCV/corev/XCValu-valid.s

  Log Message:
  -----------
  [RISCV] Rename XCValu cv.slet(u) to cv.sle(u). (#108481)

According to https://github.com/openhwgroup/cv32e40p/issues/833 this
instruction was renamed last year to remove the 't'.

I used MnemonicAlias to support the old name. Unfortunately, this gives
a generic error if XCValu is not enabled. Since its an old name I hope
this isn't too big of an issue.

CC: @jeremybennett


  Commit: 70ef5eb6f087524dc952a8f5249b79f4a4000e04
      https://github.com/llvm/llvm-project/commit/70ef5eb6f087524dc952a8f5249b79f4a4000e04
  Author: harishch4 <harishcse44 at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [Flang][OpenMP] Lowering nontemporal clause to MLIR for SIMD directive (#108339)

Currently, Flang throws a "**not yet implemented: Unhandled clause
NONTEMPORAL in SIMD construct**" error when encountering nontemporal
clause. This patch adds support for this clause in SIMD construct.


  Commit: 587d4cc797e09eeb2ec93d8b4ee9cd484626bf8f
      https://github.com/llvm/llvm-project/commit/587d4cc797e09eeb2ec93d8b4ee9cd484626bf8f
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/vfptoi-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfptosi-vp-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/vfptosi-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfptoui-vp-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/vfptoui-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vitofp-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vsitofp-vp-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/vsitofp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vuitofp-vp-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/vuitofp-vp.ll

  Log Message:
  -----------
  [RISCV] Lower bf16 {S,U}INT_TO_FP, FP_TO_{S,U}INT and VP variants (#108338)

This handles int->fp/fp->int nodes for zvfbfmin, reusing the same parts
that f16 uses with zvfhmin.

There's quite a bit of replication here that can probably be cleaned up
at some point.


  Commit: 04f45aa7a7874ee6686fad267e44ed6c9b4de19c
      https://github.com/llvm/llvm-project/commit/04f45aa7a7874ee6686fad267e44ed6c9b4de19c
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/lib/DebugInfo/PDB/PDBSymbolFunc.cpp

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


  Commit: a4d74644ba716d8c404720ccda90d42acee91917
      https://github.com/llvm/llvm-project/commit/a4d74644ba716d8c404720ccda90d42acee91917
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

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

  Log Message:
  -----------
  [IR] Avoid repeated hash lookups (NFC) (#108485)


  Commit: 6e410bc9f5279bc42b5fc2804e00e054203f8d7b
      https://github.com/llvm/llvm-project/commit/6e410bc9f5279bc42b5fc2804e00e054203f8d7b
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    A llvm/test/CodeGen/RISCV/GlobalISel/stacksave-stackrestore.ll

  Log Message:
  -----------
  [RISCV][GISel] Legalize G_STACKSAVE/RESTORE. (#108438)

Test was copied from AArch64 and X86.


  Commit: 8f653ca135cb8d4f8d08b97cc32a497091f68cdc
      https://github.com/llvm/llvm-project/commit/8f653ca135cb8d4f8d08b97cc32a497091f68cdc
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M lldb/source/Utility/Instrumentation.cpp

  Log Message:
  -----------
  [lldb] Fix typo: singposts -> signposts (NFC)


  Commit: 55afd5b9e88f63b6018978f93df5419d6f4adbd3
      https://github.com/llvm/llvm-project/commit/55afd5b9e88f63b6018978f93df5419d6f4adbd3
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M compiler-rt/test/sanitizer_common/TestCases/Linux/tls_get_addr.c

  Log Message:
  -----------
  [sanitizer] Try to fix the test on powerpc bot

It silently fails with tsan.
https://lab.llvm.org/buildbot/#/builders/72/builds/3257


  Commit: 3285e8d3b06675fc866b7b684a1a0a5b602e4c86
      https://github.com/llvm/llvm-project/commit/3285e8d3b06675fc866b7b684a1a0a5b602e4c86
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

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

  Log Message:
  -----------
  [RISCV] Remove unused HasStdExtB Predicate. NFC


  Commit: 9578db9c11294cdf2b08a89a86a3d7c3dc7c98c0
      https://github.com/llvm/llvm-project/commit/9578db9c11294cdf2b08a89a86a3d7c3dc7c98c0
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp

  Log Message:
  -----------
  DAG: Handle atomic fsub in node dumper


  Commit: f0b3287297aeeddcf030e3c1b08d05a69ad465aa
      https://github.com/llvm/llvm-project/commit/f0b3287297aeeddcf030e3c1b08d05a69ad465aa
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M compiler-rt/test/sanitizer_common/TestCases/Linux/tls_get_addr.c

  Log Message:
  -----------
  [sanitizer] Disable new test on powerpc64le (#108505)

The reason is not clear
https://lab.llvm.org/buildbot/#/builders/72/builds/3260

The test was introduced in #108349.


  Commit: 57aaf5ec9fbcf736daf742d2cbcf103b6df65881
      https://github.com/llvm/llvm-project/commit/57aaf5ec9fbcf736daf742d2cbcf103b6df65881
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.cpp

  Log Message:
  -----------
  [RISCV] Use MCRegister in RISCVMCInstrAnalysis. NFC


  Commit: 520ddf22b2270dc092dbdbd391b1c02c403b475a
      https://github.com/llvm/llvm-project/commit/520ddf22b2270dc092dbdbd391b1c02c403b475a
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-12 (Thu, 12 Sep 2024)

  Changed paths:
    M llvm/utils/TableGen/AsmMatcherEmitter.cpp

  Log Message:
  -----------
  [TableGen] Remove duplicate code in applyMnemonicAliases when target uses DefaultAsmParserVariant. (#108494)

The DefaultAsmParserVariant has an empty name. MnemonicAlias uses an
empty string to mean the alias applies to all variants.

Targets that uses DefaultAsmParserVariant were emitting the same code
inside the variant loop and after the variant loop because an empty
string got passed to emitMnemonicAliasVariant in both places.

This patch detects the empty variant name in the loop and skips the
emission.


  Commit: c0e308ba3d8ac252b8118d94a17b1351ca92b813
      https://github.com/llvm/llvm-project/commit/c0e308ba3d8ac252b8118d94a17b1351ca92b813
  Author: David Green <david.green at arm.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/SimplifyLibCalls.h
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
    M llvm/test/Transforms/InstCombine/pow-1.ll

  Log Message:
  -----------
  [InstCombine] Pass DomTree and DomTreeCacheto LibCallSimplifier (#108446)

This allows any combines to pick up Known states from dominating
conditions.


  Commit: 940f89255e4a3982d94dad57837e8e658092af78
      https://github.com/llvm/llvm-project/commit/940f89255e4a3982d94dad57837e8e658092af78
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [InstCombine] Do not modify GEP in place

This was modifying the GEP in place, with code to adjust the
inbounds flag. This was correct at the time, but now fails to
account for other GEP flags like nuw, leading to miscompilations.

Remove the special case, and always create a new GEP instruction.
Logic for preserving nuw in the cases where it is valid will be
added in a followup patch.


  Commit: cdd608b8f0ce090b3568238387df368751bdbb5d
      https://github.com/llvm/llvm-project/commit/cdd608b8f0ce090b3568238387df368751bdbb5d
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M libcxx/test/std/time/time.zone/time.zone.timezone/time.zone.members/sys_info.zdump.pass.cpp

  Log Message:
  -----------
  [libcxx][test] Use smaller time range for 32 bit time_t (#104762)

This fixes the test on Arm 32 bit Ubuntu Jammy where time_t is 32 bit.


  Commit: cd392420322f9968f76cd7f4afb6726d5912b236
      https://github.com/llvm/llvm-project/commit/cd392420322f9968f76cd7f4afb6726d5912b236
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [InstCombine] Remove no longer needed constant offset case (NFCI)

Now that we canonicalize constant geps to i8 type, this special
handling should no longer be needed.


  Commit: 991c842b38ec829d7a4bda432555673a310b777e
      https://github.com/llvm/llvm-project/commit/991c842b38ec829d7a4bda432555673a310b777e
  Author: Pankaj Dwivedi <pankajkumar.divedi at amd.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    A llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32-wave32.mir

  Log Message:
  -----------
  [AMDGPU] eliminate frame index v_add wave32 test (#107832)

PR: #102346  v_add_u32_e64  test cases for wave32


  Commit: 127c34948bd54e92ef2ee544e8bc42acecf321ad
      https://github.com/llvm/llvm-project/commit/127c34948bd54e92ef2ee544e8bc42acecf321ad
  Author: Konstantin Varlamov <varconsteq at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M libcxx/include/chrono

  Log Message:
  -----------
  Guard an include of `<ostream>` in `<chrono>` with availability macro (#108429)

This fixes a regression introduced in
https://github.com/llvm/llvm-project/pull/96035.


  Commit: 5d1d2f08c4a92580e7f6b3b6b77b2b6f6184e126
      https://github.com/llvm/llvm-project/commit/5d1d2f08c4a92580e7f6b3b6b77b2b6f6184e126
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/lib/AST/ExprConstant.cpp
    M clang/test/AST/ByteCode/cxx20.cpp
    M clang/test/SemaCXX/constant-expression-cxx11.cpp

  Log Message:
  -----------
  [clang][ExprConst] Allow comparisons with string literals (#106733)

Don't diagnose them, but literals still have distinct addresses.

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


  Commit: 09a4c23eb410d4be52202bed21c967a3653c3544
      https://github.com/llvm/llvm-project/commit/09a4c23eb410d4be52202bed21c967a3653c3544
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [NFC][EarlyIfConverter] Turn SSAIfConv into a local variable (#107390)


  Commit: c78d056350b43a8357bebd15d1c4e6a097549776
      https://github.com/llvm/llvm-project/commit/c78d056350b43a8357bebd15d1c4e6a097549776
  Author: braw-lee <93831198+braw-lee at users.noreply.github.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/BranchProbabilityInfo.h

  Log Message:
  -----------
  [llvm] Fix typo in comments (#108230)

Fixes #107949

Signed-off-by: Kushal Pal <kushalpal109 at gmail.com>


  Commit: 1b57cbcf25fcc55235f9331535aef05324b6ca54
      https://github.com/llvm/llvm-project/commit/1b57cbcf25fcc55235f9331535aef05324b6ca54
  Author: Igor Kirillov <igor.kirillov at arm.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Transforms/VectorCombine/AArch64/shrink-types.ll

  Log Message:
  -----------
  [VectorCombine] Refactor Insertion Point setting in shrinkType (#108398)


  Commit: a0f88901a4e6a6618c3ec02108103d0415e28834
      https://github.com/llvm/llvm-project/commit/a0f88901a4e6a6618c3ec02108103d0415e28834
  Author: Mariya Podchishchaeva <mariya.podchishchaeva at intel.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaDecl.cpp
    A clang/test/C/C23/n3029.c
    M clang/test/Misc/warning-flags.c
    M clang/test/Sema/enum.c
    M clang/www/c_status.html

  Log Message:
  -----------
  [clang][C23] Support N3029 Improved Normal Enumerations (#103917)

Basically clang already implemented 90% of the feature as an extension.
This commit disables warnings for C23 and aligns types of enumerators
according to the recent wording.


  Commit: 1c298c927498983dee29037ed1d3e71b72ca0082
      https://github.com/llvm/llvm-project/commit/1c298c927498983dee29037ed1d3e71b72ca0082
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/test/CodeGen/attr-counted-by.c
    M clang/test/OpenMP/bug57757.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/test/Transforms/InstCombine/getelementptr.ll

  Log Message:
  -----------
  [InstCombine] Preserve nuw flags when merging geps

These transforms all perform a variant of (gep (gep p, x), y)
to (gep p, (x + y)). We can preserve both inbounds and nuw
during such transforms (https://alive2.llvm.org/ce/z/Stu4cN), but
not nusw, which would require proving that the new add is nsw.

For the constant offset case, I've conservatively retained the
logic that checks for negative intermediate offsets, though I'm
not sure it's still reachable nowadays.


  Commit: 069b841c2ecde39c65ca74660b681d4d25a4bbb2
      https://github.com/llvm/llvm-project/commit/069b841c2ecde39c65ca74660b681d4d25a4bbb2
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/stackTrace/subtleFrames/Makefile

  Log Message:
  -----------
  [lldb] Make sure TestDAP_subtleFrames actually uses libc++ (#108227)

Without this, the binary would still be built with libstdc++, if that's
the system/compiler default.


  Commit: e054712a85f924e0afe7f180fd960be7a8214d64
      https://github.com/llvm/llvm-project/commit/e054712a85f924e0afe7f180fd960be7a8214d64
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py

  Log Message:
  -----------
  [lldb] Deflake TestDAP_attach (#108226)

The test failed in
<https://lab.llvm.org/buildbot/#/builders/162/builds/5785> due to frame
variable not being in stop commands, even though the DAP log shows the
command being present there. I'm pretty sure this is a race in the test
the collection of the test log. I fix that by making sure we wait for
the expected output, and also by increasing the timeout (1s is cutting
it very close).

The arm failure link is no longer functional, but I'm fairly certain
that this was the cause of those flakes as well.


  Commit: fbf0a8015389bccab80bba00be49955079913152
      https://github.com/llvm/llvm-project/commit/fbf0a8015389bccab80bba00be49955079913152
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/test/AST/ByteCode/hlsl.hlsl

  Log Message:
  -----------
  [clang][bytecode] Implement HLSLVectorTruncation casts (#108499)


  Commit: e7f782e7481cea23ef452a75607d3d61f5bd0d22
      https://github.com/llvm/llvm-project/commit/e7f782e7481cea23ef452a75607d3d61f5bd0d22
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang-tools-extra/clangd/Diagnostics.cpp
    M clang-tools-extra/clangd/Diagnostics.h
    M clang-tools-extra/clangd/ParsedAST.cpp
    M clang-tools-extra/clangd/Preamble.cpp
    M clang-tools-extra/clangd/unittests/ConfigCompileTests.cpp
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/Diagnostic.h
    M clang/include/clang/Basic/DiagnosticCategories.h
    M clang/include/clang/Basic/DiagnosticIDs.h
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Basic/Diagnostic.cpp
    M clang/lib/Basic/DiagnosticIDs.cpp
    M clang/lib/Frontend/LogDiagnosticPrinter.cpp
    M clang/lib/Frontend/SerializedDiagnosticPrinter.cpp
    M clang/lib/Frontend/TextDiagnosticPrinter.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaCUDA.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/StaticAnalyzer/Core/TextDiagnostics.cpp
    M clang/test/Sema/diagnose_if.c
    A clang/test/SemaCXX/diagnose_if-warning-group.cpp
    M clang/tools/diagtool/ListWarnings.cpp
    M clang/tools/diagtool/ShowEnabledWarnings.cpp
    M clang/tools/libclang/CXStoredDiagnostic.cpp
    M flang/lib/Frontend/TextDiagnosticPrinter.cpp

  Log Message:
  -----------
  Reapply "[clang] Extend diagnose_if to accept more detailed warning information (#70976)" (#108453)

This reverts commit e0cd11eba526234ca14a0b91f5598ca3363b6aca.

Update the use of `getWarningOptionForDiag` in flang to use the
DiagnosticIDs.


  Commit: 2fb133f32af42b29e1e1bbbbc24fb75eea3f34a2
      https://github.com/llvm/llvm-project/commit/2fb133f32af42b29e1e1bbbbc24fb75eea3f34a2
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [libc++][NFC] Reflow release notes

There are a few lines in the release notes which are much wider than the
120 columns we usually use. This reflows the text to keep it below the
threshold.


  Commit: d4f6ad51603405ab4e998fa6416bfdff4b1f43d4
      https://github.com/llvm/llvm-project/commit/d4f6ad51603405ab4e998fa6416bfdff4b1f43d4
  Author: Youngsuk Kim <joseph942010 at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [llvm-size] Avoid unneeded uses of 'raw_string_ostream::str' (NFC) (#108490)

Remove unnecessary layer of indirection.


  Commit: 335620853117153e52ce54fe4e879f66aa23ff99
      https://github.com/llvm/llvm-project/commit/335620853117153e52ce54fe4e879f66aa23ff99
  Author: Diana Picus <Diana-Magda.Picus at amd.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
    M llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.h
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
    M llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.whole.wave-w32.ll
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.whole.wave-w64.ll
    M llvm/test/CodeGen/AMDGPU/pei-amdgpu-cs-chain.mir
    A llvm/test/CodeGen/AMDGPU/si-init-whole-wave.mir
    M llvm/test/CodeGen/MIR/AMDGPU/long-branch-reg-all-sgpr-used.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-after-pei.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg-debug.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-no-ir.mir
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info.ll

  Log Message:
  -----------
  Reland "[amdgpu] Add llvm.amdgcn.init.whole.wave intrinsic" (#108512)

This reverts commit
https://github.com/llvm/llvm-project/commit/7792b4ae79e5ac9355ee13b01f16e25455f8427f.

The problem was a conflict with
https://github.com/llvm/llvm-project/commit/e55d6f5ea2656bf842973d8bee86c3ace31bc865
"[AMDGPU] Simplify and improve codegen for llvm.amdgcn.set.inactive
(https://github.com/llvm/llvm-project/pull/107889)"
which changed the syntax of V_SET_INACTIVE (and thus made my MIR test
crash).

...if only we had a merge queue.


  Commit: 637aa61732c5bda7cbcf94e5f08fb3a44655cef0
      https://github.com/llvm/llvm-project/commit/637aa61732c5bda7cbcf94e5f08fb3a44655cef0
  Author: David Green <david.green at arm.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/test/CodeGen/ARM/big-endian-vmov.ll
    M llvm/test/CodeGen/Thumb2/mve-vmovimm.ll

  Log Message:
  -----------
  [ARM] Fix VBICimm and VORRimm generation under Big endian. (#107813)

This is a smaller follow on to #105519 that fixes VBICimm and VORRimm
too. The logic behind lowering vector immediates under big endian
Neon/MVE is to treat them in natural lane ordering (same as little
endian), and VECTOR_REG_CAST them to the correct type (as opposed to
creating the constants in big endian form and bitcasting them). This
makes sure that is done when creating VORRIMM and VBICIMM.


  Commit: 4ca8fb18129e6465c3594a8681f1cca0e2aff724
      https://github.com/llvm/llvm-project/commit/4ca8fb18129e6465c3594a8681f1cca0e2aff724
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [lldb][test] TestDataFormatterLibcxxStringSimulator.py: fix padding for current layout (#108362)

IIUC, the history of `std::string`'s `__short` structure in the
alternate ABI layout (as recorded by the simulator test) looks as
follows:
* First layout ( `SUBCLASS_PADDING` is defined):
```
     struct __short                                          
     {                                                       
         value_type __data_[__min_cap];                      
        struct                                              
            : __padding<value_type>                         
        {                                                   
            unsigned char __size_;                          
        };
     };                                      
```
* Then:
```
     struct __short                                         
     {                                                      
        value_type __data_[__min_cap];                                                               
        unsigned char __padding[sizeof(value_type) - 1];   
        unsigned char __size_;                             
     };
```
* Then, post-`BITMASKS`:
```
     struct __short                                         
     {                                                      
        value_type __data_[__min_cap];                                                               
        unsigned char __padding[sizeof(value_type) - 1];   
        unsigned char __size_ : 7;
        unsigned char __is_long_ : 1;                             
     };
```

Which is the one that's [on
top-of-tree](https://github.com/llvm/llvm-project/blob/89c10e27d8b4d5f44998aad9abd2590d9f96c5df/libcxx/include/string#L854-L859).

But for `REVISION > 1`, `BITMASKS` is never set, so for those tests we
lose the `__padding` member.

This patch fixes this by splitting out the `SUBCLASS_PADDING` out of the
ifdef.

Drive-by:
* Also run expression evaluator on the string to provide is with some
extra coverage.


  Commit: 9cd93774098c861c260090a690f428b7ae031c65
      https://github.com/llvm/llvm-project/commit/9cd93774098c861c260090a690f428b7ae031c65
  Author: Piyou Chen <piyou.chen at sifive.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/include/clang/Basic/TargetInfo.h
    M clang/include/clang/Sema/SemaRISCV.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/Basic/Targets/RISCV.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/Targets/RISCV.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaRISCV.cpp
    A clang/test/CodeGen/attr-target-clones-riscv-invalid.c
    A clang/test/CodeGen/attr-target-clones-riscv.c
    A clang/test/CodeGenCXX/attr-target-clones-riscv.cpp
    A clang/test/SemaCXX/attr-target-clones-riscv.cpp

  Log Message:
  -----------
  [RISCV][FMV] Support target_clones (#85786)

This patch enable the function multiversion(FMV) and `target_clones`
attribute for RISC-V target.

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

It supports the `target_clones` function attribute and function
multiversioning feature for RISC-V target. It will generate the ifunc
resolver function for the function that declared with target_clones
attribute.

The resolver function will check the version support by runtime object
`__riscv_feature_bits`.

For example:

```
__attribute__((target_clones("default", "arch=+ver1", "arch=+ver2"))) int bar() {
    return 1;
}
```

the corresponding resolver will be like:

```
bar.resolver() {
    __init_riscv_feature_bits();
    // Check arch=+ver1
    if ((__riscv_feature_bits.features[0] & BITMASK_OF_VERSION1) == BITMASK_OF_VERSION1) {
        return bar.arch=+ver1;
    } else {
        // Check arch=+ver2
        if ((__riscv_feature_bits.features[0] & BITMASK_OF_VERSION2) == BITMASK_OF_VERSION2) {
            return bar.arch=+ver2;
        } else {
            // Default
            return bar.default;
        }
    }
}
```


  Commit: 6c0b1e75e367e73cc6d1b59d557f513beb34afd0
      https://github.com/llvm/llvm-project/commit/6c0b1e75e367e73cc6d1b59d557f513beb34afd0
  Author: JOE1994 <joseph942010 at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/tools/llvm-debuginfo-analyzer/llvm-debuginfo-analyzer.cpp
    M llvm/tools/llvm-libtool-darwin/llvm-libtool-darwin.cpp
    M llvm/tools/llvm-lipo/llvm-lipo.cpp
    M llvm/tools/llvm-readobj/ARMWinEHPrinter.cpp
    M llvm/tools/llvm-xray/xray-graph.cpp

  Log Message:
  -----------
  [llvm][tools] Strip unneeded uses of raw_string_ostream::str() (NFC)

Remove unnecessary layer of indirection.


  Commit: ebbc9ed2d60cacffc87232dc32374a2b38b92175
      https://github.com/llvm/llvm-project/commit/ebbc9ed2d60cacffc87232dc32374a2b38b92175
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M lldb/include/lldb/Host/Socket.h
    M lldb/include/lldb/Host/common/TCPSocket.h
    M lldb/include/lldb/Host/common/UDPSocket.h
    M lldb/include/lldb/Host/posix/DomainSocket.h
    M lldb/source/Host/common/Socket.cpp
    M lldb/source/Host/common/TCPSocket.cpp
    M lldb/source/Host/common/UDPSocket.cpp
    M lldb/source/Host/posix/DomainSocket.cpp
    M lldb/unittests/Host/SocketTest.cpp

  Log Message:
  -----------
  [lldb] Add a MainLoop version of DomainSocket::Accept (#108188)

To go along with the existing TCPSocket implementation.


  Commit: f3029b330ad0ddc8e82a9837cdcc8a7c81cd2602
      https://github.com/llvm/llvm-project/commit/f3029b330ad0ddc8e82a9837cdcc8a7c81cd2602
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [NFC][LoopVectorize] Avoid passing ScalarEvolution to VPlanTransforms::optimize (#108380)

Whilst trying to write some VPlan unit tests I realised
that we don't need to pass a ScalarEvolution object into
VPlanTransforms::optimize because the only thing we
actually need is a LLVMContext.


  Commit: eb11f576a4ffe9cc77d2010b5449bd7780472e2d
      https://github.com/llvm/llvm-project/commit/eb11f576a4ffe9cc77d2010b5449bd7780472e2d
  Author: JOE1994 <joseph942010 at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/tools/dsymutil/MachODebugMapParser.cpp
    M llvm/tools/llvm-dwarfdump/Statistics.cpp
    M llvm/tools/llvm-readobj/ELFDumper.cpp

  Log Message:
  -----------
  [llvm][tools] Strip unneeded uses of raw_string_ostream::str() (NFC)

Remove excess layer of indirection.


  Commit: 7574e1ddc4be63628cb7617857cc8938058a79d2
      https://github.com/llvm/llvm-project/commit/7574e1ddc4be63628cb7617857cc8938058a79d2
  Author: Andrew Ng <andrew.ng at sony.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
    M llvm/test/tools/llvm-ml/rip_relative_addressing.asm

  Log Message:
  -----------
  Reland [llvm-ml] Fix RIP-relative addressing for ptr operands (#108061)

Relands #107618 with fix for assertion triggered by OpenMP runtime MASM
assembly source.


  Commit: 992a64aad388b4e809ac3123ea1d48fed4f35244
      https://github.com/llvm/llvm-project/commit/992a64aad388b4e809ac3123ea1d48fed4f35244
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/include/clang/Basic/AArch64SVEACLETypes.def
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_add.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_add_sub_za16.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_clamp.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvt.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvtl.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvtn.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_faminmax.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_fmlas16.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_fp_dots.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_frint.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_int_dots.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt_x2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt_x4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt_x2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt_x4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_max.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_maxnm.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_min.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_minnm.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mla.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlal.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlall.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mls.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlsl.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_read.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_sqdmulh.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_sub.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_unpkx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_unpkx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vdot.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_add.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_qrshr.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_rshl.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_selx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_selx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_uzpx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_uzpx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_zipx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_zipx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_write.c
    M clang/test/CodeGen/aarch64-sme2p1-intrinsics/acle_sme2p1_movaz.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create4.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get4.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld4.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_reinterpret-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_reinterpret.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set4.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st4.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef4.c
    M clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_luti.c
    M clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_tbl2-bfloat.c
    M clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_tbl2.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_create2_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_create4_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_get2_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_get4_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_ld1.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_ldnt1.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_loads.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_pext.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_qcvtn.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_qrshr.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_set2_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_set4_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_st1.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_stnt1.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_store.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_undef_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_while_x2.c
    M clang/test/CodeGen/aarch64_neon_sve_bridge_intrinsics/acle_neon_sve_bridge_get_neonq.c
    M clang/test/CodeGen/svboolx2_t.cpp
    M clang/test/CodeGen/svboolx4_t.cpp
    M clang/test/CodeGenCXX/aarch64-mangle-sve-vectors.cpp
    M clang/test/CodeGenCXX/aarch64-sve-vector-init.cpp

  Log Message:
  -----------
  [Clang][SVE] Change LLVM representation of ACLE tuple types to be struct based. (#108008)

This implements our original design now that LLVM is comfortable with
structs and arrays of scalable vector types. All SVE ACLE intrinsics
already use struct types so the effect of this change is purely the
types used for alloca and function parameters.
    
There should be no C/C++ user visible change with this patch.


  Commit: 8e10a3f80e264aaa186ab3cc74fea840f453c66d
      https://github.com/llvm/llvm-project/commit/8e10a3f80e264aaa186ab3cc74fea840f453c66d
  Author: Mats Petersson <mats.petersson at arm.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    A flang/test/Lower/OpenMP/shared-loop.f90
    M flang/test/Semantics/OpenMP/do20.f90
    M flang/test/Semantics/OpenMP/implicit-dsa.f90
    M flang/test/Semantics/OpenMP/symbol01.f90
    M flang/test/Semantics/OpenMP/symbol02.f90
    M flang/test/Semantics/OpenMP/symbol03.f90
    M flang/test/Semantics/OpenMP/symbol07.f90
    M flang/test/Semantics/OpenMP/symbol09.f90

  Log Message:
  -----------
  [flang][OpenMP] don't privatise loop index marked shared (#108176)

Mark the symbol with OmpShared, and then check that later in lowering to
avoid making a local loop index.

OpenMP 5.2 says: "Loop iteration variables of loops that are not associated 
with any OpenMP directive maybe listed in data-sharing attribute clauses on
the surrounding teams, parallel or taskgenerating construct, and on enclosed
constructs, subject to other restrictions."

Tests updated to match the extra OmpShared attribute.

Add regression test for lowering to hlfir.

Closes #102961

---------

Co-authored-by: Tom Eccles <tom.eccles at arm.com>


  Commit: 6568062ff1821f561c834f9f216fba0293e6f1c4
      https://github.com/llvm/llvm-project/commit/6568062ff1821f561c834f9f216fba0293e6f1c4
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M flang/test/Lower/OpenMP/atomic-read.f90
    M flang/test/Lower/OpenMP/atomic-update.f90
    M flang/test/Lower/OpenMP/parallel.f90
    M flang/test/Lower/OpenMP/wsloop-chunks.f90
    M flang/test/Lower/OpenMP/wsloop-monotonic.f90
    M flang/test/Lower/OpenMP/wsloop-nonmonotonic.f90
    M flang/test/Lower/OpenMP/wsloop-schedule.f90
    M flang/test/Lower/OpenMP/wsloop.f90
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOpBase.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/test/Conversion/OpenMPToLLVM/convert-to-llvmir.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir
    M mlir/test/mlir-tblgen/openmp-clause-ops.td
    M mlir/test/mlir-tblgen/openmp-ops-verify.td
    M mlir/test/mlir-tblgen/openmp-ops.td
    M mlir/tools/mlir-tblgen/OmpOpGen.cpp

  Log Message:
  -----------
  [MLIR][OpenMP] Improve assemblyFormat handling for clause-based ops (#108023)

This patch modifies the representation of `OpenMP_Clause` to allow
definitions to incorporate both required and optional arguments while
still allowing operations including them and overriding the
`assemblyFormat` to take advantage of automatically-populated format
strings.

The proposed approach is to split the `assemblyFormat` clause property
into `reqAssemblyFormat` and `optAssemblyFormat`, and remove the
`isRequired` template and associated `required` property. The
`OpenMP_Op` class, in turn, populates the new `clausesReqAssemblyFormat`
and `clausesOptAssemblyFormat` properties in addition to
`clausesAssemblyFormat`. These properties can be used by clause-based
OpenMP operation definitions to reconstruct parts of the
clause-inherited format string in a more flexible way when overriding
it.

Clause definitions are updated to follow this new approach and some
operation definitions overriding the `assemblyFormat` are simplified by
taking advantage of the improved flexibility, reducing code duplication.
The `verify-openmp-ops` tablegen pass is updated for the new
`OpenMP_Clause` representation.

Some MLIR and Flang unit tests had to be updated due to changes to the
default printing order of clauses on updated operations.


  Commit: 76fd69be74e3a52cec77d5401003469791ef9834
      https://github.com/llvm/llvm-project/commit/76fd69be74e3a52cec77d5401003469791ef9834
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [VPlan] Simplify VPBuilder insert point when live outs for FORs.

Simplifies setting the insert point, addressing a TODO.


  Commit: a41bb71f2216cef08ab04f1d730ae1701c145f3c
      https://github.com/llvm/llvm-project/commit/a41bb71f2216cef08ab04f1d730ae1701c145f3c
  Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/test/CodeGen/X86/avx10_2_512satcvtds-builtins-errors.c
    M clang/test/CodeGen/X86/avx10_2_512satcvtds-builtins-x64-error.c
    M clang/test/CodeGen/X86/avx10_2satcvtds-builtins-errors.c

  Log Message:
  -----------
  [X86][test] Avoid writing to a potentially write-protected dir

see https://github.com/llvm/llvm-project/pull/108525 (#108525)

for a409ebc1fc136be4004073a12cd7f847a5f3a588


  Commit: 50d2b6ac9e2aabd25724768a822a0398f2ca5a06
      https://github.com/llvm/llvm-project/commit/50d2b6ac9e2aabd25724768a822a0398f2ca5a06
  Author: Ryan Mansfield <ryan_mansfield at apple.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/include/clang/Driver/Options.td

  Log Message:
  -----------
  [clang] Fix various typos and whitespace in HelpText. (#108527)


  Commit: 90a2e0bb423629b7e70f4b91adb44851199dd5ea
      https://github.com/llvm/llvm-project/commit/90a2e0bb423629b7e70f4b91adb44851199dd5ea
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticIDs.h
    M clang/lib/Sema/SemaOverload.cpp

  Log Message:
  -----------
  [clang] Silence GCC warnings about control reaching end of non void function

This fixes GCC warnings since
e7f782e7481cea23ef452a75607d3d61f5bd0d22.


  Commit: 471360b2241aaca8ffe457ac796e01d4f0988e6a
      https://github.com/llvm/llvm-project/commit/471360b2241aaca8ffe457ac796e01d4f0988e6a
  Author: Congcong Cai <congcong.cai at bmw.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [clang-tidy][NFC] fix typo in release note


  Commit: 9282c9d282e8062965f20d4ef89324cc96b92447
      https://github.com/llvm/llvm-project/commit/9282c9d282e8062965f20d4ef89324cc96b92447
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M libcxx/test/libcxx/diagnostics/chrono.nodiscard.verify.cpp

  Log Message:
  -----------
  [libc++] Avoid name conflict with declaration in <unistd.h>

It appears that ::link is also declared as another kind of symbol
in <unistd.h>, which we seem to get transitively when we start using
a single top-level module. Instead of declaring these names as global
extern variables, use function parameters to achieve the same thing.


  Commit: c34aca8ddc214b2ade997085e56689378ef1a8d0
      https://github.com/llvm/llvm-project/commit/c34aca8ddc214b2ade997085e56689378ef1a8d0
  Author: Mital Ashok <mital at mitalashok.co.uk>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M libcxx/include/experimental/__simd/vec_ext.h

  Log Message:
  -----------
  [libc++][NFC] Remove unnecessary unsigned comparison with 0 (#108391)

This fixes a `-Wtype-limits` warning emitted when this file is compiled
with GCC when assertions are enabled.


  Commit: 6be9be5e0b4ba9d561dc005bea4eace40b53510d
      https://github.com/llvm/llvm-project/commit/6be9be5e0b4ba9d561dc005bea4eace40b53510d
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M lld/COFF/Chunks.cpp
    M lld/COFF/Chunks.h
    M lld/COFF/InputFiles.cpp
    M lld/COFF/InputFiles.h
    M lld/COFF/MapFile.cpp
    M lld/COFF/MarkLive.cpp
    M lld/COFF/PDB.cpp
    M lld/COFF/Symbols.cpp
    M lld/COFF/Symbols.h
    M lld/COFF/Writer.cpp

  Log Message:
  -----------
  [LLD][COFF][NFC] Store live flag in ImportThunkChunk. (#108459)

Instead of ImportFile. This is a preparation for ARM64EC support, which
has both x86 and ARM64EC thunks and each of them needs a separate flag.


  Commit: 387bee91f095c197270b4d0a9e19cc86b2edea73
      https://github.com/llvm/llvm-project/commit/387bee91f095c197270b4d0a9e19cc86b2edea73
  Author: JOE1994 <joseph942010 at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/unittests/Bitcode/BitReaderTest.cpp
    M llvm/unittests/CodeGen/GlobalISel/GISelMITest.cpp
    M llvm/unittests/CodeGen/GlobalISel/LegalizerTest.cpp
    M llvm/unittests/CodeGen/MachineInstrTest.cpp
    M llvm/unittests/CodeGen/MachineOperandTest.cpp

  Log Message:
  -----------
  [llvm][unittests] Strip unneeded uses of raw_string_ostream::str() (NFC)

Avoid excess layer of indirection.


  Commit: 69a21154caa5b53d302cd3bfd7ce0ec1a0c3d985
      https://github.com/llvm/llvm-project/commit/69a21154caa5b53d302cd3bfd7ce0ec1a0c3d985
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/AArch64/expand-select.ll

  Log Message:
  -----------
  [DAG] Fold trunc(srl(extract_elt(vec,c1),c2)) -> extract_elt(bitcast(vec),c3) (#107987)

Extends existing trunc(extract_elt(vec,c1)) -> extract_elt(bitcast(vec),c3) fold.

Noticed while working on #107404


  Commit: a3ea018d4900691e10ff6fd059cf07f33e949819
      https://github.com/llvm/llvm-project/commit/a3ea018d4900691e10ff6fd059cf07f33e949819
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp

  Log Message:
  -----------
  [X86] Use MCRegister in X86AsmParser. (#108509)


  Commit: ee4582f9c8c395b1a9d901b522510af622206049
      https://github.com/llvm/llvm-project/commit/ee4582f9c8c395b1a9d901b522510af622206049
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [RISCV] Use CCValAssign::getCustomReg for fixed vector arguments/returns with RVV. (#108470)

We need to insert a insert_subvector or extract_subvector which feels
pretty custom.

This should make it easier to support fixed vector arguments for GISel.


  Commit: 4a9b6b05c50a66f7dac6871f89a76daf77827c8d
      https://github.com/llvm/llvm-project/commit/4a9b6b05c50a66f7dac6871f89a76daf77827c8d
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp

  Log Message:
  -----------
  [X86] Cleanup lowerShuffleToEXPAND arg layout. NFC.

Reorder the arg layout to match (most) other lowerShuffle* calls.

Rename to lowerShuffleWithEXPAND to match other lowering cases where we lower to a single node.


  Commit: 326287fd5b7b38987dbfbe80013225485d261790
      https://github.com/llvm/llvm-project/commit/326287fd5b7b38987dbfbe80013225485d261790
  Author: Thomas Preud'homme <thomas.preudhomme at arm.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/WinogradConv2D.cpp
    M mlir/test/Dialect/Linalg/transform-tile-and-winograd-rewrite.mlir
    M mlir/test/Dialect/Linalg/winograd-conv2d-rewrite.mlir
    M mlir/test/Dialect/Linalg/winograd-conv2d.mlir

  Log Message:
  -----------
  Add missing FillOp to winograd lowering (#108181)

Winograd lowering involves a number of matmul and batch_matmul which
are currently passed tensor.empty result as out parameter, thereby
are undefined behaviour. This commit adds the necessary linalg.fill.

---------

Co-authored-by: Max191 <44243577+Max191 at users.noreply.github.com>


  Commit: 387ef59ab9520c0811bf555679dd8ff0a60417c6
      https://github.com/llvm/llvm-project/commit/387ef59ab9520c0811bf555679dd8ff0a60417c6
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/utils/TableGen/ClangTypeNodesEmitter.cpp
    M clang/utils/TableGen/TableGenBackends.h

  Log Message:
  -----------
  [clang][TableGen] Change TypeNodesEmitter to use const RecordKeeper (#108476)

Change TypeNodesEmitter to use const RecordKeeper.

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


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


  Commit: f637273d7708da0a01c3adb2bb85ae1c541f46a1
      https://github.com/llvm/llvm-project/commit/f637273d7708da0a01c3adb2bb85ae1c541f46a1
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [clang][TableGen] Change SACheckersEmitter to use const RecordKeeper (#108477)

Change SACheckersEmitter to use const RecordKeeper.

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


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


  Commit: d757bbf68f35dbcfd68580e3798cf301862dd314
      https://github.com/llvm/llvm-project/commit/d757bbf68f35dbcfd68580e3798cf301862dd314
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/utils/TableGen/ClangSyntaxEmitter.cpp
    M clang/utils/TableGen/TableGenBackends.h

  Log Message:
  -----------
  [clang][TableGen] Change SyntaxEmitter to use const RecordKeeper (#108478)

Change SyntaxEmitter to use const RecordKeeper.

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


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


  Commit: 75d87247871110efe83edcb0107176614f88a5d9
      https://github.com/llvm/llvm-project/commit/75d87247871110efe83edcb0107176614f88a5d9
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/utils/TableGen/MveEmitter.cpp
    M clang/utils/TableGen/TableGenBackends.h

  Log Message:
  -----------
  [clang][TableGen] Change MVE Emitter to use const RecordKeeper (#108500)

Change MVE Emitter to use const RecordKeeper.

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


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


  Commit: a4b161736881634baac52163ceca62a595843054
      https://github.com/llvm/llvm-project/commit/a4b161736881634baac52163ceca62a595843054
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/utils/TableGen/NeonEmitter.cpp
    M clang/utils/TableGen/TableGenBackends.h

  Log Message:
  -----------
  [clang][TableGen] Change NeonEmitter to use const RecordKeeper (#108501)

Change NeonEmitter to use const RecordKeeper.

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


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


  Commit: 974fa8522be37eb0a111fee004b0bc8a9debf9fc
      https://github.com/llvm/llvm-project/commit/974fa8522be37eb0a111fee004b0bc8a9debf9fc
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/utils/TableGen/RISCVVEmitter.cpp
    M clang/utils/TableGen/TableGenBackends.h

  Log Message:
  -----------
  [clang][TableGen] Change RISCVVEmitter to use const RecordKeeper (#108502)

Change RISCVVEmitter to use const RecordKeeper.

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


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


  Commit: ab06a18b59eddfa0719faa1fe40e83829939c6db
      https://github.com/llvm/llvm-project/commit/ab06a18b59eddfa0719faa1fe40e83829939c6db
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [IRSim] Avoid repeated hash lookups (NFC) (#108483)


  Commit: 711278e273826f3903cef448f433fe2135c569c6
      https://github.com/llvm/llvm-project/commit/711278e273826f3903cef448f433fe2135c569c6
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/utils/TableGen/SveEmitter.cpp
    M clang/utils/TableGen/TableGenBackends.h

  Log Message:
  -----------
  [clang][TableGen] Change SVE Emitter to use const RecordKeeper (#108503)

Change SVE Emitter to use const RecordKeeper.

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


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


  Commit: 99fe5954d258511ec2e36e8c7f612568e9701ab7
      https://github.com/llvm/llvm-project/commit/99fe5954d258511ec2e36e8c7f612568e9701ab7
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M libc/src/__support/time/linux/CMakeLists.txt
    M libc/src/__support/time/linux/clock_gettime.h

  Log Message:
  -----------
  [libc] implement clock_gettime using vDSO (#108458)

supersedes https://github.com/llvm/llvm-project/pull/91805


  Commit: ea5d37f4c1fd9c0850bee35958568a8b6596b3f9
      https://github.com/llvm/llvm-project/commit/ea5d37f4c1fd9c0850bee35958568a8b6596b3f9
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M lld/COFF/Chunks.h
    M lld/COFF/InputFiles.cpp
    M lld/COFF/InputFiles.h
    M lld/COFF/Writer.cpp
    M lld/test/COFF/arm64ec-import.test

  Log Message:
  -----------
  [LLD][COFF] Add Support for ARM64EC Import Thunks (#108460)

ARM64EC import thunks function similarly to regular ARM64 thunks but use
a mangled name and perform the call through the auxiliary IAT.


  Commit: a6438360d416f4529574eebf6aa65b80d48ef85e
      https://github.com/llvm/llvm-project/commit/a6438360d416f4529574eebf6aa65b80d48ef85e
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M libc/src/__support/OSUtil/linux/vdso_sym.h

  Log Message:
  -----------
  [libc] fix build issue in overlay mode (#108583)


  Commit: ff1de24a16c8f4dddc4381df00fe15e42891508b
      https://github.com/llvm/llvm-project/commit/ff1de24a16c8f4dddc4381df00fe15e42891508b
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/tools/llvm-exegesis/lib/LlvmState.h

  Log Message:
  -----------
  [llvm-exegesis] Remove getter for RegNameToRegNo mapping

This patch removes the getter for the mentioned mapping. This was only
kept around to keep things in sync for some downstream codebases (that
didn't even end up needing it), so removing it now that it is not needed
anymore.


  Commit: ffeb793f3a90623ab3c7f33f922d48a1f5f97cdf
      https://github.com/llvm/llvm-project/commit/ffeb793f3a90623ab3c7f33f922d48a1f5f97cdf
  Author: Balázs Kéri <balazs.keri at ericsson.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/docs/analyzer/checkers.rst

  Log Message:
  -----------
  [clang][analyzer][docs] Fix documentation of checker 'StackAddrAsyncEscape' (NFC) (#108586)

The checker was indicated as a 'C' language checker but is only applicable to 'ObjC' code.


  Commit: 213c59ddd2a702ddd3d849cea250440b1ed718e0
      https://github.com/llvm/llvm-project/commit/213c59ddd2a702ddd3d849cea250440b1ed718e0
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M lldb/source/Plugins/Process/FreeBSD/NativeProcessFreeBSD.cpp
    M lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp

  Log Message:
  -----------
  [lldb] Add pc check for thread-step-by-bp algorithms (#108504)

lldb-server built with NativeProcessLinux.cpp and
NativeProcessFreeBSD.cpp can use breakpoints to implement instruction
stepping on cores where there is no native instruction-step primitive.
Currently these set a breakpoint, continue, and if we hit the breakpoint
with the original thread, set the stop reason to be "trace".

I am wrapping up a change to lldb's breakpoint algorithm where I change
its current behavior of

"if a thread stops at a breakpoint site, we set
the thread's stop reason to breakpoint-hit, even if the breakpoint
hasn't been executed" +
"when resuming any thread at a breakpoint site, instruction-step past
the breakpoint before resuming"

to a behavior of

"when a thread executes a breakpoint, set the stop reason to
breakpoint-hit" +
"when a thread has hit a breakpoint, when the thread resumes, we
silently step past the breakpoint and then resume the thread".

For these lldb-server targets doing breakpoint stepping, this means that
if we are sitting on a breakpoint that has not yet executed, and
instruction-step the thread, we will execute the breakpoint instruction
at $pc (instead of $next-pc where it meant to go), and stop again -- at
the same pc value. Then we will rewrite the stop reason to 'trace'. The
higher level logic will see that we haven't hit the breakpoint
instruction again, so it will try to instruction step again, hitting the
breakpoint again forever.

To fix this, I'm checking that the thread matches the one we are
instruction-stepping-by-breakpoint AND that we've stopped at the
breakpoint address we are stepping to. Only in that case will the stop
reason be rewritten to "trace" hiding the implementation detail that the
step was done by breakpoints.


  Commit: 65a4d11b1e67429d53df1fcee0f93492aa95c448
      https://github.com/llvm/llvm-project/commit/65a4d11b1e67429d53df1fcee0f93492aa95c448
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp

  Log Message:
  -----------
  [lldb] Set the stop reason when receiving swbreak/hwbreak (#108518)

xusheng added support for swbreak/hwbreak a month ago, and no special
support was needed in ProcessGDBRemote when they're received because
lldb already marks a thread as having hit a breakpoint when it stops at
a breakpoint site. However, with changes I am working on, we need to
know the real stop reason a thread stopped or the breakpoint hit will
not be recognized.

This is similar to how lldb processes the "watch/rwatch/awatch" keys in
a thread stop packet -- we set the `reason` to `watchpoint`, and these
set it to `breakpoint` so we set the stop reason correctly later in
these methods.


  Commit: 51f552568901b069f04edd9eacac89be452bfadf
      https://github.com/llvm/llvm-project/commit/51f552568901b069f04edd9eacac89be452bfadf
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx20Papers.csv

  Log Message:
  -----------
  [libc++][NFC] Mark P1869R1 as implemented (#107746)

https://wg21.link/p1869r1: Rename `condition_variable_any` interruptible
wait methods

The paper was implemented as experimental feature in Clang 18 in:
https://github.com/llvm/llvm-project/commit/4fa812bb52a5b1eea22750a1b59f94221d0df622

Experimental status removed in:
https://github.com/llvm/llvm-project/pull/107900

Closes https://github.com/llvm/llvm-project/issues/100031

---------

Co-authored-by: Hristo Hristov <zingam at outlook.com>


  Commit: 82987bd9da1fd22a9d05148e8f74142aaf7ec4d0
      https://github.com/llvm/llvm-project/commit/82987bd9da1fd22a9d05148e8f74142aaf7ec4d0
  Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M libc/src/__support/time/linux/CMakeLists.txt

  Log Message:
  -----------
  [libc] fix dependency path for vDSO (#108591)


  Commit: cd6844c45cbe9a5c4cf055142c4026dc408a8243
      https://github.com/llvm/llvm-project/commit/cd6844c45cbe9a5c4cf055142c4026dc408a8243
  Author: Lei Huang <lei at ca.ibm.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/test/CodeGen/PowerPC/builtins-ppc-build-pair-mma.c
    M clang/test/CodeGen/PowerPC/builtins-ppc-pair-mma-types.c

  Log Message:
  -----------
  [PowerPC][NFC] autogen mma tc checks via update_cc_test_checks (#108584)

Update mma tests in prep for changes needed in a followup patch for
https://github.com/llvm/llvm-project/issues/107229.

Checks for ``clang/test/CodeGen/PowerPC/builtins-ppc-pair-mma-types.c``
seem to have been manually upated to rename temp variables even though
it says checks was auto generated. Regenerate via script.

Add noopt checks for
``clang/test/CodeGen/PowerPC/builtins-ppc-build-pair-mma.c``.


  Commit: 661382f2c07ba464caa0ad0fb8c64c1c3b20e9a4
      https://github.com/llvm/llvm-project/commit/661382f2c07ba464caa0ad0fb8c64c1c3b20e9a4
  Author: Jacob Lalonde <jalalonde at fb.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.cpp
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.h
    M lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.cpp
    M lldb/test/API/functionalities/process_save_core_minidump/TestProcessSaveCoreMinidump.py

  Log Message:
  -----------
  [LLDB][Minidump] Minidump erase file on failure (#108259)

In #95312 Minidump file creation was moved from being created at the
end, to the file being emitted in chunks. This causes some undesirable
behavior where the file can still be present after an error has
occurred. To resolve this we will now delete the file upon an error.


  Commit: f0f1b706e2333ecbe3027a3da5ae7b1ff5c1cfc4
      https://github.com/llvm/llvm-project/commit/f0f1b706e2333ecbe3027a3da5ae7b1ff5c1cfc4
  Author: vporpo <vporpodas at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [SandboxIR][PassRegistry] Parse pipeline string (#108103)

This patch implements a simple version of the pipeline parsing function.
It currently only handles a single FPM and adds function passes to it.


  Commit: 8e2843b471c5efb5e5df6e0e285bfdc72dff6f17
      https://github.com/llvm/llvm-project/commit/8e2843b471c5efb5e5df6e0e285bfdc72dff6f17
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/docs/RISCVUsage.rst

  Log Message:
  -----------
  [RISCV][Docs] Change Zvbb and Zvkb from 'Assembly Support' to Supported. NFC (#108572)

We have generic isel support for Zvkb and Zvbb.


  Commit: f902339d7f24a278b9c77d0226053075bd232ee5
      https://github.com/llvm/llvm-project/commit/f902339d7f24a278b9c77d0226053075bd232ee5
  Author: James Y Knight <jyknight at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/lib/Headers/module.modulemap

  Log Message:
  -----------
  Adjust modulemap to mark mm3dnow as textual header. (#107155)

This avoids issuing the deprecation diagnostic when building the module.

Not building it into a module shouldn't cause any negative impacts,
since it no longer has any declarations other than the header guard.
It's also very rarely included by anything.

Addresses
https://github.com/llvm/llvm-project/pull/96246#issuecomment-2322453809


  Commit: fffc7fb7ad48d64d164565fdf54bec25267c9d22
      https://github.com/llvm/llvm-project/commit/fffc7fb7ad48d64d164565fdf54bec25267c9d22
  Author: vporpo <vporpodas at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [SandboxIR] Implement DSOLocalEquivalent (#108473)

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


  Commit: 02e4186d0b3508e79d78b0ec844518b13a3fe9ea
      https://github.com/llvm/llvm-project/commit/02e4186d0b3508e79d78b0ec844518b13a3fe9ea
  Author: Ganesh <Ganesh.Gopalasubramanian at amd.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/lib/Basic/Targets/X86.cpp
    M clang/test/CodeGen/target-builtin-noerror.c
    M clang/test/Driver/x86-march.c
    M clang/test/Frontend/x86-target-cpu.c
    M clang/test/Misc/target-invalid-cpu-note/x86.c
    M clang/test/Preprocessor/predefined-arch-macros.c
    M compiler-rt/lib/builtins/cpu_model/x86.c
    M llvm/include/llvm/TargetParser/X86TargetParser.def
    M llvm/include/llvm/TargetParser/X86TargetParser.h
    M llvm/lib/Target/X86/X86.td
    M llvm/lib/Target/X86/X86PfmCounters.td
    M llvm/lib/TargetParser/Host.cpp
    M llvm/lib/TargetParser/X86TargetParser.cpp
    M llvm/test/CodeGen/X86/bypass-slow-division-64.ll
    M llvm/test/CodeGen/X86/cmp16.ll
    M llvm/test/CodeGen/X86/cpus-amd.ll
    M llvm/test/CodeGen/X86/rdpru.ll
    M llvm/test/CodeGen/X86/shuffle-as-shifts.ll
    M llvm/test/CodeGen/X86/slow-unaligned-mem.ll
    M llvm/test/CodeGen/X86/sqrt-fastmath-tune.ll
    M llvm/test/CodeGen/X86/tuning-shuffle-permilpd-avx512.ll
    M llvm/test/CodeGen/X86/tuning-shuffle-permilps-avx512.ll
    M llvm/test/CodeGen/X86/tuning-shuffle-unpckpd-avx512.ll
    M llvm/test/CodeGen/X86/tuning-shuffle-unpckps-avx512.ll
    M llvm/test/CodeGen/X86/vector-shuffle-fast-per-lane.ll
    M llvm/test/CodeGen/X86/vpdpwssd.ll
    M llvm/test/CodeGen/X86/x86-64-double-shifts-var.ll
    M llvm/test/MC/X86/x86_long_nop.s
    M llvm/test/Transforms/LoopUnroll/X86/call-remark.ll
    M llvm/test/Transforms/SLPVectorizer/X86/pr63668.ll

  Log Message:
  -----------
  [X86] AMD Zen 5 Initial enablement (#107964)

This patch enables the basic skeleton enablement of AMD next gen zen5 CPUs.


  Commit: b9d85b1263efa8c4953f8cf10999ee165f32922e
      https://github.com/llvm/llvm-project/commit/b9d85b1263efa8c4953f8cf10999ee165f32922e
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [CodeGen] Use DenseMap::operator[] (NFC) (#108489)

Once we modernize CopyInfo with default member initializations,

  Copies.insert({Unit, ...})

becomes equivalent to:

  Copies.try_emplace(Unit)

which we can simplify further down to Copies[Unit].


  Commit: 4ef16e3160750717f447fd76e2383c10b68eb5ae
      https://github.com/llvm/llvm-project/commit/4ef16e3160750717f447fd76e2383c10b68eb5ae
  Author: Julian Schmidt <git.julian.schmidt at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/return-const-ref-from-parameter.rst

  Log Message:
  -----------
  [NFC][clang-tidy] document fix to bugprone-return-const-ref-from-parameter (#107641)

Describe how the issue that is diagnosed by this check can be resolved.
Namely, by adding an overload for the xvalue case (`&&` parameter).

Fixes #107600


  Commit: a953982cb7dee0678bb5f7c2febe4c3b8b718c7a
      https://github.com/llvm/llvm-project/commit/a953982cb7dee0678bb5f7c2febe4c3b8b718c7a
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
    M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
    M mlir/lib/Target/LLVMIR/Dialect/NVVM/LLVMIRToNVVMTranslation.cpp
    M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir
    M mlir/test/Target/LLVMIR/Import/nvvmir.ll
    M mlir/test/Target/LLVMIR/nvvmir.mlir

  Log Message:
  -----------
  [mlir][GPU] Plumb range information through the NVVM lowerings (#107659)

Update the GPU to NVVM lowerings to correctly propagate range
information on IDs and dimension queries, etiher from
known_{block,grid}_size attributes or from `upperBound` annotations on
the operations themselves.


  Commit: 02d8813820b1ebf3fae6993e677db269f0077272
      https://github.com/llvm/llvm-project/commit/02d8813820b1ebf3fae6993e677db269f0077272
  Author: jimingham <jingham at apple.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M lldb/docs/resources/sbapi.rst

  Log Message:
  -----------
  Add a comment in the SB API doc about keeping the SB API's lightweight. (#108462)


  Commit: b6bf27ef3c179eefd805f39aa681705fc980ceed
      https://github.com/llvm/llvm-project/commit/b6bf27ef3c179eefd805f39aa681705fc980ceed
  Author: jeffreytan81 <jeffreytan at meta.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M lldb/examples/synthetic/gnu_libstdcpp.py
    M lldb/include/lldb/API/SBValue.h
    M lldb/source/API/SBValue.cpp

  Log Message:
  -----------
  Avoid expression evaluation in libStdC++ std::vector<bool> synthetic children provider  (#108414)

Our customers is reporting a serious performance issue (expanding a this
pointer takes 70 seconds in VSCode) in a specific execution context.

Profiling shows the hot path is triggered by an expression evaluation
from libStdC++ synthetic children provider for `std::vector<bool>` since
it uses `CreateValueFromExpression()`.

This PR added a new `SBValue::CreateBoolValue()` API and switch
`std::vector<bool>` synthetic children provider to use the new API
without performing expression evaluation.

Note: there might be other cases of `CreateValueFromExpression()` in our
summary/synthetic children providers which I will sweep through in later
PRs.

With this PR, the customer's scenario reduces from 70 seconds => 50
seconds. I will add other PRs to further optimize the remaining 50
seconds (mostly from type/namespace lookup).

Testing:

`test/API/functionalities/data-formatter/data-formatter-stl/libstdcpp/vbool/TestDataFormatterStdVBool.py`
passes with the PR

---------

Co-authored-by: jeffreytan81 <jeffreytan at fb.com>


  Commit: 0351dc522a25df0473a63b414a5bfde5814d3dc3
      https://github.com/llvm/llvm-project/commit/0351dc522a25df0473a63b414a5bfde5814d3dc3
  Author: Alex Langford <alangford at apple.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp

  Log Message:
  -----------
  [lldb] Do not use LC_FUNCTION_STARTS data to determine symbol size as symbols are created (#106791)

Summary:
This improves the performance of ObjectFileMacho::ParseSymtab by
removing eager and expensive work in favor of doing it later in a
less-expensive fashion.

Experiment:
My goal was to understand LLDB's startup time.
First, I produced a Debug build of LLDB (no dSYM) and a
Release+NoAsserts build of LLDB. The Release build debugged the Debug
build as it debugged a small C++ program. I found that
ObjectFileMachO::ParseSymtab accounted for somewhere between 1.2 and 1.3
seconds consistently. After applying this change, I consistently
measured a reduction of approximately 100ms, putting the time closer to
1.1s and 1.2s on average.

Background:
ObjectFileMachO::ParseSymtab will incrementally create symbols by
parsing nlist entries from the symtab section of a MachO binary. As it
does this, it eagerly tries to determine the size of symbols (e.g. how
long a function is) using LC_FUNCTION_STARTS data (or eh_frame if
LC_FUNCTION_STARTS is unavailable). Concretely, this is done by
performing a binary search on the function starts array and calculating
the distance to the next function or the end of the section (whichever
is smaller).

However, this work is unnecessary for 2 reasons:
1. If you have debug symbol entries (i.e. STABs), the size of a function
is usually stored right after the function's entry. Performing this work
right before parsing the next entry is unnecessary work.
2. Calculating symbol sizes for symbols of size 0 is already performed
in `Symtab::InitAddressIndexes` after all the symbols are added to the
Symtab. It also does this more efficiently by walking over a list of
symbols sorted by address, so the work to calculate the size per symbol
is constant instead of O(log n).


  Commit: 3a274584ebbcad6500efc4083bb53c1af565e294
      https://github.com/llvm/llvm-project/commit/3a274584ebbcad6500efc4083bb53c1af565e294
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp

  Log Message:
  -----------
  [LiveDebugValues] Avoid repeated hash lookups (NFC) (#108484)


  Commit: 758230827d59ab312515e7ad9e6d25b799dedd46
      https://github.com/llvm/llvm-project/commit/758230827d59ab312515e7ad9e6d25b799dedd46
  Author: David Green <david.green at arm.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [AArch64][GISel] Scalarize i128 vector shifts.

Like most other i128 operations, this adds scalarization for i128 vector
shifts. Which in turn allows a few other operations to legalize too.


  Commit: 3a4b30e11eb8a2015aac185cd2368f4dc3ed1e53
      https://github.com/llvm/llvm-project/commit/3a4b30e11eb8a2015aac185cd2368f4dc3ed1e53
  Author: David Green <david.green at arm.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [AArch64][GISel] Scalarize i128 ICmp and Select.

Similar to other i128 bit operations, we scalarizer any icmps or selects larger
than 64bits.


  Commit: d4f41befb7256f8e8378ae358b2b3d802454d6a4
      https://github.com/llvm/llvm-project/commit/d4f41befb7256f8e8378ae358b2b3d802454d6a4
  Author: Henrik G. Olsson <hnrklssn at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    A clang/test/utils/update-verify-tests/Inputs/duplicate-diag.c
    A clang/test/utils/update-verify-tests/Inputs/duplicate-diag.c.expected
    A clang/test/utils/update-verify-tests/Inputs/infer-indentation.c
    A clang/test/utils/update-verify-tests/Inputs/infer-indentation.c.expected
    A clang/test/utils/update-verify-tests/Inputs/leave-existing-diags.c
    A clang/test/utils/update-verify-tests/Inputs/leave-existing-diags.c.expected
    A clang/test/utils/update-verify-tests/Inputs/multiple-errors.c
    A clang/test/utils/update-verify-tests/Inputs/multiple-errors.c.expected
    A clang/test/utils/update-verify-tests/Inputs/multiple-missing-errors-same-line.c
    A clang/test/utils/update-verify-tests/Inputs/multiple-missing-errors-same-line.c.expected
    A clang/test/utils/update-verify-tests/Inputs/no-checks.c
    A clang/test/utils/update-verify-tests/Inputs/no-checks.c.expected
    A clang/test/utils/update-verify-tests/Inputs/no-diags.c
    A clang/test/utils/update-verify-tests/Inputs/no-diags.c.expected
    A clang/test/utils/update-verify-tests/Inputs/no-expected-diags.c
    A clang/test/utils/update-verify-tests/Inputs/no-expected-diags.c.expected
    A clang/test/utils/update-verify-tests/Inputs/non-default-prefix.c
    A clang/test/utils/update-verify-tests/Inputs/non-default-prefix.c.expected
    A clang/test/utils/update-verify-tests/Inputs/update-same-line.c
    A clang/test/utils/update-verify-tests/Inputs/update-same-line.c.expected
    A clang/test/utils/update-verify-tests/Inputs/update-single-check.c
    A clang/test/utils/update-verify-tests/Inputs/update-single-check.c.expected
    A clang/test/utils/update-verify-tests/duplicate-diag.test
    A clang/test/utils/update-verify-tests/infer-indentation.test
    A clang/test/utils/update-verify-tests/leave-existing-diags.test
    A clang/test/utils/update-verify-tests/lit.local.cfg
    A clang/test/utils/update-verify-tests/multiple-errors.test
    A clang/test/utils/update-verify-tests/multiple-missing-errors-same-line.test
    A clang/test/utils/update-verify-tests/no-checks.test
    A clang/test/utils/update-verify-tests/no-diags.test
    A clang/test/utils/update-verify-tests/no-expected-diags.test
    A clang/test/utils/update-verify-tests/non-default-prefix.test
    A clang/test/utils/update-verify-tests/update-same-line.test
    A clang/test/utils/update-verify-tests/update-single-check.test
    A clang/utils/UpdateVerifyTests/core.py
    A clang/utils/update-verify-tests.py

  Log Message:
  -----------
  [Utils] add update-verify-tests.py (#97369)

Adds a python script to automatically take output from a failed clang
-verify test and update the test case(s) to expect the new behaviour.


  Commit: 4c040c027575f3a30dc94bfab4c975567195bdc7
      https://github.com/llvm/llvm-project/commit/4c040c027575f3a30dc94bfab4c975567195bdc7
  Author: Tyler Nowicki <tyler.nowicki at amd.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Coroutines/CoroEarly.cpp
    M llvm/lib/Transforms/Coroutines/CoroInternal.h
    A llvm/lib/Transforms/Coroutines/CoroShape.h
    M llvm/lib/Transforms/Coroutines/Coroutines.cpp

  Log Message:
  -----------
  [Coroutines] Move Shape to its own header (#108242)

* To create custom ABIs plugin libraries need access to CoroShape.
* As a step in enabling plugin libraries, move Shape into its own header
* The header will eventually be moved into include/llvm/Transforms/Coroutines

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


  Commit: d0e7714de73b8b657dca1706e676027d42bbb775
      https://github.com/llvm/llvm-project/commit/d0e7714de73b8b657dca1706e676027d42bbb775
  Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/include/llvm/Support/AMDGPUAddrSpace.h
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.prefetch.data.ll
    A llvm/test/Verifier/AMDGPU/intrinsic-prefetch.ll

  Log Message:
  -----------
  [AMDGPU] Error on non-global pointer with s_prefetch_data (#107624)


  Commit: d588e49a324b3d6039c19f3108d722a8b9fcd96e
      https://github.com/llvm/llvm-project/commit/d588e49a324b3d6039c19f3108d722a8b9fcd96e
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [mlir][Transforms][NFC] Dialect conversion: Cache `UnresolvedMaterializationRewrite` (#108359)

The dialect conversion maintains a set of unresolved materializations
(`UnrealizedConversionCastOp`). Turn that set into a `DenseMap` that
maps from ops to `UnresolvedMaterializationRewrite *`. This improves
efficiency a bit, because an iteration over
`ConversionPatternRewriterImpl::rewrites` can be avoided.

Also delete some dead code.


  Commit: 9f738c84f05ff965b81e0be5cc725af3fa13cbf0
      https://github.com/llvm/llvm-project/commit/9f738c84f05ff965b81e0be5cc725af3fa13cbf0
  Author: vporpo <vporpodas at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [SandboxIR] Implement GlobalObject (#108604)

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


  Commit: 39f2d2f156ba8af31a15f6df223d3cb57c7a4906
      https://github.com/llvm/llvm-project/commit/39f2d2f156ba8af31a15f6df223d3cb57c7a4906
  Author: vporpo <vporpodas at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/include/llvm/SandboxIR/Pass.h
    M llvm/include/llvm/SandboxIR/PassManager.h
    A llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h
    M llvm/lib/Transforms/Vectorize/CMakeLists.txt
    A llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.cpp
    A llvm/test/Transforms/SandboxVectorizer/default_pass_pipeline.ll

  Log Message:
  -----------
  [SandboxVec] Boilerplate for vectorization passes (#108603)

This patch implements a new empty pass for the Bottom-up vectorizer and
creates a pass pipeline that includes it.
The SandboxVectorizer LLVM pass runs the Sandbox IR pass pipeline.


  Commit: c3ac3fe8259b4ae85736ca81fa30e4098123e0b4
      https://github.com/llvm/llvm-project/commit/c3ac3fe8259b4ae85736ca81fa30e4098123e0b4
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M offload/DeviceRTL/CMakeLists.txt
    M offload/DeviceRTL/include/DeviceTypes.h
    M offload/include/Shared/Environment.h
    R offload/include/Shared/Types.h
    M offload/include/Shared/Utils.h

  Log Message:
  -----------
  [OpenMP] Fix redefining `stdint.h` types (#108607)

Summary:
We can include `stdint.h` just fine as long as we don't allow it to find
system headers, passing `-nostdlibinc` and `-nogpuinc` suppresses these
extra paths so we will just use the clang resource headers for
`stdint.h` and `stddef.h`.


  Commit: 98b1d01b42a4bb2e9a53bcab7589e66c5572c37f
      https://github.com/llvm/llvm-project/commit/98b1d01b42a4bb2e9a53bcab7589e66c5572c37f
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/phi-node-reshuffled-part.ll

  Log Message:
  -----------
  [SLP][NFC]Test with incorrect value for phi node with reused scalars, NFC


  Commit: c13bf6d4a89b8d62bc6eedf68d810a4584ccc4a8
      https://github.com/llvm/llvm-project/commit/c13bf6d4a89b8d62bc6eedf68d810a4584ccc4a8
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/phi-node-reshuffled-part.ll

  Log Message:
  -----------
  [SLP]Return proper value for phi vectorized node

Should not return the original phi vector instruction, need to return
actual vectorized value as a result.


  Commit: 0ba8b247dd63042528850af8cc572dc73225a04c
      https://github.com/llvm/llvm-project/commit/0ba8b247dd63042528850af8cc572dc73225a04c
  Author: Andrei Safronov <andrei.safronov at espressif.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Target/Xtensa/XtensaISelLowering.cpp
    M llvm/lib/Target/Xtensa/XtensaISelLowering.h
    A llvm/test/CodeGen/Xtensa/frameaddr-returnaddr.ll

  Log Message:
  -----------
  [Xtensa] Lowering FRAMEADDR/RETURNADDR operations. (#107363)


  Commit: 1fc3ca1a121e4ae7d0cc35ee314d3aa4b8c98361
      https://github.com/llvm/llvm-project/commit/1fc3ca1a121e4ae7d0cc35ee314d3aa4b8c98361
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/docs/RISCVUsage.rst

  Log Message:
  -----------
  [RISCV] Add Zvfhmin to RISCVUsage.rst. NFC (#108574)


  Commit: 29e5fe78f168a2f67f36cf56ffeff810d7ffcee6
      https://github.com/llvm/llvm-project/commit/29e5fe78f168a2f67f36cf56ffeff810d7ffcee6
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [gn build] Port 39f2d2f156ba


  Commit: 21e3a212c570dc80055742ef8abbd0a306ff9135
      https://github.com/llvm/llvm-project/commit/21e3a212c570dc80055742ef8abbd0a306ff9135
  Author: Volodymyr Vasylkun <vvmposeydon at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    A llvm/test/Transforms/InstCombine/phi-with-multiple-unsimplifiable-values.ll

  Log Message:
  -----------
  [InstCombine] Replace an integer comparison of a `phi` node with multiple `ucmp`/`scmp` operands and a constant with `phi` of individual comparisons of original intrinsic's arguments (#107769)

When we have a `phi` instruction with more than one of its incoming
values being a call to `ucmp` or `scmp`, which is then compared with an
integer constant, we can move the comparison through the `phi` into the
incoming basic blocks because we know that a comparison of `ucmp`/`scmp`
with a constant will be simplified by the next iteration of InstCombine.

There's a high chance that other similar patterns can be identified, in
which case they can be easily handled by the same code by moving the
check for "simplifiable" instructions into a lambda.


  Commit: b659abef48efba6e380c0cc1aeae13e656368011
      https://github.com/llvm/llvm-project/commit/b659abef48efba6e380c0cc1aeae13e656368011
  Author: lntue <35648136+lntue at users.noreply.github.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M libc/src/__support/OSUtil/linux/vdso.cpp

  Log Message:
  -----------
  [libc] Fix vdso VER_FLG_BASE redefinition in overlay mod. (#108628)


  Commit: 75a57edadc9213bf404c67ff4949217da5b4d0ff
      https://github.com/llvm/llvm-project/commit/75a57edadc9213bf404c67ff4949217da5b4d0ff
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp

  Log Message:
  -----------
  VPlan/Builder: inline VPBuilder::createICmp (NFC) (#105650)

Inline VPBuilder::createICmp in the header, in line with the other
VPBuilder functions.


  Commit: b7e585b95e241d0506b6f71d53ff5b6e72a9c8f4
      https://github.com/llvm/llvm-project/commit/b7e585b95e241d0506b6f71d53ff5b6e72a9c8f4
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    R clang/test/utils/update-verify-tests/Inputs/duplicate-diag.c
    R clang/test/utils/update-verify-tests/Inputs/duplicate-diag.c.expected
    R clang/test/utils/update-verify-tests/Inputs/infer-indentation.c
    R clang/test/utils/update-verify-tests/Inputs/infer-indentation.c.expected
    R clang/test/utils/update-verify-tests/Inputs/leave-existing-diags.c
    R clang/test/utils/update-verify-tests/Inputs/leave-existing-diags.c.expected
    R clang/test/utils/update-verify-tests/Inputs/multiple-errors.c
    R clang/test/utils/update-verify-tests/Inputs/multiple-errors.c.expected
    R clang/test/utils/update-verify-tests/Inputs/multiple-missing-errors-same-line.c
    R clang/test/utils/update-verify-tests/Inputs/multiple-missing-errors-same-line.c.expected
    R clang/test/utils/update-verify-tests/Inputs/no-checks.c
    R clang/test/utils/update-verify-tests/Inputs/no-checks.c.expected
    R clang/test/utils/update-verify-tests/Inputs/no-diags.c
    R clang/test/utils/update-verify-tests/Inputs/no-diags.c.expected
    R clang/test/utils/update-verify-tests/Inputs/no-expected-diags.c
    R clang/test/utils/update-verify-tests/Inputs/no-expected-diags.c.expected
    R clang/test/utils/update-verify-tests/Inputs/non-default-prefix.c
    R clang/test/utils/update-verify-tests/Inputs/non-default-prefix.c.expected
    R clang/test/utils/update-verify-tests/Inputs/update-same-line.c
    R clang/test/utils/update-verify-tests/Inputs/update-same-line.c.expected
    R clang/test/utils/update-verify-tests/Inputs/update-single-check.c
    R clang/test/utils/update-verify-tests/Inputs/update-single-check.c.expected
    R clang/test/utils/update-verify-tests/duplicate-diag.test
    R clang/test/utils/update-verify-tests/infer-indentation.test
    R clang/test/utils/update-verify-tests/leave-existing-diags.test
    R clang/test/utils/update-verify-tests/lit.local.cfg
    R clang/test/utils/update-verify-tests/multiple-errors.test
    R clang/test/utils/update-verify-tests/multiple-missing-errors-same-line.test
    R clang/test/utils/update-verify-tests/no-checks.test
    R clang/test/utils/update-verify-tests/no-diags.test
    R clang/test/utils/update-verify-tests/no-expected-diags.test
    R clang/test/utils/update-verify-tests/non-default-prefix.test
    R clang/test/utils/update-verify-tests/update-same-line.test
    R clang/test/utils/update-verify-tests/update-single-check.test
    R clang/utils/UpdateVerifyTests/core.py
    R clang/utils/update-verify-tests.py

  Log Message:
  -----------
  Revert "[Utils] add update-verify-tests.py" (#108630)

Reverts llvm/llvm-project#97369


  Commit: acf90fd03f8deb036847cbdf6bfd4ae47d88ba6a
      https://github.com/llvm/llvm-project/commit/acf90fd03f8deb036847cbdf6bfd4ae47d88ba6a
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/test/MC/WebAssembly/basic-assembly.s
    A llvm/test/MC/WebAssembly/eh-assembly.s

  Log Message:
  -----------
  [WebAssembly] Create separate file for EH assembly tests (#108472)

Create `eh-assembly.s` that contains EH tests and remove EH tests from
`basic-assembly.s`, given that it's easier to manage. (We can have many
different tests, including the legacy EH and the new exnref, and with
nesting for readability)


  Commit: b74e7792194d9a8a9ef32c7dc1ffcd205b299336
      https://github.com/llvm/llvm-project/commit/b74e7792194d9a8a9ef32c7dc1ffcd205b299336
  Author: Lawrence Benson <github at lawben.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86InstrAVX512.td
    A llvm/test/CodeGen/X86/vector-compress.ll

  Log Message:
  -----------
  [x86] Add lowering for `@llvm.experimental.vector.compress` (#104904)

This is a follow-up to #92289 that adds lowering of the new
`@llvm.experimental.vector.compress` intrinsic on x86 with AVX512
instructions. This intrinsic maps directly to `vpcompress`.


  Commit: aca226c0f89a049d9251eb0a097821b1acf9a316
      https://github.com/llvm/llvm-project/commit/aca226c0f89a049d9251eb0a097821b1acf9a316
  Author: Pranav Kant <prka at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [Bazel] Fix build break for SandboxVectorizer (#108638)

Fixes
https://github.com/llvm/llvm-project/commit/39f2d2f156ba8af31a15f6df223d3cb57c7a4906


  Commit: ae3e82585e61eca1ee6100e81cde68b608faf0a8
      https://github.com/llvm/llvm-project/commit/ae3e82585e61eca1ee6100e81cde68b608faf0a8
  Author: vporpo <vporpodas at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [SandboxIR] Implement GlobalIFunc (#108622)

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


  Commit: 5130f3236f855436f4fa78a8ad7be0b39e638741
      https://github.com/llvm/llvm-project/commit/5130f3236f855436f4fa78a8ad7be0b39e638741
  Author: vporpo <vporpodas at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.cpp
    A llvm/test/Transforms/SandboxVectorizer/user_pass_pipeline.ll

  Log Message:
  -----------
  [SandboxVec] User-defined pass pipeline (#108625)

This patch adds support for a user-defined pass-pipeline that overrides
the default pipeline of the vectorizer.
This will commonly be used by lit tests.


  Commit: a26ec542371652e1d774696e90016fd5b0b1c191
      https://github.com/llvm/llvm-project/commit/a26ec542371652e1d774696e90016fd5b0b1c191
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/include/clang/Tooling/CompilationDatabase.h
    M clang/lib/Tooling/CMakeLists.txt
    A clang/lib/Tooling/LocateToolCompilationDatabase.cpp
    M clang/test/ClangScanDeps/modules-extern-submodule.c
    M clang/test/ClangScanDeps/modules-full-output-tu-order.c
    M clang/test/ClangScanDeps/modules-has-include-umbrella-header.c
    M clang/test/ClangScanDeps/modules-header-sharing.m
    M clang/test/ClangScanDeps/modules-implementation-module-map.c
    M clang/test/ClangScanDeps/modules-implementation-private.m
    M clang/test/ClangScanDeps/modules-priv-fw-from-pub.m
    A clang/test/ClangScanDeps/resolve-executable-path.c
    M clang/tools/clang-scan-deps/ClangScanDeps.cpp

  Log Message:
  -----------
  [clang-scan-deps] Infer the tool locations from PATH (#108539)

This allows the clang driver to know which tool is meant to be executed,
which allows the clang driver to load the right clang config files, and
allows clang to find colocated sysroots.

This makes sure that doing `clang-scan-deps -- <tool> ...` looks up
things in the same way as if one just would execute `<tool> ...`, when
`<tool>` isn't an absolute or relative path.


  Commit: 1b4aea601d3e891a2b04ff35b9749c7fbec6503e
      https://github.com/llvm/llvm-project/commit/1b4aea601d3e891a2b04ff35b9749c7fbec6503e
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

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


  Commit: 90f077cba8f41a2ba0eb8ffebed8da48322ed0d7
      https://github.com/llvm/llvm-project/commit/90f077cba8f41a2ba0eb8ffebed8da48322ed0d7
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [lldb] Emit signpost intervals for progress events (NFC) (#108498)

Emit signpost intervals for progress events so that when users report an
operation takes a long time, we can investigate the issue with
Instruments.app.


  Commit: ebf25d9509d19a381d94a0383135ee37f5b7b6e2
      https://github.com/llvm/llvm-project/commit/ebf25d9509d19a381d94a0383135ee37f5b7b6e2
  Author: Ziqing Luo <ziqing at udel.edu>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-libc-functions.cpp

  Log Message:
  -----------
  [-Wunsafe-buffer-usage] Reduce false positives with constant arrays in libc warnings (#108308)

For `snprintf(a, sizeof a, ...)`, the first two arguments form a safe
pattern if `a` is a constant array. In such a case, this commit will
suppress the warning.

(rdar://117182250)


  Commit: 2222e27d9e1438b0c723d46c62b1364391b58311
      https://github.com/llvm/llvm-project/commit/2222e27d9e1438b0c723d46c62b1364391b58311
  Author: Chris B <chris.bieneman at me.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/LangOptions.h
    M clang/include/clang/Basic/LangStandards.def
    M clang/include/clang/Driver/Options.td
    M clang/lib/Basic/LangOptions.cpp
    M clang/lib/Basic/LangStandards.cpp
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/lib/Sema/DeclSpec.cpp
    M clang/test/ParserHLSL/group_shared.hlsl
    M clang/test/ParserHLSL/group_shared_202x.hlsl
    M clang/test/ParserHLSL/invalid_inside_cb.hlsl
    M clang/test/Preprocessor/predefined-macros-hlsl.hlsl
    M clang/test/SemaHLSL/group_shared.hlsl
    M clang/test/SemaHLSL/group_shared_202x.hlsl

  Log Message:
  -----------
  [HLSL] Add HLSL 202y language mode (#108437)

This change adds a new HLSL 202y language mode. Currently HLSL 202y is
planned to add `auto` and `constexpr`.

This change updates extension diagnostics to state that lambadas are a
"clang HLSL" extension (since we have no planned release yet to include
them), and that `auto` is a HLSL 202y extension when used in earlier
language modes.

Note: This PR does temporarily work around some differences between HLSL
2021 and 202x in Clang by changing test cases to explicitly specify
202x. A subsequent PR will update 2021's language flags to match 202x.


  Commit: c3fda44147d096c0018ae8c09cd0a0446f212a4f
      https://github.com/llvm/llvm-project/commit/c3fda44147d096c0018ae8c09cd0a0446f212a4f
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp

  Log Message:
  -----------
  [VPlan] Use VPBuilder to create scalar IV steps and derived IV (NFCI).

Extend VPBuilder to allow creating VPDerivedIVRecipe, VPScalarCastRecipe
and VPScalarIVStepsRecipe.

Use them to simplify the code to create scalar IV steps slightly.


  Commit: 6cbb2455ae60d9dd7b34642ae1d54e02fbc4d33f
      https://github.com/llvm/llvm-project/commit/6cbb2455ae60d9dd7b34642ae1d54e02fbc4d33f
  Author: vporpo <vporpodas at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [SandboxIR] Implement missng Instruction::comesBefore() (#108635)


  Commit: a592e4b4b0e01d1861f5ef7da5cfe90f93e16ce8
      https://github.com/llvm/llvm-project/commit/a592e4b4b0e01d1861f5ef7da5cfe90f93e16ce8
  Author: Pranav Kant <prka at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [bazel] add vdso dependency to time_linux lib (#108647)

This is a quick fix to unbreak Bazel build. The right solution would
probably add vdso.cpp in the support library which includes circular
dependency and needs more restructuring.


  Commit: ee3f5c2f91ca22932952ef12c3bad3440a22c19b
      https://github.com/llvm/llvm-project/commit/ee3f5c2f91ca22932952ef12c3bad3440a22c19b
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [bazel] Port a953982cb7dee0678bb5f7c2febe4c3b8b718c7a (#108651)


  Commit: f885e02cf7cac1b08cab4cd526773420076029dd
      https://github.com/llvm/llvm-project/commit/f885e02cf7cac1b08cab4cd526773420076029dd
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticIDs.h
    M clang/lib/Sema/SemaOverload.cpp

  Log Message:
  -----------
  Revert "[clang] Silence GCC warnings about control reaching end of non void function"

This reverts commit 90a2e0bb423629b7e70f4b91adb44851199dd5ea.

Reverting parent CL

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


  Commit: e1bd9740faa62c11cc785a7b70ec1ad17e286bd1
      https://github.com/llvm/llvm-project/commit/e1bd9740faa62c11cc785a7b70ec1ad17e286bd1
  Author: Florian Mayer <fmayer at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang-tools-extra/clangd/Diagnostics.cpp
    M clang-tools-extra/clangd/Diagnostics.h
    M clang-tools-extra/clangd/ParsedAST.cpp
    M clang-tools-extra/clangd/Preamble.cpp
    M clang-tools-extra/clangd/unittests/ConfigCompileTests.cpp
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/Diagnostic.h
    M clang/include/clang/Basic/DiagnosticCategories.h
    M clang/include/clang/Basic/DiagnosticIDs.h
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Basic/Diagnostic.cpp
    M clang/lib/Basic/DiagnosticIDs.cpp
    M clang/lib/Frontend/LogDiagnosticPrinter.cpp
    M clang/lib/Frontend/SerializedDiagnosticPrinter.cpp
    M clang/lib/Frontend/TextDiagnosticPrinter.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaCUDA.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/StaticAnalyzer/Core/TextDiagnostics.cpp
    M clang/test/Sema/diagnose_if.c
    R clang/test/SemaCXX/diagnose_if-warning-group.cpp
    M clang/tools/diagtool/ListWarnings.cpp
    M clang/tools/diagtool/ShowEnabledWarnings.cpp
    M clang/tools/libclang/CXStoredDiagnostic.cpp
    M flang/lib/Frontend/TextDiagnosticPrinter.cpp

  Log Message:
  -----------
  Revert "Reapply "[clang] Extend diagnose_if to accept more detailed warning information (#70976)" (#108453)"

This reverts commit e7f782e7481cea23ef452a75607d3d61f5bd0d22.

This had UBSan failures:

[----------] 1 test from ConfigCompileTests
[ RUN      ] ConfigCompileTests.DiagnosticSuppression
Config fragment: compiling <unknown>:0 -> 0x00007B8366E2F7D8 (trusted=false)
/usr/local/google/home/fmayer/large/llvm-project/llvm/include/llvm/ADT/IntrusiveRefCntPtr.h:203:33: runtime error: reference binding to null pointer of type 'clang::DiagnosticIDs'

UndefinedBehaviorSanitizer: undefined-behavior /usr/local/google/home/fmayer/large/llvm-project/llvm/include/llvm/ADT/IntrusiveRefCntPtr.h:203:33

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


  Commit: d1ba432533aafc52fc59158350af937a8b6b9538
      https://github.com/llvm/llvm-project/commit/d1ba432533aafc52fc59158350af937a8b6b9538
  Author: Brian Cain <bcain at quicinc.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M lld/ELF/Arch/Hexagon.cpp
    M lld/test/ELF/hexagon-eflag.s

  Log Message:
  -----------
  [lld] select a default eflags for hexagon (#108431)

Empty archives are apparently routine in linux kernel builds, so instead
of asserting, we should handle this case with a sane default value.


  Commit: d0638ed0fd54ed7331737b99c19086b70d8bf48b
      https://github.com/llvm/llvm-project/commit/d0638ed0fd54ed7331737b99c19086b70d8bf48b
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [bazel][NFC] Use globs to make `Vectorize` less brittle (#108644)

This avoids needing to update the rule every time there's a new
directory, e.g. SandboxVectorizer packages.


  Commit: ddcc601353db0464eb15a3e0258ec6789dd1602c
      https://github.com/llvm/llvm-project/commit/ddcc601353db0464eb15a3e0258ec6789dd1602c
  Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
    M llvm/test/Transforms/Coroutines/swift-async-dbg.ll

  Log Message:
  -----------
  [CoroSplit][DebugInfo] Adjust heuristic for moving DIScope of funclets (#108611)

CoroSplit has a heuristic where the scope line for funclets is adjusted
to match the line of the suspend intrinsic that caused the split. This
is useful as it avoids a jump on the line table from the original
function declaration to the line where the split happens.

However, very often using the line of the split is not ideal: if we can
avoid it, we should not have a line entry for the split location, as
this would cause breakpoints by line to match against two functions: the
funclet before and the funclet after the split.

This patch adjusts the heuristics to look for the first instruction with
a non-zero line number after the split. In other words, this patch makes
breakpoints on `await foo()` lines behave much more like a regular
function call.


  Commit: cfd0c4f8ed5c5a1ca62f8810acab7586b2248b35
      https://github.com/llvm/llvm-project/commit/cfd0c4f8ed5c5a1ca62f8810acab7586b2248b35
  Author: Akash Banerjee <Akash.Banerjee at amd.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp

  Log Message:
  -----------
  [OpenMP][MLIR] Fix code bug from #101707


  Commit: 77bab2a6f37af918a9133d1bb15551bd351b291e
      https://github.com/llvm/llvm-project/commit/77bab2a6f37af918a9133d1bb15551bd351b291e
  Author: JOE1994 <joseph942010 at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/unittests/IR/AsmWriterTest.cpp
    M llvm/unittests/IR/MetadataTest.cpp
    M llvm/unittests/IR/ValueTest.cpp
    M llvm/unittests/IR/VerifierTest.cpp
    M llvm/unittests/Support/ARMAttributeParser.cpp
    M llvm/unittests/Support/CSKYAttributeParserTest.cpp
    M llvm/unittests/Support/Chrono.cpp
    M llvm/unittests/Support/ErrorTest.cpp
    M llvm/unittests/Support/JSONTest.cpp
    M llvm/unittests/Support/ScopedPrinterTest.cpp
    M llvm/unittests/Support/WithColorTest.cpp
    M llvm/unittests/Support/YAMLIOTest.cpp

  Log Message:
  -----------
  [llvm][unittests] Strip unneeded use of raw_string_ostream::str() (NFC)

Avoid unneeded layer of indirection.


  Commit: 03618ceabd003be94190b068db11b607fd1108ef
      https://github.com/llvm/llvm-project/commit/03618ceabd003be94190b068db11b607fd1108ef
  Author: Chris B <chris.bieneman at me.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/test/CodeGenHLSL/this-assignment.hlsl

  Log Message:
  -----------
  [HLSL] Fix move assignment of `this` (#108445)

Under HLSL 202x+ move assignment can occur and when targeting `this`
move assignment was generating some really odd errors. This corrects the
errors by properly generating the `this` object reference for HLSL and
always treating it as a reference.

This mirrors the implementation added eariler for copy assignment, and
extends the test case to cover both move and copy assignment under HLSL
202x+.


  Commit: 1e3536ef3141d6429f3616af624b81b6d6ab2959
      https://github.com/llvm/llvm-project/commit/1e3536ef3141d6429f3616af624b81b6d6ab2959
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/reduced-val-extracted-and-externally-used.ll

  Log Message:
  -----------
  [SLP]Fix PR108620: Need to check, if the reduced value was transformed

Before trying to include the scalar into the list of
ExternallyUsedValues, need to check, if it was transformed in previous
iteration and use the transformed value, not the original one, to avoid
compiler crash when building external uses.

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


  Commit: 52b48a70d3752f9db36ddcfd26d0451c009b19fc
      https://github.com/llvm/llvm-project/commit/52b48a70d3752f9db36ddcfd26d0451c009b19fc
  Author: JOE1994 <joseph942010 at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/unittests/ADT/Interleave.cpp
    M llvm/unittests/Analysis/AssumeBundleQueriesTest.cpp
    M llvm/unittests/Analysis/CFGTest.cpp
    M llvm/unittests/Analysis/DXILResourceTest.cpp
    M llvm/unittests/Analysis/LazyCallGraphTest.cpp
    M llvm/unittests/Analysis/TargetLibraryInfoTest.cpp
    M llvm/unittests/Analysis/ValueTrackingTest.cpp
    M llvm/unittests/Analysis/VectorUtilsTest.cpp
    M llvm/unittests/InterfaceStub/ELFYAMLTest.cpp
    M llvm/unittests/Transforms/Coroutines/ExtraRematTest.cpp
    M llvm/unittests/Transforms/Instrumentation/PGOInstrumentationTest.cpp
    M llvm/unittests/Transforms/Utils/MemTransferLowering.cpp

  Log Message:
  -----------
  [llvm][unittests] Strip unneeded use of raw_string_ostream::str() (NFC)

Avoid excess layer of indirection.


  Commit: 12d4769cb84b2b2e60f9776fa043c6ea16f08ebb
      https://github.com/llvm/llvm-project/commit/12d4769cb84b2b2e60f9776fa043c6ea16f08ebb
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp

  Log Message:
  -----------
  Revert "[MemProf] Streamline and avoid unnecessary context id duplication (#107918)" (#108652)

This reverts commit 524a028f69cdf25503912c396ebda7ebf0065ed2, but
manually so that follow on PR108086 /
ae5f1a78d3a930466f927989faac8e0b9d820a7b
is retained (NFC patch to convert tuple to a struct).


  Commit: c6c3803b7267d3e9e81e09fc23e56c58854e703e
      https://github.com/llvm/llvm-project/commit/c6c3803b7267d3e9e81e09fc23e56c58854e703e
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/docs/RISCVUsage.rst

  Log Message:
  -----------
  [RISCV] Add documentation that Zvbc and Zvk* are supported through intrinsics. NFC (#108577)


  Commit: b7914dffd6eacfa20990a39aecd1e0d24cadc62b
      https://github.com/llvm/llvm-project/commit/b7914dffd6eacfa20990a39aecd1e0d24cadc62b
  Author: Congcong Cai <congcongcai0907 at 163.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/performance/AvoidEndlCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/performance/avoid-endl.cpp

  Log Message:
  -----------
  [clang-tidy] add default error message for performance-avoid-endl (#107867)

use std::endl as default message when matched expr does not have valid
source text

Fixes: #107859


  Commit: ca4973972bf1306b49413a76f2d0c25c3df711aa
      https://github.com/llvm/llvm-project/commit/ca4973972bf1306b49413a76f2d0c25c3df711aa
  Author: Matteo Franciolini <mfranciolini at tesla.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M mlir/lib/Dialect/Mesh/IR/MeshOps.cpp
    A mlir/test/Dialect/Mesh/inlining.mlir

  Log Message:
  -----------
  [mlir][mesh] Introduce `DialectInlinerInterface` for Mesh dialect (#108297)

The inliner interface does not implement any restrictions for inlining.


  Commit: 536bdc99e6ed2388426ce94d0bd75a61aecab396
      https://github.com/llvm/llvm-project/commit/536bdc99e6ed2388426ce94d0bd75a61aecab396
  Author: gulfemsavrun <gulfem at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [Coverage] Skip empty profile name section (#108480)

llvm-cov reads __llvm_prf_names section in an object file to find the
profile names, and it instead reads __llvm_covnames section in binary
profile correlation mode when __llvm_prf_names section is omitted. This
patch ensures that it still reads __llvm_covnames section when there is
an empty __llvm_prf_names section.


  Commit: c010b72e9b4e3b1ae7467eb86102fc43c338fe19
      https://github.com/llvm/llvm-project/commit/c010b72e9b4e3b1ae7467eb86102fc43c338fe19
  Author: Abinaya Saravanan <quic_asaravan at quicinc.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonOptAddrMode.cpp
    A llvm/test/CodeGen/Hexagon/autohvx/addi-offset-opt-addr-mode.ll
    A llvm/test/CodeGen/Hexagon/autohvx/addi-opt-predicated-def-bug.ll
    M llvm/test/CodeGen/Hexagon/vgather-opt-addr.ll
    A llvm/test/CodeGen/MIR/Hexagon/addrmode-opt-nonreaching.mir

  Log Message:
  -----------
  [HEXAGON] AddrModeOpt support for HVX and optimize adds (#106368)

This patch does 3 things:
1. Add support for optimizing the address mode of HVX load/store
instructions
2. Reduce the value of Add instruction immediates by replacing with the
difference from other Addi instructions that share common base:

For Example, If we have the below sequence of instructions: r1 =
add(r2,# 1024) ... r3 = add(r2,# 1152) ... r4 = add(r2,# 1280)

Where the register r2 has the same reaching definition, They get
modified to the below sequence:

       r1 = add(r2,# 1024)
            ...
       r3 = add(r1,# 128)
            ...
       r4 = add(r1,# 256)
3. Fixes a bug pass where the addi instructions were modified based on a
predicated register definition, leading to incorrect output.

Eg:
         INST-1: if (p0) r2 = add(r13,# 128)
         INST-2: r1 = add(r2,# 1024)
         INST-3: r3 = add(r2,# 1152)
         INST-4: r5 = add(r2,# 1280)

In the above case, since r2's definition is predicated, we do not want
to modify the uses of r2 in INST-3/INST-4 with add(r1,#128/256)

4.Fixes a corner case

It looks like we never check whether the offset register is actually
live (not clobbered) at optimization site. Add the check whether it is
live at MBB entrance. The rest should have already been verified.

5. Fixes a bad codegen

For whatever reason we do transformation without checking if the value
in register actually reaches the user. This is second identical fix for
this pass.

   Co-authored-by: Anirudh Sundar <quic_sanirudh at quicinc.com>
   Co-authored-by: Sergei Larin <slarin at quicinc.com>


  Commit: 459a82e6890ff41e30d486f36c8c7ec22628bb7a
      https://github.com/llvm/llvm-project/commit/459a82e6890ff41e30d486f36c8c7ec22628bb7a
  Author: JOE1994 <joseph942010 at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/unittests/ADT/RewriteBufferTest.cpp
    M llvm/unittests/DebugInfo/DWARF/DWARFDebugFrameTest.cpp
    M llvm/unittests/DebugInfo/DWARF/DWARFDebugLineTest.cpp
    M llvm/unittests/DebugInfo/DWARF/DWARFFormValueTest.cpp
    M llvm/unittests/DebugInfo/GSYM/GSYMTest.cpp
    M llvm/unittests/IR/ConstantsTest.cpp
    M llvm/unittests/IR/ManglerTest.cpp
    M llvm/unittests/IR/MetadataTest.cpp
    M llvm/unittests/IR/ModuleSummaryIndexTest.cpp
    M llvm/unittests/MC/MCInstPrinter.cpp
    M llvm/unittests/MIR/MachineMetadata.cpp
    M llvm/unittests/Object/SymbolicFileTest.cpp
    M llvm/unittests/ProfileData/InstrProfTest.cpp
    M llvm/unittests/ProfileData/MemProfTest.cpp
    M llvm/unittests/Support/CommandLineTest.cpp
    M llvm/unittests/Support/CrashRecoveryTest.cpp
    M llvm/unittests/Support/ErrorTest.cpp
    M llvm/unittests/Support/FormatVariadicTest.cpp
    M llvm/unittests/Support/LEB128Test.cpp
    M llvm/unittests/Support/ModRefTest.cpp
    M llvm/unittests/Support/NativeFormatTests.cpp
    M llvm/unittests/Support/RISCVAttributeParserTest.cpp
    M llvm/unittests/Support/SourceMgrTest.cpp
    M llvm/unittests/Support/VirtualFileSystemTest.cpp
    M llvm/unittests/Support/YAMLIOTest.cpp
    M llvm/unittests/Target/RISCV/RISCVInstrInfoTest.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
    M llvm/unittests/XRay/FDRProducerConsumerTest.cpp
    M llvm/unittests/XRay/FDRRecordPrinterTest.cpp
    M llvm/unittests/XRay/FDRRecordsTest.cpp
    M llvm/unittests/XRay/FDRTraceWriterTest.cpp
    M llvm/unittests/tools/llvm-exegesis/ProgressMeterTest.cpp

  Log Message:
  -----------
  [llvm][unittests] Don't call raw_string_ostream::flush() (NFC)

raw_string_ostream::flush() is essentially a no-op (also specified in docs).
Don't call it in tests that aren't meant to test 'raw_string_ostream' itself.

p.s. remove a few redundant calls to raw_string_ostream::str()


  Commit: 0e34dbb4f452013eab89a0a8f04a436ff6c408d4
      https://github.com/llvm/llvm-project/commit/0e34dbb4f452013eab89a0a8f04a436ff6c408d4
  Author: Aart Bik <ajcbik at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseAssembler.cpp
    M mlir/test/Integration/Dialect/SparseTensor/python/test_SDDMM.py
    M mlir/test/Integration/Dialect/SparseTensor/python/test_SpMM.py
    A mlir/test/Integration/Dialect/SparseTensor/python/test_all_dense.py
    M mlir/test/Integration/Dialect/SparseTensor/python/test_output.py
    M mlir/test/Integration/Dialect/SparseTensor/python/test_stress.py
    M mlir/test/Integration/Dialect/SparseTensor/python/tools/sparsifier.py

  Log Message:
  -----------
  [mlir][sparse] fix bug with all-dense assembler (#108615)

When only all-dense "sparse" tensors occur in a function prototype, the
assembler would skip the method conversion purely based on input/output
counts. It should rewrite based on the presence of any annotation,
however.


  Commit: d3cdf0f2220cb913092934d7bf08c89951d56f8d
      https://github.com/llvm/llvm-project/commit/d3cdf0f2220cb913092934d7bf08c89951d56f8d
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    A llvm/include/llvm/Support/OptionStrCmp.h
    M llvm/lib/Option/OptTable.cpp
    M llvm/lib/Option/Option.cpp
    M llvm/lib/Support/CMakeLists.txt
    A llvm/lib/Support/OptionStrCmp.cpp
    M llvm/utils/TableGen/Common/OptEmitter.cpp
    M llvm/utils/TableGen/Common/OptEmitter.h
    M llvm/utils/TableGen/OptParserEmitter.cpp
    M llvm/utils/TableGen/OptRSTEmitter.cpp

  Log Message:
  -----------
  [LLVM][Option] Refactor option name comparison (#108219)

Move common functions shared by TableGen Option Emitter
and Options library to Support:
- Move `StrCmpOptionName` and base it on the existing version
  in OptTable.cpp, with an additional mode to control fall back to
  case insensitive comparison.
- Add `StrCmpOptionPrefixes` to compare prefixes and use zip() to
  iterate through lists of prefixes.
- Rename `CompareOptionRecords` to less ambiguous name 
  `IsOptionRecordLess`.
- Merge 2 back-to-back ifs with same condition in
  `IsOptionRecordLess`.

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


  Commit: 1b913cde2a4e3cf3b180edd0477a8e85f61886ce
      https://github.com/llvm/llvm-project/commit/1b913cde2a4e3cf3b180edd0477a8e85f61886ce
  Author: JOE1994 <joseph942010 at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CodeGenAction.cpp
    M clang/lib/CodeGen/MacroPPCallbacks.cpp
    M clang/lib/CodeGen/SanitizerMetadata.cpp
    M clang/lib/CodeGen/Targets/X86.cpp

  Log Message:
  -----------
  [clang][CodeGen] Strip unneeded calls to raw_string_ostream::str() (NFC)

Try to avoid excess layer of indirection when possible.

p.s. Remove a call to raw_string_ostream::flush() which is a no-op.


  Commit: d2009652ab902d228783b3db848447975441b902
      https://github.com/llvm/llvm-project/commit/d2009652ab902d228783b3db848447975441b902
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

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

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


  Commit: cab1ae9fa2d63b8f0f4bc5e0aa85c53704cb0079
      https://github.com/llvm/llvm-project/commit/cab1ae9fa2d63b8f0f4bc5e0aa85c53704cb0079
  Author: joaosaffran <126493771+joaosaffran at users.noreply.github.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/lib/Headers/CMakeLists.txt
    A clang/lib/Headers/hlsl/hlsl_detail.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    A clang/test/CodeGenHLSL/builtins/asuint.hlsl
    A clang/test/SemaHLSL/BuiltIns/asuint-errors.hlsl

  Log Message:
  -----------
  Adding `asuint`  implementation to hlsl (#107292)

Implements support for the `asuint` HLSL function casting behaviour.
Addressing the `splitdouble` scenario will be addressed in a future PR. 

Fixes: #70097

---------

Co-authored-by: Joao Saffran <jderezende at microsoft.com>
Co-authored-by: Justin Bogner <mail at justinbogner.com>


  Commit: 52b3c360c1cf69c48ba182b833045237af5955c0
      https://github.com/llvm/llvm-project/commit/52b3c360c1cf69c48ba182b833045237af5955c0
  Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsDirectX.td

  Log Message:
  -----------
  [NFC][DirectX] Remove rcp dx intrinsic (#108626)

The code that used the rcp intrinsic was replaced. This change removes
an unused intrinsic.


  Commit: d6d4a48e0e12f2d5b671c60437e7f55e2c5a506f
      https://github.com/llvm/llvm-project/commit/d6d4a48e0e12f2d5b671c60437e7f55e2c5a506f
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.cpp
    M llvm/test/MC/WebAssembly/eh-assembly.s

  Log Message:
  -----------
  [WebAssembly] Add type checking for 'throw' (#108641)

This was previously missing.


  Commit: 7836603062ea9bb519bb68187024a58bb7c2f31b
      https://github.com/llvm/llvm-project/commit/7836603062ea9bb519bb68187024a58bb7c2f31b
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

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

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


  Commit: 9ceb9676678ad979a0b767450855d7852ce6a553
      https://github.com/llvm/llvm-project/commit/9ceb9676678ad979a0b767450855d7852ce6a553
  Author: Henrik G. Olsson <hnrklssn at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    A clang/test/utils/update-verify-tests/Inputs/duplicate-diag.c
    A clang/test/utils/update-verify-tests/Inputs/duplicate-diag.c.expected
    A clang/test/utils/update-verify-tests/Inputs/infer-indentation.c
    A clang/test/utils/update-verify-tests/Inputs/infer-indentation.c.expected
    A clang/test/utils/update-verify-tests/Inputs/leave-existing-diags.c
    A clang/test/utils/update-verify-tests/Inputs/leave-existing-diags.c.expected
    A clang/test/utils/update-verify-tests/Inputs/multiple-errors.c
    A clang/test/utils/update-verify-tests/Inputs/multiple-errors.c.expected
    A clang/test/utils/update-verify-tests/Inputs/multiple-missing-errors-same-line.c
    A clang/test/utils/update-verify-tests/Inputs/multiple-missing-errors-same-line.c.expected
    A clang/test/utils/update-verify-tests/Inputs/no-checks.c
    A clang/test/utils/update-verify-tests/Inputs/no-checks.c.expected
    A clang/test/utils/update-verify-tests/Inputs/no-diags.c
    A clang/test/utils/update-verify-tests/Inputs/no-diags.c.expected
    A clang/test/utils/update-verify-tests/Inputs/no-expected-diags.c
    A clang/test/utils/update-verify-tests/Inputs/no-expected-diags.c.expected
    A clang/test/utils/update-verify-tests/Inputs/non-default-prefix.c
    A clang/test/utils/update-verify-tests/Inputs/non-default-prefix.c.expected
    A clang/test/utils/update-verify-tests/Inputs/update-same-line.c
    A clang/test/utils/update-verify-tests/Inputs/update-same-line.c.expected
    A clang/test/utils/update-verify-tests/Inputs/update-single-check.c
    A clang/test/utils/update-verify-tests/Inputs/update-single-check.c.expected
    A clang/test/utils/update-verify-tests/duplicate-diag.test
    A clang/test/utils/update-verify-tests/infer-indentation.test
    A clang/test/utils/update-verify-tests/leave-existing-diags.test
    A clang/test/utils/update-verify-tests/lit.local.cfg
    A clang/test/utils/update-verify-tests/multiple-errors.test
    A clang/test/utils/update-verify-tests/multiple-missing-errors-same-line.test
    A clang/test/utils/update-verify-tests/no-checks.test
    A clang/test/utils/update-verify-tests/no-diags.test
    A clang/test/utils/update-verify-tests/no-expected-diags.test
    A clang/test/utils/update-verify-tests/non-default-prefix.test
    A clang/test/utils/update-verify-tests/update-same-line.test
    A clang/test/utils/update-verify-tests/update-single-check.test
    A clang/utils/UpdateVerifyTests/core.py
    A clang/utils/update-verify-tests.py

  Log Message:
  -----------
  Reland "[Utils] add update-verify-tests.py" (#108630)" (#108658)

This relands commit d4f41befb7256f8e8378ae358b2b3d802454d6a4 which was
reverted by b7e585b95e241d0506b6f71d53ff5b6e72a9c8f4.

This version ignores differences in line endings in the diff tests to
make sure the tests work as intended on Windows.

Original description below:
Adds a python script to automatically take output from a failed clang
-verify test and update the test case(s) to expect the new behaviour.


  Commit: 00f239e48ab9761a963839e118ee6cc4ee42e531
      https://github.com/llvm/llvm-project/commit/00f239e48ab9761a963839e118ee6cc4ee42e531
  Author: Arteen Abrishami <114886331+arteen1000 at users.noreply.github.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOpBase.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.h
    M mlir/include/mlir/Dialect/Tosa/Transforms/Passes.td
    M mlir/lib/Dialect/Tosa/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/Tosa/Transforms/TosaReduceTransposes.cpp
    A mlir/test/Dialect/Tosa/tosa-reduce-transposes.mlir

  Log Message:
  -----------
  [MLIR][TOSA] Add --tosa-reduce-transposes pass (#108260)

----------
Motivation:
----------

Some legalization pathways introduce redundant tosa.TRANSPOSE
operations that result in avoidable data movement. For example,
PyTorch -> TOSA contains a lot of unnecessary transposes due
to conversions between NCHW and NHWC.

We wish to remove all the ones that we can, since in general
it is possible to remove the overwhelming majority.

------------
Changes Made:
------------

- Add the --tosa-reduce-transposes pass
- Add TosaElementwiseOperator trait.

-------------------
High-Level Overview:
-------------------

The pass works through the transpose operators in the program. It begins
at some
transpose operator with an associated permutations tensor. It traverses
upwards
through the dependencies of this transpose and verifies that we
encounter only
operators with the TosaElementwiseOperator trait and terminate in either
constants, reshapes, or transposes.

We then evaluate whether there are any additional restrictions (the
transposes
it terminates in must invert the one we began at, and the reshapes must
be ones
in which we can fold the transpose into), and then we hoist the
transpose through
the intervening operators, folding it at the constants, reshapes, and
transposes.

Finally, we ensure that we do not need both the transposed form (the
form that
had the transpose hoisted through it) and the untransposed form (which
it was prior),
by analyzing the usages of those dependent operators of a given
transpose we are
attempting to hoist and replace.

If they are such that it would require both forms to be necessary, then
we do not
replace the hoisted transpose, causing the new chain to be dead.
Otherwise, we do
and the old chain (untransposed form) becomes dead. Only one chain will
ever then
be live, resulting in no duplication.

We then perform a simple one-pass DCE, so no canonicalization is
necessary.

--------------
Impact of Pass:
--------------

Patching the dense_resource artifacts (from PyTorch) with dense
attributes to
permit constant folding, we receive the following results.

Note that data movement represents total transpose data movement,
calculated
by noting which dimensions moved during the transpose.

///////////
MobilenetV3:
///////////

BEFORE total data movement: 11798776 B (11.25 MiB)
AFTER total data movement: 2998016 B (2.86 MiB)
74.6% of data movement removed.

BEFORE transposes: 82
AFTER transposes: 20
75.6% of transposes removed.

////////
ResNet18:
////////

BEFORE total data movement: 20596556 B (19.64 MiB)
AFTER total data movement: 1003520 B (0.96 MiB)
95.2% of data movement removed.

BEFORE transposes: 56
AFTER transposes: 5
91.1% of transposes removed.

////////
ResNet50:
////////

BEFORE total data movement: 83236172 B (79.3 MiB)
AFTER total data movement: 3010560 B (2.87 MiB)
96.4% of data movement removed

BEFORE transposes: 120
AFTER transposes: 7
94.2% of transposes removed.

/////////
ResNet101:
/////////

BEFORE total data movement: 124336460 B (118.58 MiB)
AFTER total data movement: 3010560 B (2.87 MiB)
97.6% of data movement removed

BEFORE transposes: 239
AFTER transposes: 7
97.1% of transposes removed.

/////////
ResNet152:
/////////

BEFORE total data movement: 175052108 B (166.94 MiB)
AFTER total data movement: 3010560 B (2.87 MiB)
98.3% of data movement removed

BEFORE transposes: 358
AFTER transposes: 7
98.0% of transposes removed.

////////
Overview:
////////

We see that we remove up to 98% of transposes and eliminate
up to 98.3% of redundant transpose data movement.

In the context of ResNet50, with 120 inferences per second,
we reduce dynamic transpose data bandwidth from 9.29 GiB/s
to 344.4 MiB/s.

-----------
Future Work:
-----------

(1) Evaluate tradeoffs with permitting ConstOp to be duplicated across
hoisted
    transposes with different permutation tensors.

(2) Expand the class of foldable upstream ReshapeOp we permit beyond
    N -> 1x1x...x1xNx1x...x1x1.

(3) Enchance the pass to permit folding arbitrary transpose pairs,
beyond
    those that form the identity.

(4) Add support for more instructions besides TosaElementwiseOperator as
    the intervening ones (for example, the reduce_* operators).

(5) Support hoisting transposes up to an input parameter.

Signed-off-by: Arteen Abrishami <arteen.abrishami at arm.com>


  Commit: 1825cf28dc83113200b623ebcf063eea35ade79a
      https://github.com/llvm/llvm-project/commit/1825cf28dc83113200b623ebcf063eea35ade79a
  Author: hev <wangrui at loongson.cn>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

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

  Log Message:
  -----------
  [LoongArch][sanitizer] Fix SC_ADDRERR_{RD,WR} missing in the musl environment (#108557)

Fixes #108550


  Commit: d32fe95d8286ffdcdc962534becabffdf1e56816
      https://github.com/llvm/llvm-project/commit/d32fe95d8286ffdcdc962534becabffdf1e56816
  Author: Maksim Panchenko <maks at fb.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M bolt/lib/Passes/ADRRelaxationPass.cpp

  Log Message:
  -----------
  [BOLT][AArch64] Do not relax ADR referencing the same fragment (#108673)

ADR can reference a secondary entry point in the same function. If
that's the case, we can skip relaxing the instruction when it is in the
same fragment as its target.

Fixes #108290


  Commit: c0b7f1bb58633edbe12dcacee8e9d2c49163d87c
      https://github.com/llvm/llvm-project/commit/c0b7f1bb58633edbe12dcacee8e9d2c49163d87c
  Author: Job Henandez Lara <hj93 at protonmail.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

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

  Log Message:
  -----------
  [libc][math][c23] add darwin entrypoints for fmul (#108680)


  Commit: 82266d3a2b33f49165c0f24d3db5ea9875cc706c
      https://github.com/llvm/llvm-project/commit/82266d3a2b33f49165c0f24d3db5ea9875cc706c
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicInst.h
    M llvm/lib/Analysis/CtxProfAnalysis.cpp
    M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
    M llvm/test/Transforms/PGOProfile/ctx-instrumentation.ll
    M llvm/unittests/Analysis/CtxProfAnalysisTest.cpp

  Log Message:
  -----------
  [nfc][ctx_prof] Factor the callsite instrumentation exclusion criteria (#108471)

Reusing this in the logic fetching the instrumentation in `CtxProfAnalysis`.


  Commit: 947374c3933b51f7f3acfe365d6ff9b10fb6cda0
      https://github.com/llvm/llvm-project/commit/947374c3933b51f7f3acfe365d6ff9b10fb6cda0
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp

  Log Message:
  -----------
  [IRTranslator] Simplify fixed vector ConstantAggregateZero handling. NFC (#108667)

We don't need to loop through the elements, they're all the same zero.
We can get the first element and create a splat build_vector.


  Commit: f78a48cfaf9d3e616d9bbedd81f68ff159342ffb
      https://github.com/llvm/llvm-project/commit/f78a48cfaf9d3e616d9bbedd81f68ff159342ffb
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp
    M llvm/tools/llvm-objdump/SourcePrinter.cpp
    M llvm/unittests/DebugInfo/DWARF/DWARFExpressionCompactPrinterTest.cpp

  Log Message:
  -----------
  [MC] Use std::optional<MCRegisters> for values returned by MCRegisterInfo::getLLVMRegNum. NFC

I missed a few places when I changed the function return type in
f2b71491d11355c0df0c92ef7cce7d610c894660.


  Commit: d8a8cb9a721a2d00d11df09a849356e981ef6b49
      https://github.com/llvm/llvm-project/commit/d8a8cb9a721a2d00d11df09a849356e981ef6b49
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [Driver] Avoid repeated hash lookups (NFC) (#108676)


  Commit: 8bce263820096d7c7921354b7646fbb6bb1b8cfb
      https://github.com/llvm/llvm-project/commit/8bce263820096d7c7921354b7646fbb6bb1b8cfb
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [NFC][sanitizer] Use nullptr instead of 0


  Commit: 22aeec31b9833df4428f70cb11f789ad203178d8
      https://github.com/llvm/llvm-project/commit/22aeec31b9833df4428f70cb11f789ad203178d8
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/ExprMutationAnalyzer.h

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


  Commit: 20645572e435021c15838cc4ef1cb6b4a50d2e6f
      https://github.com/llvm/llvm-project/commit/20645572e435021c15838cc4ef1cb6b4a50d2e6f
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

  Changed paths:
    M llvm/test/MC/WebAssembly/eh-assembly.s

  Log Message:
  -----------
  [WebAssembly] Add more EH assembly test cases (#108654)

This adds assembly tests for a catch-less `try` and a `try` with a
multivalue return.


  Commit: 390b82dd4c485ec64cf8a6c52fb73e391792262e
      https://github.com/llvm/llvm-project/commit/390b82dd4c485ec64cf8a6c52fb73e391792262e
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-13 (Fri, 13 Sep 2024)

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

  Log Message:
  -----------
  [ADT] Remove DenseMap::{getOrInsertDefault,FindAndConstruct} (#108678)

These functions have been deprecated since:

  commit 59a3b4156836c3ea8589d7a39e7b4712fc8698ec
  Author: Kazu Hirata <kazu at google.com>
  Date:   Tue Sep 3 08:19:45 2024 -0700

  commit 7732d8e51819416b9d28b1815bdf81d0e0642b04
  Author: Kazu Hirata <kazu at google.com>
  Date:   Wed Sep 4 06:51:30 2024 -0700


  Commit: 82034aca30ad8b08aadfe6b6b9048f5cdfa1d3ff
      https://github.com/llvm/llvm-project/commit/82034aca30ad8b08aadfe6b6b9048f5cdfa1d3ff
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaModule.cpp
    M clang/test/CXX/module/module.import/p2.cpp
    M clang/test/Modules/cxx20-10-3-ex1.cpp

  Log Message:
  -----------
  [C++20] [Modules] Warn for importing implementation partition unit in interface units (#108493)

Recently, there are multiple false positive issue reports about the
reachability of implementation partition units:
- https://github.com/llvm/llvm-project/issues/105882
- https://github.com/llvm/llvm-project/issues/101348
- https://lists.isocpp.org/core/2024/08/16232.php

And according to our use experience for modules, we find it is a pretty
good practice to not import implementation partition units in the
interface units. It can help developers to have a pretty good mental
model for when to use an implementation partition unit: that any unit in
the module but not in the module interfaces can be in the implementation
partition unit.

So I think it is good to add the diagnostics.


  Commit: 1d2f7277e695d046efaf2818dd1a4b251ce745fd
      https://github.com/llvm/llvm-project/commit/1d2f7277e695d046efaf2818dd1a4b251ce745fd
  Author: MagentaTreehouse <99200384+MagentaTreehouse at users.noreply.github.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

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

  Log Message:
  -----------
  [clang][Sema] Improve `collectViableConversionCandidates` (#97908)

* Use range-based for
* The value of `Conv` is not used when `ConvTemplate` is not null, so we
do not need to compute it on that path


  Commit: 918972bded27de6a2bfacc15b4ad3edebd81f405
      https://github.com/llvm/llvm-project/commit/918972bded27de6a2bfacc15b4ad3edebd81f405
  Author: JOE1994 <joseph942010 at gmail.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

  Changed paths:
    M clang/tools/clang-refactor/ClangRefactor.cpp
    M clang/tools/driver/cc1gen_reproducer_main.cpp
    M clang/unittests/AST/SourceLocationTest.cpp
    M clang/unittests/AST/TemplateNameTest.cpp
    M clang/unittests/Analysis/ExprMutationAnalyzerTest.cpp
    M clang/unittests/Frontend/OutputStreamTest.cpp
    M clang/unittests/StaticAnalyzer/RangeSetTest.cpp
    M clang/unittests/Tooling/ASTSelectionTest.cpp
    M clang/unittests/Tooling/DiagnosticsYamlTest.cpp
    M clang/unittests/Tooling/RecursiveASTVisitorTestDeclVisitor.cpp
    M clang/unittests/Tooling/RecursiveASTVisitorTests/TemplateArgumentLocTraverser.cpp
    M clang/unittests/Tooling/RefactoringTest.cpp
    M clang/unittests/Tooling/RewriterTestContext.h
    M clang/utils/TableGen/ClangOpenCLBuiltinEmitter.cpp
    M clang/utils/TableGen/MveEmitter.cpp

  Log Message:
  -----------
  [clang] Strip unneeded calls to raw_string_ostream::str() (NFC)

Avoid extra layer of indirection.

p.s.
Also, remove calls to raw_string_ostream::flush(), which are no-ops.


  Commit: 18f1c980bc924b5a4dd4caaf1c30add2f1f99961
      https://github.com/llvm/llvm-project/commit/18f1c980bc924b5a4dd4caaf1c30add2f1f99961
  Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/vni8-across-blocks.ll
    M llvm/test/CodeGen/AMDGPU/agpr-copy-no-free-registers.ll
    M llvm/test/CodeGen/AMDGPU/collapse-endcf.ll
    M llvm/test/CodeGen/AMDGPU/div_i128.ll
    M llvm/test/CodeGen/AMDGPU/indirect-addressing-si.ll
    M llvm/test/CodeGen/AMDGPU/load-global-i16.ll
    M llvm/test/CodeGen/AMDGPU/load-global-i32.ll
    M llvm/test/CodeGen/AMDGPU/mubuf-legalize-operands-non-ptr-intrinsics.ll
    M llvm/test/CodeGen/AMDGPU/mubuf-legalize-operands.ll
    M llvm/test/CodeGen/AMDGPU/preserve-wwm-copy-dst-reg.ll
    M llvm/test/CodeGen/AMDGPU/rem_i128.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-spills-split-regalloc.ll
    M llvm/test/CodeGen/AMDGPU/spill-offset-calculation.ll
    M llvm/test/CodeGen/AMDGPU/spill-scavenge-offset.ll
    A llvm/test/CodeGen/AMDGPU/spill-wait.mir
    M llvm/test/CodeGen/AMDGPU/vni8-across-blocks.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved.ll

  Log Message:
  -----------
  [AMDGPU] Avoid unneeded waitcounts before spill stores (#108303)

Implicit defs and uses on spill stores were accounted as real defs and
uses, while only exist for liveness accounting. As a result unneded
waits were generated.

Fixes: SWDEV-484177


  Commit: 223e2efa5e886502a9467b7ef700ebce9b7886e8
      https://github.com/llvm/llvm-project/commit/223e2efa5e886502a9467b7ef700ebce9b7886e8
  Author: JOE1994 <joseph942010 at gmail.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

  Changed paths:
    M clang/lib/AST/APValue.cpp
    M clang/lib/AST/DeclPrinter.cpp
    M clang/lib/AST/Expr.cpp
    M clang/lib/AST/Mangle.cpp
    M clang/lib/AST/MicrosoftMangle.cpp
    M clang/lib/AST/StmtViz.cpp
    M clang/lib/ASTMatchers/Dynamic/Registry.cpp
    M clang/lib/Analysis/CFG.cpp

  Log Message:
  -----------
  [clang] Nits on uses of raw_string_ostream (NFC)

* Don't call raw_string_ostream::flush(), which is essentially a no-op.
* Strip unneeded calls to raw_string_ostream::str(), to avoid extra indirection.


  Commit: c618a2351479462eae34e21f70127a1fad00f505
      https://github.com/llvm/llvm-project/commit/c618a2351479462eae34e21f70127a1fad00f505
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

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

  Log Message:
  -----------
  [bazel] Add missing dependency for ca4973972bf1306b49413a76f2d0c25c3df711aa


  Commit: c05ebd66e756c2e109addbdaa6197f8699d5b950
      https://github.com/llvm/llvm-project/commit/c05ebd66e756c2e109addbdaa6197f8699d5b950
  Author: Danial Klimkin <dklimkin at google.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

  Changed paths:

  Log Message:
  -----------
  Fix bazel build past ca49739 (#108694)


  Commit: 55ec015c4dc9bb7c39b313c4662daec3b3c6043b
      https://github.com/llvm/llvm-project/commit/55ec015c4dc9bb7c39b313c4662daec3b3c6043b
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

  Changed paths:
    M llvm/docs/RISCVUsage.rst

  Log Message:
  -----------
  [RISCV][Docs] Correct vector crypto note link spelling. NFC


  Commit: a20a97382fa14b62e7b3c9884ffddcd500124cef
      https://github.com/llvm/llvm-project/commit/a20a97382fa14b62e7b3c9884ffddcd500124cef
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

  Changed paths:
    M llvm/lib/Target/X86/AsmParser/X86Operand.h
    M llvm/lib/Target/X86/MCTargetDesc/X86ATTInstPrinter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86BaseInfo.h
    M llvm/lib/Target/X86/MCTargetDesc/X86EncodingOptimization.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86InstComments.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86IntelInstPrinter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86TargetStreamer.h
    M llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFTargetStreamer.cpp

  Log Message:
  -----------
  [X86] Use MCRegister in more places. NFC (#108682)


  Commit: 12086996183c6c1f3e390848b67036a6c826b3fb
      https://github.com/llvm/llvm-project/commit/12086996183c6c1f3e390848b67036a6c826b3fb
  Author: Longsheng Mou <longshengmou at gmail.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

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

  Log Message:
  -----------
  [mlir][transforms] Skip `RemoveDeadValues` for function declaration (#108221)

This patch skips `RemoveDeadValues` if funcOp is declaration, which
fixes a crash.
Fixes #107546.


  Commit: 11f9008daec2b5593dfcc781ee879f93de121da2
      https://github.com/llvm/llvm-project/commit/11f9008daec2b5593dfcc781ee879f93de121da2
  Author: Congcong Cai <congcongcai0907 at 163.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst

  Log Message:
  -----------
  [ast matcher][NFC] fix typo in release note


  Commit: bae275f65ecd27a16743f7b4695940dcfa70b218
      https://github.com/llvm/llvm-project/commit/bae275f65ecd27a16743f7b4695940dcfa70b218
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

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

  Log Message:
  -----------
  [TableGen] Avoid repeated map lookups (NFC) (#108675)


  Commit: 1e4e1ceeebb82dd86d0dc95eb1074b7326b50db3
      https://github.com/llvm/llvm-project/commit/1e4e1ceeebb82dd86d0dc95eb1074b7326b50db3
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

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

  Log Message:
  -----------
  [Target] Avoid repeated hash lookups (NFC) (#108677)


  Commit: fa478bd275f473861f6d4df4896244a730d4853f
      https://github.com/llvm/llvm-project/commit/fa478bd275f473861f6d4df4896244a730d4853f
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

  Changed paths:
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp

  Log Message:
  -----------
  Revert "[lldb] Do not use LC_FUNCTION_STARTS data to determine symbol size as symbols are created" (#108715)

Reverts llvm/llvm-project#106791 because it breaks
`trap_frame_sym_ctx.test ` on x86_64.

https://green.lab.llvm.org/job/llvm.org/view/LLDB/job/lldb-cmake/5745/


  Commit: a578558251450dd5ea0efd40825a87c787e522b8
      https://github.com/llvm/llvm-project/commit/a578558251450dd5ea0efd40825a87c787e522b8
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

  Changed paths:
    M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp

  Log Message:
  -----------
  [ARM] Replace a hardcoded 14 used as an MCRegister index with ARM::LR.

LR is R14, but this data structure is indexed by MCRegister not
encoding. It's in a debug message so I guess no one ever noticed.

Found while auditing places that should use MCRegister.


  Commit: f0c5caa8144307ec59fbafeed1ba37bb3603b00f
      https://github.com/llvm/llvm-project/commit/f0c5caa8144307ec59fbafeed1ba37bb3603b00f
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanValue.h
    M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
    M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-intrinsics-reduction.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-sink-replicate-region.ll
    M llvm/test/Transforms/LoopVectorize/pr36983.ll
    M llvm/test/Transforms/LoopVectorize/pr45259.ll
    M llvm/test/Transforms/LoopVectorize/vplan-printing-before-execute.ll
    M llvm/test/Transforms/LoopVectorize/vplan-printing.ll

  Log Message:
  -----------
  [VPlan] Add VPIRInstruction, use for exit block live-outs. (#100735)

Add a new VPIRInstruction recipe to wrap existing IR instructions not to
be modified during execution, execept for PHIs. For PHIs, a single
VPValue
operand is allowed, and it is used to add a new incoming value for the
single predecessor VPBB. Expect PHIs, VPIRInstructions cannot have any
operands.

Depends on https://github.com/llvm/llvm-project/pull/100658.

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


  Commit: e39205654dc11c50bd117e8ccac243a641ebd71f
      https://github.com/llvm/llvm-project/commit/e39205654dc11c50bd117e8ccac243a641ebd71f
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

  Changed paths:
    M clang-tools-extra/clangd/Diagnostics.cpp
    M clang-tools-extra/clangd/Diagnostics.h
    M clang-tools-extra/clangd/ParsedAST.cpp
    M clang-tools-extra/clangd/Preamble.cpp
    M clang-tools-extra/clangd/unittests/ConfigCompileTests.cpp
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/Diagnostic.h
    M clang/include/clang/Basic/DiagnosticCategories.h
    M clang/include/clang/Basic/DiagnosticIDs.h
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Basic/Diagnostic.cpp
    M clang/lib/Basic/DiagnosticIDs.cpp
    M clang/lib/Frontend/LogDiagnosticPrinter.cpp
    M clang/lib/Frontend/SerializedDiagnosticPrinter.cpp
    M clang/lib/Frontend/TextDiagnosticPrinter.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaCUDA.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/StaticAnalyzer/Core/TextDiagnostics.cpp
    M clang/test/Sema/diagnose_if.c
    A clang/test/SemaCXX/diagnose_if-warning-group.cpp
    M clang/tools/diagtool/ListWarnings.cpp
    M clang/tools/diagtool/ShowEnabledWarnings.cpp
    M clang/tools/libclang/CXStoredDiagnostic.cpp
    M flang/lib/Frontend/TextDiagnosticPrinter.cpp

  Log Message:
  -----------
  Reapply "Reapply "[clang] Extend diagnose_if to accept more detailed warning information (#70976)" (#108453)"

This reverts commit e1bd9740faa62c11cc785a7b70ec1ad17e286bd1.

Fixes incorrect use of the `DiagnosticsEngine` in the clangd tests.


  Commit: cfe3f5fa6104433933e5313cb88dd766b7184ef9
      https://github.com/llvm/llvm-project/commit/cfe3f5fa6104433933e5313cb88dd766b7184ef9
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

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

  Log Message:
  -----------
  [VPlan] Remove unneeded ExitBB variable after f0c5caa814.

Fix buildbot failures due to an unused variable, e.g.
https://lab.llvm.org/buildbot/#/builders/186/builds/2329


  Commit: f66509bf524aaa7008591f7b8a0a32e239d59c01
      https://github.com/llvm/llvm-project/commit/f66509bf524aaa7008591f7b8a0a32e239d59c01
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

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

  Log Message:
  -----------
  [VPlan] Clarify comment for replaceVPBBWithIRVPBB and add assert (NFCI).

Follow-up to suggestion during
https://github.com/llvm/llvm-project/pull/100735.

More specifically
https://github.com/llvm/llvm-project/pull/100735/files/9a40ed0919bad7fb79123317267d3eb36ff2c582#diff-6d0b73adfa9f8465923d2225ab6674ddcdeab71666f7a73dfaec7fa1246b3a1f


  Commit: 7d11f5249c8068851270e94ac02c180e7b83590d
      https://github.com/llvm/llvm-project/commit/7d11f5249c8068851270e94ac02c180e7b83590d
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticIDs.h
    M clang/lib/Sema/SemaOverload.cpp

  Log Message:
  -----------
  [clang] Silence GCC warnings about control reaching end of non void function

This fixes GCC warnings since
e39205654dc11c50bd117e8ccac243a641ebd71f.


  Commit: a205a854e06d36c1d0def3e3bc3743defdb6abc1
      https://github.com/llvm/llvm-project/commit/a205a854e06d36c1d0def3e3bc3743defdb6abc1
  Author: Job Henandez Lara <hj93 at protonmail.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

  Changed paths:
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/fmul.cpp
    M libc/test/src/math/fmul_test.cpp
    M libc/test/src/math/performance_testing/CMakeLists.txt
    M libc/test/src/math/performance_testing/fmul_perf.cpp
    M libc/test/src/math/smoke/fmul_test.cpp

  Log Message:
  -----------
  [libc][math] Improve fmul performance by using double-double arithmetic. (#107517)

```
 Performance tests with inputs in denormal range:
-- My function --
     Total time      : 2731072304 ns 
     Average runtime : 68.2767 ns/op 
     Ops per second  : 14646276 op/s 
-- Other function --
     Total time      : 3259744268 ns 
     Average runtime : 81.4935 ns/op 
     Ops per second  : 12270913 op/s 
-- Average runtime ratio --
     Mine / Other's  : 0.837818 

 Performance tests with inputs in normal range:
-- My function --
     Total time      : 93467258 ns 
     Average runtime : 2.33668 ns/op 
     Ops per second  : 427957777 op/s 
-- Other function --
     Total time      : 637295452 ns 
     Average runtime : 15.9324 ns/op 
     Ops per second  : 62765299 op/s 
-- Average runtime ratio --
     Mine / Other's  : 0.146662 

 Performance tests with inputs in normal range with exponents close to each other:
-- My function --
     Total time      : 95764894 ns 
     Average runtime : 2.39412 ns/op 
     Ops per second  : 417690014 op/s 
-- Other function --
     Total time      : 639866770 ns 
     Average runtime : 15.9967 ns/op 
     Ops per second  : 62513075 op/s 
-- Average runtime ratio --
     Mine / Other's  : 0.149664 
```

---------

Co-authored-by: Tue Ly <lntue at google.com>


  Commit: 367c145e5fcfa36becca183e6ab9e7688afadc26
      https://github.com/llvm/llvm-project/commit/367c145e5fcfa36becca183e6ab9e7688afadc26
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    A llvm/test/CodeGen/RISCV/GlobalISel/irtranslator/splat_vector.ll

  Log Message:
  -----------
  [IRTranslator][RISCV] Support scalable vector zeroinitializer. (#108666)


  Commit: f427028d62d27b440e1c2821b4781ddb399b61db
      https://github.com/llvm/llvm-project/commit/f427028d62d27b440e1c2821b4781ddb399b61db
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

  Changed paths:
    M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMBaseInfo.h
    M llvm/lib/Target/ARM/MCTargetDesc/ARMInstPrinter.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp

  Log Message:
  -----------
  [ARM] Use MCRegister in more places. NFC


  Commit: a9e05a36dbbbfc549434427fdde346c107500def
      https://github.com/llvm/llvm-project/commit/a9e05a36dbbbfc549434427fdde346c107500def
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

  Changed paths:
    M llvm/include/llvm/MC/MCStreamer.h
    M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
    M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMTargetStreamer.cpp

  Log Message:
  -----------
  [ARM] Use MCRegister for ARMTargetStreamer::emitRegSave. NFC


  Commit: b78d4c1fd9c7106a8c5b09e3553d14b513ecb075
      https://github.com/llvm/llvm-project/commit/b78d4c1fd9c7106a8c5b09e3553d14b513ecb075
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

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

  Log Message:
  -----------
  [NFC][sanitizer] Clang-format sanitizer_common_nolibc.cpp


  Commit: 7005772e453423e424f49f04d1f5dd96acc08249
      https://github.com/llvm/llvm-project/commit/7005772e453423e424f49f04d1f5dd96acc08249
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

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

  Log Message:
  -----------
  [NFC][sanitizer] Clang format sanitizer_linux_test.cpp


  Commit: c21909a530f438bcc942c11e6d7b875bb28a028a
      https://github.com/llvm/llvm-project/commit/c21909a530f438bcc942c11e6d7b875bb28a028a
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

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

  Log Message:
  -----------
  [NFC][sanitizer] Simplify ifdef


  Commit: cebc130737927d385aabde213e9f5da775e0d65f
      https://github.com/llvm/llvm-project/commit/cebc130737927d385aabde213e9f5da775e0d65f
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.cpp

  Log Message:
  -----------
  [RISCV] Remove unneeded check for NoRegister from RISCVInstPrinter::printRegReg. NFC

The operand should never be NoRegister.


  Commit: 00c0b1ae20358a9e55ff8eda20c4e0546ee81b5b
      https://github.com/llvm/llvm-project/commit/00c0b1ae20358a9e55ff8eda20c4e0546ee81b5b
  Author: Kyungwoo Lee <kyulee at meta.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

  Changed paths:
    M lld/MachO/Config.h
    M lld/MachO/Driver.cpp
    M lld/MachO/InputSection.h
    M lld/MachO/Options.td
    M lld/test/CMakeLists.txt
    A lld/test/MachO/cgdata-generate.s
    M lld/test/lit.cfg.py

  Log Message:
  -----------
  [CGData] LLD for MachO (#90166)

It reads raw CG data encoded in the custom section (__llvm_outline) in
object files and merges them into the indexed codegen data file
specified by `-codegen-data-generate-path={path}`.

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


  Commit: 9de260364b9902173ae8f8fa20157013c24b12d4
      https://github.com/llvm/llvm-project/commit/9de260364b9902173ae8f8fa20157013c24b12d4
  Author: Kyungwoo Lee <kyulee at fb.com>
  Date:   2024-09-14 (Sat, 14 Sep 2024)

  Changed paths:
    M lld/MachO/Config.h
    M lld/MachO/Driver.cpp
    M lld/MachO/InputSection.h
    M lld/MachO/Options.td
    M lld/test/CMakeLists.txt
    R lld/test/MachO/cgdata-generate.s
    M lld/test/lit.cfg.py

  Log Message:
  -----------
  Revert "[CGData] LLD for MachO (#90166)"

This reverts commit 00c0b1ae20358a9e55ff8eda20c4e0546ee81b5b.


  Commit: 9fc789d922ddf1c849f62bdfbe034f3cd9354967
      https://github.com/llvm/llvm-project/commit/9fc789d922ddf1c849f62bdfbe034f3cd9354967
  Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M clang/lib/Driver/Driver.cpp
    M clang/test/Driver/hip-cuid-hash.hip

  Log Message:
  -----------
  [HIP] Use original file path for CUID (#107734)

to avoid being nondeterministic due to random path in distributed build.


  Commit: a75565a684feaed48cf92284c5901aaa08fd91ad
      https://github.com/llvm/llvm-project/commit/a75565a684feaed48cf92284c5901aaa08fd91ad
  Author: JOE1994 <joseph942010 at gmail.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M llvm/lib/ExecutionEngine/MCJIT/MCJIT.cpp
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/JITLoaderPerf.cpp
    M llvm/lib/ExecutionEngine/PerfJITEvents/PerfJITEventListener.cpp
    M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldChecker.cpp
    M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp
    M llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFThumb.h

  Log Message:
  -----------
  [llvm][ExecutionEngine] Strip unneeded calls to raw_string_ostream::str() (NFC)

Avoid excess layer of indirection.


  Commit: b07730b982c37b852a434292260af6800883fec7
      https://github.com/llvm/llvm-project/commit/b07730b982c37b852a434292260af6800883fec7
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M libcxx/include/__compare/ordering.h

  Log Message:
  -----------
  [libc++] Check explicit values in the partial_ordering comparators for better code gen (#81366)

This allows the compiler to check for specific bit patterns instead of
value ranges.


  Commit: cc96ce831cda8f70897926fdce6a83519fe5b31e
      https://github.com/llvm/llvm-project/commit/cc96ce831cda8f70897926fdce6a83519fe5b31e
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

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

  Log Message:
  -----------
  [CodeGen] Avoid repeated hash lookup (NFC) (#108735)


  Commit: 56f061f71b66a01a7f89069873f9c6dcda82b044
      https://github.com/llvm/llvm-project/commit/56f061f71b66a01a7f89069873f9c6dcda82b044
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

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

  Log Message:
  -----------
  [TableGen] Avoid repeated hash lookups (NFC) (#108736)


  Commit: ddca79aaee9b31b4e97f6cbf4361b75ef075c8fd
      https://github.com/llvm/llvm-project/commit/ddca79aaee9b31b4e97f6cbf4361b75ef075c8fd
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M llvm/lib/DWARFLinker/Parallel/OutputSections.h

  Log Message:
  -----------
  [DWARFLinker] Avoid repeated hash lookups (NFC) (#108737)


  Commit: ba7a0b725c67e9c3a31f5ffedb6fbe4c5237ac56
      https://github.com/llvm/llvm-project/commit/ba7a0b725c67e9c3a31f5ffedb6fbe4c5237ac56
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M clang/lib/Frontend/Rewrite/RewriteObjC.cpp

  Log Message:
  -----------
  [Frontend] Avoid repeated hash lookups (NFC) (#108738)


  Commit: 4b27b5800f8c94ec010213e2a4ddf552cc282bce
      https://github.com/llvm/llvm-project/commit/4b27b5800f8c94ec010213e2a4ddf552cc282bce
  Author: JOE1994 <joseph942010 at gmail.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M lld/COFF/Chunks.cpp
    M lld/COFF/DriverUtils.cpp
    M lld/COFF/SymbolTable.cpp
    M lld/ELF/Driver.cpp
    M lld/ELF/Thunks.cpp
    M lld/ELF/Writer.cpp
    M lld/MachO/Driver.cpp
    M lld/wasm/OutputSections.cpp
    M lld/wasm/SyntheticSections.cpp
    M lld/wasm/SyntheticSections.h
    M lld/wasm/Writer.cpp

  Log Message:
  -----------
  [lld] Nits on uses of raw_string_ostream (NFC)

* Don't call raw_string_ostream::flush(), which is essentially a no-op.
* Strip calls to raw_string_ostream::str(), to avoid excess layer of indirection.


  Commit: 012dbec604c99a8f144c4d19357e61b65d2a7b78
      https://github.com/llvm/llvm-project/commit/012dbec604c99a8f144c4d19357e61b65d2a7b78
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    A llvm/test/Transforms/LoopVectorize/AArch64/force-target-instruction-cost.ll

  Log Message:
  -----------
  [VPlan] Handle ForceTargetInstructionCost in during precomputeCosts.

Make sure ForceTargetInstruction is respected in precomputeCosts.


  Commit: 86f0399c1fdec80c34e22821607696a485857421
      https://github.com/llvm/llvm-project/commit/86f0399c1fdec80c34e22821607696a485857421
  Author: c8ef <c8ef at outlook.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    A llvm/test/Transforms/InstCombine/fp-floor-ceil.ll

  Log Message:
  -----------
  [InstCombine] Fold expression using basic properties of floor and ceiling function (#107107)

alive2: ~~https://alive2.llvm.org/ce/z/Ag3Ki7~~
https://alive2.llvm.org/ce/z/ywP5t2
related: #76438

This patch adds the following foldings: `floor(x) <= x --> true` and `x
<= ceil(x) --> true`. We leverage the properties of these math functions
and ensure there is no floating point input of `nan`.

---------

Co-authored-by: Yingwei Zheng <dtcxzyw at qq.com>


  Commit: ba8e4246e2f17030788e8a4954bf5c290332206f
      https://github.com/llvm/llvm-project/commit/ba8e4246e2f17030788e8a4954bf5c290332206f
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M llvm/lib/Target/X86/MCTargetDesc/X86InstComments.cpp
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/lib/Target/X86/X86InstrSSE.td
    M llvm/test/CodeGen/X86/evex-to-vex-compress.mir
    M llvm/utils/TableGen/X86ManualFoldTables.def

  Log Message:
  -----------
  [X86] Add missing immediate qualifier to the (V)INSERTPS instruction names (#108568)

Matches (V)BLENDPS etc and makes it easier to algorithmically recreate the instruction name in various analysis scripts I'm working on


  Commit: 87663fdab9d0e7bcc0b963ea078da9e2eb574908
      https://github.com/llvm/llvm-project/commit/87663fdab9d0e7bcc0b963ea078da9e2eb574908
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Transforms/VectorCombine/AArch64/shrink-types.ll

  Log Message:
  -----------
   [VectorCombine] Don't shrink lshr if the shamt is not less than bitwidth (#108705)

Consider the following case:
```
define <2 x i32> @test(<2 x i64> %vec.ind16, <2 x i32> %broadcast.splat20) {
  %19 = icmp eq <2 x i64> %vec.ind16, zeroinitializer
  %20 = zext <2 x i1> %19 to <2 x i32>
  %21 = lshr <2 x i32> %20, %broadcast.splat20
  ret <2 x i32> %21
}
```
After https://github.com/llvm/llvm-project/pull/104606, we shrink the
lshr into:
```
define <2 x i32> @test(<2 x i64> %vec.ind16, <2 x i32> %broadcast.splat20) {
  %1 = icmp eq <2 x i64> %vec.ind16, zeroinitializer
  %2 = trunc <2 x i32> %broadcast.splat20 to <2 x i1>
  %3 = lshr <2 x i1> %1, %2
  %4 = zext <2 x i1> %3 to <2 x i32>
  ret <2 x i32> %4
}
```
It is incorrect since `lshr i1 X, 1` returns `poison`.
This patch adds additional check on the shamt operand. The lshr will get
shrunk iff we ensure that the shamt is less than bitwidth of the smaller
type. As `computeKnownBits(&I, *DL).countMaxActiveBits() > BW` always
evaluates to true for `lshr(zext(X), Y)`, this check will only apply to
bitwise logical instructions.

Alive2: https://alive2.llvm.org/ce/z/j_RmTa
Fixes https://github.com/llvm/llvm-project/issues/108698.


  Commit: 614a064cac4f8d0e9c53fafd7876a71be84b8610
      https://github.com/llvm/llvm-project/commit/614a064cac4f8d0e9c53fafd7876a71be84b8610
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M llvm/lib/Target/X86/GISel/X86InstructionSelector.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86InstComments.cpp
    M llvm/lib/Target/X86/X86CompressEVEX.cpp
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/lib/Target/X86/X86InstrSSE.td
    M llvm/lib/Target/X86/X86ReplaceableInstrs.def
    M llvm/lib/Target/X86/X86SchedAlderlakeP.td
    M llvm/lib/Target/X86/X86SchedBroadwell.td
    M llvm/lib/Target/X86/X86SchedHaswell.td
    M llvm/lib/Target/X86/X86SchedSandyBridge.td
    M llvm/lib/Target/X86/X86SchedSapphireRapids.td
    M llvm/lib/Target/X86/X86SchedSkylakeClient.td
    M llvm/lib/Target/X86/X86SchedSkylakeServer.td
    M llvm/lib/Target/X86/X86ScheduleBdVer2.td
    M llvm/lib/Target/X86/X86ScheduleBtVer2.td
    M llvm/lib/Target/X86/X86ScheduleZnver1.td
    M llvm/lib/Target/X86/X86ScheduleZnver2.td
    M llvm/lib/Target/X86/X86ScheduleZnver3.td
    M llvm/lib/Target/X86/X86ScheduleZnver4.td
    M llvm/test/CodeGen/X86/GlobalISel/select-extract-vec256.mir
    M llvm/test/CodeGen/X86/GlobalISel/select-extract-vec512.mir
    M llvm/test/CodeGen/X86/GlobalISel/select-insert-vec256.mir
    M llvm/test/CodeGen/X86/GlobalISel/select-insert-vec512.mir
    M llvm/test/CodeGen/X86/GlobalISel/select-merge-vec256.mir
    M llvm/test/CodeGen/X86/GlobalISel/select-merge-vec512.mir
    M llvm/test/CodeGen/X86/GlobalISel/select-unmerge-vec256.mir
    M llvm/test/CodeGen/X86/GlobalISel/select-unmerge-vec512.mir
    M llvm/test/CodeGen/X86/evex-to-vex-compress.mir
    M llvm/test/CodeGen/X86/opt_phis2.mir
    M llvm/test/TableGen/x86-fold-tables.inc
    M llvm/utils/TableGen/X86ManualFoldTables.def
    M llvm/utils/TableGen/X86ManualInstrMapping.def

  Log Message:
  -----------
  [X86] Add missing immediate qualifier to the (V)INSERT/EXTRACT/PERM2 instruction names (#108593)

Makes it easier to algorithmically recreate the instruction name in various analysis scripts I'm working on


  Commit: 5910e8d6075648d941c5723eab856c58857e345d
      https://github.com/llvm/llvm-project/commit/5910e8d6075648d941c5723eab856c58857e345d
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

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

  Log Message:
  -----------
  [DAG] visitUDIV - call SimplifyDemandedBits to handle hidden constant foldable cases

Fixes #108728


  Commit: 8837898b8dc34cfa21ba877832a5865af06f52c9
      https://github.com/llvm/llvm-project/commit/8837898b8dc34cfa21ba877832a5865af06f52c9
  Author: Robert Dazi <14996868+v01dXYZ at users.noreply.github.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/SDPatternMatch.h
    M llvm/include/llvm/IR/VPIntrinsics.def
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    A llvm/test/CodeGen/AArch64/ctlo.ll
    M llvm/test/CodeGen/LoongArch/ctlz-cttz-ctpop.ll
    M llvm/test/CodeGen/RISCV/rvv/ctlz-vp.ll
    M llvm/test/CodeGen/X86/ctlo.ll
    M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp

  Log Message:
  -----------
  [DAGCombine] Count leading ones: refine post DAG/Type Legalisation if promotion (#102877)

This PR is related to #99591. In this PR, instead of modifying how the
legalisation occurs depending on surrounding instructions, we refine
after legalisation.

This PR has two parts:

* `SDPatternMatch/MatchContext`: Modify a little bit the code to match
Operands (used by `m_Node(...)`) and Unary/Binary/Ternary Patterns to
make it compatible with `VPMatchContext`, instead of only `m_Opc`
supported. Some tests were added to ensure no regressions.
* `DAGCombiner`: Add a `foldSubCtlzNot` which detect and rewrite the
patterns using matching context.

Remaining Tasks:

- [ ] GlobalISel
- [ ] Currently the pattern matching will occur even before
legalisation. Should I restrict it to specific stages instead ?
- [ ] Style: Add a visitVP_SUB ?? Move `foldSubCtlzNot` in another
location for style consistency purpose ?

@topperc

---------

Co-authored-by: v01dxyz <v01dxyz at v01d.xyz>


  Commit: 3ae71d154e5dfb5e5a5d27b3699b27ce2b55f44d
      https://github.com/llvm/llvm-project/commit/3ae71d154e5dfb5e5a5d27b3699b27ce2b55f44d
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M llvm/include/llvm/TableGen/Record.h
    M llvm/lib/TableGen/Record.cpp
    M llvm/utils/TableGen/Common/CodeGenSchedule.cpp
    M llvm/utils/TableGen/Common/CodeGenSchedule.h
    M llvm/utils/TableGen/Common/Utils.cpp
    M llvm/utils/TableGen/Common/Utils.h
    M llvm/utils/TableGen/DFAPacketizerEmitter.cpp
    M llvm/utils/TableGen/SubtargetEmitter.cpp

  Log Message:
  -----------
  [LLVM][TableGen] Change CodeGenSchedule to use const RecordKeeper (#108617)

Change CodeGenSchedule to use const RecordKeeper.

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


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


  Commit: c49a1ae6d6ab274e573746c2ad29790ab98a7c62
      https://github.com/llvm/llvm-project/commit/c49a1ae6d6ab274e573746c2ad29790ab98a7c62
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp

  Log Message:
  -----------
  DAG: Reorder isFMAFasterThanFMulAndFAdd checks (NFC)

Basic legality checks should be first.


  Commit: a56ca1a0fb248c6f38b5841323a74673748f43ea
      https://github.com/llvm/llvm-project/commit/a56ca1a0fb248c6f38b5841323a74673748f43ea
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

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

  Log Message:
  -----------
  [clang][codegen] Fix possible crash when setting TBAA metadata on FP math libcalls (#108575)

There's currently no code path that can reach this crash, but:

```
Instruction *Inst = cast<llvm::Instruction>(Call.getScalarVal());
```

fails if the call returns `void`. This could happen if a builtin for
something like `void sincos(double, double*, double*)` is added to
clang.

Instead, use the `llvm::CallBase` returned from `EmitCall()` to set the
TBAA metadata, which should exist no matter the return type.


  Commit: 7048857f52005810a2d8f43e52e659bfd6342521
      https://github.com/llvm/llvm-project/commit/7048857f52005810a2d8f43e52e659bfd6342521
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Target/X86/X86InstrSSE.td
    M llvm/lib/Target/X86/X86ReplaceableInstrs.def
    M llvm/lib/Target/X86/X86SchedAlderlakeP.td
    M llvm/lib/Target/X86/X86SchedIceLake.td
    M llvm/lib/Target/X86/X86SchedSandyBridge.td
    M llvm/lib/Target/X86/X86SchedSapphireRapids.td
    M llvm/lib/Target/X86/X86ScheduleZnver1.td
    M llvm/lib/Target/X86/X86ScheduleZnver2.td
    M llvm/test/CodeGen/X86/evex-to-vex-compress.mir
    M llvm/test/CodeGen/X86/vmaskmov-offset.ll
    M llvm/test/TableGen/x86-fold-tables.inc

  Log Message:
  -----------
  [X86] Add missing immediate qualifier to the (V)EXTRACTPS instruction names

Makes it easier to algorithmically recreate the instruction name in various analysis scripts I'm working on


  Commit: 1e33bd2031a6d0f61d4b0ba82bf416e7ace3b9ce
      https://github.com/llvm/llvm-project/commit/1e33bd2031a6d0f61d4b0ba82bf416e7ace3b9ce
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Target/X86/X86InstrMMX.td
    M llvm/lib/Target/X86/X86InstrSSE.td
    M llvm/lib/Target/X86/X86ReplaceableInstrs.def
    M llvm/lib/Target/X86/X86SchedAlderlakeP.td
    M llvm/lib/Target/X86/X86SchedSapphireRapids.td
    M llvm/test/CodeGen/X86/evex-to-vex-compress.mir
    M llvm/test/CodeGen/X86/opt_phis2.mir
    M llvm/test/TableGen/x86-fold-tables.inc

  Log Message:
  -----------
  [X86] Add missing immediate qualifier to the (V)PINSR/PEXTR instruction names

Makes it easier to algorithmically recreate the instruction name in various analysis scripts I'm working on


  Commit: f4763b3d24546808720ff457761159b4e1605876
      https://github.com/llvm/llvm-project/commit/f4763b3d24546808720ff457761159b4e1605876
  Author: Kyungwoo Lee <kyulee at meta.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M lld/MachO/CMakeLists.txt
    M lld/MachO/Config.h
    M lld/MachO/Driver.cpp
    M lld/MachO/InputSection.h
    M lld/MachO/Options.td
    M lld/test/CMakeLists.txt
    A lld/test/MachO/cgdata-generate.s
    M lld/test/lit.cfg.py

  Log Message:
  -----------
  Reland [CGData] LLD for MachO #90166 (#108733)

It reads raw CG data encoded in the custom section (__llvm_outline) in
object files and merges them into the indexed codegen data file
specified by -codegen-data-generate-path={path}.

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


  Commit: 8783bd5faa87a52e322d822b7a26d58ae2d19f60
      https://github.com/llvm/llvm-project/commit/8783bd5faa87a52e322d822b7a26d58ae2d19f60
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M llvm/utils/TableGen/AsmMatcherEmitter.cpp
    M llvm/utils/TableGen/AsmWriterEmitter.cpp
    M llvm/utils/TableGen/Common/CodeGenInstAlias.cpp
    M llvm/utils/TableGen/Common/CodeGenInstAlias.h

  Log Message:
  -----------
  [LLVM][TableGen] Change CodeGenInstAlias to use const Record pointers (#108753)

Change CodeGenInstAlias to use const Record pointers.

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


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


  Commit: 43f044ba7ea2cd668805c01055eb2dff70532ba3
      https://github.com/llvm/llvm-project/commit/43f044ba7ea2cd668805c01055eb2dff70532ba3
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M llvm/utils/TableGen/AsmWriterEmitter.cpp
    M llvm/utils/TableGen/Common/CodeGenTarget.cpp
    M llvm/utils/TableGen/Common/CodeGenTarget.h
    M llvm/utils/TableGen/RegisterInfoEmitter.cpp

  Log Message:
  -----------
  [LLVM][TableGen] Change CodeGenTarget to use const RecordKeeper (#108752)

Change CodeGenTarget to use const RecordKeeper.

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


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


  Commit: 4e09d7bc2ce492c4fc281cfbaf8caa81a76a6a10
      https://github.com/llvm/llvm-project/commit/4e09d7bc2ce492c4fc281cfbaf8caa81a76a6a10
  Author: dyung <douglas.yung at sony.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M clang/lib/Driver/Driver.cpp
    M clang/test/Driver/hip-cuid-hash.hip

  Log Message:
  -----------
  Revert "[HIP] Use original file path for CUID" (#108771)

Reverts llvm/llvm-project#107734

The test modified in this commit, hip-cuid-hash.hip is failing on MacOS:
- https://lab.llvm.org/buildbot/#/builders/190/builds/5764
- https://lab.llvm.org/buildbot/#/builders/23/builds/3020


  Commit: 508e734e33a278ecab2306a5fc7e37920cc51dac
      https://github.com/llvm/llvm-project/commit/508e734e33a278ecab2306a5fc7e37920cc51dac
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

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

  Log Message:
  -----------
  [CodeGen] Use DenseMapInfo<Register> to implement DenseMapInfo<TargetInstrInfo::RegSubRegPair>. NFC

Instead of casting Register to unsigned to use DenseMapInfo<unsigned>.


  Commit: 2f48178825686283adc6903aae3626cff8d9797c
      https://github.com/llvm/llvm-project/commit/2f48178825686283adc6903aae3626cff8d9797c
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

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

  Log Message:
  -----------
  [VirtRegMap] Use Register for Virt2ShapeMap key. NFC


  Commit: 23953798f3cf5d292947ca4e6e46db25921acd5e
      https://github.com/llvm/llvm-project/commit/23953798f3cf5d292947ca4e6e46db25921acd5e
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/VirtRegMap.h
    M llvm/lib/CodeGen/VirtRegMap.cpp

  Log Message:
  -----------
  [VirtRegMap] Remove unnecessary calls to Register::id() accessing IndexMaps.

VirtReg2IndexFunctor already takes a Register.


  Commit: 87e8b53009f11033e6e6af0ccb3a97fae615526a
      https://github.com/llvm/llvm-project/commit/87e8b53009f11033e6e6af0ccb3a97fae615526a
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.h
    M llvm/utils/TableGen/Common/CodeGenTarget.cpp
    M llvm/utils/TableGen/Common/CodeGenTarget.h
    M llvm/utils/TableGen/DAGISelMatcherEmitter.cpp
    M llvm/utils/TableGen/DAGISelMatcherGen.cpp

  Log Message:
  -----------
  [LLVM][TableGen] Change CodeGenDAGPatterns to use const RecordKeeper (#108762)

Change CodeGenDAGPatterns to use const RecordKeeper.

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


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


  Commit: 8e00afcfdd7245236fba40e7158034228b7035e9
      https://github.com/llvm/llvm-project/commit/8e00afcfdd7245236fba40e7158034228b7035e9
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M llvm/utils/TableGen/Common/CodeGenSchedule.h
    M llvm/utils/TableGen/SubtargetEmitter.cpp

  Log Message:
  -----------
  [LLVM][TableGen] Change SubtargetEmitter to use const RecordKeeper (#108763)

Change SubtargetEmitter to use const RecordKeeper.

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


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


  Commit: e523f4e2c3e20a843aeb79c412c1e8b3e90b96a3
      https://github.com/llvm/llvm-project/commit/e523f4e2c3e20a843aeb79c412c1e8b3e90b96a3
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

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

  Log Message:
  -----------
  [VirtRegMap] Store Register in Virt2SplitMap. NFC


  Commit: 00e4575c67ac26102b98cf14c83a1ace4f816d43
      https://github.com/llvm/llvm-project/commit/00e4575c67ac26102b98cf14c83a1ace4f816d43
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M llvm/include/llvm/Transforms/Instrumentation/CFGMST.h

  Log Message:
  -----------
  [Instrumentation] Remove extraneous std::move (NFC) (#108764)


  Commit: 8965795ed8bdea31e25463eceb9eb20c081dd50d
      https://github.com/llvm/llvm-project/commit/8965795ed8bdea31e25463eceb9eb20c081dd50d
  Author: Robin Caloudis <robin.caloudis at gmx.de>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M libcxx/utils/ci/docker-compose.yml

  Log Message:
  -----------
  [libc++][CI] Upgrade LLVM HEAD version in Docker image (#108774)

Before changing the compiler version in
https://github.com/llvm/llvm-project/pull/108761, we first of all need
to upgrade the HEAD version to `Clang-20` in the Docker files and push
new builder images to the CI.


  Commit: 76b54df87a860c20ac68e4ed1d766b545d412c1e
      https://github.com/llvm/llvm-project/commit/76b54df87a860c20ac68e4ed1d766b545d412c1e
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

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

  Log Message:
  -----------
  [StackSlotColoring] Use Register for isLoadFromStackSlot/isStoreToStackSlot result. NFC


  Commit: 6749f2bbfed4cc4877aced3947c191f979d9434d
      https://github.com/llvm/llvm-project/commit/6749f2bbfed4cc4877aced3947c191f979d9434d
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/opaque-ptr.ll

  Log Message:
  -----------
  [LV] Add pointer induction test variant with inbounds, remove TODO.

The function doesn't crash any more with inbounds, add a variant with
inbounds.


  Commit: a5b63b5cb70cae2ad7c35f70bd8ecb57ce20b797
      https://github.com/llvm/llvm-project/commit/a5b63b5cb70cae2ad7c35f70bd8ecb57ce20b797
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/Register.h
    M llvm/include/llvm/CodeGen/VirtRegMap.h
    M llvm/include/llvm/MC/MCRegister.h
    M llvm/lib/CodeGen/VirtRegMap.cpp
    M llvm/lib/Target/AMDGPU/SILowerWWMCopies.cpp
    M llvm/lib/Target/X86/X86TileConfig.cpp

  Log Message:
  -----------
  [VirtRegMap] Store MCRegister in Virt2PhysMap. (#108775)

Remove NO_PHYS_REG in favor of MCRegister() and converting MCRegister to
bool.


  Commit: d044732a25f3e67a466a2584fa546bb3cfd8f03e
      https://github.com/llvm/llvm-project/commit/d044732a25f3e67a466a2584fa546bb3cfd8f03e
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

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

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


  Commit: 0098cee45c3c08e2f732bfa088e16d0fe566adcc
      https://github.com/llvm/llvm-project/commit/0098cee45c3c08e2f732bfa088e16d0fe566adcc
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

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

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


  Commit: 40e8e4ddcb7d48f404223e863e5db38fff75cad2
      https://github.com/llvm/llvm-project/commit/40e8e4ddcb7d48f404223e863e5db38fff75cad2
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M lld/ELF/Config.h
    M lld/ELF/Driver.cpp
    M lld/ELF/ICF.cpp
    M lld/ELF/InputSection.h
    M lld/ELF/LinkerScript.cpp
    M lld/ELF/MarkLive.cpp
    M lld/ELF/Relocations.cpp
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h
    M lld/ELF/Writer.cpp

  Log Message:
  -----------
  [ELF] Move partitions into ctx. NFC

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


  Commit: 713a2029578eb36a29793105948d8e4fe965da18
      https://github.com/llvm/llvm-project/commit/713a2029578eb36a29793105948d8e4fe965da18
  Author: Kyungwoo Lee <kyulee at meta.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M clang/docs/UsersManual.rst
    M clang/include/clang/Driver/Options.td
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/Darwin.cpp
    A clang/test/Driver/codegen-data.c

  Log Message:
  -----------
  [CGData] Clang Options (#90304)

This adds new Clang flags to support codegen (CG) data:
- `-fcodegen-data-generate{=path}`: This flag passes
`-codegen-data-generate` as a boolean to the LLVM backend, causing the
raw CG data to be emitted into a custom section. Currently, for LLD
MachO only, it also passes `--codegen-data-generate-path=<path>` so that
the indexed CG data file can be automatically produced at link time. For
linkers that do not yet support this feature, `llvm-cgdata` can be used
manually to merge this CG data in object files.
- `-fcodegen-data-use{=path}`: This flag passes
`-codegen-data-use-path=<path>` to the LLVM backend, enabling the use of
specified CG data to optimistically outline functions.
 - The default `<path>` is set to `default.cgdata` when not specified.
 
This depends on https://github.com/llvm/llvm-project/pull/108733.
This is a patch for
https://discourse.llvm.org/t/rfc-enhanced-machine-outliner-part-2-thinlto-nolto/78753.


  Commit: 1c378d2b145578948942512f9d6985e37659d013
      https://github.com/llvm/llvm-project/commit/1c378d2b145578948942512f9d6985e37659d013
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/cmp-shiftX-maskX.ll

  Log Message:
  -----------
  [X86] Add test for issue 108722; NFC


  Commit: 81279bf97f187eee0446af00d8ae9ec32a22e878
      https://github.com/llvm/llvm-project/commit/81279bf97f187eee0446af00d8ae9ec32a22e878
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/cmp-shiftX-maskX.ll

  Log Message:
  -----------
  [X86] Fix missing check of rotate <-> shift equivilence (Issue 108722)

Previous code was checking that rotate and shift where equivilent when
transforming shift -> rotate but not the other way around.

Closes #108767


  Commit: 1cd07526b4becdcaa8dc7db0757e85d39a8a4705
      https://github.com/llvm/llvm-project/commit/1cd07526b4becdcaa8dc7db0757e85d39a8a4705
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M lld/ELF/InputFiles.cpp
    M lld/include/lld/Common/CommonLinkerContext.h

  Log Message:
  -----------
  [ELF] Rename unique_saver to uniqueSaver. NFC

and remove an unneeded FIXME.


  Commit: 2531b46264cd066d51f2571d134a63998d13710f
      https://github.com/llvm/llvm-project/commit/2531b46264cd066d51f2571d134a63998d13710f
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M lld/ELF/Config.h
    M lld/ELF/Driver.cpp
    M lld/ELF/OutputSections.cpp
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h

  Log Message:
  -----------
  [ELF] Move InStruct into Ctx. NFC

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

`#define in ctx.sec` is used for now to avoid migrating `in.xxx`.


  Commit: bafe3a4b0ca0e9294a18a9ec4fea8567cb98dabe
      https://github.com/llvm/llvm-project/commit/bafe3a4b0ca0e9294a18a9ec4fea8567cb98dabe
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

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

  Log Message:
  -----------
  [NFC][tsan] Fix `reallocarray`, `calloc` parameters order

Implementation is commutative, so it should make
no difference. It's done just for consistency with
documentation.


  Commit: 0b041f1da5e2f01e6d7160f22250b19ac7d6bd8c
      https://github.com/llvm/llvm-project/commit/0b041f1da5e2f01e6d7160f22250b19ac7d6bd8c
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_allocator_dlsym.h

  Log Message:
  -----------
  [NFC][sanitizer] Extend `DlSymAllocator`

Preparation for using in`tsan`.


  Commit: 7deca859e55faf9662c54a00b6e333826d717e19
      https://github.com/llvm/llvm-project/commit/7deca859e55faf9662c54a00b6e333826d717e19
  Author: Congcong Cai <congcongcai0907 at 163.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

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

  Log Message:
  -----------
  [clang-tidy] fix false positive when member initialization depends on structured binging variable in cppcoreguidelines-prefer-member-initializer (#108743)

Fixes: #82970

Detecting dependiences with `varDecl` is too strict. It will ignore the
`bingingDecl`.
This patch wants to use `valueDecl` to match more cases including
`bingingDecl`.


  Commit: ffc80de8643969ffa0dbbd377c5b33e3a7488f5e
      https://github.com/llvm/llvm-project/commit/ffc80de8643969ffa0dbbd377c5b33e3a7488f5e
  Author: JOE1994 <joseph942010 at gmail.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M mlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-yaml-gen.cpp
    M mlir/tools/mlir-pdll/mlir-pdll.cpp
    M mlir/tools/mlir-src-sharder/mlir-src-sharder.cpp
    M mlir/tools/mlir-tblgen/OpDocGen.cpp
    M mlir/unittests/Bytecode/BytecodeTest.cpp
    M mlir/unittests/IR/AttributeTest.cpp
    M mlir/unittests/IR/OpPropertiesTest.cpp
    M mlir/unittests/Support/IndentedOstreamTest.cpp

  Log Message:
  -----------
  [mlir] Nits on uses of llvm::raw_string_ostream (NFC)

* Don't call raw_string_ostream::flush(), which is essentially a no-op
* Strip unneeded calls to raw_string_ostream::str(), to avoid excess indirection.


  Commit: a248ec3178293d3df0ceb5c6501c2532a20339fd
      https://github.com/llvm/llvm-project/commit/a248ec3178293d3df0ceb5c6501c2532a20339fd
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M lld/ELF/Config.h
    M lld/ELF/Driver.cpp
    M lld/ELF/OutputSections.cpp
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h

  Log Message:
  -----------
  Revert "[ELF] Move InStruct into Ctx. NFC"

The define breaks `std::in`.

https://lab.llvm.org/buildbot/#/builders/169/builds/3253

This reverts commit 2531b46264cd066d51f2571d134a63998d13710f.


  Commit: 5a6e52d6ef96d2bcab6dc50bdb369662ff17d2a0
      https://github.com/llvm/llvm-project/commit/5a6e52d6ef96d2bcab6dc50bdb369662ff17d2a0
  Author: JOE1994 <joseph942010 at gmail.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M mlir/lib/AsmParser/Parser.cpp
    M mlir/lib/Bindings/Python/IRAttributes.cpp
    M mlir/lib/TableGen/CodeGenHelpers.cpp
    M mlir/lib/TableGen/Predicate.cpp
    M mlir/lib/Target/LLVM/ModuleToObject.cpp
    M mlir/lib/Target/LLVMIR/ConvertFromLLVMIR.cpp
    M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMPCommon.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/lib/Target/SPIRV/Serialization/SerializeOps.cpp
    M mlir/lib/Target/SPIRV/Serialization/Serializer.cpp
    M mlir/lib/Tools/PDLL/Parser/Parser.cpp
    M mlir/lib/Tools/mlir-opt/MlirOptMain.cpp
    M mlir/lib/Transforms/ViewOpGraph.cpp

  Log Message:
  -----------
  [mlir] Nits on uses of llvm::raw_string_ostream (NFC)

* Strip calls to raw_string_ostream::flush(), which is essentially a no-op
* Strip unneeded calls to raw_string_ostream::str(), to avoid excess indirection.


  Commit: 46f7cb3e84c2089db3e698cfd894167006433090
      https://github.com/llvm/llvm-project/commit/46f7cb3e84c2089db3e698cfd894167006433090
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

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

  Log Message:
  -----------
  [CodeGen] Use Register::id() instead of implicit cast to unsigned in Register.h. NFC


  Commit: 61ff1cb452e49d41e63061bac4aebafe2e9e2209
      https://github.com/llvm/llvm-project/commit/61ff1cb452e49d41e63061bac4aebafe2e9e2209
  Author: JOE1994 <joseph942010 at gmail.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M mlir/lib/AsmParser/Parser.cpp
    M mlir/lib/Bindings/Python/IRAttributes.cpp
    M mlir/lib/TableGen/CodeGenHelpers.cpp
    M mlir/lib/TableGen/Predicate.cpp
    M mlir/lib/Target/LLVM/ModuleToObject.cpp
    M mlir/lib/Target/LLVMIR/ConvertFromLLVMIR.cpp
    M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMPCommon.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/lib/Target/SPIRV/Serialization/SerializeOps.cpp
    M mlir/lib/Target/SPIRV/Serialization/Serializer.cpp
    M mlir/lib/Tools/PDLL/Parser/Parser.cpp
    M mlir/lib/Tools/mlir-opt/MlirOptMain.cpp
    M mlir/lib/Transforms/ViewOpGraph.cpp

  Log Message:
  -----------
  Revert "[mlir] Nits on uses of llvm::raw_string_ostream (NFC)"

This reverts commit 5a6e52d6ef96d2bcab6dc50bdb369662ff17d2a0.

"FAIL: MLIR::completion.test" on multiple buildbots.


  Commit: 0c55ad11ab3857056bb3917fdf087c4aa811b790
      https://github.com/llvm/llvm-project/commit/0c55ad11ab3857056bb3917fdf087c4aa811b790
  Author: Congcong Cai <congcongcai0907 at 163.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/cert/FloatLoopCounter.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/cert/flp30-c.c

  Log Message:
  -----------
  [clang-tidy] fix false positive that floating point variable only used in increment expr in cert-flp30-c (#108706)

Fixes: #108049
cert-flp30-c only provides non-compliant example with normal loop.
Essentially it wants to avoid that floating point variables are used as
loop counters which are checked in condition expr and modified in
increment expr.
This patch wants to give more precise matcheres to identify this cases.


  Commit: 095b41c6eedb3acc908dc63ee91ff77944c07d75
      https://github.com/llvm/llvm-project/commit/095b41c6eedb3acc908dc63ee91ff77944c07d75
  Author: JOE1994 <joseph942010 at gmail.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M mlir/lib/Bindings/Python/IRAttributes.cpp
    M mlir/lib/TableGen/CodeGenHelpers.cpp
    M mlir/lib/TableGen/Predicate.cpp
    M mlir/lib/Target/LLVM/ModuleToObject.cpp
    M mlir/lib/Target/LLVMIR/ConvertFromLLVMIR.cpp
    M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMPCommon.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/lib/Target/SPIRV/Serialization/SerializeOps.cpp
    M mlir/lib/Target/SPIRV/Serialization/Serializer.cpp
    M mlir/lib/Tools/PDLL/Parser/Parser.cpp
    M mlir/lib/Tools/mlir-opt/MlirOptMain.cpp
    M mlir/lib/Transforms/ViewOpGraph.cpp

  Log Message:
  -----------
  [mlir] Reland 5a6e52d6ef96d2bcab6dc50bdb369662ff17d2a0 with update (NFC)

Excluded updates to mlir/lib/AsmParser/Parser.cpp ,
which caused LIT failure "FAIL: MLIR::completion.test" on multiple buildbots.


  Commit: 2ae968a0d9fb61606b020e898d884c82dd0ed8b5
      https://github.com/llvm/llvm-project/commit/2ae968a0d9fb61606b020e898d884c82dd0ed8b5
  Author: Antonio Frighetto <10052132+antoniofrighetto at users.noreply.github.com>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M clang/lib/CodeGen/BackendUtil.cpp
    M llvm/include/llvm/Passes/PassBuilder.h
    R llvm/include/llvm/Transforms/Instrumentation.h
    M llvm/include/llvm/Transforms/Instrumentation/GCOVProfiler.h
    M llvm/include/llvm/Transforms/Instrumentation/InstrProfiling.h
    M llvm/include/llvm/Transforms/Instrumentation/SanitizerBinaryMetadata.h
    M llvm/include/llvm/Transforms/Instrumentation/SanitizerCoverage.h
    A llvm/include/llvm/Transforms/Utils/Instrumentation.h
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Transforms/IPO/SampleProfile.cpp
    M llvm/lib/Transforms/IPO/SampleProfileProbe.cpp
    M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/CGProfile.cpp
    M llvm/lib/Transforms/Instrumentation/CMakeLists.txt
    M llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/IndirectCallPromotion.cpp
    M llvm/lib/Transforms/Instrumentation/InstrOrderFile.cpp
    M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
    R llvm/lib/Transforms/Instrumentation/Instrumentation.cpp
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/NumericalStabilitySanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
    M llvm/lib/Transforms/Instrumentation/ThreadSanitizer.cpp
    M llvm/lib/Transforms/Utils/CMakeLists.txt
    A llvm/lib/Transforms/Utils/Instrumentation.cpp
    M llvm/tools/lli/lli.cpp

  Log Message:
  -----------
  [Instrumentation] Move out to Utils (NFC) (#108532)

Utility functions have been moved out to Utils. Minor opportunity to
drop the header where not needed.


  Commit: 4fdccd346bb5969707845762d3c27f4806d46de8
      https://github.com/llvm/llvm-project/commit/4fdccd346bb5969707845762d3c27f4806d46de8
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Transforms/Instrumentation/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Transforms/Utils/BUILD.gn

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


  Commit: d7796855b87911b8ae6c726ab5df4949f173dbd2
      https://github.com/llvm/llvm-project/commit/d7796855b87911b8ae6c726ab5df4949f173dbd2
  Author: Youngsuk Kim <joseph942010 at gmail.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M lldb/include/lldb/Utility/Instrumentation.h
    M lldb/source/Breakpoint/Breakpoint.cpp
    M lldb/source/Commands/CommandObjectLog.cpp
    M lldb/source/Commands/CommandObjectRegexCommand.cpp
    M lldb/source/Core/Module.cpp
    M lldb/source/Expression/IRExecutionUnit.cpp
    M lldb/source/Expression/IRInterpreter.cpp
    M lldb/source/Host/windows/PipeWindows.cpp
    M lldb/source/Interpreter/Options.cpp
    M lldb/source/Plugins/Disassembler/LLVMC/DisassemblerLLVMC.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/IRDynamicChecks.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp
    M lldb/source/Plugins/Process/Windows/Common/NativeProcessWindows.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/Process/minidump/ProcessMinidump.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/ManualDWARFIndex.cpp
    M lldb/source/Plugins/Trace/intel-pt/TraceIntelPTBundleLoader.cpp
    M lldb/source/Symbol/Symtab.cpp
    M lldb/source/Target/Statistics.cpp
    M lldb/source/Target/Target.cpp
    M lldb/source/Utility/LLDBAssert.cpp
    M lldb/source/Utility/Log.cpp
    M lldb/tools/lldb-dap/DAP.cpp
    M lldb/tools/lldb-dap/JSONUtils.cpp
    M lldb/tools/lldb-dap/LLDBUtils.cpp
    M lldb/tools/lldb-dap/lldb-dap.cpp
    M lldb/tools/lldb-instr/Instrument.cpp
    M lldb/tools/lldb-server/LLDBServerUtilities.cpp
    M lldb/tools/lldb-test/lldb-test.cpp
    M lldb/unittests/Symbol/PostfixExpressionTest.cpp
    M lldb/unittests/SymbolFile/NativePDB/PdbFPOProgramToDWARFExpressionTests.cpp

  Log Message:
  -----------
  [lldb] Nits on uses of llvm::raw_string_ostream (NFC) (#108745)

As specified in the docs,
1) raw_string_ostream is always unbuffered and
2) the underlying buffer may be used directly

( 65b13610a5226b84889b923bae884ba395ad084d for further reference )

* Don't call raw_string_ostream::flush(), which is essentially a no-op.
* Avoid unneeded calls to raw_string_ostream::str(), to avoid excess
indirection.


  Commit: 339282d49f5310a2837da45c0ccc19da15675554
      https://github.com/llvm/llvm-project/commit/339282d49f5310a2837da45c0ccc19da15675554
  Author: Pavel Skripkin <paskripkin at gmail.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/DynamicExtent.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SValBuilder.h
    M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/VLASizeChecker.cpp
    M clang/lib/StaticAnalyzer/Core/DynamicExtent.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
    M clang/lib/StaticAnalyzer/Core/SValBuilder.cpp
    M clang/test/Analysis/NewDelete-checker-test.cpp
    M clang/test/Analysis/NewDelete-intersections.mm
    M clang/test/Analysis/malloc-interprocedural.c

  Log Message:
  -----------
  [analyzer] Refactor MallocChecker to use `BindExpr` in `evalCall` (#106081)

PR refactors `MallocChecker` to not violate invariant of `BindExpr`,
which should be called only during `evalCall` to avoid conflicts.

To achieve this, most of `postCall` logic was moved to `evalCall` with
addition return value binding in case of processing of allocation
functions. Check functions prototypes was changed to use `State` with
bound return value.

`checkDelim` logic was left in `postCall` to avoid conflicts with
`StreamChecker` which also evaluates `getline` and friends.

PR also introduces breaking change in the unlikely case when the
definition of an allocation function (e.g. `malloc()`) is visible: now
checker does not try to inline allocation functions and assumes their
initial semantics.

Closes #73830


  Commit: e88b7ff01699a94b6458be942ff1b258f70efc2e
      https://github.com/llvm/llvm-project/commit/e88b7ff01699a94b6458be942ff1b258f70efc2e
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-09-15 (Sun, 15 Sep 2024)

  Changed paths:
    M lld/ELF/Arch/AArch64.cpp
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/Arch/Hexagon.cpp
    M lld/ELF/Arch/LoongArch.cpp
    M lld/ELF/Arch/Mips.cpp
    M lld/ELF/Arch/PPC.cpp
    M lld/ELF/Arch/PPC64.cpp
    M lld/ELF/Arch/RISCV.cpp
    M lld/ELF/Arch/SPARCV9.cpp
    M lld/ELF/Arch/SystemZ.cpp
    M lld/ELF/Arch/X86.cpp
    M lld/ELF/Arch/X86_64.cpp
    M lld/ELF/Config.h
    M lld/ELF/Driver.cpp
    M lld/ELF/InputFiles.cpp
    M lld/ELF/InputSection.cpp
    M lld/ELF/LinkerScript.cpp
    M lld/ELF/OutputSections.cpp
    M lld/ELF/Relocations.cpp
    M lld/ELF/Symbols.cpp
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h
    M lld/ELF/Thunks.cpp
    M lld/ELF/Writer.cpp

  Log Message:
  -----------
  [ELF] Move InStruct into Ctx. NFC

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

llvm/Support/thread.h includes <thread>, which transitively includes
sstream in libc++ and uses ios_base::in, so we cannot use `#define in ctx.sec`.

`symtab, config, ctx` are now the only variables using
LLVM_LIBRARY_VISIBILITY.


  Commit: cf2122cd0ad44ff578ebae54fe2f417895264587
      https://github.com/llvm/llvm-project/commit/cf2122cd0ad44ff578ebae54fe2f417895264587
  Author: Daniel Kiss <daniel.kiss at arm.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M clang/lib/Headers/arm_acle.h
    M clang/test/CodeGen/arm_acle.c

  Log Message:
  -----------
  [Clang][ARM] Make CRC and DSP intrinsics always available. (#107417)

Both feature has target feature so can be checked if the usage is valid.


  Commit: 9b237b4013e86741cf7d4fcd95a7bc70772d2286
      https://github.com/llvm/llvm-project/commit/9b237b4013e86741cf7d4fcd95a7bc70772d2286
  Author: Rainer Orth <ro at gcc.gnu.org>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

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

  Log Message:
  -----------
  [ASan] Disable InstallAtForkHandler on Linux/sparc64 (#108542)

When SPARC Asan testing is enabled by PR #107405, many Linux/sparc64
tests just hang like
```
#0  0xf7ae8e90 in syscall () from /usr/lib32/libc.so.6
#1  0x701065e8 in __sanitizer::FutexWait(__sanitizer::atomic_uint32_t*, unsigned int) ()
    at compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp:766
#2  0x70107c90 in Wait ()
    at compiler-rt/lib/sanitizer_common/sanitizer_mutex.cpp:35
#3  0x700f7cac in Lock ()
    at compiler-rt/lib/asan/../sanitizer_common/sanitizer_mutex.h:196
#4  Lock ()
    at compiler-rt/lib/asan/../sanitizer_common/sanitizer_thread_registry.h:98
#5  LockThreads ()
    at compiler-rt/lib/asan/asan_thread.cpp:489
#6  0x700e9c8c in __asan::BeforeFork() ()
    at compiler-rt/lib/asan/asan_posix.cpp:157
#7  0xf7ac83f4 in ?? () from /usr/lib32/libc.so.6
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
```
It turns out that this happens in tests using `internal_fork` (e.g.
invoking `llvm-symbolizer`): unlike most other Linux targets, which use
`clone`, Linux/sparc64 has to use `__fork` instead. While `clone`
doesn't trigger `pthread_atfork` handlers, `__fork` obviously does,
causing the hang.

To avoid this, this patch disables `InstallAtForkHandler` and lets the
ASan tests run to completion.

Tested on `sparc64-unknown-linux-gnu`.


  Commit: d76966e317b3b6e61070518718077218842cea65
      https://github.com/llvm/llvm-project/commit/d76966e317b3b6e61070518718077218842cea65
  Author: Rainer Orth <ro at gcc.gnu.org>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M compiler-rt/test/sanitizer_common/TestCases/sanitizer_coverage_trace_pc_guard-dso.cpp
    M compiler-rt/test/sanitizer_common/TestCases/sanitizer_coverage_trace_pc_guard.cpp

  Log Message:
  -----------
  [sanitizer_common][test] Disable sanitizer_coverage_trace_pc_guard.cp… (#108206)

…p etc. on SPARC

When enabling ASan testing on SPARC as per PR #107405, two tests `FAIL`:
```
  SanitizerCommon-asan-sparc-SunOS :: sanitizer_coverage_trace_pc_guard-dso.cpp
  SanitizerCommon-asan-sparc-SunOS :: sanitizer_coverage_trace_pc_guard.cpp

```
The issue is the same in both cases:
```
WARNING: No coverage file for projects/compiler-rt/test/sanitizer_common/asan-sparc-SunOS/Output/sanitizer_coverage_trace_pc_guard.cpp.tmp
WARNING: No coverage file for sanitizer_coverage_trace_pc_guard.cpp.tmp.22766.sancov
ERROR: No valid coverage files given.

```
Checking the file with `sancov -print` reveals `Wrong magic:
4294967090`. There seems to be an endianess bug somewhere, since the
tests are already disabled on other big-endian targets.

This patch matches this.

Tested on `sparcv9-sun-solaris2.11`.


  Commit: 961bc37d449819e0c959f385f7927cd8b8dc9037
      https://github.com/llvm/llvm-project/commit/961bc37d449819e0c959f385f7927cd8b8dc9037
  Author: Rainer Orth <ro at gcc.gnu.org>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M compiler-rt/test/asan/TestCases/global-overflow.cpp
    M compiler-rt/test/asan/TestCases/large_func_test.cpp

  Log Message:
  -----------
  [ASan][test] XFAIL global-overflow.cpp etc. on SPARC (#108200)

When enabling ASan testing on SPARC as per PR #107405, two tests `FAIL`
in similar ways as detailed in Issue #108194: at `-O1` and above, one
line of the stacktrace lacks the line number info, causing the tests to
`FAIL`. I could trace this to `clang` generating incomplete line number
info; `g++` gets this right.

To avoid this, this patch `XFAIL`s the affected tests on SPARC.

Tested on `sparcv9-sun-solaris2.11`.


  Commit: dfa54298ff6d6e420a1a5b74c070912409713589
      https://github.com/llvm/llvm-project/commit/dfa54298ff6d6e420a1a5b74c070912409713589
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetRegisterInfo.h
    M llvm/include/llvm/CodeGen/TargetSubtargetInfo.h
    M llvm/lib/CodeGen/InitUndef.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/R600Subtarget.h
    M llvm/lib/Target/ARM/ARMBaseRegisterInfo.h
    M llvm/lib/Target/ARM/ARMSubtarget.h
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.h
    M llvm/lib/Target/RISCV/RISCVSubtarget.h
    M llvm/test/CodeGen/AArch64/arm64-ldxr-stxr.ll
    A llvm/test/CodeGen/AArch64/init-undef.mir
    M llvm/test/CodeGen/RISCV/regalloc-last-chance-recoloring-failure.ll

  Log Message:
  -----------
  [InitUndef] Enable the InitUndef pass on non-AMDGPU targets (#108353)

The InitUndef pass works around a register allocation issue, where undef
operands can be allocated to the same register as early-clobber result
operands. This may lead to ISA constraint violations, where certain
input and output registers are not allowed to overlap.

Originally this pass was implemented for RISCV, and then extended to ARM
in #77770. I've since removed the target-specific parts of the pass in
#106744 and #107885. This PR reduces the pass to use a single
requiresDisjointEarlyClobberAndUndef() target hook and enables it by
default. The hook is disabled for AMDGPU, because overlapping
early-clobber and undef operands are known to be safe for that target,
and we get significant codegen diffs otherwise.

The motivating case is the one in arm64-ldxr-stxr.ll, where we were
previously incorrectly allocating a stxp input and output to the same
register.


  Commit: 6d3f6c2170dd60e86743c205e33ead2f455656b4
      https://github.com/llvm/llvm-project/commit/6d3f6c2170dd60e86743c205e33ead2f455656b4
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

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

  Log Message:
  -----------
  [RecursiveASTVisitor] Do not inline TraverseStmt (NFC) (#107601)

As things are now, this reduces size of clang bootstrapped with ThinLTO
by 0.3% and reduces thin link time by 0.3%. More importantly, it avoids
a large regression once https://github.com/llvm/llvm-project/pull/107114
is merged. Without this change, there would be a 0.4% regression in code
size and 4% (!) regression in thin link time. There is no impact on
run-time performance.


  Commit: b29c5b66fd1b241b6d8a9cd810cd4e9bad318225
      https://github.com/llvm/llvm-project/commit/b29c5b66fd1b241b6d8a9cd810cd4e9bad318225
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.h
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp

  Log Message:
  -----------
  [NFC][LoopVectorize] Dont pass LLVMContext to VPTypeAnalysis constructor (#108540)

We already pass a Type object into the VPTypeAnalysis constructor, which
can be used to obtain the context. While in the same area it also made
sense to avoid passing the context into the VPTransformState and
VPCostContext constructors.


  Commit: b7e51b4f139ec18c498c818c6bcaa5a842cea83c
      https://github.com/llvm/llvm-project/commit/b7e51b4f139ec18c498c818c6bcaa5a842cea83c
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M llvm/include/llvm/IR/Function.h
    M llvm/include/llvm/Transforms/Utils/SCCPSolver.h
    M llvm/lib/IR/Function.cpp
    M llvm/lib/Transforms/IPO/SCCP.cpp
    M llvm/lib/Transforms/Utils/SCCPSolver.cpp
    M llvm/test/Transforms/FunctionSpecialization/discover-transitive-phis.ll
    M llvm/test/Transforms/SCCP/ip-add-range-to-call.ll
    M llvm/test/Transforms/SCCP/ip-constant-ranges.ll
    M llvm/test/Transforms/SCCP/ip-ranges-casts.ll
    M llvm/test/Transforms/SCCP/ip-ranges-phis.ll
    M llvm/test/Transforms/SCCP/ip-ranges-select.ll
    M llvm/test/Transforms/SCCP/musttail-call.ll
    M llvm/test/Transforms/SCCP/pointer-nonnull.ll
    M llvm/test/Transforms/SCCP/resolvedundefsin-tracked-fn.ll
    M llvm/test/Transforms/SCCP/switch.ll

  Log Message:
  -----------
  [IPSCCP] Infer attributes on arguments (#107114)

During inter-procedural SCCP, also infer attributes on arguments, not
just return values. This allows other non-interprocedural passes to make
use of the information later.


  Commit: 6784202b6bb0930d2e4bf231e915c61e446b0585
      https://github.com/llvm/llvm-project/commit/6784202b6bb0930d2e4bf231e915c61e446b0585
  Author: Andrea Di Biagio <35701327+adibiagio at users.noreply.github.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M llvm/include/llvm/MCA/HardwareUnits/ResourceManager.h
    M llvm/lib/MCA/HardwareUnits/ResourceManager.cpp
    A llvm/test/tools/llvm-mca/X86/Znver4/partially-overlapping-group-resources.s

  Log Message:
  -----------
  [MCA][ResourceManager] Fix a bug in the instruction issue logic. (#108386)

Before this patch, the pipeline selection logic in
ResourceManager::issueInstruction() didn't know how to correctly handle
instructions which consume multiple partially overlapping resource
groups. In some cases (like the test case from #108157), the inability
to correctly allocate resources on instruction issue was leading to
crashes.

The presence of multiple partially overlapping groups complicates the
selection process by introducing extra constraints. For those cases, the
issue logic now prioritizes groups which are more constrained than
others.

Fixes #108157


  Commit: cab4c10eedfa4f2537877e96afc376fe47189b10
      https://github.com/llvm/llvm-project/commit/cab4c10eedfa4f2537877e96afc376fe47189b10
  Author: Youngsuk Kim <joseph942010 at gmail.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M mlir/lib/AsmParser/Parser.cpp

  Log Message:
  -----------
  [mlir][AsmParser] Avoid use of moved value (#108789)

'std::string detailData' is moved in the innermost loop of a 2-layer
loop, but is written to throughout the whole duration of the 2-layer
loop.

After move, std::string is in an unspecified state
(implementation-dependent).

Avoid using a moved value, as it incurs undefined behavior.


  Commit: 57b50a973935c444fd333fc574e0cf331ce218ee
      https://github.com/llvm/llvm-project/commit/57b50a973935c444fd333fc574e0cf331ce218ee
  Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

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

  Log Message:
  -----------
  [bazel] port 2ae968a0d9fb61606b020e898d884c82dd0ed8b5


  Commit: e16ec9b45e4a8fd3fdc67338ea9c77457460a25a
      https://github.com/llvm/llvm-project/commit/e16ec9b45e4a8fd3fdc67338ea9c77457460a25a
  Author: ErikHogeman <erik.hogeman at arm.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

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

  Log Message:
  -----------
  [SelectionDAG] Do not build illegal nodes with users (#108573)

When we build a node with illegal type which has a user, it's possible
that it can end up being processed by the DAG combiner later before it's
removed, which can trigger an assert expecting the types to be legalized
already.


  Commit: 27c83382d83dce0f33ae67abb3bc94977cb3031f
      https://github.com/llvm/llvm-project/commit/27c83382d83dce0f33ae67abb3bc94977cb3031f
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M libcxx/docs/ReleaseNotes/20.rst
    M libcxx/include/__config
    M libcxx/include/__configuration/abi.h
    M libcxx/include/__functional/function.h
    M libcxx/include/__hash_table
    M libcxx/include/__memory/compressed_pair.h
    M libcxx/include/__memory/shared_ptr.h
    M libcxx/include/__memory/unique_ptr.h
    M libcxx/include/__split_buffer
    M libcxx/include/__tree
    M libcxx/include/deque
    M libcxx/include/forward_list
    M libcxx/include/future
    M libcxx/include/list
    M libcxx/include/string
    M libcxx/include/vector
    M libcxx/test/libcxx/containers/associative/unord.map/abi.compile.pass.cpp
    M libcxx/test/libcxx/containers/associative/unord.set/abi.compile.pass.cpp
    M libcxx/test/libcxx/containers/sequences/deque/abi.compile.pass.cpp
    M libcxx/test/libcxx/containers/sequences/vector.bool/abi.compile.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.set/missing_hash_specialization.verify.cpp
    R libcxx/test/libcxx/memory/compressed_pair/compressed_pair.pass.cpp
    M libcxx/test/libcxx/type_traits/datasizeof.compile.pass.cpp
    M libcxx/test/libcxx/utilities/memory/util.smartptr/util.smartptr.shared/libcxx.control_block_layout.pass.cpp
    M libcxx/test/std/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/copy_move.pass.cpp
    M libcxx/utils/gdb/libcxx/printers.py
    M libcxx/utils/libcxx/test/features.py

  Log Message:
  -----------
  [libc++] Replace `__compressed_pair` with `[[no_unique_address]]` (#76756)

This significantly simplifies the code, improves compile times and
improves the object layout of types using `__compressed_pair` in the
unstable ABI. The only downside is that this is extremely ABI sensitive
and pedantically breaks the ABI for empty final types, since the address
of the subobject may change. The ABI of the whole object should not be
affected.

Fixes #91266
Fixes #93069


  Commit: 8d89f83db0937db318947a546e690fc8b0d22beb
      https://github.com/llvm/llvm-project/commit/8d89f83db0937db318947a546e690fc8b0d22beb
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/ceil-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/floor-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfma-vp.ll

  Log Message:
  -----------
  [RISCV] Add some missing VP zvfhmin test coverage. NFC

We're also missing coverage for the vp_reduce_* nodes, but they
currently crash with zvfhmin. It looks like they're getting expanded
instead of promoted.


  Commit: 9e9b1178ca435f690381ffe8241e4bf1bb7e60fb
      https://github.com/llvm/llvm-project/commit/9e9b1178ca435f690381ffe8241e4bf1bb7e60fb
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M lldb/examples/synthetic/libcxx.py
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.h
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxList.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxUnorderedMap.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxVector.cpp
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/list/TestDataFormatterGenericList.py

  Log Message:
  -----------
  [lldb] Support new libc++ __compressed_pair layout (#96538)

This patch is in preparation for the `__compressed_pair` refactor in
https://github.com/llvm/llvm-project/pull/76756.

This is mostly reviewable now. With the new layout we no longer need to
unwrap the `__compressed_pair`. Instead, we just need to look for child
members. E.g., to get to the underlying pointer of `std::unique_ptr` we
no longer do,
```
GetFirstValueOfCXXCompressedPair(GetChildMemberWithName("__ptr_"))

```
but instead do
```
GetChildMemberWithName("__ptr_")
```

We need to be slightly careful because previously the
`__compressed_pair` had a member called `__value_`, whereas now
`__value_` might be a member of the class that used to hold the
`__compressed_pair`. So before unwrapping the pair, we added checks for
`isOldCompressedLayout` (not sure yet whether folding this check into
`GetFirstValueOfCXXCompressedPair` is better).


  Commit: 7e5fe3ec5aed001c3b8f0bf59167b6472b91b9cc
      https://github.com/llvm/llvm-project/commit/7e5fe3ec5aed001c3b8f0bf59167b6472b91b9cc
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    R lldb/packages/Python/lldbsuite/test/bench.py
    M lldb/packages/Python/lldbsuite/test/decorators.py
    R lldb/test/API/benchmarks/continue/Makefile
    R lldb/test/API/benchmarks/continue/TestBenchmarkContinue.py
    R lldb/test/API/benchmarks/continue/main.cpp
    R lldb/test/API/benchmarks/expression/Makefile
    R lldb/test/API/benchmarks/expression/TestExpressionCmd.py
    R lldb/test/API/benchmarks/expression/TestRepeatedExprs.py
    R lldb/test/API/benchmarks/expression/main.cpp
    R lldb/test/API/benchmarks/frame_variable/TestFrameVariableResponse.py
    R lldb/test/API/benchmarks/libcxxlist/Makefile
    R lldb/test/API/benchmarks/libcxxlist/TestBenchmarkLibcxxList.py
    R lldb/test/API/benchmarks/libcxxlist/main.cpp
    R lldb/test/API/benchmarks/libcxxmap/Makefile
    R lldb/test/API/benchmarks/libcxxmap/TestBenchmarkLibcxxMap.py
    R lldb/test/API/benchmarks/libcxxmap/main.cpp
    R lldb/test/API/benchmarks/startup/TestStartupDelays.py
    R lldb/test/API/benchmarks/stepping/TestSteppingSpeed.py
    R lldb/test/API/benchmarks/turnaround/TestCompileRunToBreakpointTurnaround.py

  Log Message:
  -----------
  [lldb][test] Remove benchmark API tests (#108629)

These benchmarks don't get run as part of the regular API test-suite.
And I'm not aware of any CI running this. Also, I haven't quite managed
to actually run them locally using the `bench.py` script. It looks like
these are obsolete, so I'm proposing to remove the infrastructure around
it entirely.

If anyone does know of a use for these do let me know.


  Commit: feac761f3797c4232224fa891df12a5fef74ded9
      https://github.com/llvm/llvm-project/commit/feac761f3797c4232224fa891df12a5fef74ded9
  Author: David Green <david.green at arm.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M llvm/docs/GlobalISel/GenericOpcode.rst
    M llvm/include/llvm/CodeGen/GlobalISel/GenericMachineInstrs.h
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
    M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
    M llvm/include/llvm/Support/TargetOpcodes.def
    M llvm/include/llvm/Target/GenericOpcodes.td
    M llvm/include/llvm/Target/GlobalISel/SelectionDAGCompat.td
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
    M llvm/test/CodeGen/AArch64/fptosi-sat-scalar.ll
    M llvm/test/CodeGen/AArch64/fptosi-sat-vector.ll
    M llvm/test/CodeGen/AArch64/fptoui-sat-scalar.ll
    M llvm/test/CodeGen/AArch64/fptoui-sat-vector.ll
    M llvm/test/TableGen/GlobalISelEmitter.td

  Log Message:
  -----------
  [GlobalISel][AArch64] Add G_FPTOSI_SAT/G_FPTOUI_SAT (#96297)

This is an implementation of the saturating fp to int conversions for
GlobalISel. On AArch64 the converstion instrctions work this way,
producing saturating results. LegalizerHelper::lowerFPTOINT_SAT is
ported from SDAG.

AArch64 has a lot of existing tests for fptosi_sat, covering a wide
range of types. I have tried to make most of them work all at once, but
a few fall back due to other missing features such as f128 handling for
min/max.


  Commit: dbdf84388a825645850a47b035a1f7ab27b789b5
      https://github.com/llvm/llvm-project/commit/dbdf84388a825645850a47b035a1f7ab27b789b5
  Author: Anton Sidorenko <anton.sidorenko at syntacore.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

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

  Log Message:
  -----------
  [RISCV] Add Syntacore SCR7 processor definition (#108406)

Syntacore SCR7 is a high-performance Linux-capable RISC-V processor
core.
The core has rv64imafdcv_zba_zbb_zbc_zbs_zkn march.
Overview: https://syntacore.com/products/scr7

Scheduling model will be added in a subsequent PR.

---------

Co-authored-by: Dmitrii Petrov <dmitrii.petrov at syntacore.com>
Co-authored-by: Anton Afanasyev <anton.afanasyev at syntacore.com>
Co-authored-by: Elena Lepilkina <elena.lepilkina at syntacore.com>


  Commit: 0f86cb315429b3fe084a7205d40599a0d07e4882
      https://github.com/llvm/llvm-project/commit/0f86cb315429b3fe084a7205d40599a0d07e4882
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    A mlir/docs/Dialects/OpenMPDialect/ODS.md
    A mlir/docs/Dialects/OpenMPDialect/_index.md

  Log Message:
  -----------
  [MLIR][OpenMP][Docs] Reorganize 'omp' dialect documentation (NFC) (#107232)

This patch creates a handwritten main documentation page for the OpenMP
dialect linking to the ODS-generated one as a sub-section.

This new page can be extended to better describe overall design
decisions of the dialect rather than relying exclusively on
documentation generated automatically from ODS descriptions. After some
investigation, there seem to be a few main ways we could structure
dialect documentation to allow the introduction of possibly extensive
handwritten text.
- Create a top-level OpenMPDialect.td file that includes the
auto-generated one. This is what the `acc` dialect currently does, but
it results in the addition of two equal TOCs. It would be possible to
move the `include` before all handwritten sections so that the page
would have a single TOC, but I believe moving general descriptions to
the end of the document would hurt readability. Also keeping the section
order without introducing a second TOC would mean the TOC would be
inserted somewhere halfway through the page, which isn't useful.
- Create an OpenMPDialect directory with an _index.md including the
auto-generated documentation. This is a different way of reproducing the
same issues described above, which is what is currently done for the
`linalg` dialect. The multiple TOC issue there is avoided by only
including automatically-generated documentation for operations (i.e.
`mlir-tblgen -gen-op-doc`) rather than for dialects (i.e. `mlir-tblgen
-gen-dialect-doc`). That approach would make it impossible to generate
all of the documentation without adding new tablegen backends for
`DialectAttr`, `DialectType` and `EnumAttrInfo` definitions or making
the TOC optional through a command line option.
- Create an OpenMPDialect directory with an _index.md that does not
include the auto-generated documentation. Instead, link to another
document in that directory that includes it. This is the approach taken
here, and it circumvents all these issues without having to make any
changes to tablegen backends.


  Commit: 8b82fc68a9d1b93b47eb0c3f7743ff7040fcbfd7
      https://github.com/llvm/llvm-project/commit/8b82fc68a9d1b93b47eb0c3f7743ff7040fcbfd7
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

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

  Log Message:
  -----------
  [MLIR][OpenMP][Docs] Document op naming conventions (NFC) (#107233)

This patch documents op naming conventions discussed in [this
RFC](https://discourse.llvm.org/t/rfc-uniformize-openmp-dialect-operation-names/77715).


  Commit: 551134c043c016dddabc24d31ebadddedf6ea060
      https://github.com/llvm/llvm-project/commit/551134c043c016dddabc24d31ebadddedf6ea060
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

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

  Log Message:
  -----------
  [MLIR][OpenMP][Docs] Document clause-based op representation (NFC) (#107234)

This patch documents the clause-based op represetation discussed in
[this
RFC](https://discourse.llvm.org/t/rfc-clause-based-representation-of-openmp-dialect-operations/79053).


  Commit: 06e8c6aa0d0e80d24ba0035223890ebb9f1e4ddc
      https://github.com/llvm/llvm-project/commit/06e8c6aa0d0e80d24ba0035223890ebb9f1e4ddc
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

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

  Log Message:
  -----------
  [MLIR][OpenMP][Docs] Document loop representation (NFC) (#107235)

This patch describes the loop wrapper approach to represent
loop-associated constructs in the OpenMP MLIR dialect and documents
current limitations and ongoing efforts.


  Commit: 79ec1e7d7298b21f76b35a1a733c5245a8c850b9
      https://github.com/llvm/llvm-project/commit/79ec1e7d7298b21f76b35a1a733c5245a8c850b9
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

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

  Log Message:
  -----------
  [MLIR][OpenMP][Docs] Document compound constructs representation (NFC) (#107236)

This patch documents the MLIR representation of OpenMP compound
constructs discussed in
[this](https://discourse.llvm.org/t/rfc-representing-combined-composite-constructs-in-the-openmp-dialect/76986)
and
[this](https://discourse.llvm.org/t/rfc-disambiguation-between-loop-and-block-associated-omp-parallelop/79972)
RFC.


  Commit: f71061258484390cb74752e9d7e486264aa4db0a
      https://github.com/llvm/llvm-project/commit/f71061258484390cb74752e9d7e486264aa4db0a
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

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

  Log Message:
  -----------
  Revert "[clang][codegen] Fix possible crash when setting TBAA metadata on FP math libcalls (#108575)"

This reverts commit a56ca1a0fb248c6f38b5841323a74673748f43ea.

This commit broke code generation for x86 mingw targets, with regards
to long double math functions - see
https://github.com/llvm/llvm-project/pull/108575#issuecomment-2352574978
for details.


  Commit: b54be00a29f8dabf9b0d9ec69373e859bc75ded4
      https://github.com/llvm/llvm-project/commit/b54be00a29f8dabf9b0d9ec69373e859bc75ded4
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

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

  Log Message:
  -----------
  [Flang][OpenMP] Process motion clauses in a single call (NFC) (#108046)

This patch removes the template parameter of the
`ClauseProcessor::processMotionClauses()` method and instead processes
both `TO` and `FROM` as part of a single call. This also enables moving
the implementation out of the header and makes it simpler for a
follow-up patch to potentially refactor `processMap()`,
`processMotionClauses()`, `processUseDeviceAddr()` and
`processUseDevicePtr()`, and minimize code duplication among these.


  Commit: 9548dbedbc1b2bfb130c91df54e8007acb81e1b0
      https://github.com/llvm/llvm-project/commit/9548dbedbc1b2bfb130c91df54e8007acb81e1b0
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    A lldb/test/API/lang/cpp/no_unique_address/Makefile
    A lldb/test/API/lang/cpp/no_unique_address/TestNoUniqueAddress.py
    A lldb/test/API/lang/cpp/no_unique_address/main.cpp

  Log Message:
  -----------
  [lldb][test] Add TestNoUniqueAddress.py

Tests that run expressions on record types with
`[[no_unique_address]]` fields.


  Commit: 5aaf384b1614fcef5504d0b16d3e5063f72943c1
      https://github.com/llvm/llvm-project/commit/5aaf384b1614fcef5504d0b16d3e5063f72943c1
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    M flang/include/flang/Optimizer/Builder/LowLevelIntrinsics.h
    M flang/include/flang/Optimizer/Support/DataLayout.h
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/ConvertCall.cpp
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/lib/Optimizer/Builder/LowLevelIntrinsics.cpp
    M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
    M flang/lib/Optimizer/Transforms/StackArrays.cpp
    M flang/lib/Optimizer/Transforms/StackReclaim.cpp
    M flang/test/HLFIR/order_assignments/where-scheduling.f90
    M flang/test/Lower/HLFIR/block_bindc_pocs.f90
    M flang/test/Lower/HLFIR/elemental-array-ops.f90
    M flang/test/Lower/HLFIR/proc-pointer-comp-pass.f90
    M flang/test/Lower/HLFIR/where-nonelemental.f90
    M flang/test/Lower/array-elemental-calls-char.f90
    M flang/test/Lower/block.f90
    M flang/test/Lower/computed-goto.f90
    M flang/test/Lower/dummy-procedure-character.f90
    M flang/test/Lower/explicit-interface-results-2.f90
    M flang/test/Lower/forall/array-constructor.f90
    M flang/test/Lower/host-associated-functions.f90
    M flang/test/Lower/host-associated.f90
    M flang/test/Lower/io-write.f90
    M flang/test/Transforms/stack-arrays.fir

  Log Message:
  -----------
  [flang][NFC] use llvm.intr.stacksave/restore instead of opaque calls (#108562)

The new LLVM stack save/restore intrinsic operations are more convenient
than function calls because they do not add function declarations to the
module and therefore do not block the parallelisation of passes.
Furthermore they could be much more easily marked with memory effects
than function calls if that ever proved useful.

This builds on top of #107879.

Resolves #108016


  Commit: 1881f648e28aa58aa0a4dca1422572f65dafa9a4
      https://github.com/llvm/llvm-project/commit/1881f648e28aa58aa0a4dca1422572f65dafa9a4
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/readability/AvoidUnconditionalPreprocessorIfCheck.cpp
    M clang-tools-extra/pseudo/lib/cxx/cxx.bnf
    M clang/include/clang/Basic/DiagnosticLexKinds.td
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/TokenKinds.def
    M clang/lib/Basic/OperatorPrecedence.cpp
    M clang/lib/Lex/Lexer.cpp
    M clang/lib/Parse/ParseExpr.cpp
    M clang/lib/Sema/SemaCodeComplete.cpp
    M clang/test/SemaOpenCL/unsupported.cl

  Log Message:
  -----------
  Remove ^^ as a token in OpenCL (#108224)

OpenCL has a reserved operator (^^), the use of which was diagnosed as
an error (735c6cdebdcd4292928079cb18a90f0dd5cd65fb). However, OpenCL
also encourages working with the blocks language extension. This token
has a parsing ambiguity as a result. Consider:

  unsigned x=0;
  unsigned y=x^^{return 0;}();

This should result in y holding the value zero (0^0) through an
immediately invoked block call as the right-hand side of the xor
operator. However, it causes errors instead because of this reserved
token: https://godbolt.org/z/navf7jTv1

This token is still reserved in OpenCL 3.0, so we still wish to issue a
diagnostic for its use. However, we do not need to create a token for an
extension point that's been unused for about a decade. So this patch
moves the diagnostic from a parsing diagnostic to a lexing diagnostic
and no longer forms a single token. The diagnostic behavior is slightly
worse as a result, but still seems acceptable.

Part of the reason this is coming up is because WG21 is considering
using ^^ as a token for reflection, so this token may come back in the
future.


  Commit: 87d56c59f52d033cd7c46d769338b9c47fea4929
      https://github.com/llvm/llvm-project/commit/87d56c59f52d033cd7c46d769338b9c47fea4929
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M libcxx/include/__chrono/formatter.h
    M libcxx/include/__chrono/ostream.h
    M libcxx/include/__chrono/parser_std_format_spec.h
    M libcxx/include/__ostream/basic_ostream.h
    M libcxx/include/__ostream/print.h
    M libcxx/include/__thread/jthread.h
    M libcxx/include/__thread/this_thread.h
    M libcxx/include/__thread/thread.h
    M libcxx/include/fstream
    M libcxx/include/iomanip
    M libcxx/include/istream
    M libcxx/include/ostream
    M libcxx/include/sstream
    M libcxx/include/streambuf
    M libcxx/include/syncstream

  Log Message:
  -----------
  [libc++][modules] Guard carved-out headers more consistently (#108637)

Several headers that should not be provided when localization or threads
are disabled were not guarded. That works until one tries to build with
modules and these headers get pulled in.

Note that this could be cleaned up further into something more
systematic, but this patch solves the immediate problems I ran into with
the monolithic modulemap and doesn't create any new inconsistency that
wasn't already there.


  Commit: af5a45b34bcc84e175d54226d5898ae20fc3859c
      https://github.com/llvm/llvm-project/commit/af5a45b34bcc84e175d54226d5898ae20fc3859c
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/test/Transforms/SimplifyCFG/X86/hoist-loads-stores-with-cf.ll

  Log Message:
  -----------
  [X86,SimplifyCFG] Use passthru to reduce select (#108754)


  Commit: 765e106fb1b0e0aeb1bba18dfd93bd28233bba2f
      https://github.com/llvm/llvm-project/commit/765e106fb1b0e0aeb1bba18dfd93bd28233bba2f
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/make/libcxx-simulators-common/compressed_pair.h
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/TestDataFormatterLibcxxStringSimulator.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/main.cpp
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/unique_ptr/TestDataFormatterLibcxxUniquePtrSimulator.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/unique_ptr/main.cpp

  Log Message:
  -----------
  [lldb][test] Add a new __compressed_pair layout to libcxx simulator tests (#99012)

This is a follow-up to https://github.com/llvm/llvm-project/pull/98330
for the upcoming `__compressed_pair` refactor in
https://github.com/llvm/llvm-project/issues/93069

This patch just adds the 2 new copies of `_LIBCPP_COMPRESSED_PAIR`
layouts to the simulator tests.


  Commit: 63b6c384468784d247401098c6200deb9ab70ba0
      https://github.com/llvm/llvm-project/commit/63b6c384468784d247401098c6200deb9ab70ba0
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/test/SemaTemplate/cwg2398.cpp

  Log Message:
  -----------
  [clang] Fix incorrect partial ordering context setting (#108491)


  Commit: ed4a2a108ec867188c65f4c3743008db8dd1c0bb
      https://github.com/llvm/llvm-project/commit/ed4a2a108ec867188c65f4c3743008db8dd1c0bb
  Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Parse/ParseDeclCXX.cpp
    A clang/test/Parser/static_assert.cpp

  Log Message:
  -----------
  [Clang] handle invalid close location in static assert declaration (#108701)

Fixes #108687


  Commit: abe964aa47a293523613df1ab5bd1c16cf50e0e7
      https://github.com/llvm/llvm-project/commit/abe964aa47a293523613df1ab5bd1c16cf50e0e7
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/CheckExprLifetime.cpp
    M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp

  Log Message:
  -----------
  [clang] Don't emit bogus dangling diagnostics when `[[gsl::Owner]]` and `[[clang::lifetimebound]]` are used together. (#108280)

In the GSL analysis, we don't track the `this` object if the conversion
is not from gsl::owner to gsl pointer, we want to be conservative here
to avoid triggering false positives.

Fixes #108272


  Commit: 823eab2bd5fcdade92790d0f53fc5978ae068e46
      https://github.com/llvm/llvm-project/commit/823eab2bd5fcdade92790d0f53fc5978ae068e46
  Author: David Green <david.green at arm.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/scmp.ll
    A llvm/test/CodeGen/AArch64/sve-scmp.ll
    A llvm/test/CodeGen/AArch64/sve-ucmp.ll
    M llvm/test/CodeGen/AArch64/ucmp.ll

  Log Message:
  -----------
  [AArch64] Add a selection for vector scmp/ucmp tests. NFC


  Commit: a06d84abd3f90a71f077ed45a54fa5439740267d
      https://github.com/llvm/llvm-project/commit/a06d84abd3f90a71f077ed45a54fa5439740267d
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

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

  Log Message:
  -----------
  [NFC][Clang][TableGen] Refactor ClangASTNodesEmitter (#108580)

Change macroName() to accept a StringRef to avoid extra string copy. 
Simplify ASTNode comparison function.
Use equal_range() instead of calling lower_bound() and upper_bound()
separately for std::multimap.
No need to use std::make_pair.


  Commit: 0e948bfd31df6a1d4f62934c9ef453a38da6ca2b
      https://github.com/llvm/llvm-project/commit/0e948bfd31df6a1d4f62934c9ef453a38da6ca2b
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M clang/utils/TableGen/ASTTableGen.cpp
    M clang/utils/TableGen/ClangASTPropertiesEmitter.cpp
    M clang/utils/TableGen/ClangAttrEmitter.cpp
    M clang/utils/TableGen/ClangBuiltinsEmitter.cpp
    M clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
    M clang/utils/TableGen/ClangOpcodesEmitter.cpp
    M clang/utils/TableGen/ClangOpenCLBuiltinEmitter.cpp
    M clang/utils/TableGen/ClangOptionDocEmitter.cpp
    M clang/utils/TableGen/ClangSACheckersEmitter.cpp
    M clang/utils/TableGen/ClangSyntaxEmitter.cpp
    M clang/utils/TableGen/MveEmitter.cpp
    M clang/utils/TableGen/NeonEmitter.cpp
    M clang/utils/TableGen/RISCVVEmitter.cpp
    M clang/utils/TableGen/SveEmitter.cpp

  Log Message:
  -----------
  [NFC][clang][TableGen] Remove redundant llvm:: namespace qualifier (#108627)

Remove llvm:: from .cpp files, and add "using namespace llvm" if needed.


  Commit: e509e8777a26d586514d0129baa153f734ec14f7
      https://github.com/llvm/llvm-project/commit/e509e8777a26d586514d0129baa153f734ec14f7
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

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

  Log Message:
  -----------
  [SCF] Avoid repeated hash lookups (NFC) (#108793)


  Commit: 91591794514fa6f17d87285acb41e3dba1eee5e5
      https://github.com/llvm/llvm-project/commit/91591794514fa6f17d87285acb41e3dba1eee5e5
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M clang/lib/Format/MacroExpander.cpp

  Log Message:
  -----------
  [Format] Avoid repeated hash lookups (NFC) (#108794)


  Commit: 6f52c1e6b131f79abd47d692b1f597046efb2b6b
      https://github.com/llvm/llvm-project/commit/6f52c1e6b131f79abd47d692b1f597046efb2b6b
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

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

  Log Message:
  -----------
  [OpenACC] Avoid repeated hash lookups (NFC) (#108795)


  Commit: f4a3309c9aa2dc7194cfb45b8bc673414e899d0f
      https://github.com/llvm/llvm-project/commit/f4a3309c9aa2dc7194cfb45b8bc673414e899d0f
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/IPO/OpenMPOpt.cpp

  Log Message:
  -----------
  [IPO] Avoid repeated hash lookups (NFC) (#108796)


  Commit: adb70045144ac2cab085a2a377b33388aed23114
      https://github.com/llvm/llvm-project/commit/adb70045144ac2cab085a2a377b33388aed23114
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

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

  Log Message:
  -----------
  [LLVM][CLange] Rename NodeType::Record to NodeType::Rec (#108826)

Fixes build failure by avoiding conflicting with `Record` class name.


  Commit: e0e93c3f76fb5ea388ff8dac7a56cffaa75931b5
      https://github.com/llvm/llvm-project/commit/e0e93c3f76fb5ea388ff8dac7a56cffaa75931b5
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M flang/test/Lower/OpenMP/distribute-parallel-do.f90
    M flang/test/Semantics/OpenMP/combined-constructs.f90
    M flang/test/Semantics/OpenMP/ordered03.f90
    M llvm/include/llvm/Frontend/OpenMP/OMP.td

  Log Message:
  -----------
  [Frontend][OpenMP] Follow compound construct clause restrictions (#107853)

This patch removes from the list of allowed clauses for a handful of
compound constructs those that are specifically disallowed by the OpenMP
spec. In particular, the following restrictions are followed:
- (regarding combined constructs) If _directive-name-A_ is `target`, the
`copyin` clause must not be specified.
- (regarding composite constructs) If _directive-name-A_ is
`distribute`, the `ordered` clause must not be specified.

These restrictions are listed in the OpenMP Specification version 5.2,
sections 17.4 and 17.5. Since it's a similar case as PR #90754, I'm
adding people involved in that decision as reviewers here.


  Commit: b3470c3d7ab078b201bd65afc3b902d1ed41bc21
      https://github.com/llvm/llvm-project/commit/b3470c3d7ab078b201bd65afc3b902d1ed41bc21
  Author: Congcong Cai <congcongcai0907 at 163.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/MoveChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountDiagnostics.cpp
    M clang/lib/StaticAnalyzer/Checkers/SmartPtrModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/StackAddrEscapeChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StdVariantChecker.cpp
    M clang/lib/StaticAnalyzer/Core/BasicValueFactory.cpp
    M clang/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp
    M clang/lib/StaticAnalyzer/Core/LoopUnrolling.cpp
    M clang/lib/StaticAnalyzer/Core/RangeConstraintManager.cpp

  Log Message:
  -----------
  [clang][NFC] declare internal linkage function static (#108759)

Detected by `misc-use-internal-linkage`


  Commit: 79c4ece75f5fcc8a9e6bcd560f3184cfab04378a
      https://github.com/llvm/llvm-project/commit/79c4ece75f5fcc8a9e6bcd560f3184cfab04378a
  Author: goussepi <pierre.gousseau at sony.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_libignore.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_libignore.h
    M compiler-rt/test/tsan/ignore_lib3.cpp

  Log Message:
  -----------
  [tsan] Allow unloading of ignored libraries (#105660)

Allows unloading and reloading of ignored libraries. We don't attempt to
reuse or free memory of unloaded library. So TSan will assert if an
ignored library is reloaded 128 times.

Co-authored-by: Vitaly Buka <vitalybuka at gmail.com>


  Commit: 165f0e80f6b811ab0c82b52e39cb5fb4010850b7
      https://github.com/llvm/llvm-project/commit/165f0e80f6b811ab0c82b52e39cb5fb4010850b7
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M libcxx/include/__std_clang_module
    M libcxx/include/wchar.h
    M libcxx/include/wctype.h
    M libcxx/modules/std.compat.cppm.in
    M libcxx/modules/std.cppm.in
    M libcxx/test/std/depr/depr.c.headers/wchar_h.compile.pass.cpp
    M libcxx/test/std/depr/depr.c.headers/wctype_h.compile.pass.cpp
    M libcxx/test/std/strings/c.strings/cwchar.pass.cpp
    M libcxx/test/std/strings/c.strings/cwchar_include_order1.compile.verify.cpp
    M libcxx/test/std/strings/c.strings/cwchar_include_order2.compile.verify.cpp
    M libcxx/test/std/strings/c.strings/cwctype.pass.cpp
    M libcxx/utils/libcxx/header_information.py

  Log Message:
  -----------
  [libc++][modules] Don't error when including <wchar.h> or <wctype.h> without wide character support (#108639)

Instead, make the headers empty like we do for all the other carve-outs.


  Commit: e6618aae43012d3759f326ac6527744885825331
      https://github.com/llvm/llvm-project/commit/e6618aae43012d3759f326ac6527744885825331
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M flang/lib/Lower/ConvertCall.cpp
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    A flang/test/Lower/HLFIR/ignore-type-f77-character.f90
    M flang/test/Lower/call-suspect.f90
    M flang/test/Lower/implicit-call-mismatch.f90

  Log Message:
  -----------
  [flang] fix ignore_tkr(tk) with character dummy (#108168)

The test code with ignore_tkr(tk) on character dummy passed by
fir.boxchar<> was crashing the compiler in [an
assert](https://github.com/llvm/llvm-project/blob/2afe678f0a246387977a8ca694d4489e2c868991/flang/lib/Optimizer/Dialect/FIRType.cpp#L632)
in `changeElementType`.

It makes little sense to call changeElementType on a fir.boxchar since
this type is lossy (the shape is not part of it). Just skip it in the
code dealing with ignore(tk) when hitting this case


  Commit: e5d255607d200f59c5f7474b8dde6fe72d53e348
      https://github.com/llvm/llvm-project/commit/e5d255607d200f59c5f7474b8dde6fe72d53e348
  Author: Vakhurin Sergei <igelbox at gmail.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
    M clang/include/clang/Basic/Diagnostic.h
    M clang/include/clang/Basic/DiagnosticIDs.h
    M clang/include/clang/Basic/PartialDiagnostic.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Basic/Diagnostic.cpp
    M clang/lib/Basic/DiagnosticIDs.cpp
    M clang/lib/Basic/SourceManager.cpp
    M clang/lib/Frontend/Rewrite/FixItRewriter.cpp
    M clang/lib/Frontend/TextDiagnosticPrinter.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaBase.cpp
    M clang/lib/Serialization/ASTReader.cpp
    A clang/test/PCH/race-condition.cpp
    M clang/unittests/Basic/DiagnosticTest.cpp
    M clang/unittests/Driver/DXCModeTest.cpp

  Log Message:
  -----------
  Fix OOM in FormatDiagnostic (#108187)

Resolves: #70930 (and probably latest comments from
https://github.com/clangd/clangd/issues/251)
by fixing racing for the shared `DiagStorage` value which caused messing
with args inside the storage and then formatting the following message
with `getArgSInt(1)` == 2:
```
def err_module_odr_violation_function : Error<
  "%q0 has different definitions in different modules; "
  "%select{definition in module '%2'|defined here}1 "
  "first difference is "
```
which causes `HandleSelectModifier` to go beyond the `ArgumentLen` so
the recursive call to `FormatDiagnostic` was made with `DiagStr` >
`DiagEnd` that leads to infinite `while (DiagStr != DiagEnd)`.

**The Main Idea:**
Reuse the existing `DiagStorageAllocator` logic to make all
`DiagnosticBuilder`s having independent states.
Also, encapsulating the rest of state (e.g. ID and Loc) into
`DiagnosticBuilder`.

**TODO (if it will be requested by reviewer):**
- [x] add a test (I have no idea how to turn a whole bunch of my
proprietary code which leads `clangd` to OOM into a small public
example.. probably I must try using
[this](https://github.com/llvm/llvm-project/issues/70930#issuecomment-2209872975)
instead)
- [x] [`Diag.CurDiagID !=
diag::fatal_too_many_errors`](https://github.com/llvm/llvm-project/pull/108187#pullrequestreview-2296395489)
- [ ] ? get rid of `DiagStorageAllocator` at all and make
`DiagnosticBuilder` having they own `DiagnosticStorage` coz it seems
pretty small so should fit the stack for short-living
`DiagnosticBuilder` instances


  Commit: 76a85b0e2f3e59a5fd96c4b6dbd1a2835329d1e0
      https://github.com/llvm/llvm-project/commit/76a85b0e2f3e59a5fd96c4b6dbd1a2835329d1e0
  Author: Sam Elliott <quic_aelliott at quicinc.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M llvm/docs/RISCVUsage.rst

  Log Message:
  -----------
  [RISCV][docs] GP Relaxation and Small Data Limit (#108592)

As discussed in this week's RISC-V sync-up, we said we would add
documentation about these options, and how they work.


  Commit: 5cead0cb0bdeebd47e648114541b2998ed83df6f
      https://github.com/llvm/llvm-project/commit/5cead0cb0bdeebd47e648114541b2998ed83df6f
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
    M clang/include/clang/Basic/Diagnostic.h
    M clang/include/clang/Basic/DiagnosticIDs.h
    M clang/include/clang/Basic/PartialDiagnostic.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Basic/Diagnostic.cpp
    M clang/lib/Basic/DiagnosticIDs.cpp
    M clang/lib/Basic/SourceManager.cpp
    M clang/lib/Frontend/Rewrite/FixItRewriter.cpp
    M clang/lib/Frontend/TextDiagnosticPrinter.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaBase.cpp
    M clang/lib/Serialization/ASTReader.cpp
    R clang/test/PCH/race-condition.cpp
    M clang/unittests/Basic/DiagnosticTest.cpp
    M clang/unittests/Driver/DXCModeTest.cpp

  Log Message:
  -----------
  Revert "Fix OOM in FormatDiagnostic" (#108838)

Reverting due to build failures found in #108187


  Commit: 53d60398efb06df683f1189a554f547873331c81
      https://github.com/llvm/llvm-project/commit/53d60398efb06df683f1189a554f547873331c81
  Author: Jake Egan <Jake.egan at ibm.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M llvm/unittests/Support/DynamicLibrary/CMakeLists.txt

  Log Message:
  -----------
  [CMake] Use old DynamicLibrary symbol behavior on AIX for now (#108692)

New behavior broke the AIX bot, so fall back to the old behavior on AIX
for now to give time to investigate


  Commit: 0f723eb67197421caf6504a7e4594751040b1924
      https://github.com/llvm/llvm-project/commit/0f723eb67197421caf6504a7e4594751040b1924
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M clang/lib/Headers/llvm_libc_wrappers/ctype.h

  Log Message:
  -----------
  [Clang] Add locale variants to libc offload wrappers

Summary:
These need to be present now that the GPU "supports" them (only for the
default POSIX locale).


  Commit: b9198a17315757dc0c2e831c9df0498dcab55285
      https://github.com/llvm/llvm-project/commit/b9198a17315757dc0c2e831c9df0498dcab55285
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M flang/runtime/CMakeLists.txt
    M flang/runtime/Float128Math/CMakeLists.txt

  Log Message:
  -----------
  [flang][runtime] Fixed include directories for Float128Math files. (#108466)

When building FortranRuntime out of tree on aarch64, the list of include
directories for the files comming from FortranFloat128MathILib
has to contain flang/runtime. I did this via
INTERFACE_INCLUDE_DIRECTORIES property.


  Commit: 0bc8168070677ef08d58864477d95ebdef917d0c
      https://github.com/llvm/llvm-project/commit/0bc8168070677ef08d58864477d95ebdef917d0c
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/test/AST/ByteCode/invalid.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix reinterpret_casts from pointer to non-pointers (#108811)

We need to be a little more careful here with whether or nor we are able
to do the cast at all or not.


  Commit: 94e7c0b051c79fd56205f115771980f2e7812306
      https://github.com/llvm/llvm-project/commit/94e7c0b051c79fd56205f115771980f2e7812306
  Author: A. Jiang <de34 at live.cn>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M libcxx/docs/ReleaseNotes/20.rst
    M libcxx/docs/Status/Cxx20Papers.csv
    M libcxx/docs/UserDocumentation.rst
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__algorithm/inplace_merge.h
    M libcxx/include/__algorithm/stable_partition.h
    M libcxx/include/__algorithm/stable_sort.h
    M libcxx/include/__memory/temporary_buffer.h
    A libcxx/include/__memory/unique_temporary_buffer.h
    M libcxx/include/memory
    M libcxx/include/module.modulemap
    M libcxx/include/syncstream
    M libcxx/test/libcxx/diagnostics/memory.nodiscard.verify.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/stable_partition.pass.cpp
    M libcxx/test/std/utilities/memory/temporary.buffer/overaligned.pass.cpp
    M libcxx/test/std/utilities/memory/temporary.buffer/temporary_buffer.pass.cpp
    M libcxx/utils/libcxx/test/modules.py
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn

  Log Message:
  -----------
  [libc++] Remove get_temporary_buffer and return_temporary_buffer (#100914)

Works towards P0619R4 / #99985.

The use of `std::get_temporary_buffer` and `std::return_temporary_buffer`
are replaced with `unique_ptr`-based RAII buffer holder.

Escape hatches:
- `_LIBCPP_ENABLE_CXX20_REMOVED_TEMPORARY_BUFFER` restores
`std::get_temporary_buffer` and `std::return_temporary_buffer`.

Drive-by changes:
- In `<syncstream>`, states that `get_temporary_buffer` is now removed,
because `<syncstream>` is added in C++20.


  Commit: 50985d23e517b4238effcd3e41b0329fdc6a6999
      https://github.com/llvm/llvm-project/commit/50985d23e517b4238effcd3e41b0329fdc6a6999
  Author: Jeff Bailey <jbailey at raspberryginger.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

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

  Log Message:
  -----------
  [libc][nfc] Fix typo in header generation message. (#108813)

Fix a typo in the header generation message.

Before:
Generating header from
/home/vscode/llvm-project/llvm/../libc/newhdrgen/yaml/ctype.yaml and
/home/vscode/llvm-project/libc/include/ctype.h.def

After:
Generating header ctype.h from
/home/vscode/llvm-project/llvm/../libc/newhdrgen/yaml/ctype.yaml and
/home/vscode/llvm-project/libc/include/ctype.h.def


  Commit: 01df775dc42b62141ad07ad30aaa361ab162b8f5
      https://github.com/llvm/llvm-project/commit/01df775dc42b62141ad07ad30aaa361ab162b8f5
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M libcxx/docs/ReleaseNotes/20.rst
    M libcxx/include/__hash_table
    M libcxx/include/__tree
    M libcxx/include/forward_list
    M libcxx/include/list

  Log Message:
  -----------
  [libc++] Take the ABI break for `std::list`'s pointer UB unconditionally (#100585)

This ABI break only affects fancy pointer which have a different value
representation when pointing to a base of T instead of T itself. This
seems like a rather small set of fancy pointers, which themselves
already represent a very small niche. This patch swaps a pointer to T
with a pointer to base of T in a few library-internal types.


  Commit: b592917eec407a01ef07334af5aafe6c8922c80a
      https://github.com/llvm/llvm-project/commit/b592917eec407a01ef07334af5aafe6c8922c80a
  Author: Kolya Panchenko <87679760+nikolaypanchenko at users.noreply.github.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

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

  Log Message:
  -----------
  [LV] Added verification of EVL recipes (#107630)


  Commit: 4c6f313cb340c435f47ac032857030768c81c341
      https://github.com/llvm/llvm-project/commit/4c6f313cb340c435f47ac032857030768c81c341
  Author: Pavel Skripkin <paskripkin at gmail.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
    M clang/test/Analysis/NewDelete-atomics.cpp
    A clang/test/Analysis/malloc-refcounted.c

  Log Message:
  -----------
  [analyzer] [MallocChecker] suspect all release functions as candidate for suppression (#104599)

Current MalloChecker logic suppresses FP caused by refcounting only for
C++ destructors. The same pattern occurs a lot in C in objects with
intrusive refcounting. See #104229 for code example.

To extend current logic to C, suspect all release functions as candidate
for suppression.

Closes: #104229


  Commit: f564a48f0ea4d2100c0cadfa6e6f20f97244025e
      https://github.com/llvm/llvm-project/commit/f564a48f0ea4d2100c0cadfa6e6f20f97244025e
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-user-not-min.ll
    A llvm/test/Transforms/SLPVectorizer/X86/trunc-node-reused.ll

  Log Message:
  -----------
  [SLP]Fix PR108700: correctly identify id of the operand node

If the operand node for truncs is not created during construction, but
one of the previous ones is reused instead, need to correctly identify
its index, to correctly emit the code.

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


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

  Changed paths:
    A flang/include/flang/Runtime/CUDA/memory.h
    M flang/lib/Optimizer/Dialect/FIRType.cpp
    M flang/runtime/CUDA/CMakeLists.txt
    A flang/runtime/CUDA/memory.cpp

  Log Message:
  -----------
  [flang][cuda] Add new entry points function for data transfer (#108244)

Add new entry points for more complex data transfer involving
descriptors. These functions will be called when converting
`cuf.data_transfer` operations.


  Commit: 69f3244da76586be393d1e97b01660c6f03d666c
      https://github.com/llvm/llvm-project/commit/69f3244da76586be393d1e97b01660c6f03d666c
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

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

  Log Message:
  -----------
  [NFC][sanitizer] Switch to `gnu_get_libc_version` (#108724)

`gnu_get_libc_version` unlike `confstr` is not
intercepted. We should be able to use this
function earier.

Looks like we use `confstr` staring from
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60038
but there is no specific reason to refer it over
`gnu_get_libc_version`.


  Commit: 18ef467d73d7dfc471c98d76021f040fef0037bf
      https://github.com/llvm/llvm-project/commit/18ef467d73d7dfc471c98d76021f040fef0037bf
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/buildvector-postpone-for-dependency.ll

  Log Message:
  -----------
  [SLP]Fix PR108709: postpone buildvector clustered nodes, if required

The "clustered" nodes for buildvector nodes must be postponed in
accordance with the global flag, otherwise it may cause crash because of
the dependency between phi nodes.


  Commit: c0719d8c08f440feab09418f02e5937426756b40
      https://github.com/llvm/llvm-project/commit/c0719d8c08f440feab09418f02e5937426756b40
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M llvm/RELEASE_TESTERS.TXT
    M llvm/docs/CodeReview.rst
    M llvm/docs/Contributing.rst
    M llvm/docs/DeveloperPolicy.rst
    M llvm/docs/HowToReleaseLLVM.rst

  Log Message:
  -----------
  [Policy] Replace "code owners" with "maintainers" (#107384)

This replaces the previous Code Owners section of our developer policy
with a new section for Maintainers. It also updates most of the places
we mention "code owner" in the documentation (it does not update the
files named `Code Owners.rst` or similar because those should be updated
when the subprojects add their `Maintainers.rst` file).

The wording was taken from what was proposed in the RFC (including all
suggested amendments from folks on the thread).

Please see the RFC for more details:

https://discourse.llvm.org/t/rfc-proposing-changes-to-the-community-code-ownership-policy/80714/


  Commit: 08efa23083606dc0248c4a7dee7087fa96b29c04
      https://github.com/llvm/llvm-project/commit/08efa23083606dc0248c4a7dee7087fa96b29c04
  Author: Max191 <44243577+Max191 at users.noreply.github.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp
    M mlir/test/Dialect/Linalg/fuse-with-reshape-by-collapsing.mlir

  Log Message:
  -----------
  [mlir] Allow multi-result ops in reshape fusion (#108576)

Fusion of reshapes by collapsing patterns were restricted to single
result operations, but the implementation supports multi result ops.
This PR removes the restriction, since it is not necessary.


  Commit: 5c348f692a8dff98a3780d0b859fb0949eccbaca
      https://github.com/llvm/llvm-project/commit/5c348f692a8dff98a3780d0b859fb0949eccbaca
  Author: Thorsten Schütt <schuett at gmail.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
    M llvm/include/llvm/CodeGen/GlobalISel/GenericMachineInstrs.h
    M llvm/include/llvm/CodeGen/GlobalISel/Utils.h
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/lib/CodeGen/GlobalISel/CMakeLists.txt
    A llvm/lib/CodeGen/GlobalISel/CombinerHelperCompares.cpp
    M llvm/lib/CodeGen/GlobalISel/Utils.cpp
    A llvm/test/CodeGen/AArch64/GlobalISel/combine-canonicalize-icmp.mir
    M llvm/test/CodeGen/AArch64/arm64-ccmp.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f64.ll
    M llvm/test/CodeGen/AMDGPU/rsq.f64.ll

  Log Message:
  -----------
  [GlobalIsel] Canonicalize G_ICMP (#108755)

As a side-effect, we start constant folding icmps.

Split out from https://github.com/llvm/llvm-project/pull/105991.


  Commit: f5ba3e1fa6b5f862789786fbb4b342dfc2c27c33
      https://github.com/llvm/llvm-project/commit/f5ba3e1fa6b5f862789786fbb4b342dfc2c27c33
  Author: nebulark <nebulark at users.noreply.github.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/test/CodeGen/debug-info-codeview-buildinfo.c
    M llvm/include/llvm/MC/MCTargetOptions.h
    M llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp
    M llvm/test/DebugInfo/COFF/build-info.ll
    M llvm/test/DebugInfo/COFF/global-type-hashes.ll
    M llvm/test/DebugInfo/COFF/types-basic.ll
    M llvm/test/DebugInfo/COFF/types-data-members.ll

  Log Message:
  -----------
  [CodeView] Flatten cmd args in frontend for LF_BUILDINFO (#106369)


  Commit: 960c975acd86b0135aac9396ffd311cb94e479b9
      https://github.com/llvm/llvm-project/commit/960c975acd86b0135aac9396ffd311cb94e479b9
  Author: David Green <david.green at arm.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/SystemZ/SystemZISelLowering.h
    M llvm/test/Analysis/CostModel/AArch64/cmp.ll
    M llvm/test/CodeGen/AArch64/scmp.ll
    M llvm/test/CodeGen/AArch64/ucmp.ll

  Log Message:
  -----------
  [AArch64] Expand scmp/ucmp vector operations with sub (#108830)

Unlike scalar, where AArch64 prefers expanding scmp/ucmp with select,
under Neon we can use the arithmetic expansion to generate fewer
instructions. Notably it also prevents the scalarization of vselect
during vector-legalization.


  Commit: f0787edc5e38e5ce7d180802e2c4d920e9253c56
      https://github.com/llvm/llvm-project/commit/f0787edc5e38e5ce7d180802e2c4d920e9253c56
  Author: Sam Elliott <quic_aelliott at quicinc.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M llvm/docs/RISCVUsage.rst

  Log Message:
  -----------
  [RISCV][docs] Explain Relaxation Default

As requested in follow-up comments on #108592.


  Commit: d3014e1f3b8289dad35475942f9bcf39403576eb
      https://github.com/llvm/llvm-project/commit/d3014e1f3b8289dad35475942f9bcf39403576eb
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

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

  Log Message:
  -----------
  [NFC][sanitizer] Use RTLD_DEFAULT for _dl_get_tls_static_info (#108723)

We don't intercept this one, no reason to use RTLD_NEXT.

Co-authored-by: Sam Elliott <quic_aelliott at quicinc.com>


  Commit: a40b36f28e184adec975b682bc8d0fbeeb91113e
      https://github.com/llvm/llvm-project/commit/a40b36f28e184adec975b682bc8d0fbeeb91113e
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

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

  Log Message:
  -----------
  [gn build] Port 5c348f692a8d


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

  Changed paths:
    M llvm/docs/RISCVUsage.rst

  Log Message:
  -----------
  [RISCV][Docs] Remove Zvbb, Zvbc and Zvk* from experimental C intrinsics section of RISCVUsage.rst. NFC (#108718)

These are no longer experimental after
051054e6f74303bc880221e88671745f363964cc. I left the section because we
will be adding intrinsics for Zvkgs and Zvbc32e.


  Commit: 83bb7318cad150608d5579aa9fbfd7e8d600e5c5
      https://github.com/llvm/llvm-project/commit/83bb7318cad150608d5579aa9fbfd7e8d600e5c5
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

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

  Log Message:
  -----------
  [clang][NFC] Add missing space in -Wunsafe-buffer-usage documentation (#107905)

That missing space was causing the whole sentence to be rendered
incorrectly in the resulting HTML.


  Commit: 9ec1f658144afb8b4117a62a593561a46a64d469
      https://github.com/llvm/llvm-project/commit/9ec1f658144afb8b4117a62a593561a46a64d469
  Author: Rainer Orth <ro at gcc.gnu.org>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

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

  Log Message:
  -----------
  Revert "[NFC][sanitizer] Simplify ifdef"

Breaks the [Solaris/sparcv9](https://lab.llvm.org/buildbot/#/builders/13/builds/2219) and [Solaris/amd64](https://lab.llvm.org/staging/#/builders/120/builds/1770) builds.

This reverts commit c21909a530f438bcc942c11e6d7b875bb28a028a.


  Commit: 04d71ea11ba84d989faed4572ee54265386851f6
      https://github.com/llvm/llvm-project/commit/04d71ea11ba84d989faed4572ee54265386851f6
  Author: kadir çetinkaya <kadircet at google.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

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

  Log Message:
  -----------
  [Format] Dont treat LBrace after extends/implements as initializer list (#108524)

This extends the fix in https://github.com/llvm/llvm-project/pull/106242
for other derived class types.


  Commit: 8ee685e601617031f50daa3df5e0f1aa38e15108
      https://github.com/llvm/llvm-project/commit/8ee685e601617031f50daa3df5e0f1aa38e15108
  Author: Farzon Lotfi <1802579+farzonl at users.noreply.github.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/test/CodeGen/DirectX/reversebits.ll

  Log Message:
  -----------
  [NFC][DirectX] fix intrinsics that need IntrNoMem and test typo (#108852)

In the process of adding scalarization support for DirectX target
intrinsics I found that intrinsics that weren't marked with `IntrNoMem`
did not get removed by
`RecursivelyDeleteTriviallyDeadInstructionsPermissive`. So this change
is to make it more clear that our intrinsics don't have side effects.

I only added `IntrNoMem` to the intrinics in `IntrinsicsDirectX.td` I
was involved with. There a potentially a few other cases that might
warrant this attribute, but will need input on the others.


  Commit: 0ea0e3a1b6dcf06674f0b64ecdad1f8e457f1aac
      https://github.com/llvm/llvm-project/commit/0ea0e3a1b6dcf06674f0b64ecdad1f8e457f1aac
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_tls_get_addr.cpp
    A compiler-rt/test/sanitizer_common/TestCases/Linux/tls_malloc_hook.c

  Log Message:
  -----------
  [sanitizer] Add CHECK that static TLS info is ready (#108684)

There is possibility of
static_tls_begin is set and static_tls_end is not yet

The test reproduces the case.
Stack trace looks like this:
* `MsanThread::Init`
* `SetThreadStackAndTls`
* `GetThreadStackAndTls`
* `GetThreadStackTopAndBottom`
* `pthread_getattr_np`
* `realloc`
* `__sanitizer_malloc_hook`
* TLS access
* `___interceptor___tls_get_addr`
* `DTLS_on_tls_get_addr`

The issue is that `SetThreadStackAndTls` implementation
stores `tls_begin` before `GetThreadStackTopAndBottom`,
and `tls_end` after. So we have partially initialized
state in `DTLS_on_tls_get_addr`.


  Commit: 000a3f0a54876f1519393e40085500e16ea12cf4
      https://github.com/llvm/llvm-project/commit/000a3f0a54876f1519393e40085500e16ea12cf4
  Author: Зишан Мирза <149377404+zimirza at users.noreply.github.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M libc/config/baremetal/arm/entrypoints.txt
    M libc/config/baremetal/riscv/entrypoints.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/newhdrgen/yaml/time.yaml
    M libc/spec/stdc.td
    M libc/src/time/CMakeLists.txt
    A libc/src/time/ctime.cpp
    A libc/src/time/ctime.h
    A libc/src/time/ctime_r.cpp
    A libc/src/time/ctime_r.h
    M libc/src/time/time_utils.h
    M libc/test/src/time/CMakeLists.txt
    A libc/test/src/time/ctime_r_test.cpp
    A libc/test/src/time/ctime_test.cpp

  Log Message:
  -----------
  [libc][c11] implement ctime (#107285)

This is an implementation of `ctime` and includes `ctime_r`.

According to documentation, `ctime` and `ctime_r` are defined as the
following:

```c
char *ctime(const time_t *timep);
char *ctime_r(const time_t *restrict timep, char buf[restrict 26]);
```

closes #86567


  Commit: d8ee96c50029c294c29dad4aad57def9eefc6ff3
      https://github.com/llvm/llvm-project/commit/d8ee96c50029c294c29dad4aad57def9eefc6ff3
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M llvm/test/MC/WebAssembly/annotations.s

  Log Message:
  -----------
  [WebAssembly] Add indentations to annotations.s (#108790)

Given that the instructions here are all control flow instructions,
adding indentations seem to make it easier to read.


  Commit: 4b4dbaaede7c6fd215f48dba83e2215a69a8811a
      https://github.com/llvm/llvm-project/commit/4b4dbaaede7c6fd215f48dba83e2215a69a8811a
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    A llvm/test/MC/WebAssembly/eh-assembly-legacy.s
    R llvm/test/MC/WebAssembly/eh-assembly.s

  Log Message:
  -----------
  [WebAssembly] Rename eh-assembly.s to -legacy.s (#108747)

The plan was to make `eh-assembly.s` contain both the legacy and the new
tests, but the new tests require `--no-type-check` because the type
checker for the new EH is in progress. In case this drags on further
than expected, this renames the current file to `-legacy.s` in order to
follow the current naming scheme in `test/CodeGen/WebAssembly`.

After landing this first, `eh-assembly-new.s` in #108668 will be renamed
to `eh-assembly.s`.


  Commit: e5271fef8fd8931370f04702ba2f9e8b2ab0e523
      https://github.com/llvm/llvm-project/commit/e5271fef8fd8931370f04702ba2f9e8b2ab0e523
  Author: Joshua Baehring <98630690+JoshuaMBa at users.noreply.github.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

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

  Log Message:
  -----------
  [scudo] Update secondary cache time-based release logic (#107507)

Secondary cache entries are now released to the OS from least recent to
most recent entries. This helps to avoid unnecessary scans of the cache
since entries ready to be released (specifically, entries that are
considered old relative to the configurable release interval) will
always be at the tail of the list of committed entries by the LRU
ordering. For this same reason, the `OldestTime` variable is no longer
needed to indicate when releases are necessary so it has been removed.


  Commit: 1bfc3d0de591b6b4e18ee720bd24f58e45d597ef
      https://github.com/llvm/llvm-project/commit/1bfc3d0de591b6b4e18ee720bd24f58e45d597ef
  Author: joaosaffran <126493771+joaosaffran at users.noreply.github.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    A clang/test/CodeGenHLSL/builtins/asfloat.hlsl
    A clang/test/SemaHLSL/BuiltIns/asfloat-errors.hlsl

  Log Message:
  -----------
  Implementing `asfloat` using `bit_cast` (#108686)

This PR is implementing `asfloat` for HLSL.

Fixes: #70098

Co-authored-by: Joao Saffran <jderezende at microsoft.com>


  Commit: 09e3a360581dc36d0820d3fb6da9bd7cfed87b5d
      https://github.com/llvm/llvm-project/commit/09e3a360581dc36d0820d3fb6da9bd7cfed87b5d
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M libcxx/include/__algorithm/copy.h
    M libcxx/include/__algorithm/copy_backward.h
    M libcxx/include/__algorithm/count.h
    M libcxx/include/__algorithm/equal.h
    M libcxx/include/__algorithm/equal_range.h
    M libcxx/include/__algorithm/find.h
    M libcxx/include/__algorithm/find_end.h
    M libcxx/include/__algorithm/fold.h
    M libcxx/include/__algorithm/includes.h
    M libcxx/include/__algorithm/inplace_merge.h
    M libcxx/include/__algorithm/is_permutation.h
    M libcxx/include/__algorithm/lexicographical_compare.h
    M libcxx/include/__algorithm/lower_bound.h
    M libcxx/include/__algorithm/make_projected.h
    M libcxx/include/__algorithm/min_element.h
    M libcxx/include/__algorithm/minmax_element.h
    M libcxx/include/__algorithm/mismatch.h
    M libcxx/include/__algorithm/move.h
    M libcxx/include/__algorithm/move_backward.h
    M libcxx/include/__algorithm/partial_sort_copy.h
    M libcxx/include/__algorithm/partition.h
    M libcxx/include/__algorithm/ranges_ends_with.h
    M libcxx/include/__algorithm/ranges_find_last.h
    M libcxx/include/__algorithm/ranges_generate.h
    M libcxx/include/__algorithm/ranges_generate_n.h
    M libcxx/include/__algorithm/ranges_partition.h
    M libcxx/include/__algorithm/search.h
    M libcxx/include/__algorithm/search_n.h
    M libcxx/include/__algorithm/set_difference.h
    M libcxx/include/__algorithm/set_intersection.h
    M libcxx/include/__algorithm/sort.h
    M libcxx/include/__algorithm/stable_partition.h
    M libcxx/include/__algorithm/uniform_random_bit_generator_adaptor.h
    M libcxx/include/__algorithm/upper_bound.h
    M libcxx/include/__atomic/atomic_ref.h
    M libcxx/include/__chrono/day.h
    M libcxx/include/__chrono/formatter.h
    M libcxx/include/__chrono/month.h
    M libcxx/include/__chrono/monthday.h
    M libcxx/include/__chrono/ostream.h
    M libcxx/include/__chrono/tzdb.h
    M libcxx/include/__chrono/tzdb_list.h
    M libcxx/include/__chrono/year.h
    M libcxx/include/__chrono/year_month.h
    M libcxx/include/__chrono/year_month_day.h
    M libcxx/include/__chrono/zoned_time.h
    M libcxx/include/__concepts/predicate.h
    M libcxx/include/__expected/expected.h
    M libcxx/include/__format/format_arg_store.h
    M libcxx/include/__format/write_escaped.h
    M libcxx/include/__functional/bind.h
    M libcxx/include/__functional/hash.h
    M libcxx/include/__functional/invoke.h
    M libcxx/include/__functional/mem_fn.h
    M libcxx/include/__functional/perfect_forward.h
    M libcxx/include/__functional/reference_wrapper.h
    M libcxx/include/__functional/weak_result_type.h
    M libcxx/include/__hash_table
    M libcxx/include/__iterator/common_iterator.h
    M libcxx/include/__iterator/concepts.h
    M libcxx/include/__iterator/counted_iterator.h
    M libcxx/include/__iterator/ostreambuf_iterator.h
    M libcxx/include/__memory/allocator_traits.h
    M libcxx/include/__memory/inout_ptr.h
    M libcxx/include/__memory/out_ptr.h
    M libcxx/include/__memory/pointer_traits.h
    M libcxx/include/__random/uniform_random_bit_generator.h
    M libcxx/include/__ranges/elements_view.h
    M libcxx/include/__ranges/range_adaptor.h
    M libcxx/include/__ranges/transform_view.h
    M libcxx/include/__string/char_traits.h
    M libcxx/include/__thread/jthread.h
    M libcxx/include/__thread/this_thread.h
    M libcxx/include/__thread/thread.h
    M libcxx/include/__tree
    M libcxx/include/__type_traits/is_swappable.h
    M libcxx/include/algorithm
    M libcxx/include/array
    M libcxx/include/bitset
    M libcxx/include/deque
    M libcxx/include/experimental/iterator
    M libcxx/include/fstream
    M libcxx/include/future
    M libcxx/include/iomanip
    M libcxx/include/map
    M libcxx/include/optional
    M libcxx/include/set
    M libcxx/include/sstream
    M libcxx/include/tuple
    M libcxx/include/unordered_map
    M libcxx/include/unordered_set
    M libcxx/include/variant
    M libcxx/include/vector
    M libcxx/test/libcxx/algorithms/alg.sorting/alg.heap.operations/make.heap/complexity.pass.cpp
    M libcxx/test/libcxx/algorithms/ranges_robust_against_copying_comparators.pass.cpp
    M libcxx/test/libcxx/algorithms/ranges_robust_against_copying_projections.pass.cpp
    M libcxx/test/libcxx/algorithms/robust_against_copying_comparators.pass.cpp
    M libcxx/test/libcxx/algorithms/robust_against_cpp20_hostile_iterators.compile.pass.cpp
    M libcxx/test/libcxx/containers/sequences/vector.bool/abi.compile.pass.cpp
    M libcxx/test/libcxx/containers/sequences/vector/abi.compile.pass.cpp
    M libcxx/test/libcxx/containers/unord/next_pow2.pass.cpp
    M libcxx/test/libcxx/containers/unord/next_prime.pass.cpp
    M libcxx/test/libcxx/depr/depr.function.objects/depr.adaptors.cxx1z.pass.cpp
    M libcxx/test/libcxx/diagnostics/ranges.nodiscard.verify.cpp
    M libcxx/test/libcxx/iterators/iterator.requirements/iterator.concepts/cpp20_iter_concepts.pass.cpp
    M libcxx/test/libcxx/ranges/range.utility.helpers/has_arrow.compile.pass.cpp
    M libcxx/test/libcxx/strings/basic.string/alignof.compile.pass.cpp
    M libcxx/test/libcxx/strings/basic.string/sizeof.compile.pass.cpp
    M libcxx/test/libcxx/transitive_includes/cxx03.csv
    M libcxx/test/libcxx/transitive_includes/cxx11.csv
    M libcxx/test/libcxx/transitive_includes/cxx14.csv
    M libcxx/test/libcxx/transitive_includes/cxx17.csv
    M libcxx/test/libcxx/transitive_includes/cxx20.csv
    M libcxx/test/libcxx/transitive_includes/cxx23.csv
    M libcxx/test/libcxx/transitive_includes/cxx26.csv
    M libcxx/test/libcxx/utilities/format/format.arguments/format.arg/arg_t.compile.pass.cpp
    M libcxx/test/libcxx/utilities/format/format.string/format.string.std/escaped_output.pass.cpp
    M libcxx/test/libcxx/utilities/function.objects/func.require/bullet_1_2_3.pass.cpp
    M libcxx/test/libcxx/utilities/function.objects/func.require/bullet_4_5_6.pass.cpp
    M libcxx/test/libcxx/utilities/memory/util.smartptr/util.smartptr.shared/function_type_default_deleter.verify.cpp
    M libcxx/test/libcxx/utilities/meta/meta_base.pass.cpp
    M libcxx/test/libcxx/utilities/utility/__murmur2_or_cityhash.abi-v1.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.random.shuffle/random_shuffle_urng.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/mismatch/mismatch.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/sort.heap/complexity.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/sort.heap/ranges_sort_heap.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.merge/inplace_merge_comp.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.merge/pstl.merge.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/sort/pstl.sort.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/stable.sort/stable_sort.pass.cpp
    M libcxx/test/std/algorithms/ranges_robust_against_omitting_invoke.pass.cpp
    M libcxx/test/std/algorithms/robust_against_proxy_iterators_lifetime_bugs.pass.cpp
    M libcxx/test/std/algorithms/robust_re_difference_type.compile.pass.cpp
    M libcxx/test/std/atomics/atomics.ref/bitwise_and_assign.pass.cpp
    M libcxx/test/std/atomics/atomics.ref/bitwise_or_assign.pass.cpp
    M libcxx/test/std/atomics/atomics.ref/bitwise_xor_assign.pass.cpp
    M libcxx/test/std/atomics/atomics.ref/fetch_add.pass.cpp
    M libcxx/test/std/atomics/atomics.ref/fetch_and.pass.cpp
    M libcxx/test/std/atomics/atomics.ref/fetch_or.pass.cpp
    M libcxx/test/std/atomics/atomics.ref/fetch_sub.pass.cpp
    M libcxx/test/std/atomics/atomics.ref/fetch_xor.pass.cpp
    M libcxx/test/std/atomics/atomics.ref/increment_decrement.pass.cpp
    M libcxx/test/std/atomics/atomics.ref/member_types.compile.pass.cpp
    M libcxx/test/std/atomics/atomics.ref/operator_minus_equals.pass.cpp
    M libcxx/test/std/atomics/atomics.ref/operator_plus_equals.pass.cpp
    M libcxx/test/std/atomics/atomics.types.generic/atomics.types.float/assign.pass.cpp
    M libcxx/test/std/atomics/atomics.types.generic/atomics.types.float/exchange.pass.cpp
    M libcxx/test/std/atomics/atomics.types.generic/atomics.types.float/fetch_add.pass.cpp
    M libcxx/test/std/atomics/atomics.types.generic/atomics.types.float/fetch_sub.pass.cpp
    M libcxx/test/std/atomics/atomics.types.generic/atomics.types.float/load.pass.cpp
    M libcxx/test/std/atomics/atomics.types.generic/atomics.types.float/operator.float.pass.cpp
    M libcxx/test/std/atomics/atomics.types.generic/atomics.types.float/operator.minus_equals.pass.cpp
    M libcxx/test/std/atomics/atomics.types.generic/atomics.types.float/operator.plus_equals.pass.cpp
    M libcxx/test/std/atomics/atomics.types.generic/atomics.types.float/wait.pass.cpp
    M libcxx/test/std/atomics/atomics.types.generic/cstdint_typedefs.pass.cpp
    M libcxx/test/std/atomics/atomics.types.generic/integral_typedefs.pass.cpp
    M libcxx/test/std/atomics/stdatomic.h.syn/types.compile.pass.cpp
    M libcxx/test/std/atomics/types.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_or_assign.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/try.emplace.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/copy.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/copy_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/copy_assign.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/initializer_list_compare.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/initializer_list_compare_alloc.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/copy.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/copy_alloc.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/copy_assign.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/initializer_list_compare.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/initializer_list_compare_alloc.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons/dtor_noexcept.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.cons/dtor_noexcept.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.cons/dtor_noexcept.pass.cpp
    M libcxx/test/std/containers/views/mdspan/layout_left/properties.pass.cpp
    M libcxx/test/std/containers/views/mdspan/layout_right/properties.pass.cpp
    M libcxx/test/std/containers/views/mdspan/layout_stride/deduction.pass.cpp
    M libcxx/test/std/depr/depr.c.headers/math_h.pass.cpp
    M libcxx/test/std/depr/depr.c.headers/stdlib_h.pass.cpp
    M libcxx/test/std/diagnostics/syserr/syserr.hash/error_code.pass.cpp
    M libcxx/test/std/diagnostics/syserr/syserr.hash/error_condition.pass.cpp
    M libcxx/test/std/experimental/memory/memory.observer.ptr/hash.pass.cpp
    M libcxx/test/std/experimental/simd/simd.reference/reference_arith_operators.pass.cpp
    M libcxx/test/std/experimental/simd/simd.reference/reference_bitwise_operators.pass.cpp
    M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.class/propagate_const.assignment/move_assign.pass.cpp
    M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.class/propagate_const.assignment/move_assign_convertible.pass.cpp
    M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.class/propagate_const.assignment/move_assign_convertible_propagate_const.pass.cpp
    M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.class/propagate_const.ctors/convertible_propagate_const.move_ctor.pass.cpp
    M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.class/propagate_const.ctors/move_ctor.pass.cpp
    M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.nonmembers/hash.pass.cpp
    M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.nonmembers/propagate_const.comparison_function_objects/equal_to.pass.cpp
    M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.nonmembers/propagate_const.comparison_function_objects/greater.pass.cpp
    M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.nonmembers/propagate_const.comparison_function_objects/greater_equal.pass.cpp
    M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.nonmembers/propagate_const.comparison_function_objects/less.pass.cpp
    M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.nonmembers/propagate_const.comparison_function_objects/less_equal.pass.cpp
    M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.nonmembers/propagate_const.comparison_function_objects/not_equal_to.pass.cpp
    M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.nonmembers/propagate_const.relops/equal.pass.cpp
    M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.nonmembers/propagate_const.relops/not_equal.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/iterator.basic/iterator.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/iterator.traits/const_pointer.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/iterator.traits/const_volatile_pointer.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/iterator.traits/pointer.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/iterator.traits/volatile_pointer.pass.cpp
    M libcxx/test/std/iterators/iterator.requirements/iterator.assoc.types/incrementable.traits/incrementable_traits.compile.pass.cpp
    M libcxx/test/std/iterators/iterator.requirements/iterator.concepts/iterator.concept.sentinel/sentinel_for.compile.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/reverse.iterators/reverse.iter.cmp/sfinae.compile.pass.cpp
    M libcxx/test/std/language.support/cmp/cmp.concept/three_way_comparable.compile.pass.cpp
    M libcxx/test/std/language.support/cmp/cmp.concept/three_way_comparable_with.compile.pass.cpp
    M libcxx/test/std/language.support/support.coroutines/coroutine.handle/coroutine.handle.con/assign.pass.cpp
    M libcxx/test/std/language.support/support.coroutines/coroutine.handle/coroutine.handle.con/construct.pass.cpp
    M libcxx/test/std/language.support/support.dynamic/destroying_delete_t_declaration.pass.cpp
    M libcxx/test/std/language.support/support.runtime/cstdlib.pass.cpp
    M libcxx/test/std/language.support/support.types/nullptr_t.pass.cpp
    M libcxx/test/std/library/description/conventions/customization.point.object/niebloid.compile.pass.cpp
    M libcxx/test/std/localization/locales/locale.convenience/conversions/conversions.string/ctor_codecvt.pass.cpp
    M libcxx/test/std/numerics/c.math/cmath.pass.cpp
    M libcxx/test/std/numerics/rand/rand.adapt/rand.adapt.disc/result_type.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bernoulli/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bernoulli/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bin/eval.PR44847.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bin/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bin/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.geo/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.geo/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.negbin/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.negbin/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.chisq/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.chisq/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.lognormal/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.lognormal/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.normal/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.normal/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.t/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.t/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.exp/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.exp/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.extreme/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.extreme/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.gamma/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.gamma/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.poisson/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.weibull/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.weibull/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.pconst/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.pconst/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.plinear/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.plinear/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.int/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.int/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.real/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.real/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.eng/rand.eng.lcong/copy.pass.cpp
    M libcxx/test/std/numerics/rand/rand.eng/rand.eng.lcong/default.pass.cpp
    M libcxx/test/std/numerics/rand/rand.eng/rand.eng.lcong/values.pass.cpp
    M libcxx/test/std/numerics/rand/rand.eng/rand.eng.mers/result_type.pass.cpp
    M libcxx/test/std/numerics/rand/rand.eng/rand.eng.sub/result_type.pass.cpp
    M libcxx/test/std/numerics/rand/rand.util/rand.util.seedseq/generate.mandates.verify.cpp
    M libcxx/test/std/numerics/rand/rand.util/rand.util.seedseq/types.pass.cpp
    M libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_for_token_pred.pass.cpp
    M libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_token_pred.pass.cpp
    M libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_until_token_pred.pass.cpp
    M libcxx/test/std/thread/thread.jthread/cons.func.token.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stopcallback/dtor.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.day/time.cal.day.members/decrement.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.day/time.cal.day.members/increment.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.day/time.cal.day.members/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.day/time.cal.day.members/plus_minus_equal.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.day/time.cal.day.nonmembers/minus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.day/time.cal.day.nonmembers/plus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.md/time.cal.md.members/day.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.md/time.cal.md.members/month.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.md/time.cal.md.members/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.mdlast/month.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.mdlast/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.month/time.cal.month.members/decrement.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.month/time.cal.month.members/increment.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.month/time.cal.month.members/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.month/time.cal.month.members/plus_minus_equal.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.month/time.cal.month.nonmembers/minus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.month/time.cal.month.nonmembers/plus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.mwd/time.cal.mwd.members/month.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.mwd/time.cal.mwd.members/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.mwd/time.cal.mwd.members/weekday_indexed.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.mwdlast/time.cal.mwdlast.members/month.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.mwdlast/time.cal.mwdlast.members/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.mwdlast/time.cal.mwdlast.members/weekday_last.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.wdidx/time.cal.wdidx.members/index.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.wdidx/time.cal.wdidx.members/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.wdidx/time.cal.wdidx.members/weekday.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.wdlast/time.cal.wdlast.members/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.wdlast/time.cal.wdlast.members/weekday.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.weekday/time.cal.weekday.members/c_encoding.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.weekday/time.cal.weekday.members/ctor.local_days.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.weekday/time.cal.weekday.members/ctor.sys_days.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.weekday/time.cal.weekday.members/decrement.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.weekday/time.cal.weekday.members/increment.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.weekday/time.cal.weekday.members/iso_encoding.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.weekday/time.cal.weekday.members/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.weekday/time.cal.weekday.members/operator[].pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.weekday/time.cal.weekday.members/plus_minus_equal.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.weekday/time.cal.weekday.nonmembers/minus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.weekday/time.cal.weekday.nonmembers/plus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.year/time.cal.year.members/decrement.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.year/time.cal.year.members/increment.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.year/time.cal.year.members/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.year/time.cal.year.members/plus_minus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.year/time.cal.year.members/plus_minus_equal.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.year/time.cal.year.nonmembers/minus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.year/time.cal.year.nonmembers/plus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ym/time.cal.ym.members/month.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ym/time.cal.ym.members/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ym/time.cal.ym.members/plus_minus_equal_month.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ym/time.cal.ym.members/plus_minus_equal_year.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ym/time.cal.ym.members/year.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ym/time.cal.ym.nonmembers/minus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ym/time.cal.ym.nonmembers/plus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymd/time.cal.ymd.members/ctor.local_days.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymd/time.cal.ymd.members/ctor.sys_days.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymd/time.cal.ymd.members/ctor.year_month_day_last.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymd/time.cal.ymd.members/day.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymd/time.cal.ymd.members/month.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymd/time.cal.ymd.members/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymd/time.cal.ymd.members/op.local_days.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymd/time.cal.ymd.members/op.sys_days.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymd/time.cal.ymd.members/plus_minus_equal_month.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymd/time.cal.ymd.members/plus_minus_equal_year.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymd/time.cal.ymd.members/year.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymd/time.cal.ymd.nonmembers/minus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymd/time.cal.ymd.nonmembers/plus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymdlast/time.cal.ymdlast.members/day.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymdlast/time.cal.ymdlast.members/month.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymdlast/time.cal.ymdlast.members/month_day_last.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymdlast/time.cal.ymdlast.members/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymdlast/time.cal.ymdlast.members/op_local_days.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymdlast/time.cal.ymdlast.members/op_sys_days.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymdlast/time.cal.ymdlast.members/plus_minus_equal_month.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymdlast/time.cal.ymdlast.members/plus_minus_equal_year.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymdlast/time.cal.ymdlast.members/year.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymdlast/time.cal.ymdlast.nonmembers/minus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymdlast/time.cal.ymdlast.nonmembers/plus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwd/time.cal.ymwd.members/ctor.local_days.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwd/time.cal.ymwd.members/ctor.sys_days.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwd/time.cal.ymwd.members/index.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwd/time.cal.ymwd.members/month.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwd/time.cal.ymwd.members/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwd/time.cal.ymwd.members/op.local_days.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwd/time.cal.ymwd.members/op.sys_days.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwd/time.cal.ymwd.members/plus_minus_equal_month.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwd/time.cal.ymwd.members/plus_minus_equal_year.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwd/time.cal.ymwd.members/weekday.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwd/time.cal.ymwd.members/weekday_indexed.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwd/time.cal.ymwd.members/year.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwd/time.cal.ymwd.nonmembers/minus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwd/time.cal.ymwd.nonmembers/plus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwdlast/time.cal.ymwdlast.members/month.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwdlast/time.cal.ymwdlast.members/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwdlast/time.cal.ymwdlast.members/op_local_days.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwdlast/time.cal.ymwdlast.members/op_sys_days.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwdlast/time.cal.ymwdlast.members/plus_minus_equal_month.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwdlast/time.cal.ymwdlast.members/plus_minus_equal_year.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwdlast/time.cal.ymwdlast.members/weekday.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwdlast/time.cal.ymwdlast.members/year.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwdlast/time.cal.ymwdlast.nonmembers/minus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwdlast/time.cal.ymwdlast.nonmembers/plus.pass.cpp
    M libcxx/test/std/time/time.zone/time.zone.db/time.zone.db.access/current_zone.pass.cpp
    M libcxx/test/std/time/time.zone/time.zone.db/time.zone.db.remote/remote_version.pass.cpp
    M libcxx/test/std/time/time.zone/time.zone.exception/time.zone.exception.nonexist/types.pass.cpp
    M libcxx/test/std/time/time.zone/time.zone.leap/members/date.pass.cpp
    M libcxx/test/std/time/time.zone/time.zone.zonedtraits/const_time_zone_default_zone.pass.cpp
    M libcxx/test/std/time/time.zone/time.zone.zonedtraits/const_time_zone_locate_zone.pass.cpp
    M libcxx/test/std/utilities/charconv/charconv.msvc/test.hpp
    M libcxx/test/std/utilities/charconv/charconv.syn/from_chars_result.pass.cpp
    M libcxx/test/std/utilities/charconv/charconv.syn/to_chars_result.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.pointer.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.signed_integral.pass.cpp
    M libcxx/test/std/utilities/format/format.functions/escaped_output.unicode.pass.cpp
    M libcxx/test/std/utilities/format/format.functions/format_to.locale.pass.cpp
    M libcxx/test/std/utilities/format/format.functions/format_to_n.locale.pass.cpp
    M libcxx/test/std/utilities/format/format.functions/formatted_size.locale.pass.cpp
    M libcxx/test/std/utilities/function.objects/bind/func.bind/func.bind.isbind/is_bind_expression.pass.cpp
    M libcxx/test/std/utilities/function.objects/bind/func.bind/func.bind.isplace/is_placeholder.pass.cpp
    M libcxx/test/std/utilities/function.objects/unord.hash/enum.pass.cpp
    M libcxx/test/std/utilities/function.objects/unord.hash/integral.pass.cpp
    M libcxx/test/std/utilities/memory/allocator.traits/allocator.traits.types/difference_type.pass.cpp
    M libcxx/test/std/utilities/memory/allocator.traits/allocator.traits.types/size_type.pass.cpp
    M libcxx/test/std/utilities/memory/pointer.traits/pointer.traits.types/difference_type.compile.pass.cpp
    M libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/types.pass.cpp
    M libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.mod/reset_pointer.pass.cpp
    M libcxx/test/std/utilities/meta/meta.trans/meta.trans.other/underlying_type.pass.cpp
    M libcxx/test/std/utilities/meta/meta.unary/meta.unary.comp/is_bounded_array.pass.cpp
    M libcxx/test/std/utilities/meta/meta.unary/meta.unary.comp/is_unbounded_array.pass.cpp
    M libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_signed.pass.cpp
    M libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_unsigned.pass.cpp
    M libcxx/test/std/utilities/template.bitset/bitset.cons/char_ptr_ctor.pass.cpp
    M libcxx/test/std/utilities/tuple/tuple.tuple/tuple.apply/make_from_tuple.pass.cpp
    M libcxx/test/std/utilities/utility/mem.res/mem.poly.allocator.class/mem.poly.allocator.mem/default_type.compile.pass.cpp
    M libcxx/test/std/utilities/utility/pairs/pairs.pair/special_member_generation_test.pass.cpp
    M libcxx/test/std/utilities/utility/utility.intcmp/intcmp.cmp_greater_equal/cmp_greater_equal.pass.cpp
    M libcxx/test/support/format.functions.common.h
    M libcxx/test/support/hexfloat.h
    M libcxx/test/support/operator_hijacker.h
    M libcxx/test/support/test.workarounds/c1xx_broken_za_ctor_check.pass.cpp
    M libcxx/test/support/test_convertible.h

  Log Message:
  -----------
  [libc++][modules] Fix missing and incorrect includes (#108850)

This patch adds a large number of missing includes in the libc++ headers
and the test suite. Those were found as part of the effort to move
towards a mostly monolithic top-level std module.


  Commit: 73d83f20c9734a3fe004f2607606b64ab20998f0
      https://github.com/llvm/llvm-project/commit/73d83f20c9734a3fe004f2607606b64ab20998f0
  Author: Sergey Kozub <skozub at nvidia.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

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

  Log Message:
  -----------
  [MLIR] Add f6E2M3FN type (#107999)

This PR adds `f6E2M3FN` type to mlir.

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

```c
f6E2M3FN
- Exponent bias: 1
- Maximum stored exponent value: 3 (binary 11)
- Maximum unbiased exponent value: 3 - 1 = 2
- Minimum stored exponent value: 1 (binary 01)
- Minimum unbiased exponent value: 1 − 1 = 0
- Has Positive and Negative zero
- Doesn't have infinity
- Doesn't have NaNs

Additional details:
- Zeros (+/-): S.00.000
- Max normal number: S.11.111 = ±2^(2) x (1 + 0.875) = ±7.5
- Min normal number: S.01.000 = ±2^(0) = ±1.0
- Max subnormal number: S.00.111 = ±2^(0) x 0.875 = ±0.875
- Min subnormal number: S.00.001 = ±2^(0) x 0.125 = ±0.125
```

Related PRs:
- [PR-94735](https://github.com/llvm/llvm-project/pull/94735) [APFloat]
Add APFloat support for FP6 data types
- [PR-105573](https://github.com/llvm/llvm-project/pull/105573) [MLIR]
Add f6E3M2FN type - was used as a template for this PR


  Commit: 68e4518598d63efa02230f400e50263baccbb8e4
      https://github.com/llvm/llvm-project/commit/68e4518598d63efa02230f400e50263baccbb8e4
  Author: Thurston Dang <thurston at google.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

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

  Log Message:
  -----------
  Revert "[NFC][sanitizer] Switch to `gnu_get_libc_version` (#108724)"

This reverts commit 69f3244da76586be393d1e97b01660c6f03d666c.

Reason: buildbot breakage because Android doesn't have <gnu/libc-version.h>
https://lab.llvm.org/buildbot/#/builders/186/builds/2381

(It's probably easy to fix but I don't readily have an Android device to test.)


  Commit: 397e4dcdc94d3abb853ead7318df5920be697180
      https://github.com/llvm/llvm-project/commit/397e4dcdc94d3abb853ead7318df5920be697180
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M libcxx/docs/TestingLibcxx.rst

  Log Message:
  -----------
  [libc++][docs] Add link to `VendorDocumentation.rst` from `TestingLibcxx.rst` (#108714)

This makes it easier for readers to locate how to build the library.


  Commit: 2d13302d3851747a023ffecc6388585e888cd0e9
      https://github.com/llvm/llvm-project/commit/2d13302d3851747a023ffecc6388585e888cd0e9
  Author: A. Jiang <de34 at live.cn>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M libcxx/docs/Status/Cxx17Papers.csv
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_node_type.pass.cpp
    M libcxx/test/std/containers/associative/set/insert_node_type.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_node_type.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/insert_node_type.pass.cpp

  Log Message:
  -----------
  [libc++][test] Confirm that P0508R0 has been implemented (#108172)

The paper was implemented by commit b0386a515b60c
(https://reviews.llvm.org/D46845) in LLVM 7.0. But it would be nice to
have test coverage for desired properties of `insert_return_type`.

Closes #99944


  Commit: 8f023ec81df2f7d26db3c90e7a197d9f75472304
      https://github.com/llvm/llvm-project/commit/8f023ec81df2f7d26db3c90e7a197d9f75472304
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/select.ll

  Log Message:
  -----------
  [RISCV] Add coverage for select C, C1, C2 where (C1-C2)*[0,1] is cheap


  Commit: b7c9ebe4ece556aa10cb592b59fe3793f4d9e6c2
      https://github.com/llvm/llvm-project/commit/b7c9ebe4ece556aa10cb592b59fe3793f4d9e6c2
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M compiler-rt/lib/asan/asan_posix.cpp
    M compiler-rt/lib/asan/asan_rtl.cpp
    M compiler-rt/lib/asan/asan_thread.cpp
    M compiler-rt/lib/dfsan/dfsan_thread.cpp
    M compiler-rt/lib/hwasan/hwasan_linux.cpp
    M compiler-rt/lib/lsan/lsan_posix.cpp
    M compiler-rt/lib/memprof/memprof_thread.cpp
    M compiler-rt/lib/msan/msan_thread.cpp
    M compiler-rt/lib/nsan/nsan_thread.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_common.h
    M compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_win.cpp
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_common_test.cpp
    M compiler-rt/lib/tsan/rtl/tsan_rtl_thread.cpp
    M compiler-rt/test/sanitizer_common/TestCases/Linux/tls_malloc_hook.c

  Log Message:
  -----------
  [sanitizer] Fix partially initialized static TLS range (#108685)

Fixes asan, msan crash on check added in #108684.
The #108684 includes reproducer of the issue.

Change interface of `GetThreadStackAndTls` to
set `tls_begin` and `tls_end` at the same time.


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

  Changed paths:
    M llvm/test/CodeGen/RISCV/make-compressible-zbc.mir

  Log Message:
  -----------
  [RISCV] Fix IR for store_large_offset_no_opt_i16 in make-compressible-zbc.mir. NFC

The IR used loads instead of stores.


  Commit: 62cdc2a347584f32dd9c351b2384c873da0f32ad
      https://github.com/llvm/llvm-project/commit/62cdc2a347584f32dd9c351b2384c873da0f32ad
  Author: Kevin McAfee <kmcafee at nvidia.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/test/CodeGen/NVPTX/call_bitcast_byval.ll
    A llvm/test/CodeGen/NVPTX/convert-call-to-indirect.ll
    M llvm/test/CodeGen/NVPTX/lower-args-gridconstant.ll

  Log Message:
  -----------
  [NVPTX] Convert calls to indirect when call signature mismatches function signature (#107644)

When there is a function signature mismatch between a call
instruction and the callee, lower the call to an indirect call. The
current behavior is to produce direct calls that may or may not be
valid PTX. Consider the following example with mismatching return
types:

```
%struct.1 = type <{i64}>
%struct.2 = type <{i64}>
declare %struct.1 @callee()
...
%call1 = call %struct.2 @callee()
%call2 = call i64 @callee()
```

The return type of `callee` in PTX is `.b8 _[8]`. The return type of
`%call1` will be the same and so the PTX has no problems. The return
type of `%call2` will be `.b64`, so the types will not match and PTX
will be unacceptable to ptxas. This despite all the types having the
same size. The same is true for mismatching parameter types.

If we instead convert these calls to indirect calls, we will generate
functional PTX when the types have the same size. If they do not have
the same size then the PTX will likely be incorrect, though this will not
necessarily be caught by ptxas. Also, even if the sizes are the same, if
the types differ then it is technically undefined behavior. This change
allows for more flexibility in the bitcode that can be lowered to
functioning PTX, at the cost of sometimes producing PTX that is less
clearly wrong than it would have been previously (i.e. incorrect indirect
calls are not as obviously wrong as incorrect direct calls). We consider
it okay to generate PTX with undefined behavior as the behavior of
calls with mismatching types is not explicitly defined.


  Commit: cf70a1ee815d11ae52c4a5d034e65a7a713bd06c
      https://github.com/llvm/llvm-project/commit/cf70a1ee815d11ae52c4a5d034e65a7a713bd06c
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M lld/ELF/Driver.cpp
    M lld/test/ELF/partitions.s

  Log Message:
  -----------
  [ELF] .llvm.sympart: support CREL

When both CREL and the experimental lld partitions feature are enabled,
the relocation section may look like .crel.llvm_sympart.f1, and
`rels.relas` is empty. While here, support relocation sections with zero
entry.


  Commit: e99755d41c8d5ee8594fa161ac05fbef02d902aa
      https://github.com/llvm/llvm-project/commit/e99755d41c8d5ee8594fa161ac05fbef02d902aa
  Author: Jake Egan <Jake.egan at ibm.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_double.hex.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_long_double.hex.pass.cpp

  Log Message:
  -----------
  [libc++][test] Adjust expected hexfloat format (#95011)

The test expects a hex float format of `0x0p+0`, but AIX prints
`0x0.0p+0`. This change adjusts the test to accept both.


  Commit: 49c5cebb2966d5e8f0784370d818023a1054e189
      https://github.com/llvm/llvm-project/commit/49c5cebb2966d5e8f0784370d818023a1054e189
  Author: David Majnemer <david.majnemer at gmail.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/vector-shift-ashr-128.ll
    M llvm/test/CodeGen/X86/vector-shift-ashr-256.ll
    M llvm/test/CodeGen/X86/vector-shift-ashr-512.ll
    M llvm/test/CodeGen/X86/vector-shift-lshr-128.ll
    M llvm/test/CodeGen/X86/vector-shift-lshr-256.ll
    M llvm/test/CodeGen/X86/vector-shift-shl-128.ll
    M llvm/test/CodeGen/X86/vector-shift-shl-256.ll
    M llvm/test/CodeGen/X86/vector-shift-shl-512.ll

  Log Message:
  -----------
  [X86] Improve support for vXi8 arithmetic shifts, logical left shifts

Use SWAR techniques for arithmetic shifts: we use the same technique as
logical right shift but with an additional step of sign extending the
result.

Also, use the logical shift left technique even on AVX512 as vpmovzxbw
and vpmovwb are actually quite expensive.


  Commit: f14fd32602a3e898b151ea0302d1d0f8cb2f5afc
      https://github.com/llvm/llvm-project/commit/f14fd32602a3e898b151ea0302d1d0f8cb2f5afc
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M .github/workflows/commit-access-review.py
    M llvm/utils/git/requirements.txt
    M llvm/utils/git/requirements.txt.in

  Log Message:
  -----------
  workflows/commit-access-review: Use get_collaborators() function (#108313)

This gets us the full list of users with commit access to
llvm/llvm-project rather than the list of people in the llvm-committers
team. This will ensure we are able everyone to track everyone with
commit access in case they receive access some other way.


  Commit: 0a7a1ef2205c45859b4179cef993e97e9f5b4d0d
      https://github.com/llvm/llvm-project/commit/0a7a1ef2205c45859b4179cef993e97e9f5b4d0d
  Author: Helena Kotas <hekotas at microsoft.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M clang/include/clang/AST/TypeLoc.h
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Sema/SemaHLSL.h
    M clang/lib/AST/TypePrinter.cpp
    M clang/lib/Sema/HLSLExternalSemaSource.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/test/AST/HLSL/RWBuffer-AST.hlsl
    M clang/test/AST/HLSL/StructuredBuffer-AST.hlsl
    A clang/test/ParserHLSL/hlsl_contained_type_attr.hlsl
    A clang/test/ParserHLSL/hlsl_contained_type_attr_error.hlsl
    M clang/test/ParserHLSL/hlsl_resource_handle_attrs.hlsl

  Log Message:
  -----------
  [HLSL] Add `[[hlsl::contained_type()]]` attribute (#108456)

Introducing a new HLSL resource type attribute `[[contained_type(T)]]`
which describes the "contained type" of a buffer or resource type.
Specifically, the attribute will be used on the resource handle in
templated buffer types like so:

template <typename T> struct RWBuffer {
  __hlsl_resource_t [[hlsl::contained_type(T)]] [[hlsl::resource_class(UAV)]] h;
};

Fixes #104855


  Commit: d95597dc06c510ad7fbf00a43583c54d38f79aa7
      https://github.com/llvm/llvm-project/commit/d95597dc06c510ad7fbf00a43583c54d38f79aa7
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M libcxx/include/string

  Log Message:
  -----------
  [libc++][string] Remove potential non-trailing 0-length array (#108867)

It is a violation of the standard to use 0 length arrays, especially
when not at the end of a structure (not a FAM GNU extension). Compiler
generally accept it, but it's probably better to have a conforming
implementation.

This is a re-application of #105865 which was reverted in 72cfc74
because it broke the data formatters. A LLDB patch has since been landed
that should make this a non-issue.

Co-authored-by: serge-sans-paille <sguelton at mozilla.com>


  Commit: ddd1a0204872b859485eff941569f0f0af5dda42
      https://github.com/llvm/llvm-project/commit/ddd1a0204872b859485eff941569f0f0af5dda42
  Author: Thurston Dang <thurston at google.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

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

  Log Message:
  -----------
  Revert "[scudo] Update secondary cache time-based release logic (#107507)"

This reverts commit e5271fef8fd8931370f04702ba2f9e8b2ab0e523.

Reason: buildbot breakage: https://lab.llvm.org/buildbot/#/builders/139/builds/3806


  Commit: 34a4eefcbd8d394616cdb16dcadc70b934a577ce
      https://github.com/llvm/llvm-project/commit/34a4eefcbd8d394616cdb16dcadc70b934a577ce
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M flang/lib/Semantics/check-do-forall.cpp
    M flang/lib/Semantics/check-do-forall.h
    M flang/test/Semantics/OpenMP/workshare02.f90
    M flang/test/Semantics/call11.f90

  Log Message:
  -----------
  [flang] Warn about impure calls in concurrent headers (#108436)

Emit a warning when an impure function is referenced from a DO
CONCURRENT or FORALL concurrent-header that is not nested within another
such construct. (That nested case is already an error.)


  Commit: eebe9a3fca39e0d0e464993f41e63aa41c308da7
      https://github.com/llvm/llvm-project/commit/eebe9a3fca39e0d0e464993f41e63aa41c308da7
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M flang/lib/Semantics/resolve-names.cpp

  Log Message:
  -----------
  [flang][CUDA] Fix crash in name resolution for CUDA function (#108616)

When a function result type appears on a FUNCTION statement after some
CUDA attributes, there wasn't always valid program source location
information attached to the function result variable information stack.
Ensure that some relevant source information is always available.


  Commit: 50d15e688f4a88662f28d5d712f2ba2533466974
      https://github.com/llvm/llvm-project/commit/50d15e688f4a88662f28d5d712f2ba2533466974
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M flang/lib/Evaluate/real.cpp
    M flang/runtime/numeric-templates.h
    M flang/test/Evaluate/fold-spacing.f90

  Log Message:
  -----------
  [flang] Subnormal arguments to and results from SPACING (#108861)

The standards aren't clear about how IEEE-754 subnormal values interact
with the intrinsic function SPACING. Four compilers interpret the
standard such that SPACING(x) will return a value never less than
TINY(x); one compiler returns TINY(x) for ABS(x) <= TINY(x) but can
return SPACING(x) < TINY(x) for some ABS(x) > TINY(x); one other
compiler works similarly, but also oddly returns SPACING(x) < TINY(x)
for ABS(x) >= TINY(x)/2.

Follow the most common precedent.


  Commit: 9a1d0744ed851ee927f32f6b06777d93e9e32561
      https://github.com/llvm/llvm-project/commit/9a1d0744ed851ee927f32f6b06777d93e9e32561
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M compiler-rt/lib/asan/asan_posix.cpp
    M compiler-rt/lib/asan/asan_rtl.cpp
    M compiler-rt/lib/asan/asan_thread.cpp
    M compiler-rt/lib/dfsan/dfsan_thread.cpp
    M compiler-rt/lib/hwasan/hwasan_linux.cpp
    M compiler-rt/lib/lsan/lsan_posix.cpp
    M compiler-rt/lib/memprof/memprof_thread.cpp
    M compiler-rt/lib/msan/msan_thread.cpp
    M compiler-rt/lib/nsan/nsan_thread.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_common.h
    M compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_win.cpp
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_common_test.cpp
    M compiler-rt/lib/tsan/rtl/tsan_rtl_thread.cpp
    M compiler-rt/test/sanitizer_common/TestCases/Linux/tls_malloc_hook.c

  Log Message:
  -----------
  Revert "[sanitizer] Fix partially initialized static TLS range" (#108881)

Reverts llvm/llvm-project#108685

Breaks Darwin and Windows
https://lab.llvm.org/buildbot/#/builders/107/builds/2930
https://ci.swift.org/view/all/job/llvm.org/view/LLDB/job/as-lldb-cmake/11684/


  Commit: 05e21e81fc6ca3e70e731ce3e83dda80019c5a21
      https://github.com/llvm/llvm-project/commit/05e21e81fc6ca3e70e731ce3e83dda80019c5a21
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-09-16 (Mon, 16 Sep 2024)

  Changed paths:
    M .github/workflows/commit-access-review.py
    M .github/workflows/release-binaries.yml
    M bolt/include/bolt/Profile/ProfileYAMLMapping.h
    M bolt/include/bolt/Profile/YAMLProfileWriter.h
    M bolt/include/bolt/Utils/Utils.h
    M bolt/lib/Passes/ADRRelaxationPass.cpp
    M bolt/lib/Profile/DataAggregator.cpp
    M bolt/lib/Profile/YAMLProfileReader.cpp
    M bolt/lib/Profile/YAMLProfileWriter.cpp
    M bolt/lib/Rewrite/PseudoProbeRewriter.cpp
    M bolt/lib/Utils/Utils.cpp
    M bolt/test/X86/pseudoprobe-decoding-inline.test
    M bolt/test/X86/pseudoprobe-decoding-noinline.test
    M clang-tools-extra/clang-tidy/add_new_check.py
    M clang-tools-extra/clang-tidy/cert/FloatLoopCounter.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/PreferMemberInitializerCheck.cpp
    M clang-tools-extra/clang-tidy/performance/AvoidEndlCheck.cpp
    M clang-tools-extra/clang-tidy/readability/AvoidUnconditionalPreprocessorIfCheck.cpp
    M clang-tools-extra/clangd/Diagnostics.cpp
    M clang-tools-extra/clangd/Diagnostics.h
    M clang-tools-extra/clangd/ParsedAST.cpp
    M clang-tools-extra/clangd/Preamble.cpp
    M clang-tools-extra/clangd/unittests/ConfigCompileTests.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/Contributing.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/pointer-arithmetic-on-polymorphic-object.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/return-const-ref-from-parameter.rst
    M clang-tools-extra/pseudo/lib/cxx/cxx.bnf
    M clang-tools-extra/test/clang-tidy/checkers/cert/flp30-c.c
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/missing-std-forward.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/prefer-member-initializer.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/avoid-endl.cpp
    M clang/docs/OpenMPSupport.rst
    M clang/docs/RealtimeSanitizer.rst
    M clang/docs/ReleaseNotes.rst
    M clang/docs/UsersManual.rst
    M clang/docs/analyzer/checkers.rst
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/AST/TypeLoc.h
    M clang/include/clang/Analysis/Analyses/ExprMutationAnalyzer.h
    M clang/include/clang/Basic/AArch64SVEACLETypes.def
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/BuiltinsWebAssembly.def
    M clang/include/clang/Basic/BuiltinsX86.def
    M clang/include/clang/Basic/BuiltinsX86_64.def
    M clang/include/clang/Basic/Diagnostic.h
    M clang/include/clang/Basic/DiagnosticCategories.h
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticIDs.h
    M clang/include/clang/Basic/DiagnosticLexKinds.td
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/LangOptions.h
    M clang/include/clang/Basic/LangStandards.def
    M clang/include/clang/Basic/TargetInfo.h
    M clang/include/clang/Basic/TokenKinds.def
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Lex/Preprocessor.h
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/SemaHLSL.h
    M clang/include/clang/Sema/SemaRISCV.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/DynamicExtent.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SValBuilder.h
    M clang/include/clang/Tooling/CompilationDatabase.h
    M clang/include/clang/Tooling/DependencyScanning/DependencyScanningService.h
    M clang/include/clang/Tooling/DependencyScanning/DependencyScanningTool.h
    M clang/include/clang/Tooling/DependencyScanning/DependencyScanningWorker.h
    M clang/lib/APINotes/APINotesWriter.cpp
    M clang/lib/AST/APValue.cpp
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/EvaluationResult.cpp
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/InterpFrame.cpp
    M clang/lib/AST/ByteCode/Pointer.cpp
    M clang/lib/AST/ByteCode/Pointer.h
    M clang/lib/AST/ByteCode/Program.cpp
    M clang/lib/AST/ByteCode/Program.h
    M clang/lib/AST/DeclPrinter.cpp
    M clang/lib/AST/Expr.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/AST/Mangle.cpp
    M clang/lib/AST/MicrosoftMangle.cpp
    M clang/lib/AST/StmtViz.cpp
    M clang/lib/AST/TypePrinter.cpp
    M clang/lib/ASTMatchers/Dynamic/Registry.cpp
    M clang/lib/Analysis/CFG.cpp
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/lib/Basic/Diagnostic.cpp
    M clang/lib/Basic/DiagnosticIDs.cpp
    M clang/lib/Basic/FileManager.cpp
    M clang/lib/Basic/LangOptions.cpp
    M clang/lib/Basic/LangStandards.cpp
    M clang/lib/Basic/OperatorPrecedence.cpp
    M clang/lib/Basic/Targets/RISCV.cpp
    M clang/lib/Basic/Targets/X86.cpp
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGCUDANV.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/lib/CodeGen/CGObjCGNU.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CMakeLists.txt
    M clang/lib/CodeGen/CodeGenAction.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/lib/CodeGen/MacroPPCallbacks.cpp
    M clang/lib/CodeGen/SanitizerMetadata.cpp
    M clang/lib/CodeGen/TargetInfo.h
    M clang/lib/CodeGen/Targets/AArch64.cpp
    A clang/lib/CodeGen/Targets/DirectX.cpp
    M clang/lib/CodeGen/Targets/RISCV.cpp
    M clang/lib/CodeGen/Targets/X86.cpp
    M clang/lib/Driver/OffloadBundler.cpp
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/lib/Driver/ToolChains/AMDGPU.h
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/lib/Driver/ToolChains/HIPAMD.cpp
    M clang/lib/Format/ContinuationIndenter.cpp
    M clang/lib/Format/MacroExpander.cpp
    M clang/lib/Format/ObjCPropertyAttributeOrderFixer.cpp
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Frontend/LogDiagnosticPrinter.cpp
    M clang/lib/Frontend/Rewrite/RewriteObjC.cpp
    M clang/lib/Frontend/SerializedDiagnosticPrinter.cpp
    M clang/lib/Frontend/TextDiagnosticPrinter.cpp
    M clang/lib/Headers/CMakeLists.txt
    M clang/lib/Headers/arm_acle.h
    A clang/lib/Headers/avx10_2_512satcvtdsintrin.h
    A clang/lib/Headers/avx10_2satcvtdsintrin.h
    A clang/lib/Headers/hlsl/hlsl_detail.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Headers/immintrin.h
    M clang/lib/Headers/llvm_libc_wrappers/ctype.h
    M clang/lib/Headers/module.modulemap
    M clang/lib/Headers/wasm_simd128.h
    M clang/lib/Lex/Lexer.cpp
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/lib/Parse/ParseExpr.cpp
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/lib/Parse/ParseStmt.cpp
    M clang/lib/Sema/CheckExprLifetime.cpp
    M clang/lib/Sema/DeclSpec.cpp
    M clang/lib/Sema/HLSLExternalSemaSource.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaCUDA.cpp
    M clang/lib/Sema/SemaCodeComplete.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/lib/Sema/SemaInit.cpp
    M clang/lib/Sema/SemaModule.cpp
    M clang/lib/Sema/SemaOpenACC.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaRISCV.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/Sema/SemaX86.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MoveChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountDiagnostics.cpp
    M clang/lib/StaticAnalyzer/Checkers/SmartPtrModeling.cpp
    M clang/lib/StaticAnalyzer/Checkers/StackAddrEscapeChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StdVariantChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/VLASizeChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.h
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RefCntblBaseVirtualDtorChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/UncountedCallArgsChecker.cpp
    M clang/lib/StaticAnalyzer/Core/BasicValueFactory.cpp
    M clang/lib/StaticAnalyzer/Core/DynamicExtent.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
    M clang/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp
    M clang/lib/StaticAnalyzer/Core/LoopUnrolling.cpp
    M clang/lib/StaticAnalyzer/Core/RangeConstraintManager.cpp
    M clang/lib/StaticAnalyzer/Core/SValBuilder.cpp
    M clang/lib/StaticAnalyzer/Core/TextDiagnostics.cpp
    M clang/lib/Tooling/CMakeLists.txt
    M clang/lib/Tooling/DependencyScanning/DependencyScanningService.cpp
    M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
    A clang/lib/Tooling/LocateToolCompilationDatabase.cpp
    M clang/lib/Tooling/Transformer/Stencil.cpp
    M clang/test/AST/ByteCode/builtin-functions.cpp
    A clang/test/AST/ByteCode/const-base-cast.cpp
    M clang/test/AST/ByteCode/cxx11.cpp
    M clang/test/AST/ByteCode/cxx20.cpp
    M clang/test/AST/ByteCode/hlsl.hlsl
    M clang/test/AST/ByteCode/initializer_list.cpp
    M clang/test/AST/ByteCode/invalid.cpp
    M clang/test/AST/HLSL/RWBuffer-AST.hlsl
    A clang/test/AST/HLSL/StructuredBuffer-AST.hlsl
    M clang/test/AST/HLSL/vector-constructors.hlsl
    M clang/test/AST/ast-dump-default-init-json.cpp
    M clang/test/AST/ast-dump-default-init.cpp
    A clang/test/Analysis/Checkers/WebKit/ref-cntbl-crtp-base-no-virtual-dtor.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp
    A clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.mm
    M clang/test/Analysis/NewDelete-atomics.cpp
    M clang/test/Analysis/NewDelete-checker-test.cpp
    M clang/test/Analysis/NewDelete-intersections.mm
    M clang/test/Analysis/fread.c
    M clang/test/Analysis/lifetime-extended-regions.cpp
    M clang/test/Analysis/malloc-interprocedural.c
    A clang/test/Analysis/malloc-refcounted.c
    A clang/test/C/C23/n3029.c
    M clang/test/CXX/drs/cwg16xx.cpp
    M clang/test/CXX/drs/cwg18xx.cpp
    M clang/test/CXX/module/module.import/p2.cpp
    M clang/test/CXX/special/class.temporary/p6.cpp
    A clang/test/ClangScanDeps/implicit-target.c
    M clang/test/ClangScanDeps/modules-extern-submodule.c
    M clang/test/ClangScanDeps/modules-full-output-tu-order.c
    M clang/test/ClangScanDeps/modules-has-include-umbrella-header.c
    M clang/test/ClangScanDeps/modules-header-sharing.m
    M clang/test/ClangScanDeps/modules-implementation-module-map.c
    M clang/test/ClangScanDeps/modules-implementation-private.m
    M clang/test/ClangScanDeps/modules-priv-fw-from-pub.m
    A clang/test/ClangScanDeps/resolve-executable-path.c
    A clang/test/ClangScanDeps/verbose.test
    M clang/test/CodeGen/PowerPC/builtins-ppc-build-pair-mma.c
    M clang/test/CodeGen/PowerPC/builtins-ppc-pair-mma-types.c
    A clang/test/CodeGen/X86/avx10_2_512satcvtds-builtins-errors.c
    A clang/test/CodeGen/X86/avx10_2_512satcvtds-builtins-x64-error.c
    A clang/test/CodeGen/X86/avx10_2_512satcvtds-builtins-x64.c
    A clang/test/CodeGen/X86/avx10_2_512satcvtds-builtins.c
    A clang/test/CodeGen/X86/avx10_2satcvtds-builtins-errors.c
    A clang/test/CodeGen/X86/avx10_2satcvtds-builtins-x64.c
    A clang/test/CodeGen/X86/avx10_2satcvtds-builtins.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_add.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_add_sub_za16.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_clamp.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvt.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvtl.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_cvtn.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_faminmax.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_fmlas16.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_fp_dots.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_frint.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_int_dots.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt_x2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti2_lane_zt_x4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt_x2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_luti4_lane_zt_x4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_max.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_maxnm.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_min.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_minnm.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mla.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlal.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlall.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mls.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_mlsl.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_read.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_sqdmulh.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_sub.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_unpkx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_unpkx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vdot.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_add.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_qrshr.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_rshl.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_selx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_selx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_uzpx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_uzpx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_zipx2.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_vector_zipx4.c
    M clang/test/CodeGen/aarch64-sme2-intrinsics/acle_sme2_write.c
    M clang/test/CodeGen/aarch64-sme2p1-intrinsics/acle_sme2p1_movaz.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_create4.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_get4.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_ld4.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_reinterpret-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_reinterpret.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_set4.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_st4.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef2-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef2.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef3-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef3.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef4-bfloat.c
    M clang/test/CodeGen/aarch64-sve-intrinsics/acle_sve_undef4.c
    M clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_luti.c
    M clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_tbl2-bfloat.c
    M clang/test/CodeGen/aarch64-sve2-intrinsics/acle_sve2_tbl2.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_create2_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_create4_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_get2_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_get4_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_ld1.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_ldnt1.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_loads.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_pext.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_qcvtn.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_qrshr.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_set2_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_set4_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_st1.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_stnt1.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_store.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_undef_bool.c
    M clang/test/CodeGen/aarch64-sve2p1-intrinsics/acle_sve2p1_while_x2.c
    M clang/test/CodeGen/aarch64_neon_sve_bridge_intrinsics/acle_neon_sve_bridge_get_neonq.c
    M clang/test/CodeGen/arm_acle.c
    M clang/test/CodeGen/attr-counted-by.c
    A clang/test/CodeGen/attr-target-clones-riscv-invalid.c
    A clang/test/CodeGen/attr-target-clones-riscv.c
    M clang/test/CodeGen/builtins-wasm.c
    M clang/test/CodeGen/debug-info-codeview-buildinfo.c
    M clang/test/CodeGen/svboolx2_t.cpp
    M clang/test/CodeGen/svboolx4_t.cpp
    M clang/test/CodeGen/target-builtin-noerror.c
    M clang/test/CodeGenCUDA/device-stub.cu
    M clang/test/CodeGenCXX/aarch64-mangle-sve-vectors.cpp
    M clang/test/CodeGenCXX/aarch64-sve-vector-init.cpp
    A clang/test/CodeGenCXX/attr-target-clones-riscv.cpp
    M clang/test/CodeGenCXX/const-base-cast.cpp
    M clang/test/CodeGenHLSL/BasicFeatures/standard_conversion_sequences.hlsl
    A clang/test/CodeGenHLSL/builtins/StructuredBuffer-annotations.hlsl
    A clang/test/CodeGenHLSL/builtins/StructuredBuffer-constructor.hlsl
    A clang/test/CodeGenHLSL/builtins/StructuredBuffer-elementtype.hlsl
    A clang/test/CodeGenHLSL/builtins/StructuredBuffer-subscript.hlsl
    A clang/test/CodeGenHLSL/builtins/asfloat.hlsl
    A clang/test/CodeGenHLSL/builtins/asuint.hlsl
    M clang/test/CodeGenHLSL/builtins/dot.hlsl
    A clang/test/CodeGenHLSL/builtins/hlsl_resource_t.hlsl
    M clang/test/CodeGenHLSL/builtins/lerp.hlsl
    M clang/test/CodeGenHLSL/builtins/mad.hlsl
    A clang/test/CodeGenHLSL/builtins/step.hlsl
    M clang/test/CodeGenHLSL/loops/unroll.hlsl
    M clang/test/CodeGenHLSL/this-assignment.hlsl
    M clang/test/CodeGenObjC/boxing.m
    M clang/test/CodeGenObjC/dllstorage.m
    M clang/test/Driver/cl-link.c
    A clang/test/Driver/codegen-data.c
    M clang/test/Driver/mcmodel.c
    M clang/test/Driver/riscv-cpus.c
    A clang/test/Driver/riscv-mcmodel.c
    M clang/test/Driver/windows-cross.c
    M clang/test/Driver/x86-march.c
    M clang/test/Frontend/x86-target-cpu.c
    A clang/test/Misc/print-stats-vfs.test
    M clang/test/Misc/target-invalid-cpu-note/riscv.c
    M clang/test/Misc/target-invalid-cpu-note/x86.c
    M clang/test/Misc/warning-flags.c
    M clang/test/Modules/cxx20-10-3-ex1.cpp
    M clang/test/OpenMP/bug57757.cpp
    M clang/test/Parser/cxx1z-class-template-argument-deduction.cpp
    A clang/test/Parser/static_assert.cpp
    M clang/test/ParserHLSL/group_shared.hlsl
    M clang/test/ParserHLSL/group_shared_202x.hlsl
    A clang/test/ParserHLSL/hlsl_contained_type_attr.hlsl
    A clang/test/ParserHLSL/hlsl_contained_type_attr_error.hlsl
    M clang/test/ParserHLSL/hlsl_is_rov_attr.hlsl
    M clang/test/ParserHLSL/hlsl_is_rov_attr_error.hlsl
    M clang/test/ParserHLSL/hlsl_resource_handle_attrs.hlsl
    M clang/test/ParserHLSL/invalid_inside_cb.hlsl
    M clang/test/Preprocessor/predefined-arch-macros.c
    M clang/test/Preprocessor/predefined-macros-hlsl.hlsl
    M clang/test/Preprocessor/riscv-cmodel.c
    M clang/test/Sema/builtins-elementwise-math.c
    M clang/test/Sema/diagnose_if.c
    M clang/test/Sema/enum.c
    M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
    A clang/test/SemaCXX/PR97308.cpp
    A clang/test/SemaCXX/attr-target-clones-riscv.cpp
    M clang/test/SemaCXX/constant-expression-cxx11.cpp
    M clang/test/SemaCXX/constexpr-default-arg.cpp
    M clang/test/SemaCXX/cxx11-default-member-initializers.cpp
    A clang/test/SemaCXX/diagnose_if-warning-group.cpp
    M clang/test/SemaCXX/eval-crashes.cpp
    M clang/test/SemaCXX/type-traits.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-libc-functions.cpp
    A clang/test/SemaHLSL/BuiltIns/StructuredBuffers.hlsl
    A clang/test/SemaHLSL/BuiltIns/asfloat-errors.hlsl
    A clang/test/SemaHLSL/BuiltIns/asuint-errors.hlsl
    A clang/test/SemaHLSL/BuiltIns/step-errors.hlsl
    M clang/test/SemaHLSL/TruncationOverloadResolution.hlsl
    M clang/test/SemaHLSL/Types/BuiltinVector/ScalarSwizzleErrors.hlsl
    A clang/test/SemaHLSL/Types/BuiltinVector/TruncationConstantExpr.hlsl
    M clang/test/SemaHLSL/group_shared.hlsl
    M clang/test/SemaHLSL/group_shared_202x.hlsl
    M clang/test/SemaObjC/ivar-access-tests.m
    M clang/test/SemaOpenACC/compute-construct-ast.cpp
    M clang/test/SemaOpenCL/unsupported.cl
    M clang/test/SemaTemplate/GH18291.cpp
    M clang/test/SemaTemplate/cwg2398.cpp
    M clang/test/SemaTemplate/pack-deduction.cpp
    A clang/test/utils/update-verify-tests/Inputs/duplicate-diag.c
    A clang/test/utils/update-verify-tests/Inputs/duplicate-diag.c.expected
    A clang/test/utils/update-verify-tests/Inputs/infer-indentation.c
    A clang/test/utils/update-verify-tests/Inputs/infer-indentation.c.expected
    A clang/test/utils/update-verify-tests/Inputs/leave-existing-diags.c
    A clang/test/utils/update-verify-tests/Inputs/leave-existing-diags.c.expected
    A clang/test/utils/update-verify-tests/Inputs/multiple-errors.c
    A clang/test/utils/update-verify-tests/Inputs/multiple-errors.c.expected
    A clang/test/utils/update-verify-tests/Inputs/multiple-missing-errors-same-line.c
    A clang/test/utils/update-verify-tests/Inputs/multiple-missing-errors-same-line.c.expected
    A clang/test/utils/update-verify-tests/Inputs/no-checks.c
    A clang/test/utils/update-verify-tests/Inputs/no-checks.c.expected
    A clang/test/utils/update-verify-tests/Inputs/no-diags.c
    A clang/test/utils/update-verify-tests/Inputs/no-diags.c.expected
    A clang/test/utils/update-verify-tests/Inputs/no-expected-diags.c
    A clang/test/utils/update-verify-tests/Inputs/no-expected-diags.c.expected
    A clang/test/utils/update-verify-tests/Inputs/non-default-prefix.c
    A clang/test/utils/update-verify-tests/Inputs/non-default-prefix.c.expected
    A clang/test/utils/update-verify-tests/Inputs/update-same-line.c
    A clang/test/utils/update-verify-tests/Inputs/update-same-line.c.expected
    A clang/test/utils/update-verify-tests/Inputs/update-single-check.c
    A clang/test/utils/update-verify-tests/Inputs/update-single-check.c.expected
    A clang/test/utils/update-verify-tests/duplicate-diag.test
    A clang/test/utils/update-verify-tests/infer-indentation.test
    A clang/test/utils/update-verify-tests/leave-existing-diags.test
    A clang/test/utils/update-verify-tests/lit.local.cfg
    A clang/test/utils/update-verify-tests/multiple-errors.test
    A clang/test/utils/update-verify-tests/multiple-missing-errors-same-line.test
    A clang/test/utils/update-verify-tests/no-checks.test
    A clang/test/utils/update-verify-tests/no-diags.test
    A clang/test/utils/update-verify-tests/no-expected-diags.test
    A clang/test/utils/update-verify-tests/non-default-prefix.test
    A clang/test/utils/update-verify-tests/update-same-line.test
    A clang/test/utils/update-verify-tests/update-single-check.test
    M clang/tools/CMakeLists.txt
    R clang/tools/clang-format-vs/.gitignore
    R clang/tools/clang-format-vs/CMakeLists.txt
    R clang/tools/clang-format-vs/ClangFormat.sln
    R clang/tools/clang-format-vs/ClangFormat/ClangFormat.csproj
    R clang/tools/clang-format-vs/ClangFormat/ClangFormat.vsct
    R clang/tools/clang-format-vs/ClangFormat/ClangFormatPackage.cs
    R clang/tools/clang-format-vs/ClangFormat/GlobalSuppressions.cs
    R clang/tools/clang-format-vs/ClangFormat/Guids.cs
    R clang/tools/clang-format-vs/ClangFormat/PkgCmdID.cs
    R clang/tools/clang-format-vs/ClangFormat/Properties/AssemblyInfo.cs
    R clang/tools/clang-format-vs/ClangFormat/Resources.Designer.cs
    R clang/tools/clang-format-vs/ClangFormat/Resources.resx
    R clang/tools/clang-format-vs/ClangFormat/Resources/Images_32bit.bmp
    R clang/tools/clang-format-vs/ClangFormat/Resources/Package.ico
    R clang/tools/clang-format-vs/ClangFormat/RunningDocTableEventsDispatcher.cs
    R clang/tools/clang-format-vs/ClangFormat/VSPackage.resx
    R clang/tools/clang-format-vs/ClangFormat/Vsix.cs
    R clang/tools/clang-format-vs/ClangFormat/license.txt
    R clang/tools/clang-format-vs/ClangFormat/packages.config
    R clang/tools/clang-format-vs/README.txt
    R clang/tools/clang-format-vs/source.extension.vsixmanifest.in
    M clang/tools/clang-refactor/ClangRefactor.cpp
    M clang/tools/clang-scan-deps/CMakeLists.txt
    M clang/tools/clang-scan-deps/ClangScanDeps.cpp
    M clang/tools/diagtool/ListWarnings.cpp
    M clang/tools/diagtool/ShowEnabledWarnings.cpp
    M clang/tools/driver/cc1gen_reproducer_main.cpp
    M clang/tools/libclang/CXStoredDiagnostic.cpp
    M clang/unittests/AST/SourceLocationTest.cpp
    M clang/unittests/AST/TemplateNameTest.cpp
    M clang/unittests/Analysis/ExprMutationAnalyzerTest.cpp
    M clang/unittests/Format/FormatTestJS.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp
    M clang/unittests/Frontend/OutputStreamTest.cpp
    M clang/unittests/StaticAnalyzer/RangeSetTest.cpp
    M clang/unittests/Tooling/ASTSelectionTest.cpp
    M clang/unittests/Tooling/DiagnosticsYamlTest.cpp
    M clang/unittests/Tooling/RecursiveASTVisitorTestDeclVisitor.cpp
    M clang/unittests/Tooling/RecursiveASTVisitorTests/TemplateArgumentLocTraverser.cpp
    M clang/unittests/Tooling/RefactoringTest.cpp
    M clang/unittests/Tooling/RewriterTestContext.h
    M clang/unittests/Tooling/StencilTest.cpp
    M clang/utils/TableGen/ASTTableGen.cpp
    M clang/utils/TableGen/ASTTableGen.h
    M clang/utils/TableGen/ClangASTNodesEmitter.cpp
    M clang/utils/TableGen/ClangASTPropertiesEmitter.cpp
    M clang/utils/TableGen/ClangAttrEmitter.cpp
    M clang/utils/TableGen/ClangBuiltinsEmitter.cpp
    M clang/utils/TableGen/ClangCommentCommandInfoEmitter.cpp
    M clang/utils/TableGen/ClangCommentHTMLNamedCharacterReferenceEmitter.cpp
    M clang/utils/TableGen/ClangCommentHTMLTagsEmitter.cpp
    M clang/utils/TableGen/ClangDataCollectorsEmitter.cpp
    M clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
    M clang/utils/TableGen/ClangOpcodesEmitter.cpp
    M clang/utils/TableGen/ClangOpenCLBuiltinEmitter.cpp
    M clang/utils/TableGen/ClangOptionDocEmitter.cpp
    M clang/utils/TableGen/ClangSACheckersEmitter.cpp
    M clang/utils/TableGen/ClangSyntaxEmitter.cpp
    M clang/utils/TableGen/ClangTypeNodesEmitter.cpp
    M clang/utils/TableGen/MveEmitter.cpp
    M clang/utils/TableGen/NeonEmitter.cpp
    M clang/utils/TableGen/RISCVVEmitter.cpp
    M clang/utils/TableGen/SveEmitter.cpp
    M clang/utils/TableGen/TableGenBackends.h
    A clang/utils/UpdateVerifyTests/core.py
    A clang/utils/update-verify-tests.py
    M clang/www/c_status.html
    M clang/www/cxx_dr_status.html
    M compiler-rt/cmake/base-config-ix.cmake
    M compiler-rt/lib/asan/CMakeLists.txt
    M compiler-rt/lib/asan/asan_malloc_linux.cpp
    M compiler-rt/lib/asan/asan_posix.cpp
    M compiler-rt/lib/builtins/cpu_model/aarch64.c
    M compiler-rt/lib/builtins/cpu_model/aarch64.h
    M compiler-rt/lib/builtins/cpu_model/x86.c
    M compiler-rt/lib/dfsan/dfsan_interceptors.cpp
    M compiler-rt/lib/hwasan/hwasan_allocation_functions.cpp
    M compiler-rt/lib/lsan/lsan_interceptors.cpp
    M compiler-rt/lib/memprof/memprof_malloc_linux.cpp
    M compiler-rt/lib/msan/msan_interceptors.cpp
    M compiler-rt/lib/orc/dlfcn_wrapper.cpp
    M compiler-rt/lib/orc/macho_platform.cpp
    M compiler-rt/lib/orc/macho_platform.h
    M compiler-rt/lib/rtsan/rtsan_context.cpp
    M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors.cpp
    M compiler-rt/lib/rtsan/tests/rtsan_test_utilities.h
    M compiler-rt/lib/sanitizer_common/sanitizer_allocator_dlsym.h
    M compiler-rt/lib/sanitizer_common/sanitizer_common_interface.inc
    M compiler-rt/lib/sanitizer_common/sanitizer_common_nolibc.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_interface_internal.h
    M compiler-rt/lib/sanitizer_common/sanitizer_internal_defs.h
    M compiler-rt/lib/sanitizer_common/sanitizer_libignore.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_libignore.h
    M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
    M compiler-rt/lib/sanitizer_common/sanitizer_tls_get_addr.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_tls_get_addr.h
    M compiler-rt/lib/sanitizer_common/sanitizer_win_thunk_interception.h
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_linux_test.cpp
    M compiler-rt/lib/sanitizer_common/weak_symbols.txt
    M compiler-rt/lib/scudo/standalone/primary64.h
    M compiler-rt/lib/scudo/standalone/secondary.h
    M compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
    M compiler-rt/lib/tsan/rtl/tsan_mman.cpp
    M compiler-rt/test/asan/TestCases/global-overflow.cpp
    M compiler-rt/test/asan/TestCases/large_func_test.cpp
    M compiler-rt/test/lit.common.cfg.py
    M compiler-rt/test/rtsan/basic.cpp
    M compiler-rt/test/rtsan/disabler.cpp
    A compiler-rt/test/sanitizer_common/TestCases/Linux/tls_get_addr.c
    A compiler-rt/test/sanitizer_common/TestCases/Linux/tls_malloc_hook.c
    A compiler-rt/test/sanitizer_common/TestCases/dlsym_alloc.c
    M compiler-rt/test/sanitizer_common/TestCases/sanitizer_coverage_trace_pc_guard-dso.cpp
    M compiler-rt/test/sanitizer_common/TestCases/sanitizer_coverage_trace_pc_guard.cpp
    M compiler-rt/test/tsan/ignore_lib3.cpp
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb/LLDB.py
    M flang/docs/Extensions.md
    M flang/include/flang/Common/Fortran-features.h
    M flang/include/flang/Evaluate/expression.h
    M flang/include/flang/Evaluate/tools.h
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    M flang/include/flang/Optimizer/Builder/LowLevelIntrinsics.h
    M flang/include/flang/Optimizer/CodeGen/CGPasses.td
    M flang/include/flang/Optimizer/Support/DataLayout.h
    A flang/include/flang/Runtime/CUDA/memory.h
    M flang/include/flang/Semantics/expression.h
    M flang/include/flang/Semantics/scope.h
    M flang/include/flang/Semantics/type.h
    M flang/lib/Evaluate/check-expression.cpp
    M flang/lib/Evaluate/expression.cpp
    M flang/lib/Evaluate/fold-implementation.h
    M flang/lib/Evaluate/intrinsics.cpp
    M flang/lib/Evaluate/real.cpp
    M flang/lib/Evaluate/tools.cpp
    M flang/lib/Evaluate/type.cpp
    M flang/lib/Frontend/TextDiagnosticPrinter.cpp
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/ConvertCall.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/PFTBuilder.cpp
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/lib/Optimizer/Builder/LowLevelIntrinsics.cpp
    M flang/lib/Optimizer/CodeGen/CMakeLists.txt
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
    M flang/lib/Optimizer/Dialect/FIRType.cpp
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    M flang/lib/Optimizer/Transforms/StackArrays.cpp
    M flang/lib/Optimizer/Transforms/StackReclaim.cpp
    M flang/lib/Parser/preprocessor.cpp
    M flang/lib/Parser/prescan.cpp
    M flang/lib/Parser/prescan.h
    M flang/lib/Semantics/check-call.cpp
    M flang/lib/Semantics/check-declarations.cpp
    M flang/lib/Semantics/check-do-forall.cpp
    M flang/lib/Semantics/check-do-forall.h
    M flang/lib/Semantics/compute-offsets.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/symbol.cpp
    M flang/lib/Semantics/type.cpp
    M flang/module/__fortran_builtins.f90
    M flang/module/__fortran_ieee_exceptions.f90
    M flang/module/ieee_arithmetic.f90
    M flang/module/iso_fortran_env.f90
    M flang/runtime/CMakeLists.txt
    M flang/runtime/CUDA/CMakeLists.txt
    A flang/runtime/CUDA/memory.cpp
    M flang/runtime/Float128Math/CMakeLists.txt
    M flang/runtime/edit-input.cpp
    M flang/runtime/format-implementation.h
    M flang/runtime/io-stmt.h
    M flang/runtime/numeric-templates.h
    M flang/runtime/time-intrinsic.cpp
    M flang/test/Driver/include-header.f90
    A flang/test/Evaluate/fold-assumed-rank-kind.f90
    M flang/test/Evaluate/fold-spacing.f90
    M flang/test/Fir/struct-passing-x86-64-one-field-inreg.fir
    M flang/test/Fir/struct-passing-x86-64-several-fields-inreg.fir
    M flang/test/Fir/target-rewrite-complex16.fir
    M flang/test/HLFIR/order_assignments/where-scheduling.f90
    M flang/test/Integration/debug-module-2.f90
    M flang/test/Lower/CUDA/cuda-data-transfer.cuf
    M flang/test/Lower/CUDA/cuda-devptr.cuf
    M flang/test/Lower/HLFIR/block_bindc_pocs.f90
    M flang/test/Lower/HLFIR/elemental-array-ops.f90
    A flang/test/Lower/HLFIR/ignore-type-f77-character.f90
    M flang/test/Lower/HLFIR/proc-pointer-comp-pass.f90
    A flang/test/Lower/HLFIR/procedure-pointer-in-generics.f90
    M flang/test/Lower/HLFIR/where-nonelemental.f90
    M flang/test/Lower/OpenMP/atomic-read.f90
    M flang/test/Lower/OpenMP/atomic-update.f90
    M flang/test/Lower/OpenMP/copyin.f90
    M flang/test/Lower/OpenMP/distribute-parallel-do.f90
    A flang/test/Lower/OpenMP/math-amdgpu.f90
    M flang/test/Lower/OpenMP/parallel.f90
    A flang/test/Lower/OpenMP/shared-loop.f90
    M flang/test/Lower/OpenMP/simd.f90
    M flang/test/Lower/OpenMP/wsloop-chunks.f90
    M flang/test/Lower/OpenMP/wsloop-monotonic.f90
    M flang/test/Lower/OpenMP/wsloop-nonmonotonic.f90
    M flang/test/Lower/OpenMP/wsloop-schedule.f90
    M flang/test/Lower/OpenMP/wsloop.f90
    M flang/test/Lower/array-elemental-calls-char.f90
    M flang/test/Lower/block.f90
    M flang/test/Lower/call-suspect.f90
    M flang/test/Lower/computed-goto.f90
    M flang/test/Lower/dummy-procedure-character.f90
    M flang/test/Lower/explicit-interface-results-2.f90
    M flang/test/Lower/forall/array-constructor.f90
    M flang/test/Lower/host-associated-functions.f90
    M flang/test/Lower/host-associated.f90
    M flang/test/Lower/implicit-call-mismatch.f90
    M flang/test/Lower/io-write.f90
    A flang/test/Preprocessing/include-file.h
    A flang/test/Preprocessing/include-line.F90
    A flang/test/Semantics/Inputs/modfile66.cuf
    A flang/test/Semantics/Inputs/modfile67.mod
    M flang/test/Semantics/OpenMP/combined-constructs.f90
    M flang/test/Semantics/OpenMP/do20.f90
    M flang/test/Semantics/OpenMP/implicit-dsa.f90
    M flang/test/Semantics/OpenMP/ordered03.f90
    M flang/test/Semantics/OpenMP/symbol01.f90
    M flang/test/Semantics/OpenMP/symbol02.f90
    M flang/test/Semantics/OpenMP/symbol03.f90
    M flang/test/Semantics/OpenMP/symbol07.f90
    M flang/test/Semantics/OpenMP/symbol09.f90
    M flang/test/Semantics/OpenMP/workshare02.f90
    M flang/test/Semantics/call11.f90
    A flang/test/Semantics/elemental02.f90
    M flang/test/Semantics/expr-errors06.f90
    A flang/test/Semantics/generic10.f90
    A flang/test/Semantics/kinds06.f90
    M flang/test/Semantics/local-vs-global.f90
    A flang/test/Semantics/modfile66.f90
    A flang/test/Semantics/modfile67.f90
    M flang/test/Semantics/resolve24.f90
    M flang/test/Semantics/resolve69.f90
    M flang/test/Semantics/resolve77.f90
    M flang/test/Semantics/spec-expr.f90
    M flang/test/Transforms/debug-90683.fir
    M flang/test/Transforms/debug-fn-info.fir
    A flang/test/Transforms/debug-imported-entity.fir
    M flang/test/Transforms/debug-line-table-inc-file.fir
    M flang/test/Transforms/debug-local-global-storage-1.fir
    M flang/test/Transforms/stack-arrays.fir
    M flang/tools/f18/CMakeLists.txt
    M flang/unittests/Runtime/Namelist.cpp
    M libc/cmake/modules/LLVMLibCArchitectures.cmake
    M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
    M libc/cmake/modules/LLVMLibCHeaderRules.cmake
    M libc/config/baremetal/arm/entrypoints.txt
    M libc/config/baremetal/riscv/entrypoints.txt
    M libc/config/config.json
    M libc/config/darwin/arm/entrypoints.txt
    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/configure.rst
    M libc/hdr/CMakeLists.txt
    A libc/hdr/link_macros.h
    A libc/hdr/sys_auxv_macros.h
    M libc/include/CMakeLists.txt
    M libc/include/llvm-libc-macros/float16-macros.h
    M libc/include/llvm-libc-macros/stdckdint-macros.h
    M libc/newhdrgen/yaml/time.yaml
    M libc/spec/stdc.td
    M libc/src/__support/CMakeLists.txt
    M libc/src/__support/CPP/CMakeLists.txt
    M libc/src/__support/CPP/new.cpp
    M libc/src/__support/CPP/new.h
    M libc/src/__support/OSUtil/io.h
    M libc/src/__support/OSUtil/linux/CMakeLists.txt
    M libc/src/__support/OSUtil/linux/aarch64/CMakeLists.txt
    A libc/src/__support/OSUtil/linux/aarch64/vdso.h
    M libc/src/__support/OSUtil/linux/arm/CMakeLists.txt
    A libc/src/__support/OSUtil/linux/arm/vdso.h
    M libc/src/__support/OSUtil/linux/riscv/CMakeLists.txt
    A libc/src/__support/OSUtil/linux/riscv/vdso.h
    A libc/src/__support/OSUtil/linux/vdso.cpp
    A libc/src/__support/OSUtil/linux/vdso.h
    A libc/src/__support/OSUtil/linux/vdso_sym.h
    M libc/src/__support/OSUtil/linux/x86_64/CMakeLists.txt
    A libc/src/__support/OSUtil/linux/x86_64/vdso.h
    A libc/src/__support/OSUtil/windows/CMakeLists.txt
    A libc/src/__support/OSUtil/windows/exit.cpp
    A libc/src/__support/OSUtil/windows/io.cpp
    A libc/src/__support/OSUtil/windows/io.h
    M libc/src/__support/macros/CMakeLists.txt
    A libc/src/__support/macros/null_check.h
    M libc/src/__support/macros/properties/types.h
    M libc/src/__support/macros/sanitizer.h
    M libc/src/__support/str_to_float.h
    M libc/src/__support/time/linux/CMakeLists.txt
    M libc/src/__support/time/linux/clock_gettime.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/fmul.cpp
    M libc/src/stdlib/atexit.cpp
    M libc/src/stdlib/quick_exit.cpp
    M libc/src/sys/auxv/getauxval.h
    M libc/src/time/CMakeLists.txt
    A libc/src/time/ctime.cpp
    A libc/src/time/ctime.h
    A libc/src/time/ctime_r.cpp
    A libc/src/time/ctime_r.h
    M libc/src/time/time_utils.h
    M libc/startup/gpu/amdgpu/start.cpp
    M libc/startup/gpu/nvptx/start.cpp
    M libc/startup/linux/do_start.cpp
    M libc/test/src/__support/CMakeLists.txt
    M libc/test/src/__support/FPUtil/CMakeLists.txt
    M libc/test/src/__support/FPUtil/fpbits_test.cpp
    M libc/test/src/__support/OSUtil/linux/CMakeLists.txt
    A libc/test/src/__support/OSUtil/linux/vdso_test.cpp
    M libc/test/src/__support/arg_list_test.cpp
    M libc/test/src/compiler/CMakeLists.txt
    M libc/test/src/compiler/stack_chk_guard_test.cpp
    M libc/test/src/fenv/CMakeLists.txt
    M libc/test/src/fenv/getenv_and_setenv_test.cpp
    M libc/test/src/math/fmul_test.cpp
    M libc/test/src/math/performance_testing/CMakeLists.txt
    M libc/test/src/math/performance_testing/fmul_perf.cpp
    M libc/test/src/math/smoke/AddTest.h
    M libc/test/src/math/smoke/CMakeLists.txt
    M libc/test/src/math/smoke/SubTest.h
    M libc/test/src/math/smoke/fmul_test.cpp
    M libc/test/src/math/smoke/nan_test.cpp
    M libc/test/src/math/smoke/nanf128_test.cpp
    M libc/test/src/math/smoke/nanf16_test.cpp
    M libc/test/src/math/smoke/nanf_test.cpp
    M libc/test/src/math/smoke/nanl_test.cpp
    M libc/test/src/string/memory_utils/CMakeLists.txt
    M libc/test/src/string/memory_utils/op_tests.cpp
    M libc/test/src/time/CMakeLists.txt
    A libc/test/src/time/ctime_r_test.cpp
    A libc/test/src/time/ctime_test.cpp
    M libcxx/.clang-format
    M libcxx/docs/ReleaseNotes/20.rst
    M libcxx/docs/Status/Cxx17Issues.csv
    M libcxx/docs/Status/Cxx17Papers.csv
    M libcxx/docs/Status/Cxx20Issues.csv
    M libcxx/docs/Status/Cxx20Papers.csv
    M libcxx/docs/TestingLibcxx.rst
    M libcxx/docs/UserDocumentation.rst
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__algorithm/adjacent_find.h
    M libcxx/include/__algorithm/all_of.h
    M libcxx/include/__algorithm/any_of.h
    M libcxx/include/__algorithm/binary_search.h
    M libcxx/include/__algorithm/copy.h
    M libcxx/include/__algorithm/copy_backward.h
    M libcxx/include/__algorithm/count.h
    M libcxx/include/__algorithm/count_if.h
    M libcxx/include/__algorithm/equal.h
    M libcxx/include/__algorithm/equal_range.h
    M libcxx/include/__algorithm/find.h
    M libcxx/include/__algorithm/find_end.h
    M libcxx/include/__algorithm/find_first_of.h
    M libcxx/include/__algorithm/find_if.h
    M libcxx/include/__algorithm/find_if_not.h
    M libcxx/include/__algorithm/fold.h
    M libcxx/include/__algorithm/includes.h
    M libcxx/include/__algorithm/inplace_merge.h
    M libcxx/include/__algorithm/is_heap.h
    M libcxx/include/__algorithm/is_heap_until.h
    M libcxx/include/__algorithm/is_partitioned.h
    M libcxx/include/__algorithm/is_permutation.h
    M libcxx/include/__algorithm/is_sorted.h
    M libcxx/include/__algorithm/is_sorted_until.h
    M libcxx/include/__algorithm/lexicographical_compare.h
    M libcxx/include/__algorithm/lower_bound.h
    M libcxx/include/__algorithm/make_projected.h
    M libcxx/include/__algorithm/max.h
    M libcxx/include/__algorithm/max_element.h
    M libcxx/include/__algorithm/min.h
    M libcxx/include/__algorithm/min_element.h
    M libcxx/include/__algorithm/minmax.h
    M libcxx/include/__algorithm/minmax_element.h
    M libcxx/include/__algorithm/mismatch.h
    M libcxx/include/__algorithm/move.h
    M libcxx/include/__algorithm/move_backward.h
    M libcxx/include/__algorithm/none_of.h
    M libcxx/include/__algorithm/partial_sort_copy.h
    M libcxx/include/__algorithm/partition.h
    M libcxx/include/__algorithm/pstl.h
    M libcxx/include/__algorithm/ranges_ends_with.h
    M libcxx/include/__algorithm/ranges_find_last.h
    M libcxx/include/__algorithm/ranges_generate.h
    M libcxx/include/__algorithm/ranges_generate_n.h
    M libcxx/include/__algorithm/ranges_partition.h
    M libcxx/include/__algorithm/remove.h
    M libcxx/include/__algorithm/remove_if.h
    M libcxx/include/__algorithm/search.h
    M libcxx/include/__algorithm/search_n.h
    M libcxx/include/__algorithm/set_difference.h
    M libcxx/include/__algorithm/set_intersection.h
    M libcxx/include/__algorithm/simd_utils.h
    M libcxx/include/__algorithm/sort.h
    M libcxx/include/__algorithm/stable_partition.h
    M libcxx/include/__algorithm/stable_sort.h
    M libcxx/include/__algorithm/uniform_random_bit_generator_adaptor.h
    M libcxx/include/__algorithm/unique.h
    M libcxx/include/__algorithm/upper_bound.h
    M libcxx/include/__atomic/atomic_ref.h
    M libcxx/include/__bit/bit_cast.h
    M libcxx/include/__bit/countl.h
    M libcxx/include/__bit/countr.h
    M libcxx/include/__chrono/day.h
    M libcxx/include/__chrono/exception.h
    M libcxx/include/__chrono/formatter.h
    M libcxx/include/__chrono/leap_second.h
    M libcxx/include/__chrono/month.h
    M libcxx/include/__chrono/monthday.h
    M libcxx/include/__chrono/ostream.h
    M libcxx/include/__chrono/parser_std_format_spec.h
    M libcxx/include/__chrono/tzdb.h
    M libcxx/include/__chrono/tzdb_list.h
    M libcxx/include/__chrono/year.h
    M libcxx/include/__chrono/year_month.h
    M libcxx/include/__chrono/year_month_day.h
    M libcxx/include/__chrono/zoned_time.h
    M libcxx/include/__compare/ordering.h
    M libcxx/include/__concepts/predicate.h
    M libcxx/include/__config
    M libcxx/include/__configuration/abi.h
    M libcxx/include/__exception/exception_ptr.h
    M libcxx/include/__exception/nested_exception.h
    M libcxx/include/__exception/operations.h
    M libcxx/include/__exception/terminate.h
    M libcxx/include/__expected/expected.h
    M libcxx/include/__filesystem/filesystem_error.h
    M libcxx/include/__filesystem/path.h
    M libcxx/include/__format/format_arg_store.h
    M libcxx/include/__format/format_error.h
    M libcxx/include/__format/parser_std_format_spec.h
    M libcxx/include/__format/write_escaped.h
    M libcxx/include/__functional/bind.h
    M libcxx/include/__functional/function.h
    M libcxx/include/__functional/hash.h
    M libcxx/include/__functional/identity.h
    M libcxx/include/__functional/invoke.h
    M libcxx/include/__functional/mem_fn.h
    M libcxx/include/__functional/perfect_forward.h
    M libcxx/include/__functional/reference_wrapper.h
    M libcxx/include/__functional/weak_result_type.h
    A libcxx/include/__fwd/get.h
    A libcxx/include/__fwd/variant.h
    M libcxx/include/__hash_table
    M libcxx/include/__iterator/common_iterator.h
    M libcxx/include/__iterator/concepts.h
    M libcxx/include/__iterator/counted_iterator.h
    M libcxx/include/__iterator/ostreambuf_iterator.h
    M libcxx/include/__math/abs.h
    M libcxx/include/__math/copysign.h
    M libcxx/include/__math/min_max.h
    M libcxx/include/__math/roots.h
    M libcxx/include/__math/rounding_functions.h
    M libcxx/include/__math/traits.h
    M libcxx/include/__memory/allocate_at_least.h
    M libcxx/include/__memory/allocator.h
    M libcxx/include/__memory/allocator_traits.h
    M libcxx/include/__memory/assume_aligned.h
    M libcxx/include/__memory/compressed_pair.h
    M libcxx/include/__memory/inout_ptr.h
    M libcxx/include/__memory/out_ptr.h
    M libcxx/include/__memory/pointer_traits.h
    M libcxx/include/__memory/shared_ptr.h
    M libcxx/include/__memory/temporary_buffer.h
    M libcxx/include/__memory/unique_ptr.h
    A libcxx/include/__memory/unique_temporary_buffer.h
    M libcxx/include/__mutex/lock_guard.h
    M libcxx/include/__mutex/unique_lock.h
    M libcxx/include/__ostream/basic_ostream.h
    M libcxx/include/__ostream/print.h
    M libcxx/include/__pstl/backend.h
    M libcxx/include/__pstl/backend_fwd.h
    M libcxx/include/__pstl/backends/default.h
    M libcxx/include/__pstl/backends/libdispatch.h
    M libcxx/include/__pstl/backends/serial.h
    M libcxx/include/__pstl/backends/std_thread.h
    M libcxx/include/__pstl/cpu_algos/any_of.h
    M libcxx/include/__pstl/cpu_algos/cpu_traits.h
    M libcxx/include/__pstl/cpu_algos/fill.h
    M libcxx/include/__pstl/cpu_algos/find_if.h
    M libcxx/include/__pstl/cpu_algos/for_each.h
    M libcxx/include/__pstl/cpu_algos/merge.h
    M libcxx/include/__pstl/cpu_algos/stable_sort.h
    M libcxx/include/__pstl/cpu_algos/transform.h
    M libcxx/include/__pstl/cpu_algos/transform_reduce.h
    M libcxx/include/__pstl/dispatch.h
    M libcxx/include/__pstl/handle_exception.h
    M libcxx/include/__random/uniform_random_bit_generator.h
    M libcxx/include/__ranges/elements_view.h
    M libcxx/include/__ranges/range_adaptor.h
    M libcxx/include/__ranges/transform_view.h
    M libcxx/include/__split_buffer
    M libcxx/include/__std_clang_module
    M libcxx/include/__stop_token/atomic_unique_lock.h
    M libcxx/include/__stop_token/stop_callback.h
    M libcxx/include/__stop_token/stop_source.h
    M libcxx/include/__stop_token/stop_token.h
    M libcxx/include/__string/char_traits.h
    M libcxx/include/__system_error/system_error.h
    M libcxx/include/__thread/jthread.h
    M libcxx/include/__thread/this_thread.h
    M libcxx/include/__thread/thread.h
    M libcxx/include/__tree
    M libcxx/include/__type_traits/is_swappable.h
    M libcxx/include/__utility/forward.h
    M libcxx/include/__utility/move.h
    M libcxx/include/__utility/unreachable.h
    M libcxx/include/__verbose_abort
    M libcxx/include/algorithm
    M libcxx/include/any
    M libcxx/include/array
    M libcxx/include/barrier
    M libcxx/include/bitset
    M libcxx/include/chrono
    M libcxx/include/condition_variable
    M libcxx/include/deque
    R libcxx/include/experimental/__config
    M libcxx/include/experimental/__simd/aligned_tag.h
    M libcxx/include/experimental/__simd/declaration.h
    M libcxx/include/experimental/__simd/reference.h
    M libcxx/include/experimental/__simd/scalar.h
    M libcxx/include/experimental/__simd/simd.h
    M libcxx/include/experimental/__simd/simd_mask.h
    M libcxx/include/experimental/__simd/traits.h
    M libcxx/include/experimental/__simd/utility.h
    M libcxx/include/experimental/__simd/vec_ext.h
    M libcxx/include/experimental/iterator
    M libcxx/include/experimental/memory
    M libcxx/include/experimental/propagate_const
    M libcxx/include/experimental/simd
    M libcxx/include/experimental/type_traits
    M libcxx/include/experimental/utility
    M libcxx/include/forward_list
    M libcxx/include/fstream
    M libcxx/include/future
    M libcxx/include/iomanip
    M libcxx/include/ios
    M libcxx/include/istream
    M libcxx/include/limits
    M libcxx/include/list
    M libcxx/include/map
    M libcxx/include/math.h
    M libcxx/include/memory
    M libcxx/include/module.modulemap
    M libcxx/include/new
    M libcxx/include/optional
    M libcxx/include/ostream
    M libcxx/include/queue
    M libcxx/include/regex
    M libcxx/include/scoped_allocator
    M libcxx/include/set
    M libcxx/include/sstream
    M libcxx/include/stack
    M libcxx/include/stdexcept
    M libcxx/include/stdlib.h
    M libcxx/include/streambuf
    M libcxx/include/string
    M libcxx/include/string_view
    M libcxx/include/syncstream
    M libcxx/include/tuple
    M libcxx/include/type_traits
    M libcxx/include/typeinfo
    M libcxx/include/unordered_map
    M libcxx/include/unordered_set
    M libcxx/include/variant
    M libcxx/include/vector
    M libcxx/include/version
    M libcxx/include/wchar.h
    M libcxx/include/wctype.h
    M libcxx/modules/std.compat.cppm.in
    M libcxx/modules/std.cppm.in
    M libcxx/modules/std/stop_token.inc
    M libcxx/modules/std/thread.inc
    M libcxx/src/any.cpp
    M libcxx/src/optional.cpp
    M libcxx/src/stdexcept.cpp
    M libcxx/src/string.cpp
    M libcxx/src/support/runtime/exception_fallback.ipp
    M libcxx/src/support/runtime/exception_msvc.ipp
    M libcxx/src/support/runtime/exception_pointer_cxxabi.ipp
    M libcxx/src/support/runtime/exception_pointer_glibcxx.ipp
    M libcxx/src/support/runtime/exception_pointer_msvc.ipp
    M libcxx/src/support/runtime/exception_pointer_unimplemented.ipp
    M libcxx/src/vector.cpp
    M libcxx/test/libcxx/algorithms/alg.sorting/alg.heap.operations/make.heap/complexity.pass.cpp
    M libcxx/test/libcxx/algorithms/ranges_robust_against_copying_comparators.pass.cpp
    M libcxx/test/libcxx/algorithms/ranges_robust_against_copying_projections.pass.cpp
    M libcxx/test/libcxx/algorithms/robust_against_copying_comparators.pass.cpp
    M libcxx/test/libcxx/algorithms/robust_against_cpp20_hostile_iterators.compile.pass.cpp
    M libcxx/test/libcxx/containers/associative/unord.map/abi.compile.pass.cpp
    M libcxx/test/libcxx/containers/associative/unord.set/abi.compile.pass.cpp
    M libcxx/test/libcxx/containers/sequences/deque/abi.compile.pass.cpp
    M libcxx/test/libcxx/containers/sequences/vector.bool/abi.compile.pass.cpp
    M libcxx/test/libcxx/containers/sequences/vector/abi.compile.pass.cpp
    M libcxx/test/libcxx/containers/unord/next_pow2.pass.cpp
    M libcxx/test/libcxx/containers/unord/next_prime.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.set/missing_hash_specialization.verify.cpp
    M libcxx/test/libcxx/depr/depr.function.objects/depr.adaptors.cxx1z.pass.cpp
    M libcxx/test/libcxx/diagnostics/chrono.nodiscard.verify.cpp
    M libcxx/test/libcxx/diagnostics/memory.nodiscard.verify.cpp
    M libcxx/test/libcxx/diagnostics/ranges.nodiscard.verify.cpp
    M libcxx/test/libcxx/experimental/fexperimental-library.compile.pass.cpp
    M libcxx/test/libcxx/iterators/iterator.requirements/iterator.concepts/cpp20_iter_concepts.pass.cpp
    R libcxx/test/libcxx/memory/compressed_pair/compressed_pair.pass.cpp
    M libcxx/test/libcxx/ranges/range.utility.helpers/has_arrow.compile.pass.cpp
    M libcxx/test/libcxx/strings/basic.string/alignof.compile.pass.cpp
    M libcxx/test/libcxx/strings/basic.string/sizeof.compile.pass.cpp
    M libcxx/test/libcxx/transitive_includes/cxx03.csv
    M libcxx/test/libcxx/transitive_includes/cxx11.csv
    M libcxx/test/libcxx/transitive_includes/cxx14.csv
    M libcxx/test/libcxx/transitive_includes/cxx17.csv
    M libcxx/test/libcxx/transitive_includes/cxx20.csv
    M libcxx/test/libcxx/transitive_includes/cxx23.csv
    M libcxx/test/libcxx/transitive_includes/cxx26.csv
    M libcxx/test/libcxx/transitive_includes_to_csv.py
    M libcxx/test/libcxx/type_traits/datasizeof.compile.pass.cpp
    M libcxx/test/libcxx/utilities/format/format.arguments/format.arg/arg_t.compile.pass.cpp
    M libcxx/test/libcxx/utilities/format/format.string/format.string.std/escaped_output.pass.cpp
    M libcxx/test/libcxx/utilities/function.objects/func.require/bullet_1_2_3.pass.cpp
    M libcxx/test/libcxx/utilities/function.objects/func.require/bullet_4_5_6.pass.cpp
    M libcxx/test/libcxx/utilities/memory/util.smartptr/util.smartptr.shared/function_type_default_deleter.verify.cpp
    M libcxx/test/libcxx/utilities/memory/util.smartptr/util.smartptr.shared/libcxx.control_block_layout.pass.cpp
    M libcxx/test/libcxx/utilities/meta/meta_base.pass.cpp
    M libcxx/test/libcxx/utilities/utility/__murmur2_or_cityhash.abi-v1.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/stable_partition.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.random.shuffle/random_shuffle_urng.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/mismatch/mismatch.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/sort.heap/complexity.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/sort.heap/ranges_sort_heap.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.merge/inplace_merge_comp.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.merge/pstl.merge.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/sort/pstl.sort.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/stable.sort/stable_sort.pass.cpp
    M libcxx/test/std/algorithms/ranges_robust_against_omitting_invoke.pass.cpp
    M libcxx/test/std/algorithms/robust_against_proxy_iterators_lifetime_bugs.pass.cpp
    M libcxx/test/std/algorithms/robust_re_difference_type.compile.pass.cpp
    M libcxx/test/std/atomics/atomics.ref/bitwise_and_assign.pass.cpp
    M libcxx/test/std/atomics/atomics.ref/bitwise_or_assign.pass.cpp
    M libcxx/test/std/atomics/atomics.ref/bitwise_xor_assign.pass.cpp
    M libcxx/test/std/atomics/atomics.ref/fetch_add.pass.cpp
    M libcxx/test/std/atomics/atomics.ref/fetch_and.pass.cpp
    M libcxx/test/std/atomics/atomics.ref/fetch_or.pass.cpp
    M libcxx/test/std/atomics/atomics.ref/fetch_sub.pass.cpp
    M libcxx/test/std/atomics/atomics.ref/fetch_xor.pass.cpp
    M libcxx/test/std/atomics/atomics.ref/increment_decrement.pass.cpp
    M libcxx/test/std/atomics/atomics.ref/member_types.compile.pass.cpp
    M libcxx/test/std/atomics/atomics.ref/operator_minus_equals.pass.cpp
    M libcxx/test/std/atomics/atomics.ref/operator_plus_equals.pass.cpp
    M libcxx/test/std/atomics/atomics.types.generic/atomics.types.float/assign.pass.cpp
    M libcxx/test/std/atomics/atomics.types.generic/atomics.types.float/exchange.pass.cpp
    M libcxx/test/std/atomics/atomics.types.generic/atomics.types.float/fetch_add.pass.cpp
    M libcxx/test/std/atomics/atomics.types.generic/atomics.types.float/fetch_sub.pass.cpp
    M libcxx/test/std/atomics/atomics.types.generic/atomics.types.float/load.pass.cpp
    M libcxx/test/std/atomics/atomics.types.generic/atomics.types.float/operator.float.pass.cpp
    M libcxx/test/std/atomics/atomics.types.generic/atomics.types.float/operator.minus_equals.pass.cpp
    M libcxx/test/std/atomics/atomics.types.generic/atomics.types.float/operator.plus_equals.pass.cpp
    M libcxx/test/std/atomics/atomics.types.generic/atomics.types.float/wait.pass.cpp
    M libcxx/test/std/atomics/atomics.types.generic/cstdint_typedefs.pass.cpp
    M libcxx/test/std/atomics/atomics.types.generic/integral_typedefs.pass.cpp
    M libcxx/test/std/atomics/stdatomic.h.syn/types.compile.pass.cpp
    M libcxx/test/std/atomics/types.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/move.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_node_type.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_or_assign.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/try.emplace.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.cons/move.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/copy.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/copy_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/copy_assign.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/initializer_list_compare.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/initializer_list_compare_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/move.pass.cpp
    M libcxx/test/std/containers/associative/set/insert_node_type.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/copy.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/copy_alloc.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/copy_assign.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/initializer_list_compare.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/initializer_list_compare_alloc.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/move.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons/dtor_noexcept.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.cons/dtor_noexcept.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.cons/dtor_noexcept.pass.cpp
    M libcxx/test/std/containers/container.requirements/container.requirements.general/allocator_move.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.cons/move.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/enabled_hash.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/move.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.cons/move.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_node_type.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/insert_node_type.pass.cpp
    M libcxx/test/std/containers/views/mdspan/layout_left/properties.pass.cpp
    M libcxx/test/std/containers/views/mdspan/layout_right/properties.pass.cpp
    M libcxx/test/std/containers/views/mdspan/layout_stride/deduction.pass.cpp
    M libcxx/test/std/depr/depr.c.headers/math_h.pass.cpp
    M libcxx/test/std/depr/depr.c.headers/stdlib_h.pass.cpp
    M libcxx/test/std/depr/depr.c.headers/wchar_h.compile.pass.cpp
    M libcxx/test/std/depr/depr.c.headers/wctype_h.compile.pass.cpp
    M libcxx/test/std/diagnostics/syserr/syserr.hash/enabled_hash.pass.cpp
    M libcxx/test/std/diagnostics/syserr/syserr.hash/error_code.pass.cpp
    M libcxx/test/std/diagnostics/syserr/syserr.hash/error_condition.pass.cpp
    M libcxx/test/std/experimental/memory/memory.observer.ptr/hash.pass.cpp
    M libcxx/test/std/experimental/simd/simd.reference/reference_arith_operators.pass.cpp
    M libcxx/test/std/experimental/simd/simd.reference/reference_bitwise_operators.pass.cpp
    M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.class/propagate_const.assignment/move_assign.pass.cpp
    M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.class/propagate_const.assignment/move_assign_convertible.pass.cpp
    M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.class/propagate_const.assignment/move_assign_convertible_propagate_const.pass.cpp
    M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.class/propagate_const.ctors/convertible_propagate_const.move_ctor.pass.cpp
    M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.class/propagate_const.ctors/move_ctor.pass.cpp
    M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.nonmembers/hash.pass.cpp
    M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.nonmembers/propagate_const.comparison_function_objects/equal_to.pass.cpp
    M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.nonmembers/propagate_const.comparison_function_objects/greater.pass.cpp
    M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.nonmembers/propagate_const.comparison_function_objects/greater_equal.pass.cpp
    M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.nonmembers/propagate_const.comparison_function_objects/less.pass.cpp
    M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.nonmembers/propagate_const.comparison_function_objects/less_equal.pass.cpp
    M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.nonmembers/propagate_const.comparison_function_objects/not_equal_to.pass.cpp
    M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.nonmembers/propagate_const.relops/equal.pass.cpp
    M libcxx/test/std/experimental/utilities/propagate_const/propagate_const.nonmembers/propagate_const.relops/not_equal.pass.cpp
    M libcxx/test/std/input.output/filesystems/class.path/path.member/path.hash_enabled.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/iterator.basic/iterator.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/iterator.traits/const_pointer.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/iterator.traits/const_volatile_pointer.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/iterator.traits/pointer.pass.cpp
    M libcxx/test/std/iterators/iterator.primitives/iterator.traits/volatile_pointer.pass.cpp
    M libcxx/test/std/iterators/iterator.requirements/iterator.assoc.types/incrementable.traits/incrementable_traits.compile.pass.cpp
    M libcxx/test/std/iterators/iterator.requirements/iterator.concepts/iterator.concept.sentinel/sentinel_for.compile.pass.cpp
    M libcxx/test/std/iterators/predef.iterators/reverse.iterators/reverse.iter.cmp/sfinae.compile.pass.cpp
    M libcxx/test/std/language.support/cmp/cmp.concept/three_way_comparable.compile.pass.cpp
    M libcxx/test/std/language.support/cmp/cmp.concept/three_way_comparable_with.compile.pass.cpp
    M libcxx/test/std/language.support/support.coroutines/coroutine.handle/coroutine.handle.con/assign.pass.cpp
    M libcxx/test/std/language.support/support.coroutines/coroutine.handle/coroutine.handle.con/construct.pass.cpp
    M libcxx/test/std/language.support/support.dynamic/destroying_delete_t_declaration.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/stop_token.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/thread.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.runtime/cstdlib.pass.cpp
    M libcxx/test/std/language.support/support.types/nullptr_t.pass.cpp
    M libcxx/test/std/library/description/conventions/customization.point.object/niebloid.compile.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_double.hex.pass.cpp
    M libcxx/test/std/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members/put_long_double.hex.pass.cpp
    M libcxx/test/std/localization/locales/locale.convenience/conversions/conversions.string/ctor_codecvt.pass.cpp
    M libcxx/test/std/numerics/c.math/cmath.pass.cpp
    M libcxx/test/std/numerics/c.math/signbit.pass.cpp
    M libcxx/test/std/numerics/rand/rand.adapt/rand.adapt.disc/result_type.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bernoulli/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bernoulli/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bin/eval.PR44847.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bin/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.bin/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.geo/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.geo/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.negbin/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.bern/rand.dist.bern.negbin/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.chisq/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.chisq/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.lognormal/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.lognormal/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.normal/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.normal/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.t/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.norm/rand.dist.norm.t/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.exp/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.exp/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.extreme/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.extreme/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.gamma/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.gamma/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.poisson/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.weibull/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.pois/rand.dist.pois.weibull/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.pconst/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.pconst/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.plinear/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.samp/rand.dist.samp.plinear/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.int/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.int/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.real/eval.pass.cpp
    M libcxx/test/std/numerics/rand/rand.dist/rand.dist.uni/rand.dist.uni.real/eval_param.pass.cpp
    M libcxx/test/std/numerics/rand/rand.eng/rand.eng.lcong/copy.pass.cpp
    M libcxx/test/std/numerics/rand/rand.eng/rand.eng.lcong/default.pass.cpp
    M libcxx/test/std/numerics/rand/rand.eng/rand.eng.lcong/values.pass.cpp
    M libcxx/test/std/numerics/rand/rand.eng/rand.eng.mers/result_type.pass.cpp
    M libcxx/test/std/numerics/rand/rand.eng/rand.eng.sub/result_type.pass.cpp
    M libcxx/test/std/numerics/rand/rand.util/rand.util.seedseq/generate.mandates.verify.cpp
    M libcxx/test/std/numerics/rand/rand.util/rand.util.seedseq/types.pass.cpp
    M libcxx/test/std/strings/basic.string.hash/enabled_hashes.pass.cpp
    M libcxx/test/std/strings/c.strings/cwchar.pass.cpp
    M libcxx/test/std/strings/c.strings/cwchar_include_order1.compile.verify.cpp
    M libcxx/test/std/strings/c.strings/cwchar_include_order2.compile.verify.cpp
    M libcxx/test/std/strings/c.strings/cwctype.pass.cpp
    M libcxx/test/std/strings/string.view/string.view.hash/enabled_hashes.pass.cpp
    M libcxx/test/std/thread/futures/futures.task/futures.task.members/ctor2.compile.pass.cpp
    M libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_for_token_pred.pass.cpp
    M libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_terminates.sh.cpp
    M libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_token_pred.pass.cpp
    M libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_until_token_pred.pass.cpp
    M libcxx/test/std/thread/thread.jthread/cons.func.token.pass.cpp
    M libcxx/test/std/thread/thread.stoptoken/stopcallback/dtor.pass.cpp
    M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/enabled_hashes.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.day/time.cal.day.members/decrement.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.day/time.cal.day.members/increment.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.day/time.cal.day.members/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.day/time.cal.day.members/plus_minus_equal.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.day/time.cal.day.nonmembers/minus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.day/time.cal.day.nonmembers/plus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.md/time.cal.md.members/day.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.md/time.cal.md.members/month.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.md/time.cal.md.members/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.mdlast/month.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.mdlast/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.month/time.cal.month.members/decrement.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.month/time.cal.month.members/increment.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.month/time.cal.month.members/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.month/time.cal.month.members/plus_minus_equal.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.month/time.cal.month.nonmembers/minus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.month/time.cal.month.nonmembers/plus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.mwd/time.cal.mwd.members/month.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.mwd/time.cal.mwd.members/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.mwd/time.cal.mwd.members/weekday_indexed.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.mwdlast/time.cal.mwdlast.members/month.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.mwdlast/time.cal.mwdlast.members/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.mwdlast/time.cal.mwdlast.members/weekday_last.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.wdidx/time.cal.wdidx.members/index.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.wdidx/time.cal.wdidx.members/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.wdidx/time.cal.wdidx.members/weekday.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.wdlast/time.cal.wdlast.members/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.wdlast/time.cal.wdlast.members/weekday.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.weekday/time.cal.weekday.members/c_encoding.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.weekday/time.cal.weekday.members/ctor.local_days.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.weekday/time.cal.weekday.members/ctor.sys_days.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.weekday/time.cal.weekday.members/decrement.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.weekday/time.cal.weekday.members/increment.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.weekday/time.cal.weekday.members/iso_encoding.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.weekday/time.cal.weekday.members/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.weekday/time.cal.weekday.members/operator[].pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.weekday/time.cal.weekday.members/plus_minus_equal.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.weekday/time.cal.weekday.nonmembers/minus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.weekday/time.cal.weekday.nonmembers/plus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.year/time.cal.year.members/decrement.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.year/time.cal.year.members/increment.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.year/time.cal.year.members/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.year/time.cal.year.members/plus_minus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.year/time.cal.year.members/plus_minus_equal.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.year/time.cal.year.nonmembers/minus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.year/time.cal.year.nonmembers/plus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ym/time.cal.ym.members/month.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ym/time.cal.ym.members/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ym/time.cal.ym.members/plus_minus_equal_month.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ym/time.cal.ym.members/plus_minus_equal_year.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ym/time.cal.ym.members/year.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ym/time.cal.ym.nonmembers/minus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ym/time.cal.ym.nonmembers/plus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymd/time.cal.ymd.members/ctor.local_days.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymd/time.cal.ymd.members/ctor.sys_days.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymd/time.cal.ymd.members/ctor.year_month_day_last.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymd/time.cal.ymd.members/day.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymd/time.cal.ymd.members/month.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymd/time.cal.ymd.members/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymd/time.cal.ymd.members/op.local_days.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymd/time.cal.ymd.members/op.sys_days.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymd/time.cal.ymd.members/plus_minus_equal_month.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymd/time.cal.ymd.members/plus_minus_equal_year.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymd/time.cal.ymd.members/year.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymd/time.cal.ymd.nonmembers/minus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymd/time.cal.ymd.nonmembers/plus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymdlast/time.cal.ymdlast.members/day.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymdlast/time.cal.ymdlast.members/month.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymdlast/time.cal.ymdlast.members/month_day_last.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymdlast/time.cal.ymdlast.members/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymdlast/time.cal.ymdlast.members/op_local_days.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymdlast/time.cal.ymdlast.members/op_sys_days.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymdlast/time.cal.ymdlast.members/plus_minus_equal_month.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymdlast/time.cal.ymdlast.members/plus_minus_equal_year.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymdlast/time.cal.ymdlast.members/year.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymdlast/time.cal.ymdlast.nonmembers/minus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymdlast/time.cal.ymdlast.nonmembers/plus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwd/time.cal.ymwd.members/ctor.local_days.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwd/time.cal.ymwd.members/ctor.sys_days.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwd/time.cal.ymwd.members/index.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwd/time.cal.ymwd.members/month.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwd/time.cal.ymwd.members/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwd/time.cal.ymwd.members/op.local_days.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwd/time.cal.ymwd.members/op.sys_days.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwd/time.cal.ymwd.members/plus_minus_equal_month.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwd/time.cal.ymwd.members/plus_minus_equal_year.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwd/time.cal.ymwd.members/weekday.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwd/time.cal.ymwd.members/weekday_indexed.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwd/time.cal.ymwd.members/year.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwd/time.cal.ymwd.nonmembers/minus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwd/time.cal.ymwd.nonmembers/plus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwdlast/time.cal.ymwdlast.members/month.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwdlast/time.cal.ymwdlast.members/ok.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwdlast/time.cal.ymwdlast.members/op_local_days.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwdlast/time.cal.ymwdlast.members/op_sys_days.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwdlast/time.cal.ymwdlast.members/plus_minus_equal_month.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwdlast/time.cal.ymwdlast.members/plus_minus_equal_year.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwdlast/time.cal.ymwdlast.members/weekday.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwdlast/time.cal.ymwdlast.members/year.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwdlast/time.cal.ymwdlast.nonmembers/minus.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymwdlast/time.cal.ymwdlast.nonmembers/plus.pass.cpp
    M libcxx/test/std/time/time.zone/time.zone.db/time.zone.db.access/current_zone.pass.cpp
    M libcxx/test/std/time/time.zone/time.zone.db/time.zone.db.remote/remote_version.pass.cpp
    M libcxx/test/std/time/time.zone/time.zone.exception/time.zone.exception.nonexist/types.pass.cpp
    M libcxx/test/std/time/time.zone/time.zone.leap/members/date.pass.cpp
    M libcxx/test/std/time/time.zone/time.zone.timezone/time.zone.members/sys_info.zdump.pass.cpp
    M libcxx/test/std/time/time.zone/time.zone.zonedtraits/const_time_zone_default_zone.pass.cpp
    M libcxx/test/std/time/time.zone/time.zone.zonedtraits/const_time_zone_locate_zone.pass.cpp
    M libcxx/test/std/utilities/charconv/charconv.msvc/test.hpp
    M libcxx/test/std/utilities/charconv/charconv.syn/from_chars_result.pass.cpp
    M libcxx/test/std/utilities/charconv/charconv.syn/to_chars_result.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.pointer.pass.cpp
    M libcxx/test/std/utilities/format/format.formatter/format.formatter.spec/formatter.signed_integral.pass.cpp
    M libcxx/test/std/utilities/format/format.functions/escaped_output.unicode.pass.cpp
    M libcxx/test/std/utilities/format/format.functions/format_to.locale.pass.cpp
    M libcxx/test/std/utilities/format/format.functions/format_to_n.locale.pass.cpp
    M libcxx/test/std/utilities/format/format.functions/formatted_size.locale.pass.cpp
    M libcxx/test/std/utilities/function.objects/bind/func.bind/func.bind.isbind/is_bind_expression.pass.cpp
    M libcxx/test/std/utilities/function.objects/bind/func.bind/func.bind.isplace/is_placeholder.pass.cpp
    M libcxx/test/std/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/copy_move.pass.cpp
    M libcxx/test/std/utilities/function.objects/unord.hash/enum.pass.cpp
    M libcxx/test/std/utilities/function.objects/unord.hash/integral.pass.cpp
    M libcxx/test/std/utilities/memory/allocator.traits/allocator.traits.types/difference_type.pass.cpp
    M libcxx/test/std/utilities/memory/allocator.traits/allocator.traits.types/size_type.pass.cpp
    M libcxx/test/std/utilities/memory/pointer.traits/pointer.traits.types/difference_type.compile.pass.cpp
    M libcxx/test/std/utilities/memory/temporary.buffer/overaligned.pass.cpp
    M libcxx/test/std/utilities/memory/temporary.buffer/temporary_buffer.pass.cpp
    M libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.hash/hash_shared_ptr.pass.cpp
    M libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.hash/hash_unique_ptr.pass.cpp
    M libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/types.pass.cpp
    M libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.mod/reset_pointer.pass.cpp
    M libcxx/test/std/utilities/meta/meta.trans/meta.trans.other/underlying_type.pass.cpp
    M libcxx/test/std/utilities/meta/meta.unary/meta.unary.comp/is_bounded_array.pass.cpp
    M libcxx/test/std/utilities/meta/meta.unary/meta.unary.comp/is_unbounded_array.pass.cpp
    M libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_signed.pass.cpp
    M libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_unsigned.pass.cpp
    M libcxx/test/std/utilities/optional/optional.hash/hash.pass.cpp
    M libcxx/test/std/utilities/template.bitset/bitset.cons/char_ptr_ctor.pass.cpp
    M libcxx/test/std/utilities/template.bitset/bitset.hash/enabled_hash.pass.cpp
    M libcxx/test/std/utilities/tuple/tuple.tuple/tuple.apply/make_from_tuple.pass.cpp
    M libcxx/test/std/utilities/type.index/type.index.synopsis/hash_type_index.pass.cpp
    M libcxx/test/std/utilities/utility/mem.res/mem.poly.allocator.class/mem.poly.allocator.mem/default_type.compile.pass.cpp
    M libcxx/test/std/utilities/utility/pairs/pairs.pair/special_member_generation_test.pass.cpp
    M libcxx/test/std/utilities/utility/utility.intcmp/intcmp.cmp_greater_equal/cmp_greater_equal.pass.cpp
    M libcxx/test/std/utilities/variant/variant.hash/hash.pass.cpp
    M libcxx/test/support/assert_macros.h
    M libcxx/test/support/check_assertion.h
    M libcxx/test/support/count_new.h
    M libcxx/test/support/format.functions.common.h
    M libcxx/test/support/hexfloat.h
    M libcxx/test/support/make_test_thread.h
    M libcxx/test/support/operator_hijacker.h
    M libcxx/test/support/poisoned_hash_helper.h
    R libcxx/test/support/test.support/test_poisoned_hash_helper.pass.cpp
    M libcxx/test/support/test.workarounds/c1xx_broken_za_ctor_check.pass.cpp
    M libcxx/test/support/test_allocator.h
    M libcxx/test/support/test_convertible.h
    M libcxx/test/support/test_macros.h
    M libcxx/utils/ci/docker-compose.yml
    M libcxx/utils/gdb/libcxx/printers.py
    M libcxx/utils/generate_feature_test_macro_components.py
    R libcxx/utils/graph_header_deps.py
    M libcxx/utils/libcxx/header_information.py
    M libcxx/utils/libcxx/test/features.py
    M libcxx/utils/libcxx/test/modules.py
    M libcxxabi/src/demangle/ItaniumDemangle.h
    M libcxxabi/test/test_demangle.pass.cpp
    M lld/COFF/Chunks.cpp
    M lld/COFF/Chunks.h
    M lld/COFF/Config.h
    M lld/COFF/DLL.cpp
    M lld/COFF/DLL.h
    M lld/COFF/Driver.cpp
    M lld/COFF/Driver.h
    M lld/COFF/DriverUtils.cpp
    M lld/COFF/InputFiles.cpp
    M lld/COFF/InputFiles.h
    M lld/COFF/MapFile.cpp
    M lld/COFF/MarkLive.cpp
    M lld/COFF/PDB.cpp
    M lld/COFF/SymbolTable.cpp
    M lld/COFF/SymbolTable.h
    M lld/COFF/Symbols.cpp
    M lld/COFF/Symbols.h
    M lld/COFF/Writer.cpp
    M lld/ELF/Arch/AArch64.cpp
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/Arch/Hexagon.cpp
    M lld/ELF/Arch/LoongArch.cpp
    M lld/ELF/Arch/Mips.cpp
    M lld/ELF/Arch/PPC.cpp
    M lld/ELF/Arch/PPC64.cpp
    M lld/ELF/Arch/RISCV.cpp
    M lld/ELF/Arch/SPARCV9.cpp
    M lld/ELF/Arch/SystemZ.cpp
    M lld/ELF/Arch/X86.cpp
    M lld/ELF/Arch/X86_64.cpp
    M lld/ELF/Config.h
    M lld/ELF/Driver.cpp
    M lld/ELF/ICF.cpp
    M lld/ELF/InputFiles.cpp
    M lld/ELF/InputSection.cpp
    M lld/ELF/InputSection.h
    M lld/ELF/LinkerScript.cpp
    M lld/ELF/MarkLive.cpp
    M lld/ELF/OutputSections.cpp
    M lld/ELF/Relocations.cpp
    M lld/ELF/Symbols.cpp
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h
    M lld/ELF/Thunks.cpp
    M lld/ELF/Writer.cpp
    M lld/MachO/CMakeLists.txt
    M lld/MachO/Config.h
    M lld/MachO/Driver.cpp
    M lld/MachO/InputSection.h
    M lld/MachO/Options.td
    M lld/include/lld/Common/CommonLinkerContext.h
    M lld/test/CMakeLists.txt
    M lld/test/COFF/Inputs/loadconfig-arm64ec.s
    M lld/test/COFF/arm64ec-import.test
    M lld/test/ELF/aarch64-reloc-implicit-addend.test
    M lld/test/ELF/hexagon-eflag.s
    M lld/test/ELF/partitions.s
    A lld/test/MachO/cgdata-generate.s
    M lld/test/lit.cfg.py
    A lld/test/wasm/static-error.s
    M lld/wasm/Driver.cpp
    M lld/wasm/OutputSections.cpp
    M lld/wasm/SyntheticSections.cpp
    M lld/wasm/SyntheticSections.h
    M lld/wasm/Writer.cpp
    M lldb/docs/resources/sbapi.rst
    M lldb/examples/synthetic/gnu_libstdcpp.py
    M lldb/examples/synthetic/libcxx.py
    M lldb/include/lldb/API/SBMemoryRegionInfo.h
    M lldb/include/lldb/API/SBSaveCoreOptions.h
    M lldb/include/lldb/API/SBValue.h
    M lldb/include/lldb/Core/SourceManager.h
    M lldb/include/lldb/DataFormatters/TypeSummary.h
    M lldb/include/lldb/Host/Socket.h
    M lldb/include/lldb/Host/common/TCPSocket.h
    M lldb/include/lldb/Host/common/UDPSocket.h
    M lldb/include/lldb/Host/posix/DomainSocket.h
    M lldb/include/lldb/Symbol/SaveCoreOptions.h
    A lldb/include/lldb/Target/CoreFileMemoryRanges.h
    M lldb/include/lldb/Target/Process.h
    M lldb/include/lldb/Target/Statistics.h
    M lldb/include/lldb/Target/Target.h
    M lldb/include/lldb/Utility/Instrumentation.h
    M lldb/include/lldb/Utility/RangeMap.h
    M lldb/include/lldb/lldb-enumerations.h
    M lldb/include/lldb/lldb-forward.h
    M lldb/include/lldb/lldb-private-interfaces.h
    R lldb/packages/Python/lldbsuite/test/bench.py
    M lldb/packages/Python/lldbsuite/test/builders/builder.py
    M lldb/packages/Python/lldbsuite/test/decorators.py
    M lldb/packages/Python/lldbsuite/test/lldbplatformutil.py
    M lldb/packages/Python/lldbsuite/test/lldbtest.py
    M lldb/packages/Python/lldbsuite/test/lldbutil.py
    M lldb/packages/Python/lldbsuite/test/make/Makefile.rules
    M lldb/packages/Python/lldbsuite/test/make/libcxx-simulators-common/compressed_pair.h
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
    M lldb/source/API/SBSaveCoreOptions.cpp
    M lldb/source/API/SBValue.cpp
    M lldb/source/Breakpoint/Breakpoint.cpp
    M lldb/source/Commands/CommandObjectLog.cpp
    M lldb/source/Commands/CommandObjectProcess.cpp
    M lldb/source/Commands/CommandObjectRegexCommand.cpp
    M lldb/source/Core/Module.cpp
    M lldb/source/Core/Progress.cpp
    M lldb/source/Core/SourceManager.cpp
    M lldb/source/Core/ValueObject.cpp
    M lldb/source/DataFormatters/TypeSummary.cpp
    M lldb/source/Expression/IRExecutionUnit.cpp
    M lldb/source/Expression/IRInterpreter.cpp
    M lldb/source/Host/common/Socket.cpp
    M lldb/source/Host/common/TCPSocket.cpp
    M lldb/source/Host/common/UDPSocket.cpp
    M lldb/source/Host/posix/DomainSocket.cpp
    M lldb/source/Host/windows/PipeWindows.cpp
    M lldb/source/Interpreter/Options.cpp
    M lldb/source/Plugins/Disassembler/LLVMC/DisassemblerLLVMC.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/IRDynamicChecks.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.h
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxList.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxUnorderedMap.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxVector.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.h
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.cpp
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.h
    M lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.cpp
    M lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.h
    M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
    M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.h
    M lldb/source/Plugins/Process/FreeBSD/NativeProcessFreeBSD.cpp
    M lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp
    M lldb/source/Plugins/Process/Windows/Common/NativeProcessWindows.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/Process/minidump/ProcessMinidump.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.h
    M lldb/source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/ManualDWARFIndex.cpp
    M lldb/source/Plugins/Trace/intel-pt/TraceIntelPTBundleLoader.cpp
    M lldb/source/Symbol/SaveCoreOptions.cpp
    M lldb/source/Symbol/Symtab.cpp
    M lldb/source/Target/CMakeLists.txt
    A lldb/source/Target/CoreFileMemoryRanges.cpp
    M lldb/source/Target/Process.cpp
    M lldb/source/Target/Statistics.cpp
    M lldb/source/Target/Target.cpp
    M lldb/source/Utility/Instrumentation.cpp
    M lldb/source/Utility/LLDBAssert.cpp
    M lldb/source/Utility/Log.cpp
    R lldb/test/API/benchmarks/continue/Makefile
    R lldb/test/API/benchmarks/continue/TestBenchmarkContinue.py
    R lldb/test/API/benchmarks/continue/main.cpp
    R lldb/test/API/benchmarks/expression/Makefile
    R lldb/test/API/benchmarks/expression/TestExpressionCmd.py
    R lldb/test/API/benchmarks/expression/TestRepeatedExprs.py
    R lldb/test/API/benchmarks/expression/main.cpp
    R lldb/test/API/benchmarks/frame_variable/TestFrameVariableResponse.py
    R lldb/test/API/benchmarks/libcxxlist/Makefile
    R lldb/test/API/benchmarks/libcxxlist/TestBenchmarkLibcxxList.py
    R lldb/test/API/benchmarks/libcxxlist/main.cpp
    R lldb/test/API/benchmarks/libcxxmap/Makefile
    R lldb/test/API/benchmarks/libcxxmap/TestBenchmarkLibcxxMap.py
    R lldb/test/API/benchmarks/libcxxmap/main.cpp
    R lldb/test/API/benchmarks/startup/TestStartupDelays.py
    R lldb/test/API/benchmarks/stepping/TestSteppingSpeed.py
    R lldb/test/API/benchmarks/turnaround/TestCompileRunToBreakpointTurnaround.py
    M lldb/test/API/commands/expression/import-std-module/vector-dbg-info-content/TestDbgInfoContentVectorFromStdModule.py
    A lldb/test/API/commands/statistics/basic/BoxFormatter.py
    M lldb/test/API/commands/statistics/basic/Makefile
    M lldb/test/API/commands/statistics/basic/TestStats.py
    R lldb/test/API/commands/statistics/basic/main.c
    A lldb/test/API/commands/statistics/basic/main.cpp
    M lldb/test/API/functionalities/breakpoint/breakpoint_ids/Makefile
    M lldb/test/API/functionalities/breakpoint/breakpoint_locations/Makefile
    M lldb/test/API/functionalities/breakpoint/consecutive_breakpoints/Makefile
    M lldb/test/API/functionalities/breakpoint/cpp/Makefile
    M lldb/test/API/functionalities/breakpoint/dummy_target_breakpoints/Makefile
    M lldb/test/API/functionalities/breakpoint/hardware_breakpoints/require_hw_breakpoints/Makefile
    M lldb/test/API/functionalities/breakpoint/step_over_breakpoint/Makefile
    M lldb/test/API/functionalities/breakpoint/thread_plan_user_breakpoint/Makefile
    M lldb/test/API/functionalities/data-formatter/data-formatter-objc/ObjCDataFormatterTestCase.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/list/TestDataFormatterGenericList.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/TestDataFormatterLibcxxStringSimulator.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/string/main.cpp
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/unique_ptr/TestDataFormatterLibcxxUniquePtrSimulator.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/unique_ptr/main.cpp
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx/string/TestDataFormatterLibcxxString.py
    M lldb/test/API/functionalities/data-formatter/nsdictionarysynth/TestNSDictionarySynthetic.py
    M lldb/test/API/functionalities/data-formatter/nssetsynth/TestNSSetSynthetic.py
    M lldb/test/API/functionalities/data-formatter/poarray/TestPrintObjectArray.py
    M lldb/test/API/functionalities/inline-stepping/Makefile
    M lldb/test/API/functionalities/postmortem/minidump-new/makefile.txt
    M lldb/test/API/functionalities/process_save_core_minidump/TestProcessSaveCoreMinidump.py
    A lldb/test/API/functionalities/watchpoint/categories
    A lldb/test/API/lang/cpp/no_unique_address/Makefile
    A lldb/test/API/lang/cpp/no_unique_address/TestNoUniqueAddress.py
    A lldb/test/API/lang/cpp/no_unique_address/main.cpp
    M lldb/test/API/lang/objc/orderedset/TestOrderedSet.py
    M lldb/test/API/lang/objc/single-entry-dictionary/TestObjCSingleEntryDictionary.py
    M lldb/test/API/macosx/macCatalyst/Makefile
    M lldb/test/API/macosx/macCatalystAppMacOSFramework/Makefile
    M lldb/test/API/macosx/simulator/TestSimulatorPlatform.py
    M lldb/test/API/python_api/frame/inlines/Makefile
    M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py
    M lldb/test/API/tools/lldb-dap/exception/Makefile
    M lldb/test/API/tools/lldb-dap/exception/TestDAP_exception.py
    A lldb/test/API/tools/lldb-dap/exception/cpp/Makefile
    A lldb/test/API/tools/lldb-dap/exception/cpp/TestDAP_exception_cpp.py
    A lldb/test/API/tools/lldb-dap/exception/cpp/main.cpp
    A lldb/test/API/tools/lldb-dap/exception/main.c
    R lldb/test/API/tools/lldb-dap/exception/main.cpp
    A lldb/test/API/tools/lldb-dap/exception/objc/Makefile
    A lldb/test/API/tools/lldb-dap/exception/objc/TestDAP_exception_objc.py
    A lldb/test/API/tools/lldb-dap/exception/objc/main.m
    A lldb/test/API/tools/lldb-dap/extendedStackTrace/Makefile
    A lldb/test/API/tools/lldb-dap/extendedStackTrace/TestDAP_extendedStackTrace.py
    A lldb/test/API/tools/lldb-dap/extendedStackTrace/main.m
    M lldb/test/API/tools/lldb-dap/stackTrace/TestDAP_stackTrace.py
    M lldb/test/API/tools/lldb-dap/stackTrace/main.c
    M lldb/test/API/tools/lldb-dap/stackTrace/subtleFrames/Makefile
    M lldb/test/API/tools/lldb-dap/stackTraceMissingFunctionName/TestDAP_stackTraceMissingFunctionName.py
    M lldb/test/API/tools/lldb-server/TestAppleSimulatorOSType.py
    A lldb/test/Shell/SymbolFile/DWARF/no_unique_address-with-bitfields.cpp
    A lldb/test/Shell/SymbolFile/Inputs/main.c
    A lldb/test/Shell/SymbolFile/checksum-mismatch.test
    M lldb/tools/lldb-dap/DAP.cpp
    M lldb/tools/lldb-dap/JSONUtils.cpp
    M lldb/tools/lldb-dap/JSONUtils.h
    M lldb/tools/lldb-dap/LLDBUtils.cpp
    M lldb/tools/lldb-dap/README.md
    M lldb/tools/lldb-dap/lldb-dap.cpp
    M lldb/tools/lldb-dap/package.json
    M lldb/tools/lldb-instr/Instrument.cpp
    M lldb/tools/lldb-server/LLDBServerUtilities.cpp
    M lldb/tools/lldb-test/lldb-test.cpp
    M lldb/unittests/Host/SocketTest.cpp
    M lldb/unittests/Process/Utility/CMakeLists.txt
    A lldb/unittests/Process/Utility/CoreFileMemoryRangesTest.cpp
    M lldb/unittests/Symbol/PostfixExpressionTest.cpp
    M lldb/unittests/SymbolFile/NativePDB/PdbFPOProgramToDWARFExpressionTests.cpp
    M lldb/unittests/Target/CMakeLists.txt
    A lldb/unittests/Target/SummaryStatisticsTest.cpp
    M llvm/RELEASE_TESTERS.TXT
    M llvm/benchmarks/SandboxIRBench.cpp
    M llvm/cmake/modules/VersionFromVCS.cmake
    M llvm/docs/CodeReview.rst
    M llvm/docs/Contributing.rst
    M llvm/docs/DeveloperPolicy.rst
    M llvm/docs/DirectX/DXILResources.rst
    M llvm/docs/FAQ.rst
    M llvm/docs/GlobalISel/GenericOpcode.rst
    M llvm/docs/HowToReleaseLLVM.rst
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/ReleaseNotes.rst
    M llvm/include/llvm/ADT/DenseMap.h
    M llvm/include/llvm/ADT/DenseSet.h
    M llvm/include/llvm/ADT/STLExtras.h
    M llvm/include/llvm/ADT/SmallVectorExtras.h
    M llvm/include/llvm/ADT/StableHashing.h
    M llvm/include/llvm/Analysis/BranchProbabilityInfo.h
    M llvm/include/llvm/Analysis/CtxProfAnalysis.h
    M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
    M llvm/include/llvm/Analysis/MemorySSA.h
    M llvm/include/llvm/Analysis/ValueTracking.h
    M llvm/include/llvm/BinaryFormat/Wasm.h
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
    M llvm/include/llvm/CodeGen/GlobalISel/GenericMachineInstrs.h
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
    M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
    M llvm/include/llvm/CodeGen/GlobalISel/Utils.h
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    M llvm/include/llvm/CodeGen/MachineOutliner.h
    M llvm/include/llvm/CodeGen/Register.h
    M llvm/include/llvm/CodeGen/SDPatternMatch.h
    M llvm/include/llvm/CodeGen/TargetInstrInfo.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/CodeGen/TargetRegisterInfo.h
    M llvm/include/llvm/CodeGen/TargetSubtargetInfo.h
    M llvm/include/llvm/CodeGen/VirtRegMap.h
    M llvm/include/llvm/Demangle/ItaniumDemangle.h
    M llvm/include/llvm/ExecutionEngine/Orc/LLJIT.h
    M llvm/include/llvm/Frontend/OpenMP/OMP.td
    M llvm/include/llvm/IR/Constant.h
    M llvm/include/llvm/IR/Constants.h
    M llvm/include/llvm/IR/DerivedUser.h
    M llvm/include/llvm/IR/Function.h
    M llvm/include/llvm/IR/GlobalAlias.h
    M llvm/include/llvm/IR/GlobalIFunc.h
    M llvm/include/llvm/IR/GlobalObject.h
    M llvm/include/llvm/IR/GlobalValue.h
    M llvm/include/llvm/IR/GlobalVariable.h
    M llvm/include/llvm/IR/InstrTypes.h
    M llvm/include/llvm/IR/Instruction.h
    M llvm/include/llvm/IR/Instructions.h
    M llvm/include/llvm/IR/IntrinsicInst.h
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/include/llvm/IR/IntrinsicsX86.td
    M llvm/include/llvm/IR/User.h
    M llvm/include/llvm/IR/VPIntrinsics.def
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/LTO/LTO.h
    M llvm/include/llvm/LinkAllPasses.h
    M llvm/include/llvm/MC/MCPseudoProbe.h
    M llvm/include/llvm/MC/MCRegister.h
    M llvm/include/llvm/MC/MCStreamer.h
    M llvm/include/llvm/MC/MCTargetOptions.h
    M llvm/include/llvm/MCA/HardwareUnits/ResourceManager.h
    M llvm/include/llvm/Passes/PassBuilder.h
    M llvm/include/llvm/ProfileData/PGOCtxProfReader.h
    M llvm/include/llvm/SandboxIR/Pass.h
    A llvm/include/llvm/SandboxIR/PassManager.h
    M llvm/include/llvm/SandboxIR/SandboxIR.h
    M llvm/include/llvm/SandboxIR/SandboxIRValues.def
    M llvm/include/llvm/SandboxIR/Type.h
    M llvm/include/llvm/Support/AMDGPUAddrSpace.h
    M llvm/include/llvm/Support/Casting.h
    M llvm/include/llvm/Support/FormatVariadic.h
    A llvm/include/llvm/Support/OptionStrCmp.h
    M llvm/include/llvm/Support/TargetOpcodes.def
    M llvm/include/llvm/TableGen/Record.h
    M llvm/include/llvm/Target/GenericOpcodes.td
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/include/llvm/Target/GlobalISel/SelectionDAGCompat.td
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/include/llvm/TargetParser/X86TargetParser.def
    M llvm/include/llvm/TargetParser/X86TargetParser.h
    M llvm/include/llvm/Transforms/IPO/Attributor.h
    M llvm/include/llvm/Transforms/IPO/FunctionImport.h
    M llvm/include/llvm/Transforms/InstCombine/InstCombiner.h
    R llvm/include/llvm/Transforms/Instrumentation.h
    M llvm/include/llvm/Transforms/Instrumentation/CFGMST.h
    M llvm/include/llvm/Transforms/Instrumentation/GCOVProfiler.h
    M llvm/include/llvm/Transforms/Instrumentation/InstrProfiling.h
    M llvm/include/llvm/Transforms/Instrumentation/SanitizerBinaryMetadata.h
    M llvm/include/llvm/Transforms/Instrumentation/SanitizerCoverage.h
    M llvm/include/llvm/Transforms/Scalar/Scalarizer.h
    A llvm/include/llvm/Transforms/Utils/Instrumentation.h
    M llvm/include/llvm/Transforms/Utils/SCCPSolver.h
    M llvm/include/llvm/Transforms/Utils/SimplifyLibCalls.h
    A llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h
    M llvm/lib/Analysis/CtxProfAnalysis.cpp
    M llvm/lib/Analysis/IRSimilarityIdentifier.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/CGData/CodeGenData.cpp
    M llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp
    M llvm/lib/CodeGen/CMakeLists.txt
    M llvm/lib/CodeGen/EarlyIfConversion.cpp
    M llvm/lib/CodeGen/GlobalISel/CMakeLists.txt
    M llvm/lib/CodeGen/GlobalISel/CombinerHelperCasts.cpp
    A llvm/lib/CodeGen/GlobalISel/CombinerHelperCompares.cpp
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/CodeGen/GlobalISel/Utils.cpp
    M llvm/lib/CodeGen/InitUndef.cpp
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
    M llvm/lib/CodeGen/MachineCopyPropagation.cpp
    M llvm/lib/CodeGen/MachineOutliner.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/CodeGen/StackSlotColoring.cpp
    M llvm/lib/CodeGen/VirtRegMap.cpp
    M llvm/lib/DWARFLinker/Parallel/OutputSections.h
    M llvm/lib/DebugInfo/PDB/PDBSymbolFunc.cpp
    M llvm/lib/ExecutionEngine/MCJIT/MCJIT.cpp
    M llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
    M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/JITLoaderPerf.cpp
    M llvm/lib/ExecutionEngine/PerfJITEvents/PerfJITEventListener.cpp
    M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldChecker.cpp
    M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp
    M llvm/lib/ExecutionEngine/RuntimeDyld/Targets/RuntimeDyldCOFFThumb.h
    M llvm/lib/IR/Constants.cpp
    M llvm/lib/IR/ConstantsContext.h
    M llvm/lib/IR/Function.cpp
    M llvm/lib/IR/Globals.cpp
    M llvm/lib/IR/Instruction.cpp
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/IR/LLVMContext.cpp
    M llvm/lib/IR/Type.cpp
    M llvm/lib/IR/User.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/MCA/HardwareUnits/ResourceManager.cpp
    M llvm/lib/Option/OptTable.cpp
    M llvm/lib/Option/Option.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/ProfileData/Coverage/CoverageMappingReader.cpp
    M llvm/lib/ProfileData/PGOCtxProfReader.cpp
    M llvm/lib/SandboxIR/CMakeLists.txt
    M llvm/lib/SandboxIR/Pass.cpp
    A llvm/lib/SandboxIR/PassManager.cpp
    M llvm/lib/SandboxIR/SandboxIR.cpp
    M llvm/lib/SandboxIR/Type.cpp
    M llvm/lib/Support/CMakeLists.txt
    M llvm/lib/Support/FormatVariadic.cpp
    A llvm/lib/Support/OptionStrCmp.cpp
    M llvm/lib/TableGen/Record.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseN2.td
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseV2.td
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.h
    M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/BUFInstructions.td
    M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/R600Subtarget.h
    M llvm/lib/Target/AMDGPU/SIFixSGPRCopies.cpp
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.h
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/AMDGPU/SIInstrInfo.td
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp
    M llvm/lib/Target/AMDGPU/SILowerWWMCopies.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
    M llvm/lib/Target/AMDGPU/SIModeRegister.cpp
    M llvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp
    A llvm/lib/Target/AMDGPU/SIPeepholeSDWA.h
    M llvm/lib/Target/AMDGPU/SIPreAllocateWWMRegs.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
    M llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp
    M llvm/lib/Target/AMDGPU/VOP1Instructions.td
    M llvm/lib/Target/AMDGPU/VOP2Instructions.td
    M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
    M llvm/lib/Target/ARM/ARMBaseRegisterInfo.h
    M llvm/lib/Target/ARM/ARMCallLowering.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/ARM/ARMSubtarget.h
    M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMBaseInfo.h
    M llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMInstPrinter.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMTargetStreamer.cpp
    M llvm/lib/Target/DirectX/DXContainerGlobals.cpp
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILFinalizeLinkage.cpp
    M llvm/lib/Target/DirectX/DXILFinalizeLinkage.h
    M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
    M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.h
    M llvm/lib/Target/DirectX/DXILOpBuilder.cpp
    M llvm/lib/Target/DirectX/DXILOpBuilder.h
    M llvm/lib/Target/DirectX/DXILOpLowering.cpp
    M llvm/lib/Target/DirectX/DXILPrepare.cpp
    M llvm/lib/Target/DirectX/DXILWriter/DXILBitcodeWriter.cpp
    M llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
    M llvm/lib/Target/Hexagon/HexagonOptAddrMode.cpp
    M llvm/lib/Target/LoongArch/LoongArchAsmPrinter.cpp
    M llvm/lib/Target/LoongArch/LoongArchAsmPrinter.h
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.cpp
    M llvm/lib/Target/Mips/Mips32r6InstrInfo.td
    M llvm/lib/Target/Mips/MipsFastISel.cpp
    M llvm/lib/Target/Mips/MipsISelLowering.cpp
    M llvm/lib/Target/Mips/MipsInstrInfo.h
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.h
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/lib/Target/NVPTX/NVPTXLowerAlloca.cpp
    M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
    M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.cpp
    M llvm/lib/Target/RISCV/RISCVCallingConv.cpp
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.h
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoD.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoF.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXCV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZfa.td
    M llvm/lib/Target/RISCV/RISCVProcessors.td
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.h
    M llvm/lib/Target/RISCV/RISCVSubtarget.h
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
    M llvm/lib/Target/SPIRV/CMakeLists.txt
    A llvm/lib/Target/SPIRV/SPIRVAPI.cpp
    A llvm/lib/Target/SPIRV/SPIRVAPI.h
    M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
    M llvm/lib/Target/SPIRV/SPIRVCommandLine.h
    M llvm/lib/Target/SPIRV/SPIRVDuplicatesTracker.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVSubtarget.cpp
    M llvm/lib/Target/SPIRV/SPIRVSubtarget.h
    M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
    M llvm/lib/Target/SystemZ/SystemZISelLowering.h
    M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp
    M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.cpp
    M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmTypeCheck.h
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyInstPrinter.cpp
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyInstPrinter.h
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTypeUtilities.h
    M llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyCFGStackify.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyISelDAGToDAG.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrControl.td
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
    M llvm/lib/Target/WebAssembly/WebAssemblyLateEHPrepare.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyMCInstLower.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyUtilities.cpp
    M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
    M llvm/lib/Target/X86/AsmParser/X86Operand.h
    M llvm/lib/Target/X86/GISel/X86InstructionSelector.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86ATTInstPrinter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86BaseInfo.h
    M llvm/lib/Target/X86/MCTargetDesc/X86EncodingOptimization.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86InstComments.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86IntelInstPrinter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86TargetStreamer.h
    M llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFTargetStreamer.cpp
    M llvm/lib/Target/X86/X86.td
    M llvm/lib/Target/X86/X86CompressEVEX.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/lib/Target/X86/X86InstrAVX10.td
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Target/X86/X86InstrFragmentsSIMD.td
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/lib/Target/X86/X86InstrMMX.td
    M llvm/lib/Target/X86/X86InstrSSE.td
    M llvm/lib/Target/X86/X86IntrinsicsInfo.h
    M llvm/lib/Target/X86/X86PfmCounters.td
    M llvm/lib/Target/X86/X86ReplaceableInstrs.def
    M llvm/lib/Target/X86/X86SchedAlderlakeP.td
    M llvm/lib/Target/X86/X86SchedBroadwell.td
    M llvm/lib/Target/X86/X86SchedHaswell.td
    M llvm/lib/Target/X86/X86SchedIceLake.td
    M llvm/lib/Target/X86/X86SchedSandyBridge.td
    M llvm/lib/Target/X86/X86SchedSapphireRapids.td
    M llvm/lib/Target/X86/X86SchedSkylakeClient.td
    M llvm/lib/Target/X86/X86SchedSkylakeServer.td
    M llvm/lib/Target/X86/X86ScheduleBdVer2.td
    M llvm/lib/Target/X86/X86ScheduleBtVer2.td
    M llvm/lib/Target/X86/X86ScheduleZnver1.td
    M llvm/lib/Target/X86/X86ScheduleZnver2.td
    M llvm/lib/Target/X86/X86ScheduleZnver3.td
    M llvm/lib/Target/X86/X86ScheduleZnver4.td
    M llvm/lib/Target/X86/X86TileConfig.cpp
    M llvm/lib/Target/Xtensa/XtensaISelLowering.cpp
    M llvm/lib/Target/Xtensa/XtensaISelLowering.h
    M llvm/lib/TargetParser/Host.cpp
    M llvm/lib/TargetParser/X86TargetParser.cpp
    M llvm/lib/Transforms/Coroutines/CMakeLists.txt
    M llvm/lib/Transforms/Coroutines/CoroEarly.cpp
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
    M llvm/lib/Transforms/Coroutines/CoroInternal.h
    A llvm/lib/Transforms/Coroutines/CoroShape.h
    M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
    M llvm/lib/Transforms/Coroutines/Coroutines.cpp
    A llvm/lib/Transforms/Coroutines/MaterializationUtils.cpp
    A llvm/lib/Transforms/Coroutines/MaterializationUtils.h
    A llvm/lib/Transforms/Coroutines/SpillUtils.cpp
    A llvm/lib/Transforms/Coroutines/SpillUtils.h
    M llvm/lib/Transforms/Coroutines/SuspendCrossingInfo.cpp
    M llvm/lib/Transforms/IPO/Attributor.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/IPO/FunctionImport.cpp
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
    M llvm/lib/Transforms/IPO/OpenMPOpt.cpp
    M llvm/lib/Transforms/IPO/SCCP.cpp
    M llvm/lib/Transforms/IPO/SampleProfile.cpp
    M llvm/lib/Transforms/IPO/SampleProfileProbe.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/CGProfile.cpp
    M llvm/lib/Transforms/Instrumentation/CMakeLists.txt
    M llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/IndirectCallPromotion.cpp
    M llvm/lib/Transforms/Instrumentation/InstrOrderFile.cpp
    M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
    R llvm/lib/Transforms/Instrumentation/Instrumentation.cpp
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/NumericalStabilitySanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
    M llvm/lib/Transforms/Instrumentation/ThreadSanitizer.cpp
    M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
    M llvm/lib/Transforms/Scalar/Scalar.cpp
    M llvm/lib/Transforms/Scalar/Scalarizer.cpp
    M llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
    M llvm/lib/Transforms/Utils/CMakeLists.txt
    A llvm/lib/Transforms/Utils/Instrumentation.cpp
    M llvm/lib/Transforms/Utils/Local.cpp
    M llvm/lib/Transforms/Utils/SCCPSolver.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
    M llvm/lib/Transforms/Vectorize/CMakeLists.txt
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/lib/Transforms/Vectorize/VPlanValue.h
    M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Analysis/CostModel/AArch64/cmp.ll
    M llvm/test/Analysis/CostModel/AArch64/reduce-fadd.ll
    M llvm/test/Analysis/CostModel/RISCV/arith-fp.ll
    A llvm/test/Analysis/CostModel/RISCV/cmp.ll
    M llvm/test/Analysis/CostModel/RISCV/fp-min-max-abs.ll
    M llvm/test/Analysis/CostModel/RISCV/fround.ll
    M llvm/test/Analysis/CostModel/RISCV/scalable-gather.ll
    M llvm/test/Analysis/CostModel/RISCV/scalable-scatter.ll
    M llvm/test/Analysis/CostModel/RISCV/shuffle-broadcast.ll
    M llvm/test/Analysis/CostModel/RISCV/shuffle-permute.ll
    M llvm/test/Analysis/CostModel/RISCV/shuffle-reverse.ll
    M llvm/test/Analysis/CostModel/RISCV/shuffle-transpose.ll
    M llvm/test/Analysis/CostModel/RISCV/splice.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f32-stride-5.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f32-stride-7.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f32-stride-8.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f64-stride-2.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f64-stride-3.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f64-stride-4.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f64-stride-5.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f64-stride-6.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f64-stride-7.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-f64-stride-8.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i16-stride-5.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i16-stride-7.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i16-stride-8.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i32-stride-4-indices-01uu.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i32-stride-5.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i32-stride-7.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i32-stride-8.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i64-stride-2.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i64-stride-3.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i64-stride-4.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i64-stride-5.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i64-stride-6.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i64-stride-7.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i64-stride-8.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i8-stride-5.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i8-stride-6.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i8-stride-7.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-load-i8-stride-8.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-store-f32-stride-8.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-store-f64-stride-8.ll
    M llvm/test/Analysis/CostModel/X86/interleaved-store-i64-stride-8.ll
    M llvm/test/Analysis/CostModel/X86/masked-interleaved-store-i16.ll
    M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info.ll
    A llvm/test/CodeGen/AArch64/GlobalISel/combine-canonicalize-icmp.mir
    A llvm/test/CodeGen/AArch64/GlobalISel/combine-narrow-binop.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/inline-memset.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizer-combiner-divrem-insertpt-conflict.mir
    M llvm/test/CodeGen/AArch64/abds.ll
    M llvm/test/CodeGen/AArch64/abdu.ll
    M llvm/test/CodeGen/AArch64/abs.ll
    M llvm/test/CodeGen/AArch64/arm64-ccmp.ll
    M llvm/test/CodeGen/AArch64/arm64-ldxr-stxr.ll
    M llvm/test/CodeGen/AArch64/arm64-vector-imm.ll
    M llvm/test/CodeGen/AArch64/build-one-lane.ll
    A llvm/test/CodeGen/AArch64/cgdata-global-hash.ll
    A llvm/test/CodeGen/AArch64/cgdata-outlined-name.ll
    A llvm/test/CodeGen/AArch64/cgdata-read-double-outline.ll
    A llvm/test/CodeGen/AArch64/cgdata-read-lto-outline.ll
    A llvm/test/CodeGen/AArch64/cgdata-read-priority.ll
    A llvm/test/CodeGen/AArch64/cgdata-read-single-outline-suffix.ll
    A llvm/test/CodeGen/AArch64/cgdata-read-single-outline.ll
    A llvm/test/CodeGen/AArch64/cgdata-write-outline.ll
    A llvm/test/CodeGen/AArch64/ctlo.ll
    M llvm/test/CodeGen/AArch64/expand-select.ll
    M llvm/test/CodeGen/AArch64/fcmp.ll
    M llvm/test/CodeGen/AArch64/fp-conversion-to-tbl.ll
    M llvm/test/CodeGen/AArch64/fptosi-sat-scalar.ll
    M llvm/test/CodeGen/AArch64/fptosi-sat-vector.ll
    M llvm/test/CodeGen/AArch64/fptoui-sat-scalar.ll
    M llvm/test/CodeGen/AArch64/fptoui-sat-vector.ll
    M llvm/test/CodeGen/AArch64/icmp.ll
    A llvm/test/CodeGen/AArch64/init-undef.mir
    M llvm/test/CodeGen/AArch64/insertextract.ll
    A llvm/test/CodeGen/AArch64/load-insert-undef.ll
    M llvm/test/CodeGen/AArch64/load-insert-zero.ll
    A llvm/test/CodeGen/AArch64/no-reorder-cfi-merge-back-load.mir
    A llvm/test/CodeGen/AArch64/no-reorder-cfi-merge-back-store.mir
    A llvm/test/CodeGen/AArch64/no-reorder-cfi-merge-fwd-load.mir
    A llvm/test/CodeGen/AArch64/no-reorder-cfi-merge-fwd.mir
    A llvm/test/CodeGen/AArch64/no-reorder-cfi-no-merge.mir
    A llvm/test/CodeGen/AArch64/no-reorder-cfi.ll
    M llvm/test/CodeGen/AArch64/scmp.ll
    M llvm/test/CodeGen/AArch64/shift.ll
    A llvm/test/CodeGen/AArch64/sve-scmp.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-bit-counting.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-insert-vector-elt.ll
    A llvm/test/CodeGen/AArch64/sve-ucmp.ll
    M llvm/test/CodeGen/AArch64/ucmp.ll
    M llvm/test/CodeGen/AArch64/vector-compress.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-itofp.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-zext-trunc.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-phis-no-lane-mask-merging.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fshl.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fshr.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.f32-no-rtn.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.f32-rtn.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.fcmp.constants.w32.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.fcmp.constants.w64.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fptosi.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-fptoui.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-sitofp.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-uitofp.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.set.inactive.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/sdiv.i64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/shl-ext-reduce.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/srem.i64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/udiv.i64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/urem.i64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/vni8-across-blocks.ll
    M llvm/test/CodeGen/AMDGPU/agpr-copy-no-free-registers.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_local_pointer.ll
    M llvm/test/CodeGen/AMDGPU/collapse-endcf.ll
    M llvm/test/CodeGen/AMDGPU/constrained-shift.ll
    M llvm/test/CodeGen/AMDGPU/ctlz.ll
    M llvm/test/CodeGen/AMDGPU/div_i128.ll
    A llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32-wave32.mir
    A llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-f16-fake16.mir
    A llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-f16-true16.mir
    M llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-f16.mir
    M llvm/test/CodeGen/AMDGPU/global-atomic-fadd.f32-no-rtn.ll
    M llvm/test/CodeGen/AMDGPU/global-atomic-fadd.f32-rtn.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/indirect-addressing-si.ll
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.whole.wave-w32.ll
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.whole.wave-w64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.load.format.d16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.prefetch.data.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.set.inactive.chain.arg.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.set.inactive.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.load.format.d16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.store.format.d16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.store.format.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.store.ll
    A llvm/test/CodeGen/AMDGPU/load-constant-always-uniform.ll
    M llvm/test/CodeGen/AMDGPU/load-global-i16.ll
    M llvm/test/CodeGen/AMDGPU/load-global-i32.ll
    A llvm/test/CodeGen/AMDGPU/maximumnum.ll
    A llvm/test/CodeGen/AMDGPU/minimumnum.ll
    M llvm/test/CodeGen/AMDGPU/mode-register-fptrunc.mir
    M llvm/test/CodeGen/AMDGPU/mubuf-legalize-operands-non-ptr-intrinsics.ll
    M llvm/test/CodeGen/AMDGPU/mubuf-legalize-operands.ll
    M llvm/test/CodeGen/AMDGPU/pei-amdgpu-cs-chain.mir
    M llvm/test/CodeGen/AMDGPU/phi-vgpr-input-moveimm.mir
    M llvm/test/CodeGen/AMDGPU/preserve-wwm-copy-dst-reg.ll
    M llvm/test/CodeGen/AMDGPU/rem_i128.ll
    M llvm/test/CodeGen/AMDGPU/rsq.f64.ll
    M llvm/test/CodeGen/AMDGPU/schedule-regpressure-ilp-metric-spills.mir
    M llvm/test/CodeGen/AMDGPU/sdwa-gfx9.mir
    M llvm/test/CodeGen/AMDGPU/sdwa-ops.mir
    M llvm/test/CodeGen/AMDGPU/sdwa-preserve.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-overlap-wwm-reserve.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spills-split-regalloc.ll
    A llvm/test/CodeGen/AMDGPU/si-init-whole-wave.mir
    M llvm/test/CodeGen/AMDGPU/spill-offset-calculation.ll
    M llvm/test/CodeGen/AMDGPU/spill-scavenge-offset.ll
    A llvm/test/CodeGen/AMDGPU/spill-wait.mir
    M llvm/test/CodeGen/AMDGPU/vni8-across-blocks.ll
    M llvm/test/CodeGen/AMDGPU/wave32.ll
    M llvm/test/CodeGen/AMDGPU/wqm.mir
    M llvm/test/CodeGen/AMDGPU/wwm-reserved-spill.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved.ll
    M llvm/test/CodeGen/ARM/big-endian-vmov.ll
    M llvm/test/CodeGen/DirectX/BufferLoad.ll
    A llvm/test/CodeGen/DirectX/BufferStore-errors.ll
    A llvm/test/CodeGen/DirectX/BufferStore.ll
    A llvm/test/CodeGen/DirectX/ContainerData/PSVResources.ll
    M llvm/test/CodeGen/DirectX/CreateHandleFromBinding.ll
    M llvm/test/CodeGen/DirectX/acos.ll
    M llvm/test/CodeGen/DirectX/asin.ll
    M llvm/test/CodeGen/DirectX/atan.ll
    M llvm/test/CodeGen/DirectX/ceil.ll
    M llvm/test/CodeGen/DirectX/cos.ll
    M llvm/test/CodeGen/DirectX/cosh.ll
    M llvm/test/CodeGen/DirectX/exp2.ll
    M llvm/test/CodeGen/DirectX/fabs.ll
    M llvm/test/CodeGen/DirectX/floor.ll
    M llvm/test/CodeGen/DirectX/isinf.ll
    A llvm/test/CodeGen/DirectX/llc-pipeline.ll
    M llvm/test/CodeGen/DirectX/reversebits.ll
    M llvm/test/CodeGen/DirectX/round.ll
    M llvm/test/CodeGen/DirectX/saturate.ll
    A llvm/test/CodeGen/DirectX/scalar-store.ll
    A llvm/test/CodeGen/DirectX/scalarize-two-calls.ll
    M llvm/test/CodeGen/DirectX/sin.ll
    M llvm/test/CodeGen/DirectX/sinh.ll
    M llvm/test/CodeGen/DirectX/sqrt.ll
    A llvm/test/CodeGen/DirectX/step.ll
    M llvm/test/CodeGen/DirectX/tan.ll
    M llvm/test/CodeGen/DirectX/tanh.ll
    M llvm/test/CodeGen/DirectX/trunc.ll
    A llvm/test/CodeGen/Hexagon/autohvx/addi-offset-opt-addr-mode.ll
    A llvm/test/CodeGen/Hexagon/autohvx/addi-opt-predicated-def-bug.ll
    M llvm/test/CodeGen/Hexagon/vgather-opt-addr.ll
    M llvm/test/CodeGen/LoongArch/ctlz-cttz-ctpop.ll
    M llvm/test/CodeGen/LoongArch/fp16-promote.ll
    A llvm/test/CodeGen/LoongArch/statepoint-call-lowering-r1.ll
    A llvm/test/CodeGen/LoongArch/statepoint-call-lowering.ll
    M llvm/test/CodeGen/MIR/AMDGPU/long-branch-reg-all-sgpr-used.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-after-pei.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg-debug.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-no-ir.mir
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info.ll
    A llvm/test/CodeGen/MIR/Hexagon/addrmode-opt-nonreaching.mir
    A llvm/test/CodeGen/Mips/Fast-ISel/underaligned-load-store.ll
    A llvm/test/CodeGen/Mips/ins.ll
    A llvm/test/CodeGen/Mips/is_fpclass.ll
    M llvm/test/CodeGen/NVPTX/call_bitcast_byval.ll
    A llvm/test/CodeGen/NVPTX/convert-call-to-indirect.ll
    M llvm/test/CodeGen/NVPTX/copysign.ll
    M llvm/test/CodeGen/NVPTX/lower-alloca.ll
    M llvm/test/CodeGen/NVPTX/lower-args-gridconstant.ll
    M llvm/test/CodeGen/NVPTX/lower-byval-args.ll
    M llvm/test/CodeGen/PowerPC/f128-bitcast.ll
    A llvm/test/CodeGen/RISCV/GlobalISel/irtranslator/splat_vector.ll
    A llvm/test/CodeGen/RISCV/GlobalISel/stacksave-stackrestore.ll
    M llvm/test/CodeGen/RISCV/abds.ll
    M llvm/test/CodeGen/RISCV/abdu.ll
    M llvm/test/CodeGen/RISCV/double-fcmp-strict.ll
    M llvm/test/CodeGen/RISCV/double-zfa.ll
    M llvm/test/CodeGen/RISCV/float-fcmp-strict.ll
    M llvm/test/CodeGen/RISCV/float-zfa.ll
    M llvm/test/CodeGen/RISCV/half-convert.ll
    M llvm/test/CodeGen/RISCV/half-fcmp-strict.ll
    M llvm/test/CodeGen/RISCV/half-zfa.ll
    M llvm/test/CodeGen/RISCV/machineoutliner-pcrel-lo.mir
    M llvm/test/CodeGen/RISCV/make-compressible-zbc.mir
    M llvm/test/CodeGen/RISCV/redundant-copy-from-tail-duplicate.ll
    M llvm/test/CodeGen/RISCV/regalloc-last-chance-recoloring-failure.ll
    M llvm/test/CodeGen/RISCV/rv64zba.ll
    M llvm/test/CodeGen/RISCV/rvv/ceil-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/ctlz-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/ctpop-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/cttz-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-buildvec-of-binop.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-buildvec.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-interleaved-access.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-gather.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-formation.ll
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfwmaccbf16.ll
    M llvm/test/CodeGen/RISCV/rvv/floor-vp.ll
    A llvm/test/CodeGen/RISCV/rvv/load-bf16.ll
    M llvm/test/CodeGen/RISCV/rvv/remat.ll
    M llvm/test/CodeGen/RISCV/rvv/setcc-fp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/setcc-fp.ll
    A llvm/test/CodeGen/RISCV/rvv/store-bf16.ll
    M llvm/test/CodeGen/RISCV/rvv/subregister-undef-early-clobber.mir
    M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll
    M llvm/test/CodeGen/RISCV/rvv/vfabs-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfadd-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfadd-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfadd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfcopysign-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfdiv-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfdiv-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfdiv-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfma-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmadd-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmadd-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmax-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmin-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmsub-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmul-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmul-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmul-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfneg-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfnmadd-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfnmsub-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfptoi-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfptosi-vp-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/vfptosi-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfptoui-vp-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/vfptoui-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfsub-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfsub-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfsub-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfwmacc-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfwmsac-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfwnmacc-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfwnmsac-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vitofp-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vpmerge-sdnode-bf16.ll
    M llvm/test/CodeGen/RISCV/rvv/vpmerge-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vreductions-fp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vselect-bf16.ll
    M llvm/test/CodeGen/RISCV/rvv/vselect-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/vsitofp-vp-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/vsitofp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vsplats-bf16.ll
    A llvm/test/CodeGen/RISCV/rvv/vsplats-f16.ll
    M llvm/test/CodeGen/RISCV/rvv/vsplats-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/vuitofp-vp-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/vuitofp-vp.ll
    M llvm/test/CodeGen/RISCV/select.ll
    M llvm/test/CodeGen/RISCV/xcvalu.ll
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/step.ll
    A llvm/test/CodeGen/SPIRV/opt-gepoperator-of-gvar.ll
    M llvm/test/CodeGen/Thumb2/mve-vmovimm.ll
    M llvm/test/CodeGen/WebAssembly/exception-legacy.ll
    A llvm/test/CodeGen/WebAssembly/exception.ll
    M llvm/test/CodeGen/WebAssembly/half-precision.ll
    M llvm/test/CodeGen/X86/GlobalISel/select-extract-vec256.mir
    M llvm/test/CodeGen/X86/GlobalISel/select-extract-vec512.mir
    M llvm/test/CodeGen/X86/GlobalISel/select-insert-vec256.mir
    M llvm/test/CodeGen/X86/GlobalISel/select-insert-vec512.mir
    M llvm/test/CodeGen/X86/GlobalISel/select-merge-vec256.mir
    M llvm/test/CodeGen/X86/GlobalISel/select-merge-vec512.mir
    M llvm/test/CodeGen/X86/GlobalISel/select-unmerge-vec256.mir
    M llvm/test/CodeGen/X86/GlobalISel/select-unmerge-vec512.mir
    M llvm/test/CodeGen/X86/abds-neg.ll
    M llvm/test/CodeGen/X86/abds.ll
    M llvm/test/CodeGen/X86/abdu-neg.ll
    M llvm/test/CodeGen/X86/abdu.ll
    A llvm/test/CodeGen/X86/avx10_2_512satcvtds-intrinsics.ll
    A llvm/test/CodeGen/X86/avx10_2fptosi_satcvtds.ll
    A llvm/test/CodeGen/X86/avx10_2satcvtds-intrinsics.ll
    A llvm/test/CodeGen/X86/avx10_2satcvtds-x64-intrinsics.ll
    M llvm/test/CodeGen/X86/bypass-slow-division-64.ll
    M llvm/test/CodeGen/X86/cmp-shiftX-maskX.ll
    M llvm/test/CodeGen/X86/cmp16.ll
    M llvm/test/CodeGen/X86/cpus-amd.ll
    M llvm/test/CodeGen/X86/ctlo.ll
    M llvm/test/CodeGen/X86/evex-to-vex-compress.mir
    M llvm/test/CodeGen/X86/opt_phis2.mir
    A llvm/test/CodeGen/X86/pr108728.ll
    M llvm/test/CodeGen/X86/rdpru.ll
    M llvm/test/CodeGen/X86/shuffle-as-shifts.ll
    M llvm/test/CodeGen/X86/slow-unaligned-mem.ll
    M llvm/test/CodeGen/X86/sqrt-fastmath-tune.ll
    M llvm/test/CodeGen/X86/tuning-shuffle-permilpd-avx512.ll
    M llvm/test/CodeGen/X86/tuning-shuffle-permilps-avx512.ll
    M llvm/test/CodeGen/X86/tuning-shuffle-unpckpd-avx512.ll
    M llvm/test/CodeGen/X86/tuning-shuffle-unpckps-avx512.ll
    A llvm/test/CodeGen/X86/vector-compress.ll
    M llvm/test/CodeGen/X86/vector-shift-ashr-128.ll
    M llvm/test/CodeGen/X86/vector-shift-ashr-256.ll
    M llvm/test/CodeGen/X86/vector-shift-ashr-512.ll
    M llvm/test/CodeGen/X86/vector-shift-lshr-128.ll
    M llvm/test/CodeGen/X86/vector-shift-lshr-256.ll
    M llvm/test/CodeGen/X86/vector-shift-lshr-512.ll
    M llvm/test/CodeGen/X86/vector-shift-shl-128.ll
    M llvm/test/CodeGen/X86/vector-shift-shl-256.ll
    M llvm/test/CodeGen/X86/vector-shift-shl-512.ll
    M llvm/test/CodeGen/X86/vector-shuffle-fast-per-lane.ll
    M llvm/test/CodeGen/X86/vmaskmov-offset.ll
    M llvm/test/CodeGen/X86/vpdpwssd.ll
    M llvm/test/CodeGen/X86/x86-64-double-shifts-var.ll
    A llvm/test/CodeGen/Xtensa/frameaddr-returnaddr.ll
    M llvm/test/DebugInfo/COFF/build-info.ll
    M llvm/test/DebugInfo/COFF/global-type-hashes.ll
    M llvm/test/DebugInfo/COFF/types-basic.ll
    M llvm/test/DebugInfo/COFF/types-data-members.ll
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_dpp16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_dpp8.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop2_t16_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vop1.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vop1.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop1.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_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/Disassembler/AMDGPU/gfx11_dasm_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_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_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
    A llvm/test/MC/Disassembler/X86/avx10.2-satcvtds-32.txt
    A llvm/test/MC/Disassembler/X86/avx10.2-satcvtds-64.txt
    M llvm/test/MC/RISCV/corev/XCValu-valid.s
    M llvm/test/MC/RISCV/csr-aliases.s
    M llvm/test/MC/RISCV/rv32ih-aliases-valid.s
    M llvm/test/MC/RISCV/rv32zdinx-invalid.s
    M llvm/test/MC/RISCV/rv32zfinx-invalid.s
    M llvm/test/MC/RISCV/rvf-aliases-valid.s
    M llvm/test/MC/RISCV/rvi-aliases-valid.s
    M llvm/test/MC/RISCV/rvzdinx-aliases-valid.s
    M llvm/test/MC/RISCV/rvzfinx-aliases-valid.s
    M llvm/test/MC/RISCV/rvzhinx-aliases-valid.s
    M llvm/test/MC/WebAssembly/annotations.s
    M llvm/test/MC/WebAssembly/basic-assembly.s
    A llvm/test/MC/WebAssembly/eh-assembly-legacy.s
    M llvm/test/MC/WebAssembly/type-checker-errors.s
    A llvm/test/MC/X86/avx10_2satcvtds-32-att.s
    A llvm/test/MC/X86/avx10_2satcvtds-32-intel.s
    A llvm/test/MC/X86/avx10_2satcvtds-64-att.s
    A llvm/test/MC/X86/avx10_2satcvtds-64-intel.s
    M llvm/test/MC/X86/x86_long_nop.s
    M llvm/test/TableGen/GlobalISelEmitter.td
    M llvm/test/TableGen/x86-fold-tables.inc
    M llvm/test/Transforms/Attributor/IPConstantProp/pthreads.ll
    M llvm/test/Transforms/Attributor/value-simplify-pointer-info.ll
    M llvm/test/Transforms/ConstraintElimination/monotonic-pointer-phis-chain-of-exits.ll
    A llvm/test/Transforms/Coroutines/gh107139-split-in-scc.ll
    M llvm/test/Transforms/Coroutines/swift-async-dbg.ll
    M llvm/test/Transforms/FunctionSpecialization/discover-transitive-phis.ll
    A llvm/test/Transforms/InstCombine/fmod.ll
    A llvm/test/Transforms/InstCombine/fp-floor-ceil.ll
    M llvm/test/Transforms/InstCombine/getelementptr.ll
    A llvm/test/Transforms/InstCombine/phi-with-multiple-unsimplifiable-values.ll
    M llvm/test/Transforms/InstCombine/pow-1.ll
    M llvm/test/Transforms/InstCombine/rem.ll
    A llvm/test/Transforms/LoopDeletion/noalias.ll
    M llvm/test/Transforms/LoopUnroll/X86/call-remark.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/force-target-instruction-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/interleaved-vs-scalar.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/interleaved_cost.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-interleaved-cost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-intrinsics-reduction.ll
    M llvm/test/Transforms/LoopVectorize/SystemZ/mem-interleaving-costs-03.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-sink-replicate-region.ll
    M llvm/test/Transforms/LoopVectorize/opaque-ptr.ll
    M llvm/test/Transforms/LoopVectorize/pr36983.ll
    M llvm/test/Transforms/LoopVectorize/pr45259.ll
    M llvm/test/Transforms/LoopVectorize/runtime-checks-difference.ll
    A llvm/test/Transforms/LoopVectorize/use-iv-start-value.ll
    M llvm/test/Transforms/LoopVectorize/vplan-printing-before-execute.ll
    M llvm/test/Transforms/LoopVectorize/vplan-printing.ll
    M llvm/test/Transforms/MemCpyOpt/memcpy.ll
    M llvm/test/Transforms/PGOProfile/ctx-instrumentation.ll
    M llvm/test/Transforms/PGOProfile/ctx-prof-use-prelink.ll
    M llvm/test/Transforms/SCCP/ip-add-range-to-call.ll
    M llvm/test/Transforms/SCCP/ip-constant-ranges.ll
    M llvm/test/Transforms/SCCP/ip-ranges-casts.ll
    M llvm/test/Transforms/SCCP/ip-ranges-phis.ll
    M llvm/test/Transforms/SCCP/ip-ranges-select.ll
    M llvm/test/Transforms/SCCP/musttail-call.ll
    M llvm/test/Transforms/SCCP/pointer-nonnull.ll
    M llvm/test/Transforms/SCCP/resolvedundefsin-tracked-fn.ll
    M llvm/test/Transforms/SCCP/switch.ll
    A llvm/test/Transforms/SLPVectorizer/AArch64/reduce-fadd.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/vec3-calls.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/complex-loads.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/vec3-base.ll
    A llvm/test/Transforms/SLPVectorizer/X86/buildvector-postpone-for-dependency.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-user-not-min.ll
    A llvm/test/Transforms/SLPVectorizer/X86/multi-extracts-bv-combined.ll
    A llvm/test/Transforms/SLPVectorizer/X86/phi-node-reshuffled-part.ll
    M llvm/test/Transforms/SLPVectorizer/X86/pr63668.ll
    A llvm/test/Transforms/SLPVectorizer/X86/reduced-val-extracted-and-externally-used.ll
    A llvm/test/Transforms/SLPVectorizer/X86/trunc-node-reused.ll
    A llvm/test/Transforms/SandboxVectorizer/default_pass_pipeline.ll
    A llvm/test/Transforms/SandboxVectorizer/user_pass_pipeline.ll
    M llvm/test/Transforms/SimplifyCFG/X86/hoist-loads-stores-with-cf.ll
    A llvm/test/Transforms/SimplifyCFG/switch-branch-fold-indirectbr-102351.ll
    M llvm/test/Transforms/VectorCombine/AArch64/shrink-types.ll
    A llvm/test/Transforms/VectorCombine/RISCV/shuffle-of-intrinsics.ll
    A llvm/test/Transforms/VectorCombine/X86/shuffle-of-intrinsics.ll
    A llvm/test/Verifier/AMDGPU/intrinsic-prefetch.ll
    M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/lanai_isel.ll.expected
    M llvm/test/tools/dxil-dis/metadata.ll
    M llvm/test/tools/llvm-dwp/X86/cu_tu_units_manual_v4.s
    M llvm/test/tools/llvm-dwp/X86/cu_tu_units_manual_v5.s
    M llvm/test/tools/llvm-dwp/X86/cu_tu_units_manual_v5_invalid.s
    M llvm/test/tools/llvm-dwp/X86/debug_macro_v5.s
    M llvm/test/tools/llvm-dwp/X86/type_dedup.test
    A llvm/test/tools/llvm-mca/X86/Znver4/partially-overlapping-group-resources.s
    M llvm/test/tools/llvm-mca/X86/Znver4/zero-idioms.s
    M llvm/test/tools/llvm-ml/rip_relative_addressing.asm
    M llvm/tools/dsymutil/MachODebugMapParser.cpp
    M llvm/tools/dsymutil/Options.td
    M llvm/tools/dxil-dis/CMakeLists.txt
    M llvm/tools/lli/lli.cpp
    M llvm/tools/llvm-debuginfo-analyzer/llvm-debuginfo-analyzer.cpp
    M llvm/tools/llvm-debuginfod-find/CMakeLists.txt
    A llvm/tools/llvm-debuginfod-find/Opts.td
    M llvm/tools/llvm-debuginfod-find/llvm-debuginfod-find.cpp
    M llvm/tools/llvm-dis/llvm-dis.cpp
    M llvm/tools/llvm-dwarfdump/Statistics.cpp
    M llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp
    M llvm/tools/llvm-exegesis/lib/BenchmarkResult.cpp
    M llvm/tools/llvm-exegesis/lib/LlvmState.cpp
    M llvm/tools/llvm-exegesis/lib/LlvmState.h
    M llvm/tools/llvm-exegesis/lib/SnippetFile.cpp
    M llvm/tools/llvm-libtool-darwin/llvm-libtool-darwin.cpp
    M llvm/tools/llvm-lipo/llvm-lipo.cpp
    M llvm/tools/llvm-objdump/SourcePrinter.cpp
    M llvm/tools/llvm-readobj/ARMWinEHPrinter.cpp
    M llvm/tools/llvm-readobj/ELFDumper.cpp
    M llvm/tools/llvm-size/llvm-size.cpp
    M llvm/tools/llvm-xray/xray-graph.cpp
    M llvm/tools/opt/CMakeLists.txt
    M llvm/tools/opt/optdriver.cpp
    M llvm/unittests/ADT/Interleave.cpp
    M llvm/unittests/ADT/RewriteBufferTest.cpp
    M llvm/unittests/Analysis/AssumeBundleQueriesTest.cpp
    M llvm/unittests/Analysis/CFGTest.cpp
    M llvm/unittests/Analysis/CMakeLists.txt
    M llvm/unittests/Analysis/CtxProfAnalysisTest.cpp
    M llvm/unittests/Analysis/DXILResourceTest.cpp
    M llvm/unittests/Analysis/LazyCallGraphTest.cpp
    M llvm/unittests/Analysis/TargetLibraryInfoTest.cpp
    M llvm/unittests/Analysis/ValueTrackingTest.cpp
    M llvm/unittests/Analysis/VectorUtilsTest.cpp
    M llvm/unittests/Bitcode/BitReaderTest.cpp
    M llvm/unittests/CodeGen/GlobalISel/GISelMITest.cpp
    M llvm/unittests/CodeGen/GlobalISel/LegalizerTest.cpp
    M llvm/unittests/CodeGen/MachineInstrTest.cpp
    M llvm/unittests/CodeGen/MachineOperandTest.cpp
    M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp
    M llvm/unittests/DebugInfo/DWARF/DWARFDebugFrameTest.cpp
    M llvm/unittests/DebugInfo/DWARF/DWARFDebugLineTest.cpp
    M llvm/unittests/DebugInfo/DWARF/DWARFExpressionCompactPrinterTest.cpp
    M llvm/unittests/DebugInfo/DWARF/DWARFFormValueTest.cpp
    M llvm/unittests/DebugInfo/GSYM/GSYMTest.cpp
    M llvm/unittests/IR/AsmWriterTest.cpp
    M llvm/unittests/IR/ConstantsTest.cpp
    M llvm/unittests/IR/ManglerTest.cpp
    M llvm/unittests/IR/MetadataTest.cpp
    M llvm/unittests/IR/ModuleSummaryIndexTest.cpp
    M llvm/unittests/IR/ValueTest.cpp
    M llvm/unittests/IR/VerifierTest.cpp
    M llvm/unittests/InterfaceStub/ELFYAMLTest.cpp
    M llvm/unittests/MC/MCInstPrinter.cpp
    M llvm/unittests/MIR/MachineMetadata.cpp
    M llvm/unittests/MIR/MachineStableHashTest.cpp
    M llvm/unittests/Object/SymbolicFileTest.cpp
    M llvm/unittests/Passes/Plugins/CMakeLists.txt
    M llvm/unittests/ProfileData/InstrProfTest.cpp
    M llvm/unittests/ProfileData/MemProfTest.cpp
    M llvm/unittests/ProfileData/PGOCtxProfReaderWriterTest.cpp
    M llvm/unittests/SandboxIR/PassTest.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp
    M llvm/unittests/SandboxIR/TrackerTest.cpp
    M llvm/unittests/SandboxIR/TypesTest.cpp
    M llvm/unittests/Support/ARMAttributeParser.cpp
    M llvm/unittests/Support/CSKYAttributeParserTest.cpp
    M llvm/unittests/Support/Chrono.cpp
    M llvm/unittests/Support/CommandLineTest.cpp
    M llvm/unittests/Support/CrashRecoveryTest.cpp
    M llvm/unittests/Support/DynamicLibrary/CMakeLists.txt
    M llvm/unittests/Support/ErrorTest.cpp
    M llvm/unittests/Support/FormatVariadicTest.cpp
    M llvm/unittests/Support/JSONTest.cpp
    M llvm/unittests/Support/LEB128Test.cpp
    M llvm/unittests/Support/ModRefTest.cpp
    M llvm/unittests/Support/NativeFormatTests.cpp
    M llvm/unittests/Support/RISCVAttributeParserTest.cpp
    M llvm/unittests/Support/ScopedPrinterTest.cpp
    M llvm/unittests/Support/SourceMgrTest.cpp
    M llvm/unittests/Support/VirtualFileSystemTest.cpp
    M llvm/unittests/Support/WithColorTest.cpp
    M llvm/unittests/Support/YAMLIOTest.cpp
    M llvm/unittests/Target/LoongArch/InstSizes.cpp
    M llvm/unittests/Target/RISCV/RISCVInstrInfoTest.cpp
    M llvm/unittests/Target/SPIRV/CMakeLists.txt
    A llvm/unittests/Target/SPIRV/SPIRVAPITest.cpp
    M llvm/unittests/Transforms/Coroutines/ExtraRematTest.cpp
    M llvm/unittests/Transforms/Instrumentation/PGOInstrumentationTest.cpp
    M llvm/unittests/Transforms/Utils/MemTransferLowering.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
    M llvm/unittests/XRay/FDRProducerConsumerTest.cpp
    M llvm/unittests/XRay/FDRRecordPrinterTest.cpp
    M llvm/unittests/XRay/FDRRecordsTest.cpp
    M llvm/unittests/XRay/FDRTraceWriterTest.cpp
    M llvm/unittests/tools/llvm-exegesis/ProgressMeterTest.cpp
    M llvm/utils/TableGen/AsmMatcherEmitter.cpp
    M llvm/utils/TableGen/AsmWriterEmitter.cpp
    M llvm/utils/TableGen/CodeEmitterGen.cpp
    M llvm/utils/TableGen/CodeGenMapTable.cpp
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
    M llvm/utils/TableGen/Common/CodeGenDAGPatterns.h
    M llvm/utils/TableGen/Common/CodeGenInstAlias.cpp
    M llvm/utils/TableGen/Common/CodeGenInstAlias.h
    M llvm/utils/TableGen/Common/CodeGenInstruction.cpp
    M llvm/utils/TableGen/Common/CodeGenInstruction.h
    M llvm/utils/TableGen/Common/CodeGenRegisters.cpp
    M llvm/utils/TableGen/Common/CodeGenRegisters.h
    M llvm/utils/TableGen/Common/CodeGenSchedule.cpp
    M llvm/utils/TableGen/Common/CodeGenSchedule.h
    M llvm/utils/TableGen/Common/CodeGenTarget.cpp
    M llvm/utils/TableGen/Common/CodeGenTarget.h
    M llvm/utils/TableGen/Common/DAGISelMatcher.h
    M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.cpp
    M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.h
    M llvm/utils/TableGen/Common/InfoByHwMode.cpp
    M llvm/utils/TableGen/Common/InfoByHwMode.h
    M llvm/utils/TableGen/Common/OptEmitter.cpp
    M llvm/utils/TableGen/Common/OptEmitter.h
    M llvm/utils/TableGen/Common/SubtargetFeatureInfo.cpp
    M llvm/utils/TableGen/Common/SubtargetFeatureInfo.h
    M llvm/utils/TableGen/Common/Utils.cpp
    M llvm/utils/TableGen/Common/Utils.h
    M llvm/utils/TableGen/Common/VarLenCodeEmitterGen.cpp
    M llvm/utils/TableGen/DAGISelEmitter.cpp
    M llvm/utils/TableGen/DAGISelMatcherEmitter.cpp
    M llvm/utils/TableGen/DAGISelMatcherGen.cpp
    M llvm/utils/TableGen/DFAPacketizerEmitter.cpp
    M llvm/utils/TableGen/ExegesisEmitter.cpp
    M llvm/utils/TableGen/FastISelEmitter.cpp
    M llvm/utils/TableGen/GlobalISelEmitter.cpp
    M llvm/utils/TableGen/InstrDocsEmitter.cpp
    M llvm/utils/TableGen/InstrInfoEmitter.cpp
    M llvm/utils/TableGen/OptParserEmitter.cpp
    M llvm/utils/TableGen/OptRSTEmitter.cpp
    M llvm/utils/TableGen/RegisterInfoEmitter.cpp
    M llvm/utils/TableGen/SubtargetEmitter.cpp
    M llvm/utils/TableGen/X86FoldTablesEmitter.cpp
    M llvm/utils/TableGen/X86ManualFoldTables.def
    M llvm/utils/TableGen/X86ManualInstrMapping.def
    M llvm/utils/git/requirements.txt
    M llvm/utils/git/requirements.txt.in
    M llvm/utils/gn/build/BUILD.gn
    M llvm/utils/gn/build/toolchain/target_flags.gni
    M llvm/utils/gn/secondary/clang/lib/CodeGen/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/Tooling/BUILD.gn
    M llvm/utils/gn/secondary/compiler-rt/lib/BUILD.gn
    M llvm/utils/gn/secondary/compiler-rt/lib/asan/BUILD.gn
    M llvm/utils/gn/secondary/compiler-rt/lib/sanitizer_common/BUILD.gn
    M llvm/utils/gn/secondary/compiler-rt/lib/ubsan/BUILD.gn
    M llvm/utils/gn/secondary/compiler-rt/test/BUILD.gn
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/Target/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/CodeGen/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/CodeGen/GlobalISel/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/SandboxIR/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Support/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Transforms/Coroutines/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Transforms/Instrumentation/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Transforms/Utils/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Transforms/Vectorize/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-debuginfod-find/BUILD.gn
    M llvm/utils/gn/secondary/llvm/unittests/SandboxIR/BUILD.gn
    M llvm/utils/gn/secondary/llvm/unittests/Target/SPIRV/BUILD.gn
    M llvm/utils/lit/lit/TestRunner.py
    A llvm/utils/lit/tests/Inputs/escape-color/color-escaped.txt
    A llvm/utils/lit/tests/Inputs/escape-color/color.txt
    A llvm/utils/lit/tests/Inputs/escape-color/lit.cfg
    A llvm/utils/lit/tests/escape-color.py
    M llvm/utils/release/build_llvm_release.bat
    M mlir/cmake/modules/MLIRDetectPythonEnv.cmake
    A mlir/docs/Dialects/OpenMPDialect/ODS.md
    A mlir/docs/Dialects/OpenMPDialect/_index.md
    M mlir/include/mlir-c/BuiltinAttributes.h
    M mlir/include/mlir-c/BuiltinTypes.h
    M mlir/include/mlir/Analysis/Presburger/Utils.h
    M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPU.td
    M mlir/include/mlir/Dialect/AMDGPU/Transforms/Passes.td
    M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h
    M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMOpBase.td
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
    M mlir/include/mlir/Dialect/Linalg/Utils/Utils.h
    M mlir/include/mlir/Dialect/OpenMP/CMakeLists.txt
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauseOperands.h
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOpBase.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/include/mlir/Dialect/SCF/Transforms/TileUsingInterface.h
    M mlir/include/mlir/Dialect/Tosa/IR/CMakeLists.txt
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOpBase.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.h
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaTypesBase.td
    M mlir/include/mlir/Dialect/Tosa/Transforms/Passes.td
    M mlir/include/mlir/Dialect/Tosa/Utils/ConversionUtils.h
    M mlir/include/mlir/Dialect/Transform/IR/Utils.h
    M mlir/include/mlir/IR/Builders.h
    M mlir/include/mlir/IR/BuiltinTypes.h
    M mlir/include/mlir/IR/BuiltinTypes.td
    M mlir/include/mlir/IR/CommonAttrConstraints.td
    M mlir/include/mlir/IR/CommonTypeConstraints.td
    M mlir/include/mlir/IR/Types.h
    M mlir/include/mlir/Interfaces/CallInterfaces.h
    M mlir/include/mlir/Interfaces/CallInterfaces.td
    M mlir/include/mlir/Interfaces/TilingInterface.h
    M mlir/lib/Analysis/CallGraph.cpp
    M mlir/lib/Analysis/DataFlow/DeadCodeAnalysis.cpp
    M mlir/lib/Analysis/DataFlow/DenseAnalysis.cpp
    M mlir/lib/Analysis/DataFlow/SparseAnalysis.cpp
    M mlir/lib/Analysis/Presburger/IntegerRelation.cpp
    M mlir/lib/Analysis/Presburger/Matrix.cpp
    M mlir/lib/Analysis/Presburger/Simplex.cpp
    M mlir/lib/AsmParser/Parser.cpp
    M mlir/lib/AsmParser/TokenKinds.def
    M mlir/lib/AsmParser/TypeParser.cpp
    M mlir/lib/Bindings/Python/IRAttributes.cpp
    M mlir/lib/Bindings/Python/IRTypes.cpp
    M mlir/lib/Bytecode/Reader/BytecodeReader.cpp
    M mlir/lib/CAPI/IR/BuiltinAttributes.cpp
    M mlir/lib/CAPI/IR/BuiltinTypes.cpp
    M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
    M mlir/lib/Conversion/GPUCommon/IndexIntrinsicsOpLowering.h
    M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
    M mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
    M mlir/lib/Conversion/LLVMCommon/TypeConverter.cpp
    M mlir/lib/Conversion/TosaToLinalg/TosaToLinalgNamed.cpp
    M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
    M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVMPass.cpp
    M mlir/lib/Dialect/AMDGPU/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/AMDGPU/Transforms/EmulateAtomics.cpp
    M mlir/lib/Dialect/Arith/Transforms/EmulateUnsupportedFloats.cpp
    M mlir/lib/Dialect/Async/IR/CMakeLists.txt
    M mlir/lib/Dialect/Bufferization/IR/BufferizableOpInterface.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMAttrs.cpp
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp
    M mlir/lib/Dialect/Linalg/Transforms/TilingInterfaceImpl.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
    M mlir/lib/Dialect/Linalg/Transforms/WinogradConv2D.cpp
    M mlir/lib/Dialect/Linalg/Utils/Utils.cpp
    M mlir/lib/Dialect/Mesh/IR/MeshOps.cpp
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Dialect/SCF/IR/SCF.cpp
    M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseAssembler.cpp
    M mlir/lib/Dialect/Tensor/IR/TensorTilingInterfaceImpl.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/lib/Dialect/Tosa/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/Tosa/Transforms/TosaReduceTransposes.cpp
    M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
    M mlir/lib/Dialect/Transform/Interfaces/TransformInterfaces.cpp
    M mlir/lib/IR/AsmPrinter.cpp
    M mlir/lib/IR/Builders.cpp
    M mlir/lib/IR/BuiltinTypes.cpp
    M mlir/lib/IR/MLIRContext.cpp
    M mlir/lib/IR/Types.cpp
    M mlir/lib/Interfaces/CallInterfaces.cpp
    M mlir/lib/Interfaces/ValueBoundsOpInterface.cpp
    M mlir/lib/TableGen/CodeGenHelpers.cpp
    M mlir/lib/TableGen/Predicate.cpp
    M mlir/lib/Target/LLVM/ModuleToObject.cpp
    M mlir/lib/Target/LLVMIR/ConvertFromLLVMIR.cpp
    M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/Dialect/NVVM/LLVMIRToNVVMTranslation.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMPCommon.cpp
    M mlir/lib/Target/LLVMIR/Dialect/ROCDL/ROCDLToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/lib/Target/SPIRV/Serialization/SerializeOps.cpp
    M mlir/lib/Target/SPIRV/Serialization/Serializer.cpp
    M mlir/lib/Tools/PDLL/Parser/Parser.cpp
    M mlir/lib/Tools/mlir-opt/MlirOptMain.cpp
    M mlir/lib/Transforms/Mem2Reg.cpp
    M mlir/lib/Transforms/PrintIR.cpp
    M mlir/lib/Transforms/RemoveDeadValues.cpp
    M mlir/lib/Transforms/Utils/CMakeLists.txt
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/lib/Transforms/ViewOpGraph.cpp
    M mlir/python/mlir/_mlir_libs/_mlir/ir.pyi
    M mlir/python/mlir/extras/types.py
    M mlir/python/mlir/ir.py
    M mlir/test/CMakeLists.txt
    M mlir/test/Conversion/AMDGPUToROCDL/amdgpu-to-rocdl.mlir
    M mlir/test/Conversion/AMDGPUToROCDL/wmma.mlir
    M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir
    M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl.mlir
    M mlir/test/Conversion/OpenMPToLLVM/convert-to-llvmir.mlir
    M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-named.mlir
    M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-pipeline.mlir
    M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
    M mlir/test/Conversion/VectorToSPIRV/vector-to-spirv.mlir
    M mlir/test/Dialect/AMDGPU/amdgpu-emulate-atomics.mlir
    M mlir/test/Dialect/Linalg/fuse-with-reshape-by-collapsing.mlir
    M mlir/test/Dialect/Linalg/transform-lower-pack.mlir
    M mlir/test/Dialect/Linalg/transform-tile-and-winograd-rewrite.mlir
    M mlir/test/Dialect/Linalg/winograd-conv2d-rewrite.mlir
    M mlir/test/Dialect/Linalg/winograd-conv2d.mlir
    A mlir/test/Dialect/Mesh/inlining.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir
    M mlir/test/Dialect/Tosa/constant-op-fold.mlir
    M mlir/test/Dialect/Tosa/invalid.mlir
    M mlir/test/Dialect/Tosa/ops.mlir
    A mlir/test/Dialect/Tosa/tosa-reduce-transposes.mlir
    M mlir/test/IR/attribute.mlir
    M mlir/test/Integration/Dialect/SparseTensor/python/test_SDDMM.py
    M mlir/test/Integration/Dialect/SparseTensor/python/test_SpMM.py
    A mlir/test/Integration/Dialect/SparseTensor/python/test_all_dense.py
    M mlir/test/Integration/Dialect/SparseTensor/python/test_output.py
    M mlir/test/Integration/Dialect/SparseTensor/python/test_stress.py
    M mlir/test/Integration/Dialect/SparseTensor/python/tools/sparsifier.py
    M mlir/test/Interfaces/TilingInterface/tile-and-fuse-consumer.mlir
    M mlir/test/Interfaces/TilingInterface/tile-and-fuse-using-interface.mlir
    M mlir/test/Target/LLVMIR/Import/nvvmir.ll
    M mlir/test/Target/LLVMIR/llvmir.mlir
    M mlir/test/Target/LLVMIR/nvvmir.mlir
    M mlir/test/Target/LLVMIR/rocdl.mlir
    M mlir/test/Transforms/loop-invariant-code-motion.mlir
    M mlir/test/Transforms/remove-dead-values.mlir
    M mlir/test/Transforms/test-legalize-erased-op-with-uses.mlir
    M mlir/test/lib/Interfaces/TilingInterface/TestTilingInterfaceTransformOps.cpp
    A mlir/test/mlir-tblgen/openmp-clause-ops.td
    M mlir/test/mlir-tblgen/openmp-ops-verify.td
    M mlir/test/mlir-tblgen/openmp-ops.td
    M mlir/test/python/ir/attributes.py
    M mlir/test/python/ir/builtin_types.py
    M mlir/test/tblgen-to-irdl/CMathDialect.td
    M mlir/test/tblgen-to-irdl/TestDialect.td
    M mlir/tools/mlir-linalg-ods-gen/mlir-linalg-ods-yaml-gen.cpp
    M mlir/tools/mlir-pdll/mlir-pdll.cpp
    M mlir/tools/mlir-src-sharder/mlir-src-sharder.cpp
    M mlir/tools/mlir-tblgen/OmpOpGen.cpp
    M mlir/tools/mlir-tblgen/OpDocGen.cpp
    M mlir/tools/tblgen-to-irdl/OpDefinitionsGen.cpp
    M mlir/unittests/Bytecode/BytecodeTest.cpp
    M mlir/unittests/IR/AttributeTest.cpp
    M mlir/unittests/IR/OpPropertiesTest.cpp
    M mlir/unittests/Support/IndentedOstreamTest.cpp
    M mlir/utils/lldb-scripts/mlirDataFormatters.py
    M mlir/utils/tree-sitter-mlir/grammar.js
    M offload/DeviceRTL/CMakeLists.txt
    M offload/DeviceRTL/include/DeviceTypes.h
    M offload/include/Shared/Environment.h
    R offload/include/Shared/Types.h
    M offload/include/Shared/Utils.h
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/src/__support/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/src/__support/FPUtil/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/src/fenv/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/src/math/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/src/math/libc_math_test_rules.bzl
    M utils/bazel/llvm-project-overlay/libc/test/src/sys/epoll/BUILD.bazel
    M utils/bazel/llvm-project-overlay/lld/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/driver.bzl
    M utils/bazel/llvm-project-overlay/llvm/unittests/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  Rebase, address comments

Created using spr 1.3.5


Compare: https://github.com/llvm/llvm-project/compare/468ba0e4ff9f...05e21e81fc6c

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