[all-commits] [llvm/llvm-project] 549770: Update C++ DR status page

Alexey Bataev via All-commits all-commits at lists.llvm.org
Thu Mar 20 05:29:00 PDT 2025


  Branch: refs/heads/users/alexey-bataev/spr/slpnfc-redesign-schedule-bundle-separate-from-schedule-data-nfc
  Home:   https://github.com/llvm/llvm-project
  Commit: 54977097567a55964505c965513a354926c0565b
      https://github.com/llvm/llvm-project/commit/54977097567a55964505c965513a354926c0565b
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  Update C++ DR status page


  Commit: 1f152527e06dcad57f9af3ea6a0a4997da116706
      https://github.com/llvm/llvm-project/commit/1f152527e06dcad57f9af3ea6a0a4997da116706
  Author: Cassandra Beckley <cbeckley at google.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M llvm/docs/SPIRVUsage.rst
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/SV_GroupIndex.ll

  Log Message:
  -----------
  [SPIR-V] Add support for HLSL SV_GroupIndex (#130670)

This PR lowers the `llvm.spv.flattened.thread.id.in.group` intrinsic as
a `LocalInvocationIndex` builtin variable.


  Commit: 379a8d1a830f021fbc84e74ccbb316f2327d88c2
      https://github.com/llvm/llvm-project/commit/379a8d1a830f021fbc84e74ccbb316f2327d88c2
  Author: James Y Knight <jyknight at google.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

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

  Log Message:
  -----------
  Fix bazel build for 8437b7f5. (#132046)

When using parse_headers validation, rpc_server.h fails to build, since
we don't expose any of the RPC deps in the Bazel build.

So at least for now, just exclude it.


  Commit: 4f5ccf22fab7b83651511dd8eea6b60266b84bf2
      https://github.com/llvm/llvm-project/commit/4f5ccf22fab7b83651511dd8eea6b60266b84bf2
  Author: Mariusz Sikora <mariusz.sikora at amd.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/MIMGInstructions.td
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.bvh8_intersect_ray.ll
    M llvm/test/MC/AMDGPU/gfx12_asm_vimage.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vimage_alias.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vimage.txt

  Log Message:
  -----------
  [AMDGPU] Support image_bvh8_intersect_ray instruction and intrinsic. (#130041)

Co-authored-by: Ivan Kosarev <ivan.kosarev at amd.com>


  Commit: 11b869957232e6f5dfec5c88d636fe808e329d8d
      https://github.com/llvm/llvm-project/commit/11b869957232e6f5dfec5c88d636fe808e329d8d
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/reg-usage.ll
    M llvm/test/Transforms/LoopVectorize/LoongArch/reg-usage.ll
    M llvm/test/Transforms/LoopVectorize/PowerPC/reg-usage.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll

  Log Message:
  -----------
  [LV] Don't skip instrs with side-effects in reg pressure computation. (#126415)

calculateRegisterUsage adds end points for each user of an instruction
to Ends and ignores instructions not added to it, i.e. instructions with
no users.

This means things like stores aren't included, which in turn means
values that are only used in stores are also not included for
consideration. This means we underestimate the register usage in cases
where the only users are things like stores.

Update the code to don't skip instructions without users (i.e. not in
Ends) if they have side-effects.

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


  Commit: cd0a2a3f1bdaf8dc54d4a4d3c478d41345671e72
      https://github.com/llvm/llvm-project/commit/cd0a2a3f1bdaf8dc54d4a4d3c478d41345671e72
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M flang-rt/lib/runtime/extensions.cpp
    M flang/docs/Intrinsics.md

  Log Message:
  -----------
  [flang] add QSORT extension intrinsic to the runtime (#132033)

Add support for legacy Fortran intrinsic QSORT from lib 3f.
This is a thin Fortran wrapper over libc qsort.


  Commit: 58027fa989391451d7eaa21fe24c135bcad52e79
      https://github.com/llvm/llvm-project/commit/58027fa989391451d7eaa21fe24c135bcad52e79
  Author: David Peixotto <peix at meta.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M lldb/test/API/iohandler/unicode/TestUnicode.py

  Log Message:
  -----------
  [lldb] Require wide char support in unicode test (#131951)

The unicode test sends some unicode input to lldb through pexpect and
expects the output to be echoed back in an error message. This only
works correctly when editline was compiled with wide character support.

This commit modifies the test to require the necessary libedit
configuration.


  Commit: 93b7c1b4b2b60720f05dddaa3cc119cab2cee079
      https://github.com/llvm/llvm-project/commit/93b7c1b4b2b60720f05dddaa3cc119cab2cee079
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M clang-tools-extra/test/clang-doc/basic-project.test

  Log Message:
  -----------
  [clang-doc] Add testing without --repository for HTML documentation (#131894)

https://github.com/llvm/llvm-project/issues/131697 reported a crash when
--repository was unused, so make sure we test the project in both
configurations.


  Commit: cc2a86ad35350f97b15bc7f8c71d1be7fe64bc16
      https://github.com/llvm/llvm-project/commit/cc2a86ad35350f97b15bc7f8c71d1be7fe64bc16
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M llvm/docs/LangRef.rst

  Log Message:
  -----------
  [LLVM][Docs] Add language reference for `llvm.readsteadycounter` (#132040)

Summary:
This was not added in the original patch, add LLVM documentation.


  Commit: d7879e524fbbc4c2790dac62343444191f736f00
      https://github.com/llvm/llvm-project/commit/d7879e524fbbc4c2790dac62343444191f736f00
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M llvm/lib/Target/ARM/ARMISelLowering.cpp

  Log Message:
  -----------
  [ARM] Use DenseSet instead of DenseMap. NFC (#131978)

The value in the map is set to "true" when something is added to the
map.

Techncally this:

  if (!DefRegs.contains(Reg))

will set the value in the map to false if it didn't already exist, and
this is used to indicate the value wasn't in the map. This only occurs
after all the "true" values have already been added to the map.


  Commit: e53bea51829ee9876a2010fec1a13d740533b89a
      https://github.com/llvm/llvm-project/commit/e53bea51829ee9876a2010fec1a13d740533b89a
  Author: Peng Liu <winner245 at hotmail.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M libcxx/include/__algorithm/count.h
    M libcxx/include/__bit/popcount.h
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.count/count.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.count/ranges.count.pass.cpp

  Log Message:
  -----------
  [libc++] Fix ambiguous call in {ranges, std}::count (#122529)

This PR fixes an ambiguous call encountered while using the
`std::ranges::count` and `std::count` algorithms with `vector<bool>`
with small `size_type`s.

The ambiguity arises from integral promotions during the internal
bitwise arithmetic of the `count` algorithms for small integral types.
This results in multiple viable candidates:
`__libcpp_popcount(unsigned)`,` __libcpp_popcount(unsigned long)`, and
`__libcpp_popcount(unsigned long long)`, leading to an ambiguous call
error. To resolve this ambiguity, we introduce a dispatcher function,
`__popcount`, which directs calls to the appropriate overloads of
`__libcpp_popcount`. This closes #122528.


  Commit: cb493d2bab40a480e3daba22ffee54d024817f05
      https://github.com/llvm/llvm-project/commit/cb493d2bab40a480e3daba22ffee54d024817f05
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M offload/DeviceRTL/src/DeviceUtils.cpp
    M offload/DeviceRTL/src/Misc.cpp

  Log Message:
  -----------
  [OpenMP] Replace utilities with 'gpuintrin.h' definitions (#131644)

Summary:
Port more instructions. AMD version is at
https://gist.github.com/jhuber6/235d7ee95f747c75f9a3cfd8eedac6aa


  Commit: 2c41a8e6d39800383edfd863d6d96f0cfc4a2283
      https://github.com/llvm/llvm-project/commit/2c41a8e6d39800383edfd863d6d96f0cfc4a2283
  Author: Sarah Spall <sarahspall at microsoft.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M clang/lib/Headers/hlsl/hlsl_compat_overloads.h
    M clang/test/CodeGenHLSL/builtins/clamp.hlsl
    M clang/test/SemaHLSL/BuiltIns/clamp-errors-16bit.hlsl
    M clang/test/SemaHLSL/BuiltIns/clamp-errors.hlsl

  Log Message:
  -----------
  [HLSL] Fix bug in new clamp overloads (#131928)

In some cases using the newly introduced clamp overloads, when floats
were involved, clang would behave differently than DXC.
To ensure the same behavior as DXC, require that for mix scalar/vector
overloads the type of the scalar matches the type of the vector.


  Commit: 5720a792a950f46a9b1ebdf0b658b76dc02a9833
      https://github.com/llvm/llvm-project/commit/5720a792a950f46a9b1ebdf0b658b76dc02a9833
  Author: John Harrison <harjohn at google.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py

  Log Message:
  -----------
  [lldb-dap] Waiting for the test binary to exit prior to dumping logs. (#131917)

This should ensure we have the full logs prior to dumping the logs.
Additionally, printing log dumps to stderr so they are adjacent to
assertion failures.


  Commit: c5195ae2d0c1f3925f48ecb0cf037d3f67d45a85
      https://github.com/llvm/llvm-project/commit/c5195ae2d0c1f3925f48ecb0cf037d3f67d45a85
  Author: Peng Liu <winner245 at hotmail.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M libcxx/include/__algorithm/equal.h
    M libcxx/include/__bit_reference
    M libcxx/include/__fwd/bit_reference.h
    M libcxx/include/__vector/comparison.h
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.equal/equal.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.equal/ranges.equal.pass.cpp

  Log Message:
  -----------
  [libc++] Fix {std, ranges}::equal for vector<bool> with small storage types (#130394)

The current implementation of `{std, ranges}::equal` fails to correctly
compare `vector<bool>`s when the underlying storage type is smaller than
`int` (e.g., `unsigned char`, `unsigned short`, `uint8_t` and
`uint16_t`). See [demo](https://godbolt.org/z/j4s87s6b3)). The problem
arises due to integral promotions on the intermediate bitwise
operations, leading to incorrect final equality comparison results. This
patch fixes the issue by ensuring that `{std, ranges}::equal` operate
properly for both aligned and unaligned bits.
 
Fixes #126369.


  Commit: 480202f0d16f7dbc5c650aea6e8dfd9eca5b999d
      https://github.com/llvm/llvm-project/commit/480202f0d16f7dbc5c650aea6e8dfd9eca5b999d
  Author: dong-miao <601183878 at qq.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M clang/test/Driver/print-supported-extensions-riscv.c
    M clang/test/Preprocessor/riscv-target-features.c
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    A llvm/lib/Target/RISCV/RISCVInstrInfoZclsd.td
    A llvm/lib/Target/RISCV/RISCVInstrInfoZilsd.td
    M llvm/lib/TargetParser/RISCVISAInfo.cpp
    M llvm/test/CodeGen/RISCV/attributes.ll
    M llvm/test/MC/RISCV/attribute-arch.s
    A llvm/test/MC/RISCV/rv32zclsd-invalid.s
    A llvm/test/MC/RISCV/rv32zclsd-valid.s
    A llvm/test/MC/RISCV/rv32zilsd-invalid.s
    A llvm/test/MC/RISCV/rv32zilsd-valid.s
    M llvm/test/MC/RISCV/rv64c-valid.s
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISCV] Add Zilsd and Zclsd Extensions (#131094)

This commit adds the Load/Store pair instructions (Zilsd) and Compressed
Load/Store pair instructions (Zclsd).

[Specification
link](https://github.com/riscv/riscv-isa-manual/blob/main/src/zilsd.adoc).


  Commit: a5b3d3a03f3291b1b62c7c25bc40b494660421cb
      https://github.com/llvm/llvm-project/commit/a5b3d3a03f3291b1b62c7c25bc40b494660421cb
  Author: Peng Liu <winner245 at hotmail.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M libcxx/include/__algorithm/copy.h
    M libcxx/include/__fwd/bit_reference.h
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/ranges.copy.pass.cpp

  Log Message:
  -----------
  [libc++] Fix {std, ranges}::copy for vector<bool> with small storage types (#131545)

The current implementation of `{std, ranges}::copy` fails to copy
`vector<bool>` correctly when the underlying storage type
(`__storage_type`) is smaller than `int`, such as `unsigned char`,
`unsigned short`, `uint8_t` and `uint16_t`. The root cause is that the
unsigned small storage type undergoes integer promotion to (signed)
`int`, which is then left and right shifted, leading to UB (before
C++20) and sign-bit extension (since C++20) respectively. As a result,
the underlying bit mask evaluations become incorrect, causing erroneous
copying behavior.

This patch resolves the issue by correcting the internal bitwise
operations, ensuring that `{std, ranges}::copy` operates correctly for
`vector<bool>` with any custom (unsigned) storage types.

Fixes #131692.


  Commit: 1456eabca80d57ebd38b46e49ef3d25aace198ae
      https://github.com/llvm/llvm-project/commit/1456eabca80d57ebd38b46e49ef3d25aace198ae
  Author: TatWai Chong <tatwai.chong at arm.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaComplianceData.h.inc
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaProfileCompliance.h
    M mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp
    M mlir/test/Dialect/Tosa/availability.mlir
    M mlir/test/Dialect/Tosa/invalid.mlir
    M mlir/test/Dialect/Tosa/invalid_extension.mlir
    M mlir/test/Dialect/Tosa/profile_all_unsupported.mlir
    M mlir/test/Dialect/Tosa/profile_pro_int_unsupported.mlir

  Log Message:
  -----------
  [mlir][tosa] Finalize profile-based validation for TOSA v1.0 (#131208)

- When the operand type of an operation changes to a profile-dependent
type, the compliance metadata must be updated. Update compliance check
for the following:
- CONV2D, CONV3D, DEPTHWISE_CONV2D, and TRANSPOSE_CONV2D, as zero points
have changed to variable inputs.
  - PAD, because pad_const has been changed to a variable input.
  - GATHER and SCATTER, as indices has changed to index_t.
- Add an int16 extension check for CONCAT.
- Add a compliance check for COND_IF, WHILE_LOOP, VARIABLE,
VARIABLE_READ, and VARIABLE_WRITE.
- Correct the profile requirements for IDENTITY, TABLE, MATMUL and
LOGICAL-like operations.
- Remove unnecessary checks for non-v1.0 operations.
- Add condition requirements (anyOf and allOf) to the type mode of
metadata for modes that have multiple profile/extension considerations.


  Commit: 029cb8aff1450ed6d69f671a5e5e3e226316b42a
      https://github.com/llvm/llvm-project/commit/029cb8aff1450ed6d69f671a5e5e3e226316b42a
  Author: Peng Liu <winner245 at hotmail.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M libcxx/include/__algorithm/copy_backward.h
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/copy_backward.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/ranges.copy_backward.pass.cpp

  Log Message:
  -----------
  [libc++] Fix copy_backward for vector<bool> with small storage types (#131560)

This patch fixes an issue in libc++ where `std::copy_backward` and
`ranges::copy_backward` incorrectly copy `std::vector<bool>` with small
storage types (e.g., `uint8_t`, `uint16_t`). The problem arises from
flawed bit mask computations involving integral promotions and sign-bit
extension, leading to unintended zeroing of bits. This patch corrects
the bitwise operations to ensure correct bit-level copying.

Fixes #131718.


  Commit: 70480fcff64e2e389da8bc48043719a554893c6f
      https://github.com/llvm/llvm-project/commit/70480fcff64e2e389da8bc48043719a554893c6f
  Author: Peng Liu <winner245 at hotmail.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M libcxx/test/std/containers/sequences/vector.bool/assign_copy.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/assign_move.pass.cpp

  Log Message:
  -----------
  [libc++] Validate vector<bool> copy/move-assignment operators in realistic scenarios (#119817)

The existing tests for `vector<bool>` copy- and move-assignment
operators are limited to 3 bits only, which are inadequate to cover
realistic scenarios. Most `vector<bool>` operations have code paths that
are executed only when multiple storage words are involved, with each
storage word typically comprising 64 bits on a 64-bit platform.
Furthermore, the existing tests fail to cover all combinations
`POCCA`/`POCMA`, along with different allocator equality and/or
reallocation scenarios, leaving some critical code paths untested.

This patch enhances the test coverage by introducing new tests covering
up to 5 storage words, ensuring that partial words in the front or tail,
and whole words in the middle are all properly tested. Moreover, these
new tests ensure that the copy- and move-assignment operators are tested
under all combinations of `POCCA`/`POCMA` and various allocator equality
scenarios, both with or without reallocations.


  Commit: 25613b32abaea9719ba1f25934d34acb665d374c
      https://github.com/llvm/llvm-project/commit/25613b32abaea9719ba1f25934d34acb665d374c
  Author: James Y Knight <jyknight at google.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

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

  Log Message:
  -----------
  NFC: fix whitespace lint in bazel file.


  Commit: 7af0bfe62fff676c66a5394995b03030cf5baef4
      https://github.com/llvm/llvm-project/commit/7af0bfe62fff676c66a5394995b03030cf5baef4
  Author: John Harrison <harjohn at google.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M lldb/tools/lldb-dap/CMakeLists.txt
    M lldb/tools/lldb-dap/DAP.cpp
    M lldb/tools/lldb-dap/DAP.h
    M lldb/tools/lldb-dap/DAPForward.h
    A lldb/tools/lldb-dap/DAPLog.cpp
    M lldb/tools/lldb-dap/DAPLog.h
    M lldb/tools/lldb-dap/EventHelper.cpp
    M lldb/tools/lldb-dap/Transport.cpp
    M lldb/tools/lldb-dap/Transport.h
    M lldb/tools/lldb-dap/lldb-dap.cpp

  Log Message:
  -----------
  [lldb-dap] Ensure logging statements are written as a single chunk. (#131916)

I noticed this while debugging some unit tests that the logs
occasionally would intersperse two log statements.

Previously, it was possible for a log statement to have two messages
interspersed since the timestamp and log statement were two different
writes to the log stream.

I created a Log helper to ensure we have a lock while attempting to write
to the logs.


  Commit: 99997d717bee23fd9d3a1aec87f7066156b668fc
      https://github.com/llvm/llvm-project/commit/99997d717bee23fd9d3a1aec87f7066156b668fc
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

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

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


  Commit: 617646ab8d148ab51e8b94ccc0a40af2fc6c3dcf
      https://github.com/llvm/llvm-project/commit/617646ab8d148ab51e8b94ccc0a40af2fc6c3dcf
  Author: Peng Liu <winner245 at hotmail.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M libcxx/include/deque

  Log Message:
  -----------
  [libc++] Use __alloc_traits in <deque> whenever it is available for consistency (#126595)

When an allocator-aware container already defines a member type alias
`__alloc_traits` for `std::allocator_traits<allocator_type>`, we should
consistently use `__alloc_traits`. Mixing the usage of both
`__alloc_traits` and `std::allocator_traits` can lead to inconsistencies
and confusion.


  Commit: 9a078a372ea69eb2d3f0700dfa14809648e78a88
      https://github.com/llvm/llvm-project/commit/9a078a372ea69eb2d3f0700dfa14809648e78a88
  Author: Kristof Beyls <kristof.beyls at arm.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M llvm/docs/SecurityTransparencyReports.rst

  Log Message:
  -----------
  2024 Security Group Transparency Report (#132011)

This adds the Security Response Group's transparency report for 2024.


  Commit: b350bc2c0b88488f6c4eb84aadd4e74c67ca9b06
      https://github.com/llvm/llvm-project/commit/b350bc2c0b88488f6c4eb84aadd4e74c67ca9b06
  Author: Peng Liu <winner245 at hotmail.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M libcxx/docs/Status/Cxx23Issues.csv
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/merge_lvalue.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/merge_lvalue_pred.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/merge_rvalue.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/merge_rvalue_pred.pass.cpp

  Log Message:
  -----------
  [libc++] Verify forward_list self-merging is a no-op (#129985)

https://wg21.link/LWG3088 requires that `forward_list::merge()` is a no-op when passed
`*this`, which aligns with the behavior of `list::merge`. Although libc++'s implementation
of `forward_list::merge()` already meets this requirement, there were no tests to verify
this behavior. This patch adds the necessary tests to ensure that self-merging remains a
no-op and prevents any future regressions on this.

Closes #104942.


  Commit: cd26dd55959c11c1cd0ea4fe1f07e0fa9cb7a72a
      https://github.com/llvm/llvm-project/commit/cd26dd55959c11c1cd0ea4fe1f07e0fa9cb7a72a
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M flang/examples/FeatureList/FeatureList.cpp
    M flang/examples/FlangOmpReport/FlangOmpReportVisitor.cpp
    M flang/include/flang/Parser/dump-parse-tree.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Parser/openmp-parsers.cpp
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/test/Parser/OpenMP/doacross-clause.f90
    M flang/test/Parser/OpenMP/from-clause.f90
    M flang/test/Parser/OpenMP/if-clause.f90
    M flang/test/Parser/OpenMP/ordered-depend.f90
    M flang/test/Parser/OpenMP/scan.f90
    M flang/test/Parser/OpenMP/target-update-to-clause.f90

  Log Message:
  -----------
  [flang][OpenMP] Use OmpDirectiveSpecification in simple directives (#131162)

The `OmpDirectiveSpecification` contains directive name, the list of
arguments, and the list of clauses. It was introduced to store the
directive specification in METADIRECTIVE, and could be reused everywhere
a directive representation is needed.
In the long term this would unify the handling of common directive
properties, as well as creating actual constructs from METADIRECTIVE by
linking the contained directive specification with any associated user
code.


  Commit: 39ce99589b05ddd43e5c8b7f89ab5bbfda40d2ce
      https://github.com/llvm/llvm-project/commit/39ce99589b05ddd43e5c8b7f89ab5bbfda40d2ce
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/include/clang/CIR/CIRGenerator.h
    A clang/include/clang/CIR/CIRToCIRPasses.h
    M clang/include/clang/CIR/Dialect/Passes.h
    M clang/include/clang/CIR/Dialect/Passes.td
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Frontend/FrontendOptions.h
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.h
    M clang/lib/CIR/CodeGen/CIRGenerator.cpp
    A clang/lib/CIR/Dialect/Transforms/CIRCanonicalize.cpp
    M clang/lib/CIR/Dialect/Transforms/CMakeLists.txt
    M clang/lib/CIR/FrontendAction/CIRGenAction.cpp
    M clang/lib/CIR/FrontendAction/CMakeLists.txt
    M clang/lib/CIR/Lowering/CIRPasses.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/FrontendTool/CMakeLists.txt
    M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
    A clang/test/CIR/Transforms/canonicalize.cir
    A clang/test/CIR/mlirargs.c
    A clang/test/CIR/mlprint.c
    M clang/tools/cir-opt/cir-opt.cpp

  Log Message:
  -----------
  [CIR] Upstream cir-canonicalize pass (#131891)

This change introduces the cir-canonicalize pass. This is a simple
cir-to-cir transformation that eliminates empty scopes and redundant
branches. It will be expanded in future changes to simplify other
redundant instruction sequences.

MLIR verification and mlir-specific command-line option handling is also
introduced here.


  Commit: 5475834737663c0da3c444fcf1c8ab5567c39136
      https://github.com/llvm/llvm-project/commit/5475834737663c0da3c444fcf1c8ab5567c39136
  Author: Reid Kleckner <rnk at google.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/SanitizerCoverage.cpp
    M llvm/test/Instrumentation/SanitizerCoverage/interposable-symbol.ll

  Log Message:
  -----------
  [sancov] Use comdats when one already exists (#131929)

This code avoids adding comdat groups to interposable linkage types
(weak, linkonce (non-ODR)) to avoid changing semantics, since comdat
elimination happens before weak/strong prevailaing symbol resolution.
However, if the function is already in a comdat, we can add to the group
without changing the semantics of the linked program.

Fixes an issue uncovered in PR #126240


  Commit: dd17c649abbfc7e4052e45d3240b23feb6530a31
      https://github.com/llvm/llvm-project/commit/dd17c649abbfc7e4052e45d3240b23feb6530a31
  Author: Sarah Spall <sarahspall at microsoft.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
    M clang/lib/Headers/hlsl/hlsl_compat_overloads.h
    A clang/test/SemaHLSL/BuiltIns/max-errors-16bit.hlsl
    A clang/test/SemaHLSL/BuiltIns/min-errors-16bit.hlsl

  Log Message:
  -----------
  [HLSL] Implement min and max overloads using templates (#131666)

Replace min and max overload implementation using macros with one using
templates.
Enable overloads of the forms:
 vector<T,N> min/max(vector<T,N> p0, T p1)
 vector<T,N> min/max(T p0, vector<T,N> p1)
 Add new tests.
Closes #131170


  Commit: d09ecb07c2894e3167b6cfb5761663fe0f01b905
      https://github.com/llvm/llvm-project/commit/d09ecb07c2894e3167b6cfb5761663fe0f01b905
  Author: Kerry McLaughlin <kerry.mclaughlin at arm.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M llvm/test/CodeGen/AArch64/Atomics/aarch64-atomicrmw-lsfe.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomicrmw-lsfe.ll
    M llvm/test/CodeGen/AArch64/Atomics/generate-tests.py

  Log Message:
  -----------
  [AArch64][CodeGen] Add +lsfe atomicrmw tests where the result is unused. (#132022)

Following the discussion on #131174, update generate-tests.py script to
emit atomicrmw tests where the result is unused and add a note to
explain why these do use ST[F]ADD.


  Commit: 297f0b3f4c05c6ef40183809eac5ccac9ca8c4ce
      https://github.com/llvm/llvm-project/commit/297f0b3f4c05c6ef40183809eac5ccac9ca8c4ce
  Author: Alexander Shaposhnikov <ashaposhnikov at google.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/altera/SingleWorkItemBarrierCheck.cpp
    M clang/include/clang/Basic/Attr.td
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/Targets/AMDGPU.cpp
    M clang/lib/CodeGen/Targets/TCE.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/test/CodeGenCUDASPIRV/spirv-attrs.cu
    A clang/test/SemaCUDA/spirv-attrs-diag.cu
    M clang/test/SemaCUDA/spirv-attrs.cu

  Log Message:
  -----------
  [CudaSPIRV] Allow using integral non-type template parameters as attribute args (#131546)

Allow using integral non-type template parameters as attribute arguments
of
reqd_work_group_size and work_group_size_hint.

Test plan:
ninja check-all


  Commit: 566916131ecbea8f241fb5244eb77abac1b36658
      https://github.com/llvm/llvm-project/commit/566916131ecbea8f241fb5244eb77abac1b36658
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M .github/workflows/libcxx-build-and-test.yaml
    M libcxx/utils/ci/run-buildbot-container

  Log Message:
  -----------
  [libc++][CI] Use latest Docker image. (#130497)

This image was updated in #130433.


  Commit: 03adb0ec7dce36814b9e403e98e7471630c4a732
      https://github.com/llvm/llvm-project/commit/03adb0ec7dce36814b9e403e98e7471630c4a732
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/lib/StaticAnalyzer/Checkers/VirtualCallChecker.cpp
    M clang/test/Analysis/analyzer-config.c
    M clang/test/Analysis/virtualcall.cpp

  Log Message:
  -----------
  [analyzer] Remove deprecated option VirtualCall:PureOnly (#131823)

VirtualCallChecker.cpp implements two related checkers:
- `optin.cplusplus.VirtualCall` which reports situations when
constructors or destructors call virtual methods (which is bugprone
because it does not trigger virtual dispatch, but can be legitmate).
- `cplusplus.PureVirtualCall` reports situations when constructors or
destructors call _pure_ virtual methods, which is an error.

Six years ago these two bug types were both reported by the same checker
(called `optin.cplusplus.VirtualCall`) and it had an option called
`PureOnly` which limited its output to the pure case.

When (in 2019) the two checker parts were separated by the commit
d3971fe97b64785c079d64bf4c8c3e2b5e1f85a1, the option `PureOnly` was
preserved for the sake of compatibility, but it is no longer useful
(when it is set to true, it just suppresses all reports from
`optin.cplusplus.VirtualCall`) so it was marked as deprecated.

I'm removing this deprecated option now because it is no longer relevant
and its presence caused minor complications when I was porting
`VirtualCallChecker.cpp` to the new multipart checker framework
(introduced in 27099982da2f5a6c2d282d6b385e79d080669546).


  Commit: ac9e4e9b3320b8dc63abfbdca8b7561e372ec8c7
      https://github.com/llvm/llvm-project/commit/ac9e4e9b3320b8dc63abfbdca8b7561e372ec8c7
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

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

  Log Message:
  -----------
  [Flang][OpenMP] Simplify entry block creation for BlockArgOpenMPOpInterface ops, NFC (#132036)

This patch adds the `OpWithBodyGenInfo::blockArgs` field and updates
`createBodyOfOp()` to prevent the need for `BlockArgOpenMPOpInterface`
operations to pass the same callback, minimizing chances of introducing
inconsistent behavior.


  Commit: f84bc1ca433bbc35d9a9107f6adbdbd232b0642c
      https://github.com/llvm/llvm-project/commit/f84bc1ca433bbc35d9a9107f6adbdbd232b0642c
  Author: Joel Wee <joelwee at google.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

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

  Log Message:
  -----------
  Fix after 2b8f88791502


  Commit: 0260bcb5f449aed83ebd40dc264b75e1fe40c2b9
      https://github.com/llvm/llvm-project/commit/0260bcb5f449aed83ebd40dc264b75e1fe40c2b9
  Author: Joel Wee <joelwee at google.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M mlir/test/Conversion/VectorToLLVM/pass-option-serialization.mlir

  Log Message:
  -----------
  Fix after f3dcc0f


  Commit: bda87e0a09d44cdc8cbd1f4209182c3ff94b3428
      https://github.com/llvm/llvm-project/commit/bda87e0a09d44cdc8cbd1f4209182c3ff94b3428
  Author: Krishna Pandey <47917477+krishna2803 at users.noreply.github.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/hdr/CMakeLists.txt
    A libc/hdr/sched_macros.h
    M libc/hdr/types/CMakeLists.txt
    A libc/hdr/types/cpu_set_t.h
    M libc/include/llvm-libc-macros/linux/sched-macros.h
    M libc/include/llvm-libc-types/cpu_set_t.h
    M libc/src/sched/CMakeLists.txt
    M libc/src/sched/linux/CMakeLists.txt
    A libc/src/sched/linux/sched_getcpuisset.cpp
    A libc/src/sched/linux/sched_setcpuset.cpp
    A libc/src/sched/linux/sched_setcpuzero.cpp
    A libc/src/sched/sched_getcpuisset.h
    A libc/src/sched/sched_setcpuset.h
    A libc/src/sched/sched_setcpuzero.h

  Log Message:
  -----------
  [libc][sched] Implement `CPU_ZERO`, `CPU_ISSET`, `CPU_SET` macros (#131524)

This PR implements the following macros for `sched.h`:
- `CPU_ZERO`
- `CPU_ISSET`
- `CPU_SET`

Fixes #124642

---------

Signed-off-by: krishna2803 <kpandey81930 at gmail.com>


  Commit: 825460a7728662d0062405e690485b7a1b689484
      https://github.com/llvm/llvm-project/commit/825460a7728662d0062405e690485b7a1b689484
  Author: Igor Kudrin <ikudrin at accesssoftek.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.h
    M lldb/unittests/Process/gdb-remote/GDBRemoteCommunicationTest.cpp

  Log Message:
  -----------
  [lldb/gdb-remote] Do not crash on an invalid server response (#131979)

An invalid RLE sequence in the received packet could result in an
out-of-bounds reading that could cause a crash.


  Commit: 053a714adda3e1d3d506f417c7fbc6eb3fa75405
      https://github.com/llvm/llvm-project/commit/053a714adda3e1d3d506f417c7fbc6eb3fa75405
  Author: A. Jiang <de34 at live.cn>
  Date:   2025-03-20 (Thu, 20 Mar 2025)

  Changed paths:
    M libcxx/include/__algorithm/ranges_inplace_merge.h
    M libcxx/include/algorithm
    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/std/algorithms/alg.sorting/alg.merge/ranges_inplace_merge.pass.cpp
    M libcxx/test/std/algorithms/ranges_robust_against_dangling.pass.cpp
    M libcxx/test/std/algorithms/ranges_robust_against_omitting_invoke.pass.cpp
    M libcxx/test/std/algorithms/ranges_robust_against_proxy_iterators.pass.cpp
    M libcxx/test/std/algorithms/robust_against_adl_on_new.pass.cpp

  Log Message:
  -----------
  [libc++] Implement part of P2562R1: constexpr `ranges::inplace_merge` (#131947)

Drive-by changes:
- Consistently mark `std::__inplace_merge::__inplace_merge_impl`
`_LIBCPP_CONSTEXPR_SINCE_CXX26`.
- This function template is only called by other functions that becomes
constexpr since C++26, and it itself calls `std::__inplace_merge` that
is constexpr since C++26.
- Unblock related test coverage in constant evaluation for
`stable_partition`, `ranges::stable_sort`, `std::stable_sort`,
`std::stable_partition`, and `std::inplace_merge`.


  Commit: 44744301e940cc4d15f0c2f4876e0fdaddc6855b
      https://github.com/llvm/llvm-project/commit/44744301e940cc4d15f0c2f4876e0fdaddc6855b
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M libcxx/docs/TestingLibcxx.rst

  Log Message:
  -----------
  [libc++][docs] Minor update to the benchmark documentation


  Commit: 15c96d6874e8e37e583cf2994b290b9a6869cd30
      https://github.com/llvm/llvm-project/commit/15c96d6874e8e37e583cf2994b290b9a6869cd30
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M llvm/test/CodeGen/RISCV/push-pop-opt-crash.ll

  Log Message:
  -----------
  [RISCV] Update unrelated bad code from test case

In #131684, we found that the code generated a bnez zero, which is always
false. Since this is unrelated to the regression the test case was added for,
we change the IR here to avoid this test case from having this silly branching
pattern. This will help this test case avoid any changes as we do work to
optimize branches in the RISC-V backend.


  Commit: e1f4daf836e24d9c39fdd4fda84c01e4af31fd65
      https://github.com/llvm/llvm-project/commit/e1f4daf836e24d9c39fdd4fda84c01e4af31fd65
  Author: Michael Spencer <bigcheesegs at gmail.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M clang/lib/Frontend/CompilerInstance.cpp
    A clang/test/Modules/transitive-system.test

  Log Message:
  -----------
  [clang][modules] Correctly set module map systemness (#131940)

This uses the systemness of the module map instead of of the Module
instance, as doing otherwise could incorrectly parse the other modules
in that module map as system.

This is still correct as the only ways to get a system module are by the
module map being in a system path, or the module having the [system]
attribute, both of which are handled here.

This makes it so that the systemness of a module is deterministic
instead of depending on the path taken to build it.


  Commit: ca0fe95a5481ca526375a1b439f6d3cc8600c085
      https://github.com/llvm/llvm-project/commit/ca0fe95a5481ca526375a1b439f6d3cc8600c085
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M llvm/test/CodeGen/RISCV/stores-of-loads-merging.ll

  Log Message:
  -----------
  [RISCV] Add tests for a case mentioned in review of pr130430


  Commit: da1c19af7e8482a0357fe896ac77232c859837e7
      https://github.com/llvm/llvm-project/commit/da1c19af7e8482a0357fe896ac77232c859837e7
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M clang/include/clang/Tooling/DependencyScanning/InProcessModuleCache.h

  Log Message:
  -----------
  [clang][deps] Add missing include

Discovered by https://green.lab.llvm.org/job/llvm.org/job/clang-stage2-Rthinlto/588.


  Commit: 2d1e64669e5c9757f6c2bb682a9f657620166f33
      https://github.com/llvm/llvm-project/commit/2d1e64669e5c9757f6c2bb682a9f657620166f33
  Author: Andreas Jonson <andjo403 at hotmail.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/test/Transforms/InstCombine/select-with-bitwise-ops.ll

  Log Message:
  -----------
  [InstCombine] Reuse common code between foldSelectICmpAndBinOp and foldSelectICmpAnd. (#131902)

The commit that was removed from
https://github.com/llvm/llvm-project/pull/127905 due to the conflict
with https://github.com/llvm/llvm-project/pull/128741.

The use of common code results in that the foldSelectICmpAndBinOp also
use knownbits in the same way as was added for foldSelectICmpAnd in
https://github.com/llvm/llvm-project/pull/128741.

proof for the use of knowbits in foldSelectICmpAndBinOp:
https://alive2.llvm.org/ce/z/RYXr_k


  Commit: 587f997db73aa0aab34a4e5e0ad5db6779cd9351
      https://github.com/llvm/llvm-project/commit/587f997db73aa0aab34a4e5e0ad5db6779cd9351
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M flang/include/flang/Semantics/tools.h
    M flang/lib/Semantics/check-call.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/pointer-assignment.cpp
    M flang/lib/Semantics/tools.cpp
    M flang/test/Semantics/structconst03.f90
    M flang/test/Semantics/structconst04.f90

  Log Message:
  -----------
  [flang] Catch C15104(4) violations when coindexing is present (#130677)

The value of a structure constructor component can't have a pointer
ultimate component if it is a coindexed designator.


  Commit: abebac5b861b7e67dcd3e3adc1ec5b6c2172c06a
      https://github.com/llvm/llvm-project/commit/abebac5b861b7e67dcd3e3adc1ec5b6c2172c06a
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M flang/lib/Semantics/check-declarations.cpp
    M flang/test/Semantics/event02b.f90

  Log Message:
  -----------
  [flang] Dig deeper to find more EVENT_TYPE/LOCK_TYPE misuse (#130687)

Only objects may have these types, or have potential subobject
components with these types.


  Commit: 1dc397deedb00ff13906788dd1a24d2bd21652f4
      https://github.com/llvm/llvm-project/commit/1dc397deedb00ff13906788dd1a24d2bd21652f4
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M flang/lib/Semantics/check-coarray.cpp
    M flang/lib/Semantics/check-coarray.h
    A flang/test/Semantics/change_team02.f90

  Log Message:
  -----------
  [flang] Enforce control flow restrictions on CHANGE TEAM (#131013)

Like DO CONCURRENT and CRITICAL constructs, control flow into and out of
a CHANGE TEAM construct is disallowed.


  Commit: 3f04fb42aa54c15e21c81c12bb8afb128d859eee
      https://github.com/llvm/llvm-project/commit/3f04fb42aa54c15e21c81c12bb8afb128d859eee
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M flang/lib/Semantics/check-coarray.cpp
    M flang/test/Semantics/form_team01a.f90
    M flang/test/Semantics/form_team01b.f90

  Log Message:
  -----------
  [flang] Complete semantic checks for FORM TEAM (#131022)

Add remaining checking for the FORM TEAM statement, complete and enable
a test.


  Commit: 329bfa91b06724bead2997de45b105b28f220495
      https://github.com/llvm/llvm-project/commit/329bfa91b06724bead2997de45b105b28f220495
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M flang/lib/Semantics/check-call.cpp
    A flang/test/Semantics/bug396.f90

  Log Message:
  -----------
  [flang] Fix crash in CO_REDUCE semantics (#131211)

A std::optional<> value was being accessed without first ensuring its
presence.


  Commit: 9f284e1784b707619afd4d278bac8a72079d1598
      https://github.com/llvm/llvm-project/commit/9f284e1784b707619afd4d278bac8a72079d1598
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M flang/include/flang/Tools/TargetSetup.h
    M flang/test/Integration/debug-complex-1.f90
    M flang/test/Lower/Intrinsics/acos_complex16.f90
    M flang/test/Lower/Intrinsics/acosh_complex16.f90
    M flang/test/Lower/Intrinsics/asin_complex16.f90
    M flang/test/Lower/Intrinsics/asinh_complex16.f90
    M flang/test/Lower/Intrinsics/atan_complex16.f90
    M flang/test/Lower/Intrinsics/atanh_complex16.f90
    M flang/test/Lower/Intrinsics/cos_complex16.f90
    M flang/test/Lower/Intrinsics/cosh_complex16.f90
    M flang/test/Lower/Intrinsics/exp_complex16.f90
    M flang/test/Lower/Intrinsics/log_complex16.f90
    M flang/test/Lower/Intrinsics/pow_complex16.f90
    M flang/test/Lower/Intrinsics/pow_complex16i.f90
    M flang/test/Lower/Intrinsics/pow_complex16k.f90
    M flang/test/Lower/Intrinsics/sin_complex16.f90
    M flang/test/Lower/Intrinsics/sinh_complex16.f90
    M flang/test/Lower/Intrinsics/sqrt_complex16.f90
    M flang/test/Lower/Intrinsics/tan_complex16.f90
    M flang/test/Lower/Intrinsics/tanh_complex16.f90
    M flang/test/Lower/complex-operations.f90
    M flang/test/Semantics/data05.f90
    M flang/test/Semantics/intrinsics01.f90
    M flang/test/Semantics/modfile12.f90

  Log Message:
  -----------
  [flang] Disabling REAL kinds must also disable their COMPLEX (#131353)

When disabling kinds of REAL in the TargetCharacteristics, one must also
disable the corresponding kinds of COMPLEX.

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


  Commit: b99dab25879449cb89c1ebd7b4088163543918e3
      https://github.com/llvm/llvm-project/commit/b99dab25879449cb89c1ebd7b4088163543918e3
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M flang/lib/Semantics/check-declarations.cpp
    M flang/test/Semantics/call10.f90

  Log Message:
  -----------
  [flang] Exempt construct entities from SAVE check for PURE (#131383)

A PURE subprogram can't have a local variable with the SAVE attribute.
An ASSOCIATE or SELECT TYPE construct entity whose selector is a
variable will return true from IsSave(); exclude them from the local
variable check.

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


  Commit: 7f7d7d552b8d6731fdfbb77a154595ddf056342e
      https://github.com/llvm/llvm-project/commit/7f7d7d552b8d6731fdfbb77a154595ddf056342e
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

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

  Log Message:
  -----------
  [flang] Use local name for structure constructor (#132047)

When reinterpreting an ambiguously parsed function reference as a
structure constructor, use the original symbol of the type in the
representation of the derived type spec of the structure constructor,
not its ultimate resolution. The distinction turns out to matter when
generating module files containing derived type constants as
initializers when the derived types' names have undergone USE
association renaming.

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


  Commit: 3c657ceef9ced068b0c7bc2f1d5fb74250720f6c
      https://github.com/llvm/llvm-project/commit/3c657ceef9ced068b0c7bc2f1d5fb74250720f6c
  Author: Eric Astor <epastor at google.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M llvm/test/CMakeLists.txt
    A llvm/test/tools/llvm-ml/architecture.asm
    A llvm/test/tools/llvm-ml/architecture_errors.asm
    M llvm/test/tools/llvm-ml/dot_operator.asm
    M llvm/test/tools/llvm-ml/extern.asm
    M llvm/test/tools/llvm-ml/feat00.asm
    M llvm/test/tools/llvm-ml/feat00_override.asm
    M llvm/test/tools/llvm-ml/indirect_branch.asm
    M llvm/test/tools/llvm-ml/macro.asm
    M llvm/test/tools/llvm-ml/ml32-context.asm
    M llvm/test/tools/llvm-ml/nested_proc.asm
    M llvm/test/tools/llvm-ml/proc.asm
    M llvm/test/tools/llvm-ml/proc_frame.asm
    M llvm/test/tools/llvm-ml/repeat_directives.asm
    M llvm/test/tools/llvm-ml/rip_relative_addressing.asm
    M llvm/test/tools/llvm-ml/strings_errors.asm
    M llvm/test/tools/llvm-ml/struct.asm
    M llvm/tools/llvm-ml/CMakeLists.txt
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel

  Log Message:
  -----------
  [ms] [llvm-ml] Add llvm-ml64 alias (#131854)

Rather than requiring users to pass `-m64` to the `llvm-ml` driver to
get 64-bit behavior, we add the `llvm-ml64` alias, matching the behavior
of `ML.EXE` and `ML64.EXE`.

The original flavor/bitness flags still work, but the alias should make
some workflows easier.

NOTE: The logic for this already existed in the code; we're just finally
adding the build/install instructions to match.


  Commit: 6b9716b7f48a773ec7e73556245addf9aa25fad2
      https://github.com/llvm/llvm-project/commit/6b9716b7f48a773ec7e73556245addf9aa25fad2
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M flang/include/flang/Semantics/expression.h
    M flang/lib/Semantics/expression.cpp
    M flang/test/Semantics/array-constr-values.f90

  Log Message:
  -----------
  [flang] Catch bad usage case of whole assumed-size array (#132052)

Whole assumed-size arrays are generally not allowed outside specific
contexts, where expression analysis notes that they can appear. But
contexts can nest, and in the case of an actual argument that turns out
to be an array constructor, the permission to use a whole assumed-size
array must be rescinded.

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


  Commit: b37be0e734ecc29fe55eb9d7a8119f82afc9da54
      https://github.com/llvm/llvm-project/commit/b37be0e734ecc29fe55eb9d7a8119f82afc9da54
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/test/Driver/openmp-offload.c

  Log Message:
  -----------
  [Offload] Handle `BoundArchitecture` for non-GPU targets (#132037)

Summary:
Offloading tends to have a bound architecture that directly correponds
to the `-mcpu` argument for that embedded job. This is currently handled
by the GPU offloading toolchains, but is ignored by the CPU ones. This
is problematic for languages like SYCL or OpenMP which permit
'offloading' to non-GPU targets. This patch handles this by putting
generic handling in the GCC toolchain for those languages.

I would've made this fully generic but it regressed some HIP sanitizer
tests because their use-case is really weird. This also only goes for
the languages that inherit from 'generic_gcc`. I could've made it in the
base class, but I felt like it wasn't necessary as we only support
offloading based off of this toolchain. In the future if we need it we
can move it around.

---------

Co-authored-by: Nick Sarnie <nick.sarnie at intel.com>


  Commit: b0876994ebe3118407a8a70d79bb3149cebb5fda
      https://github.com/llvm/llvm-project/commit/b0876994ebe3118407a8a70d79bb3149cebb5fda
  Author: David Green <david.green at arm.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/test/CodeGen/AArch64/ctlz.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Clean up CTLZ vector type legalization. (#131514)

Similar to other operations, s8, s16 and s32 vector elements are clamped
to legal vector sizes, but in this case s64 are scalarized to use the
gpr instructions. This allows vector types to split as opposed to
scalarizing.


  Commit: 02744c5010c8a37b4f20e377a5673cf624a3a159
      https://github.com/llvm/llvm-project/commit/02744c5010c8a37b4f20e377a5673cf624a3a159
  Author: Ayokunle Amodu <ayokunle321 at gmail.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticASTKinds.td
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ExprConstant.cpp

  Log Message:
  -----------
  [clang][diagnostics] Update note_constexpr_invalid_cast to use enum_select and adjust its uses (#130868)

Handles #123121

This patch updates `note_constexpr_invalid_cast` diagnostic to use
`enum_select` instead of `select,` improving readability and reducing
reliance on magic numbers in caller sites.


  Commit: 7cabcdb2d29ce70aab1a8ad38f66015a7c901133
      https://github.com/llvm/llvm-project/commit/7cabcdb2d29ce70aab1a8ad38f66015a7c901133
  Author: Augusto Noronha <anoronha at apple.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M cross-project-tests/debuginfo-tests/llgdb-tests/llgdb.py
    M cross-project-tests/debuginfo-tests/llgdb-tests/test_debuginfo.pl
    M cross-project-tests/lit.cfg.py

  Log Message:
  -----------
  [debuginfo-tests] Use built lldb for testing if available (#131681)

The cross-project-tests's debuginfo-tests don't rely on lldb being built
to run. While this is a good, a bug in the system lldb can cause a test
to fail with no way of fixing it. This patch makes it so the tests use
the built lldb instead if it's available.


  Commit: a0ae88bffea766f4c79d51674b81b5d5db825d33
      https://github.com/llvm/llvm-project/commit/a0ae88bffea766f4c79d51674b81b5d5db825d33
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M flang/test/Lower/Intrinsics/product.f90
    M flang/test/Lower/Intrinsics/sum.f90
    M flang/test/Lower/complex-operations.f90

  Log Message:
  -----------
  [flang] Disable 3 x86-64 tests on non-x86-64 (#132088)

Now that COMPLEX(KIND=10) is properly disabled where 80-bit
floating-point types are not available, three tests that were not
peculiar to x86-64 are failing on other targets. Make them specific to
x86-64.


  Commit: 4e3440d9dd181f83ac1aa23f9c458d1344413e98
      https://github.com/llvm/llvm-project/commit/4e3440d9dd181f83ac1aa23f9c458d1344413e98
  Author: David Olsen <dolsen at nvidia.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
    M clang/test/CIR/CodeGen/basic.c
    M clang/test/CIR/CodeGen/basic.cpp
    M clang/test/CIR/CodeGen/cast.cpp
    M clang/test/CIR/CodeGen/unary.cpp
    M clang/test/CIR/Lowering/basic.cpp
    M clang/test/CIR/Lowering/func-simple.cpp
    M clang/test/CIR/func-simple.cpp

  Log Message:
  -----------
  [CIR] Upstream a basic version of class LexicalScope (#131945)

Upstream the parts of class `CIRGenFunction::LexicalScope` that
implement function return values. There is a bit of other functionality
in here, such as the implicit `cir.yield` at the end of a non-function
scope, but this is mostly about function returns.

The parts of `LexicalScope` that handle calling destructors, switch
statements, ternary expressions, and exception handling still need to be
upstreamed.

There is a change in the generated ClangIR (which is why many of the
tests needed updating). Return values are stored in the
compiler-generated variable `__retval` rather than being passed to the
`cir.return` op directly. But there should be no change in the behavior
of the generated code.


  Commit: bdca412681d668231aed0cb58b450713e8f9b01a
      https://github.com/llvm/llvm-project/commit/bdca412681d668231aed0cb58b450713e8f9b01a
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2025-03-20 (Thu, 20 Mar 2025)

  Changed paths:
    M clang/www/make_cxx_dr_status

  Log Message:
  -----------
  [clang] Auto-detect which newline style to use for `cxx_dr_status.html` (#132045)

Aaron reported that `make_cxx_dr_status` replaces all newlines in
`cxx_dr_status.html`, which makes for a huge diff. On Windows, we can't
be compatible with all `autocrlf` modes at once, so this patch adds
autodetection of newline style using the existing file, if one is
present (which should be the case for all reasonable use cases).


  Commit: 0827e3aae6eb69c2a6fa842ffa780881feb45b5d
      https://github.com/llvm/llvm-project/commit/0827e3aae6eb69c2a6fa842ffa780881feb45b5d
  Author: Justin Cady <desk at justincady.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M clang/lib/CodeGen/CoverageMappingGen.cpp
    M clang/test/CoverageMapping/terminate-statements.cpp
    A compiler-rt/test/profile/Linux/coverage-statement-expression.cpp

  Log Message:
  -----------
  [Coverage] Fix region termination for GNU statement expressions (#130976)

Calls to __noreturn__ functions result in region termination for
coverage mapping. But this creates incorrect coverage results when
__noreturn__ functions (or other constructs that result in region
termination) occur within [GNU statement expressions][1].

In this scenario an extra gap region is introduced within VisitStmt,
such that if the following line does not introduce a new region it
is unconditionally counted as uncovered.

This change adjusts the mapping such that terminate statements
within statement expressions do not propagate that termination
state after the statement expression is processed.

[1]: https://gcc.gnu.org/onlinedocs/gcc/Statement-Exprs.html

Fixes #124296


  Commit: a810141281cce5073d9a827a917c34d72bbd62b1
      https://github.com/llvm/llvm-project/commit/a810141281cce5073d9a827a917c34d72bbd62b1
  Author: Matthias Springer <me at m-sp.org>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M mlir/lib/Dialect/MemRef/Transforms/RuntimeOpVerification.cpp
    A mlir/test/Integration/Dialect/MemRef/assume-alignment-runtime-verification.mlir

  Log Message:
  -----------
  [mlir][memref] Add runtime verification for `memref.assume_alignment` (#130412)

Implement runtime verification for `memref.assume_alignment`.


  Commit: 6aeae62aef63c7c11ab67a880716afdc92ac8422
      https://github.com/llvm/llvm-project/commit/6aeae62aef63c7c11ab67a880716afdc92ac8422
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
    M clang/lib/CIR/CodeGen/CIRGenBuilder.h
    M clang/lib/CIR/CodeGen/CIRGenConstantEmitter.h
    M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
    M clang/test/CIR/CodeGen/array.cpp
    M clang/test/CIR/IR/array.cir
    M clang/test/CIR/Lowering/array.cpp

  Log Message:
  -----------
  [CIR] Upstream global initialization for ArrayType (#131657)

This change adds global initialization for ArrayType

Issue #130197


  Commit: 2f7ad891a7bf46aced761354ebe3c932a6ac5471
      https://github.com/llvm/llvm-project/commit/2f7ad891a7bf46aced761354ebe3c932a6ac5471
  Author: Alexey Samsonov <vonosmas at gmail.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M libc/test/UnitTest/Test.h
    M libc/test/src/unistd/CMakeLists.txt
    M libc/test/src/unistd/access_test.cpp
    M libc/test/src/unistd/chdir_test.cpp
    M libc/test/src/unistd/dup2_test.cpp
    M libc/test/src/unistd/dup3_test.cpp
    M libc/test/src/unistd/dup_test.cpp
    M libc/test/src/unistd/fchdir_test.cpp
    M libc/test/src/unistd/fpathconf_test.cpp
    M libc/test/src/unistd/ftruncate_test.cpp
    M libc/test/src/unistd/getentropy_test.cpp
    M libc/test/src/unistd/getsid_test.cpp
    M libc/test/src/unistd/isatty_test.cpp
    M libc/test/src/unistd/link_test.cpp
    M libc/test/src/unistd/linkat_test.cpp
    M libc/test/src/unistd/lseek_test.cpp
    M libc/test/src/unistd/pathconf_test.cpp
    M libc/test/src/unistd/pipe2_test.cpp
    M libc/test/src/unistd/pipe_test.cpp
    M libc/test/src/unistd/pread_pwrite_test.cpp
    M libc/test/src/unistd/read_write_test.cpp
    M libc/test/src/unistd/readlink_test.cpp
    M libc/test/src/unistd/readlinkat_test.cpp
    M libc/test/src/unistd/rmdir_test.cpp
    M libc/test/src/unistd/symlink_test.cpp
    M libc/test/src/unistd/symlinkat_test.cpp
    M libc/test/src/unistd/syscall_test.cpp
    M libc/test/src/unistd/truncate_test.cpp
    M libc/test/src/unistd/unlinkat_test.cpp
    M utils/bazel/llvm-project-overlay/libc/test/src/unistd/BUILD.bazel

  Log Message:
  -----------
  [libc] Migrate unistd tests to use ErrnoCheckingTest. (#132067)

Use ErrnoCheckingTest harness added in
d039af33096c0a83b03475a240d5e281e2271c44 for all unistd tests that
verify errno values. Stop explicitly setting it to zero in test code, as
harness does it.

It also verifies that the errno is zero at the end of each test case, so
update the ASSERT_ERRNO_EQ and ASSERT_ERRNO_FAILURE macro to clear out
its value after the verification (similar to how ErrnoSetterMatcher
does).

Update the CMake and Bazel rules for those tests. In the latter case,
remove commented out tests that are currently unsupported in Bazel,
since they get stale quickly.


  Commit: 32476b99344fb0a3b85acbdba666e165181ec638
      https://github.com/llvm/llvm-project/commit/32476b99344fb0a3b85acbdba666e165181ec638
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M compiler-rt/lib/profile/InstrProfilingFile.c
    M compiler-rt/lib/profile/InstrProfilingPort.h
    M compiler-rt/lib/profile/InstrProfilingUtil.c
    M compiler-rt/lib/profile/InstrProfilingUtil.h
    M compiler-rt/test/profile/Posix/instrprof-fork.c
    R compiler-rt/test/profile/instrprof-no-mmap-during-merging.c

  Log Message:
  -----------
  Revert " [profile] Implement a non-mmap path when reading profile files from a non-local filesystem (#131177)"

This reverts commit 14c95e0c8b25f6deba47cd279c5dcdeef3870159.

Test fails on mac, e.g. https://green.lab.llvm.org/job/llvm.org/job/clang-stage1-RA/3899/testReport/junit/Profile-x86_64/Profile-x86_64/instrprof_no_mmap_during_merging_c/


  Commit: 8e773d8a10cc996fbbe834f59ed9f7044c3539e0
      https://github.com/llvm/llvm-project/commit/8e773d8a10cc996fbbe834f59ed9f7044c3539e0
  Author: Daniel Chen <cdchen at ca.ibm.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M compiler-rt/cmake/base-config-ix.cmake
    M llvm/CMakeLists.txt
    M runtimes/CMakeLists.txt

  Log Message:
  -----------
  [compiler-rt] Disable LLVM_ENABLE_PER_TARGET_RUNTIME_DIR=ON on AIX. (#131200)

LLVM_ENABLE_PER_TARGET_RUNTIME_DIR=ON is not supported on AIX.
Set it to OFF with a WARNING message on AIX.


  Commit: 2a53358eea7f8da9ffb92d375976b3f78ce5f212
      https://github.com/llvm/llvm-project/commit/2a53358eea7f8da9ffb92d375976b3f78ce5f212
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-zipeven-zipodd.ll

  Log Message:
  -----------
  [RISCV] Add a comment to clarify purpose of a test from 93b8ef


  Commit: 0f7bd60791ed18b98f84916d0dd371508cbf208c
      https://github.com/llvm/llvm-project/commit/0f7bd60791ed18b98f84916d0dd371508cbf208c
  Author: Michael Park <mcypark at gmail.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp

  Log Message:
  -----------
  [NFC] Add a leading comment to boolean arguments. (#131746)

Addressing [nit comments](https://github.com/llvm/llvm-project/pull/129982#discussion_r1997914387) from @shafik


  Commit: bd2d8c0a7ee196cc60ab0d46d6fab416b1697ae1
      https://github.com/llvm/llvm-project/commit/bd2d8c0a7ee196cc60ab0d46d6fab416b1697ae1
  Author: Justin Cady <desk at justincady.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M clang/lib/CodeGen/CoverageMappingGen.cpp
    M clang/test/CoverageMapping/terminate-statements.cpp
    R compiler-rt/test/profile/Linux/coverage-statement-expression.cpp

  Log Message:
  -----------
  Revert "[Coverage] Fix region termination for GNU statement expressions" (#132095)

Reverts llvm/llvm-project#130976

Breaks clang-cmake-x86_64-avx512-linux bot.


  Commit: 0668bb28cc98202f1ae252fb0357b2f1043bdbe7
      https://github.com/llvm/llvm-project/commit/0668bb28cc98202f1ae252fb0357b2f1043bdbe7
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M compiler-rt/lib/ctx_profile/CtxInstrContextNode.h
    M compiler-rt/lib/ctx_profile/CtxInstrProfiling.cpp
    M compiler-rt/lib/ctx_profile/CtxInstrProfiling.h
    M compiler-rt/lib/ctx_profile/tests/CtxInstrProfilingTest.cpp
    M compiler-rt/test/ctx_profile/TestCases/generate-context.cpp
    M llvm/include/llvm/ProfileData/CtxInstrContextNode.h
    M llvm/include/llvm/ProfileData/PGOCtxProfReader.h
    M llvm/include/llvm/ProfileData/PGOCtxProfWriter.h
    M llvm/lib/ProfileData/PGOCtxProfReader.cpp
    M llvm/lib/ProfileData/PGOCtxProfWriter.cpp
    M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
    A llvm/test/tools/llvm-ctxprof-util/Inputs/valid-with-unhandled.yaml
    M llvm/test/tools/llvm-ctxprof-util/llvm-ctxprof-util.test
    M llvm/unittests/ProfileData/PGOCtxProfReaderWriterTest.cpp

  Log Message:
  -----------
  [ctxprof] Track unhandled call targets (#131417)

Collect profiles for functions we encounter when collecting a contextual profile, that are not associated with a call site. This is expected to happen for signal handlers, but it also - problematically - currently happens for mem{memset|copy|move|set}, which are currently inserted after profile instrumentation.

Collecting a "regular" flat profile in these cases would hide the problem - that we loose better profile opportunities.


  Commit: a306ae0eca4d4d016b719df32274ba1f73f4413a
      https://github.com/llvm/llvm-project/commit/a306ae0eca4d4d016b719df32274ba1f73f4413a
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst

  Log Message:
  -----------
  Fix malformed RST in release notes; NFC


  Commit: 01d28c1cd7862fb75c8e353b2b18d13f9801b327
      https://github.com/llvm/llvm-project/commit/01d28c1cd7862fb75c8e353b2b18d13f9801b327
  Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaDecl.cpp
    A clang/test/SemaCXX/unused-bindings.cpp
    M clang/test/SemaCXX/unused.cpp

  Log Message:
  -----------
  [Clang] emit -Wunused-variable warning for unused structured bindings without the [[maybe_unused]] attribute (#127061)

Fixes #125810 

---

This patch resolves an issue in Clang where the `-Wunused-variable`
warning was suppressed for structured bindings with elements marked
`[[maybe_unused]]`, causing the entire declaration to be treated as used
and preventing the warning from being emitted.


  Commit: 93afd8f9ac69d08bd743ef668c59403362c05d7a
      https://github.com/llvm/llvm-project/commit/93afd8f9ac69d08bd743ef668c59403362c05d7a
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/test/CIR/CodeGen/array.cpp
    M clang/test/CIR/CodeGen/basic.c
    M clang/test/CIR/CodeGen/basic.cpp
    M clang/test/CIR/CodeGen/cast.cpp
    M clang/test/CIR/CodeGen/local-vars.cpp
    M clang/test/CIR/CodeGen/unary-expr-or-type-trait.cpp
    M clang/test/CIR/CodeGen/unary.cpp
    M clang/test/CIR/IR/array.cir
    M clang/test/CIR/IR/cast.cir
    M clang/test/CIR/IR/func.cir
    M clang/test/CIR/IR/global-var-linkage.cir
    M clang/test/CIR/IR/global.cir
    M clang/test/CIR/Lowering/func-simple.cpp
    M clang/test/CIR/Transforms/canonicalize.cir
    M clang/test/CIR/Transforms/scope.cir
    M clang/test/CIR/func-simple.cpp
    M clang/test/CIR/global-var-simple.cpp
    M clang/test/CIR/mlprint.c
    M clang/test/CMakeLists.txt

  Log Message:
  -----------
  [CIR] Upstream support for type aliases (#131912)

CIR uses aliases for standard integer types and void. This change adds
upstream support for those aliases and updates existing tests.


  Commit: fecd937910f640663885e0434bfed80cf4574072
      https://github.com/llvm/llvm-project/commit/fecd937910f640663885e0434bfed80cf4574072
  Author: cor3ntin <corentinjabot at gmail.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M clang/include/clang/AST/ExprCXX.h
    M clang/lib/AST/ExprCXX.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/test/SemaCXX/builtin-structured-binding-size.cpp

  Log Message:
  -----------
  [Clang] Fix UB in #131515 (#132091)

It turns out trailing objects are uninitialized
and APValue assignment operator requires a fully initialized object.

Additionally,  do some drive-by post-commit-review fixes.


  Commit: 2e13ec561c8139951e3f0815c35c758a7a3011db
      https://github.com/llvm/llvm-project/commit/2e13ec561c8139951e3f0815c35c758a7a3011db
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/test/Transforms/LoopVectorize/vplan-widen-call-instruction.ll
    M llvm/unittests/Transforms/Vectorize/VPlanHCFGTest.cpp

  Log Message:
  -----------
  [VPlan] Bail out on non-intrinsic calls in VPlanNativePath.

Update initial VPlan-construction in VPlanNativePath in line with the
inner loop path, in that it bails out when encountering constructs it
cannot handle, like non-intrinsic calls.

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


  Commit: 4c36c425ec7d4decd177cedc9609154e12b98f27
      https://github.com/llvm/llvm-project/commit/4c36c425ec7d4decd177cedc9609154e12b98f27
  Author: Alexey Samsonov <vonosmas at gmail.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M libc/test/UnitTest/ErrnoSetterMatcher.h
    M libc/test/src/sys/socket/linux/CMakeLists.txt
    M libc/test/src/sys/socket/linux/bind_test.cpp
    M libc/test/src/sys/socket/linux/send_recv_test.cpp
    M libc/test/src/sys/socket/linux/sendmsg_recvmsg_test.cpp
    M libc/test/src/sys/socket/linux/sendto_recvfrom_test.cpp
    M libc/test/src/sys/socket/linux/socket_test.cpp
    M libc/test/src/sys/socket/linux/socketpair_test.cpp
    M utils/bazel/llvm-project-overlay/libc/test/src/sys/socket/BUILD.bazel

  Log Message:
  -----------
  [libc] Migrate sys/socket tests to use ErrnoCheckingTest. (#132107)

Also use ErrnoSetterMatcher to verify the function return values and
verify/clear out errno values. Fix the bug in ErrnoSetterMatcher error
reporting machinery to properly convert errno values into errno names to
make error messages easier to debug.


  Commit: 5ac8c52a61dcea1a480e3f9d1d04b3e00a72b4fb
      https://github.com/llvm/llvm-project/commit/5ac8c52a61dcea1a480e3f9d1d04b3e00a72b4fb
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoC.td
    M llvm/test/MC/RISCV/rv64c-aliases-valid.s
    M llvm/test/MC/RISCV/rvc-aliases-valid.s

  Log Message:
  -----------
  [RISCV] Correct the register class in the C_SWSP and C_SDSP InstAliases. (#132086)

These instructions use GPR not GPRNoX0. Only the load forms prohibit X0.


  Commit: 0dcc201ac410fed1595d4c8cabe6f9919598e208
      https://github.com/llvm/llvm-project/commit/0dcc201ac410fed1595d4c8cabe6f9919598e208
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    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/GlobalDCE.cpp
    M llvm/lib/Transforms/IPO/HotColdSplitting.cpp
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
    M llvm/lib/Transforms/IPO/MergeFunctions.cpp
    M llvm/lib/Transforms/IPO/OpenMPOpt.cpp
    M llvm/lib/Transforms/IPO/SampleProfileProbe.cpp
    M llvm/lib/Transforms/Instrumentation/BlockCoverageInference.cpp
    M llvm/lib/Transforms/Instrumentation/ControlHeightReduction.cpp
    M llvm/lib/Transforms/Instrumentation/SanitizerBinaryMetadata.cpp
    M llvm/lib/Transforms/ObjCARC/PtrState.cpp
    M llvm/lib/Transforms/Scalar/ConstantHoisting.cpp
    M llvm/lib/Transforms/Scalar/GVN.cpp
    M llvm/lib/Transforms/Scalar/GVNSink.cpp
    M llvm/lib/Transforms/Scalar/LoopDistribute.cpp
    M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
    M llvm/lib/Transforms/Scalar/LoopSink.cpp
    M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
    M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
    M llvm/lib/Transforms/Scalar/NewGVN.cpp
    M llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
    M llvm/lib/Transforms/Utils/IRNormalizer.cpp
    M llvm/lib/Transforms/Utils/LoopUnrollAndJam.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp

  Log Message:
  -----------
  [Transforms] Use *Set::insert_range (NFC) (#132056)

DenseSet, SmallPtrSet, SmallSet, SetVector, and StringSet recently
gained C++23-style insert_range.  This patch replaces:

  Dest.insert(Src.begin(), Src.end());

with:

  Dest.insert_range(Src);

This patch does not touch custom begin like succ_begin for now.


  Commit: 214f5582c324c48470fe5f70e969a6ae61355976
      https://github.com/llvm/llvm-project/commit/214f5582c324c48470fe5f70e969a6ae61355976
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoZclsd.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZilsd.td
    A llvm/test/MC/RISCV/rv32zclsd-alias-valid.c
    A llvm/test/MC/RISCV/rv32zilsd-alias-valid.s

  Log Message:
  -----------
  [RISCV] Add ($rs1) InstAliases with no immediate for Zilsd/Zclsd. (#132094)

This matches what we do for other loads and stores.


  Commit: f157365a0b0f1dab12f7e8fcbf603a232e611792
      https://github.com/llvm/llvm-project/commit/f157365a0b0f1dab12f7e8fcbf603a232e611792
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2025-03-20 (Thu, 20 Mar 2025)

  Changed paths:
    M clang/www/cxx_dr_status.html
    M clang/www/make_cxx_dr_status

  Log Message:
  -----------
  [clang][NFC] Bump latest release number for C++ DR status page


  Commit: 2e5a751ee95026dab7056f779e4df3fc75e8803a
      https://github.com/llvm/llvm-project/commit/2e5a751ee95026dab7056f779e4df3fc75e8803a
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M lldb/tools/lldb-dap/CMakeLists.txt

  Log Message:
  -----------
  [lldb-dap] Stop linking explicitly against pthread (#132111)

I can't figure out why this would be necessary. Nothing is checking if
libpthread is available, nothing in lldb-dap is relying on libpthread
directly and nothing else in LLDB is doing this.


  Commit: 6cc918089a722d837777da44350901a24ab88304
      https://github.com/llvm/llvm-project/commit/6cc918089a722d837777da44350901a24ab88304
  Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/mfma-no-register-aliasing.ll

  Log Message:
  -----------
  [AMDGPU] Autogen checks for mfma-no-register-aliasing.ll (#132117)

For an upcoming RegisterCoalescer PR


  Commit: 86fc897442f832823011e489aa03e4585a79296f
      https://github.com/llvm/llvm-project/commit/86fc897442f832823011e489aa03e4585a79296f
  Author: Ellis Hoag <ellis.sparky.hoag at gmail.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M lld/MachO/Config.h
    M lld/MachO/Driver.cpp
    M lld/MachO/LTO.cpp
    M lld/MachO/Options.td
    A lld/test/MachO/verify.ll

  Log Message:
  -----------
  [lld][MachO] Add --disable_verify flag (#132105)

The `--disable_verify` flag is implemented for ELF and is used to
disable LLVM module verification.

https://github.com/llvm/llvm-project/blob/93afd8f9ac69d08bd743ef668c59403362c05d7a/lld/ELF/Options.td#L661
This allows us to quickly suppress verification errors.


  Commit: 09b0e5624c7673cffd84a497c4b6ac7a41c59269
      https://github.com/llvm/llvm-project/commit/09b0e5624c7673cffd84a497c4b6ac7a41c59269
  Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M lldb/source/Plugins/Process/Utility/RegisterContextThreadMemory.cpp
    M lldb/source/Plugins/Process/Utility/RegisterContextThreadMemory.h

  Log Message:
  -----------
  [lldb] Add RegisterCheckpoint overload for register methods in RegisterContextThreadMemory (#132079)


  Commit: 77ac5a2d57f207f173734cee2dfe652a2c2ae418
      https://github.com/llvm/llvm-project/commit/77ac5a2d57f207f173734cee2dfe652a2c2ae418
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M clang-tools-extra/test/clang-doc/basic-project.test

  Log Message:
  -----------
  [clang-doc] Enable MD tests in basic-project (#131924)

For some reason the MD tests don't appear to have ever run, despite
having checks. This patch adds a new set of RUN lines that will
exercise the markdown generation.


  Commit: be9b7a14f4f9bfddd02672a13e7da51b39ba25de
      https://github.com/llvm/llvm-project/commit/be9b7a14f4f9bfddd02672a13e7da51b39ba25de
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/ASTContext.cpp
    M clang/test/SemaCXX/sugar-common-types.cpp

  Log Message:
  -----------
  [clang] ASTContext: flesh out implementation of getCommonNNS (#131964)

This properly implements getCommonNNS, for getting the common
NestedNameSpecifier, for which the previous implementation was a bare
minimum placeholder.


  Commit: de2a451058730c932dd34cda8709ba64730a9124
      https://github.com/llvm/llvm-project/commit/de2a451058730c932dd34cda8709ba64730a9124
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp

  Log Message:
  -----------
  [ARM] Use MCPhysReg instead of uint16_t for arrays of registers. NFC


  Commit: c50d39f073f3b0143b781be80764d183ddab88d4
      https://github.com/llvm/llvm-project/commit/c50d39f073f3b0143b781be80764d183ddab88d4
  Author: Ethan Luis McDonough <ethanluismcdonough at gmail.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M clang/lib/CodeGen/CodeGenPGO.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    R clang/test/Driver/cuda-no-pgo-or-coverage.cu
    M compiler-rt/lib/profile/InstrProfiling.h
    M compiler-rt/lib/profile/InstrProfilingBuffer.c
    M compiler-rt/lib/profile/InstrProfilingFile.c
    M compiler-rt/lib/profile/InstrProfilingInternal.h
    M compiler-rt/lib/profile/InstrProfilingWriter.c
    M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
    M llvm/test/tools/llvm-profdata/malformed-ptr-to-counter-array.test
    M offload/plugins-nextgen/common/include/GlobalHandler.h
    M offload/plugins-nextgen/common/src/GlobalHandler.cpp
    A offload/test/offloading/gpupgo/pgo1.c
    A offload/test/offloading/gpupgo/pgo2.c
    R offload/test/offloading/pgo1.c

  Log Message:
  -----------
  [PGO][Offload] Allow PGO flags to be used on GPU targets (#94268)

This pull request is the third part of an ongoing effort to extends PGO
instrumentation to GPU device code and depends on
https://github.com/llvm/llvm-project/pull/93365. This PR makes the
following changes:

- Allows PGO flags to be supplied to GPU targets
- Pulls version global from device
- Modifies `__llvm_write_custom_profile` and `lprofWriteDataImpl` to
allow the PGO version to be overridden


  Commit: 2c91f10362502ebfb464691cdde1ba05be7cb50e
      https://github.com/llvm/llvm-project/commit/2c91f10362502ebfb464691cdde1ba05be7cb50e
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M flang/docs/ArrayRepacking.md
    M flang/lib/Lower/ConvertVariable.cpp
    A flang/test/Lower/repack-arrays-asynchronous.f90
    A flang/test/Lower/repack-arrays-finalized-dummy.f90
    A flang/test/Lower/repack-arrays-target.f90

  Log Message:
  -----------
  [flang] Fixed repacking for TARGET and INTENT(OUT) (#131972)

TARGET dummy arrays can be accessed indirectly, so it is unsafe
to repack them.
INTENT(OUT) dummy arrays that require finalization on entry
to their subroutine must be copied-in by `fir.pack_arrays`.

In addition, based on my testing results, I think it will be useful
to document that `LOC` and `IS_CONTIGUOUS` will have different values
for the repacked arrays. I still need to decide where to document
this, so just added a note in the design doc for the time being.


  Commit: fd7be0d2e9e2cb7d43c9cb97edbb36da59a5b595
      https://github.com/llvm/llvm-project/commit/fd7be0d2e9e2cb7d43c9cb97edbb36da59a5b595
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/ComparePointerToMemberVirtualFunctionCheck.cpp
    M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
    M clang/include/clang/AST/CanonicalType.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/MicrosoftMangle.cpp
    M clang/lib/AST/Type.cpp
    M clang/lib/CodeGen/CGCXXABI.cpp
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGExprCXX.cpp
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaLookup.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaStmt.cpp

  Log Message:
  -----------
  [clang] NFC: Clear some uses of MemberPointerType::getClass (#131965)


  Commit: 08dda4dcbf6427e357830d9c7f7ac3b422fc75f6
      https://github.com/llvm/llvm-project/commit/08dda4dcbf6427e357830d9c7f7ac3b422fc75f6
  Author: vporpo <vporpodas at google.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    A llvm/include/llvm/Analysis/EphemeralValuesCache.h
    M llvm/include/llvm/Analysis/InlineCost.h
    M llvm/lib/Analysis/CMakeLists.txt
    A llvm/lib/Analysis/EphemeralValuesCache.cpp
    M llvm/lib/Analysis/InlineAdvisor.cpp
    M llvm/lib/Analysis/InlineCost.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/Transforms/IPO/Inliner.cpp
    M llvm/test/Transforms/Inline/cgscc-incremental-invalidate.ll
    M llvm/unittests/Analysis/CMakeLists.txt
    A llvm/unittests/Analysis/EphemeralValuesCacheTest.cpp

  Log Message:
  -----------
  [Analysis][EphemeralValuesCache][InlineCost] Ephemeral values caching for the CallAnalyzer (#130210)

This patch does two things:

1. It implements an ephemeral values cache analysis pass that collects the ephemeral values of a function and caches them for fast lookups. The collection of the ephemeral values is done lazily when the user calls `EphemeralValuesCache::ephValues()`.

2. It adds caching of ephemeral values using the `EphemeralValuesCache` to speed up `CallAnalyzer::analyze()`. Without caching this can take a long time to run in cases where the function contains a large number of `@llvm.assume()` calls and a large number of callsites. The time is spent in `collectEphemeralvalues()`.


  Commit: ead272460004519ccbd98d08d68c70123892cd4e
      https://github.com/llvm/llvm-project/commit/ead272460004519ccbd98d08d68c70123892cd4e
  Author: Longsheng Mou <longshengmou at gmail.com>
  Date:   2025-03-20 (Thu, 20 Mar 2025)

  Changed paths:
    M mlir/lib/Dialect/SCF/Transforms/LoopPipelining.cpp
    M mlir/test/Dialect/SCF/loop-pipelining.mlir

  Log Message:
  -----------
  [mlir][scf] Fix a div-by-zero bug when step of `scf.for` is zero (#131079)

Fixes #130095.


  Commit: 6003c3055a4630be31cc3d459cdbb88248a007b9
      https://github.com/llvm/llvm-project/commit/6003c3055a4630be31cc3d459cdbb88248a007b9
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/SemaAccess.cpp
    M clang/lib/Sema/SemaCast.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaOverload.cpp

  Log Message:
  -----------
  [clang] NFC: Unify implementations of CheckMemberPointerConversion (#131966)

This deduplicates the implementation of CheckMemberPointerConversion
accross SemaCast and SemaOverload.


  Commit: c3e16337a47355225f3d8ea467bf4bd4bb74c4cd
      https://github.com/llvm/llvm-project/commit/c3e16337a47355225f3d8ea467bf4bd4bb74c4cd
  Author: Han-Kuan Chen <hankuan.chen at sifive.com>
  Date:   2025-03-20 (Thu, 20 Mar 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/revec-reduced-value-replace-extractelement.ll

  Log Message:
  -----------
  [SLP][REVEC] Ignore UserTreeIndex if it is empty.  (#131993)

Previously, the all_of check did not consider the case where the
TreeEntry is empty (i.e., when it is the first entry).


  Commit: 5946696d6769e8190eb9e0860b5cac85eafd7951
      https://github.com/llvm/llvm-project/commit/5946696d6769e8190eb9e0860b5cac85eafd7951
  Author: Thurston Dang <thurston at google.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/test/Instrumentation/MemorySanitizer/AArch64/arm64-ld1.ll

  Log Message:
  -----------
  [msan] Handle NEON vector load (#130457)

This adds an explicit handler for:
- llvm.aarch64.neon.ld1x2, llvm.aarch64.neon.ld1x3,
llvm.aarch64.neon.ld1x4
- llvm.aarch64.neon.ld2, llvm.aarch64.neon.ld3, llvm.aarch64.neon.ld4
- llvm.aarch64.neon.ld2lane, llvm.aarch64.neon.ld3lane,
llvm.aarch64.neon.ld4lane
- llvm.aarch64.neon.ld2r, llvm.aarch64.neon.ld3r, llvm.aarch64.neon.ld4r
instead of relying on the default strict handler.

Updates the tests from https://github.com/llvm/llvm-project/pull/125267


  Commit: 9cab82fde844073a280662d719d93352b9d7102b
      https://github.com/llvm/llvm-project/commit/9cab82fde844073a280662d719d93352b9d7102b
  Author: John McIver <john.mciver.iii at gmail.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/test/Transforms/InstCombine/freeze-phi.ll
    M llvm/test/Transforms/InstCombine/freeze.ll
    M llvm/test/Transforms/InstCombine/select.ll

  Log Message:
  -----------
  [InstCombine] Enable select freeze poison folding when storing value (#129776)

The non-freeze poison argument to select can be one of the following: global,
constant, and noundef arguments.

Alive2 test validation: https://alive2.llvm.org/ce/z/jbtCS6


  Commit: d0d33d2b5ba3369d4a5586234181055935965e49
      https://github.com/llvm/llvm-project/commit/d0d33d2b5ba3369d4a5586234181055935965e49
  Author: joaosaffran <126493771+joaosaffran at users.noreply.github.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M llvm/docs/DirectX/DXContainer.rst

  Log Message:
  -----------
  [DirectX] Documenting Root Signature Binary representation (#131011)

Closes: #131009, #129796, #129749, #129561

---------

Co-authored-by: joaosaffran <joao.saffran at microsoft.com>


  Commit: d99033e4b4081bc47510c451b618ef93fe2f3c62
      https://github.com/llvm/llvm-project/commit/d99033e4b4081bc47510c451b618ef93fe2f3c62
  Author: Mingming Liu <mingmingl at google.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M llvm/lib/LTO/LTO.cpp
    A llvm/test/ThinLTO/X86/devirt_prevailing.ll
    M llvm/tools/llvm-lto2/llvm-lto2.cpp

  Log Message:
  -----------
  [LTO][WPD] Suppress WPD on a class if the LTO unit doesn't have the prevailing definition of this class (#131721)

Before this patch, whole program devirtualization is suppressed on a
class if any superclass is visible to regular object files, by recording
the class GUID in `VisibleToRegularObjSymbols`.

This patch suppresses whole program devirtualization on a class if the
LTO unit doesn't have the prevailing definition of this class (e.g., the
prevailing definition is in a shared library)

Implementation summaries:
1. In llvm/lib/LTO/LTO.cpp, `IsVisibleToRegularObj` is updated to look
at the global resolution's `IsPrevailing` bit for ThinLTO and
regularLTO.
2. In llvm/tools/llvm-lto2/llvm-lto2.cpp, 
- three command line options are added so `llvm-lto2` can override
`Conf.HasWholeProgramVisibility`, `Conf.ValidateAllVtablesHaveTypeInfos`
and `Conf.AllVtablesHaveTypeInfos`.
    
The test case is reduced from a small C++ program (main.cc, lib.cc/h
pasted below in [1]). To reproduce the program failure without this
patch, compile lib.cc into a shared library, and provide it to a ThinLTO
build of main.cc (commands are pasted in [2]).

[1]

* lib.h

```
#include <cstdio>

class Derived {
 public:
  void dispatch();
  virtual void print();
  virtual void sum();
};

void Derived::dispatch() {
  static_cast<Derived*>(this)->print();
  static_cast<Derived*>(this)->sum();
}

void Derived::sum() {
  printf("Derived::sum\n");
}

__attribute__((noinline)) void* create(int i);
__attribute__((noinline)) void* getPtr(int i);

```

* lib.cc

```
#include "lib.h"
#include <cstdio>
#include <iostream>

class Derived2 : public Derived {
public:
  void print() override {
    printf("DerivedSharedLib\n");
  }
  void sum() override {
    printf("DerivedSharedLib::sum\n");
  }
};


void Derived::print() {
  printf("Derived\n");
}

__attribute__((noinline)) void* create(int i) {
  if (i & 1)
    return new Derived2();
  return new Derived();
}

```

* main.cc

```
cat main.cc
#include "lib.h"

class DerivedN : public Derived {
 public:
};

__attribute__((noinline)) void* getPtr(int x) {
  return new DerivedN();
}


int main() {
  Derived*b = static_cast<Derived*>(create(201));
  b->dispatch();
  delete b;

  Derived* a = static_cast<Derived*>(getPtr(202));
  a->dispatch();
  delete a;
  return 0;
}

```

[2]
```
# compile lib.o in a shared library.
$ ./bin/clang++ -O2 -fPIC -c lib.cc -o lib.o
$ ./bin/clang++ -shared -o libdata.so lib.o

# Provide the shared library in `-ldata`
$ ./bin/clang++ -v -g -ldata --save-temps -fno-discard-value-names -Wl,-mllvm,-print-before=wholeprogramdevirt -Wl,-mllvm,-wholeprogramdevirt-check=trap -Rpass=wholeprogramdevirt -Wl,--lto-whole-program-visibility -Wl,--lto-validate-all-vtables-have-type-infos -mllvm -disable-icp=true -Wl,-mllvm,-disable-icp=false -flto=thin -fwhole-program-vtables  -fno-split-lto-unit -fuse-ld=lld   main.cc  -L . -o main >/tmp/wholeprogramdevirt.ir 2>&1

# Run the program hits a segmentation fault with  `-Wl,-mllvm,-wholeprogramdevirt-check=trap`

$ LD_LIBRARY_PATH=. ./main
DerivedSharedLib
Trace/breakpoint trap (core dumped)

```


  Commit: 460c0f567cc83378d4aafd9fba95561bacf57fe4
      https://github.com/llvm/llvm-project/commit/460c0f567cc83378d4aafd9fba95561bacf57fe4
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M lldb/include/lldb/Host/HostInfoBase.h
    M lldb/include/lldb/Host/macosx/HostInfoMacOSX.h
    M lldb/source/Host/macosx/objcxx/HostInfoMacOSX.mm
    M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
    M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.h
    M lldb/unittests/Host/HostInfoTest.cpp
    M lldb/unittests/Platform/PlatformDarwinTest.cpp

  Log Message:
  -----------
  [lldb] Move two methods from Platfrom -> Host (NFC) (#132119)

This moves two functions from Platform to Host:

  1. GetCurrentXcodeToolchainDirectory
  2. GetCurrentCommandLineToolsDirectory.

These two functions caused a layering violation in the Swift fork, which
added a dependency from lldbHost to lldbPlatform. As show by this PR,
there's no need for these two functions to live in Platform, and we
already have similar functions in Host.

We have various layering violations but this one is particularly bad,
because lldb-dap started depending on lldbHost. On the Swift fork, this
library was depending on lldbPlatform which pulled in various Swift
files, which libLLDB needs, but lldb-dap itself does not. We were
missing RPATHs to resume them, so in the current nightly, lldb-dap
crashes because the dynamic loader can't find the missing Swift libs.

rdar://146537366


  Commit: 0744d4926a0c567b0f10d19f0478b7a4bf960a19
      https://github.com/llvm/llvm-project/commit/0744d4926a0c567b0f10d19f0478b7a4bf960a19
  Author: quic_hchandel <quic_hchandel at quicinc.com>
  Date:   2025-03-20 (Thu, 20 Mar 2025)

  Changed paths:
    M clang/test/Driver/print-supported-extensions-riscv.c
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
    M llvm/lib/TargetParser/RISCVISAInfo.cpp
    M llvm/test/CodeGen/RISCV/attributes.ll
    A llvm/test/MC/RISCV/xqcilb-invalid.s
    A llvm/test/MC/RISCV/xqcilb-valid.s
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISCV] Add Qualcomm uC Xqcilb (Long Branch) extension (#131996)

This extension adds two long branch instructions.

The current spec can be found at:
https://github.com/quic/riscv-unified-db/releases/tag/Xqci-0.7.0

This patch adds assembler only support.

Co-authored-by: Sudharsan Veeravalli <quic_svs at quicinc.com>


  Commit: b44b72e122c6068e4d8aae37f10572f0d2c3e112
      https://github.com/llvm/llvm-project/commit/b44b72e122c6068e4d8aae37f10572f0d2c3e112
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-03-19 (Wed, 19 Mar 2025)

  Changed paths:
    M llvm/test/MC/RISCV/corev/XCVmem-invalid.s

  Log Message:
  -----------
  [RISCV] Check line and column numbers for errors in XCVmem-invalid.s. NFC

I was trying a change that caused some of the error messages in this
test to change. I was having trouble updating the test because FileCheck
kept scanning ahead when I missed updating a line. Checking the line number
should make it easier to update.


  Commit: 9cdbc47144f28785133592b1ae219cb49b9ac61d
      https://github.com/llvm/llvm-project/commit/9cdbc47144f28785133592b1ae219cb49b9ac61d
  Author: Mythreya <git at mythreya.dev>
  Date:   2025-03-20 (Thu, 20 Mar 2025)

  Changed paths:
    M clang-tools-extra/clangd/ClangdServer.cpp
    M clang-tools-extra/clangd/CodeComplete.cpp
    M clang-tools-extra/clangd/CodeComplete.h
    M clang-tools-extra/clangd/Config.h
    M clang-tools-extra/clangd/ConfigCompile.cpp
    M clang-tools-extra/clangd/ConfigFragment.h
    M clang-tools-extra/clangd/ConfigYAML.cpp
    M clang-tools-extra/clangd/tool/ClangdMain.cpp
    M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp

  Log Message:
  -----------
  [clangd] Add `HeaderInsertion` config option (#128503)

This is the config file equivalent of the `--header-insertion` command line option

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


  Commit: 4254f2777cd3dccf160c79e36ce091d58b4e99c1
      https://github.com/llvm/llvm-project/commit/4254f2777cd3dccf160c79e36ce091d58b4e99c1
  Author: Akshat Oke <Akshat.Oke at amd.com>
  Date:   2025-03-20 (Thu, 20 Mar 2025)

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

  Log Message:
  -----------
  [CodeGen][NPM] Parse MachineFunctions in NPM driver (#128467)

MachineFunctions were not being parsed when target is allowed to build
the pipeline.

This will allow us to use `-start-before` and other options.


  Commit: 6df192c02ea41d1d918fa96c6df174f76e4fc259
      https://github.com/llvm/llvm-project/commit/6df192c02ea41d1d918fa96c6df174f76e4fc259
  Author: David Green <david.green at arm.com>
  Date:   2025-03-20 (Thu, 20 Mar 2025)

  Changed paths:
    M llvm/test/CodeGen/AArch64/arm64-neon-mul-div-cte.ll
    M llvm/test/CodeGen/AArch64/arm64-vabs.ll
    M llvm/test/CodeGen/AArch64/sext.ll
    A llvm/test/CodeGen/AArch64/trunc.ll
    M llvm/test/CodeGen/AArch64/zext.ll

  Log Message:
  -----------
  [AArch64] Addition gisel tests for udiv by constant and zext/sext/trunc. NFC


  Commit: 0e6ea0945e64d26a89ec8a9e770578726eda1f9f
      https://github.com/llvm/llvm-project/commit/0e6ea0945e64d26a89ec8a9e770578726eda1f9f
  Author: David Green <david.green at arm.com>
  Date:   2025-03-20 (Thu, 20 Mar 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/test/CodeGen/AArch64/arm64-neon-mul-div-cte.ll
    M llvm/test/CodeGen/AArch64/arm64-vabs.ll
    M llvm/test/CodeGen/AArch64/sext.ll
    M llvm/test/CodeGen/AArch64/zext.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Scalarize zext with larger than i64 elements.

Like other operations larger than i64, we scalarize i128 and allow them to
legalize from there. This also helps with v2i64 udiv by constant, which needs a
legalize a umulh.


  Commit: 7c6479021382b5cf16619f0089b9d86536630e26
      https://github.com/llvm/llvm-project/commit/7c6479021382b5cf16619f0089b9d86536630e26
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2025-03-20 (Thu, 20 Mar 2025)

  Changed paths:
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp

  Log Message:
  -----------
  [CIR] Follow up for addressing style comment (#132093)

Follow up PR to address style comment
(https://github.com/llvm/llvm-project/pull/131657#discussion_r2004197917)


  Commit: 53a395fda32cb0edd899202b6614595185b01ef1
      https://github.com/llvm/llvm-project/commit/53a395fda32cb0edd899202b6614595185b01ef1
  Author: David Green <david.green at arm.com>
  Date:   2025-03-20 (Thu, 20 Mar 2025)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/test/CodeGen/AArch64/ctpop.ll
    M llvm/test/CodeGen/AArch64/cttz.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Legalize more CTPOP vector types. (#131513)

Similar to other operations, s8, s16 s32 and s64 vector elements are
clamped to legal vector sizes, odd number of elements are widened to the
next power-2 and s128 is scalarized.

This helps legalize cttz as well as ctpop.


  Commit: e17b3cdfb3626e03cdefaad42db1e2374da9e9ca
      https://github.com/llvm/llvm-project/commit/e17b3cdfb3626e03cdefaad42db1e2374da9e9ca
  Author: Diana Picus <Diana-Magda.Picus at amd.com>
  Date:   2025-03-20 (Thu, 20 Mar 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/SelectionDAGISel.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
    M llvm/lib/Target/AMDGPU/AMDGPUInstrInfo.td
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SILateBranchLowering.cpp
    A llvm/test/CodeGen/AMDGPU/amdgcn-cs-chain-intrinsic-dyn-vgpr-w32.ll
    M llvm/test/CodeGen/AMDGPU/isel-amdgcn-cs-chain-intrinsic-w32.ll
    M llvm/test/CodeGen/AMDGPU/isel-amdgcn-cs-chain-intrinsic-w64.ll
    A llvm/test/CodeGen/AMDGPU/isel-amdgpu-cs-chain-intrinsic-dyn-vgpr-w32.ll
    A llvm/test/CodeGen/AMDGPU/remove-register-flags.mir
    A llvm/test/CodeGen/AMDGPU/unsupported-cs-chain.ll

  Log Message:
  -----------
  [AMDGPU] Dynamic VGPR support for llvm.amdgcn.cs.chain (#130094)

The llvm.amdgcn.cs.chain intrinsic has a 'flags' operand which may
indicate that we want to reallocate the VGPRs before performing the
call.

A call with the following arguments:
```
llvm.amdgcn.cs.chain %callee, %exec, %sgpr_args, %vgpr_args,
  /*flags*/0x1, %num_vgprs, %fallback_exec, %fallback_callee
```
is supposed to do the following:
- copy the SGPR and VGPR args into their respective registers
- try to change the VGPR allocation
- if the allocation has succeeded, set EXEC to %exec and jump to
%callee, otherwise set EXEC to %fallback_exec and jump to
%fallback_callee

This patch implements the dynamic VGPR behaviour by generating an
S_ALLOC_VGPR followed by S_CSELECT_B32/64 instructions for the EXEC and
callee. The rest of the call sequence is left undisturbed (i.e.
identical to the case where the flags are 0 and we don't use dynamic
VGPRs). We achieve this by introducing some new pseudos
(SI_CS_CHAIN_TC_Wn_DVGPR) which are expanded in the SILateBranchLowering
pass, just like the simpler SI_CS_CHAIN_TC_Wn pseudos. The main reason
is so that we don't risk other passes (particularly the PostRA
scheduler) introducing instructions between the S_ALLOC_VGPR and the
jump. Such instructions might end up using VGPRs that have been
deallocated, or the wrong EXEC mask. Once the whole backend treats
S_ALLOC_VGPR and changes to EXEC as barriers for instructions that use
VGPRs, we could in principle move the expansion earlier (but in the
absence of a good reason for that my personal preference is to keep it
later in order to make debugging easier).

Since the expansion happens after register allocation, we're careful to
select constants to immediate operands instead of letting ISel generate
S_MOVs which could interfere with register allocation (i.e. make it look
like we need more registers than we actually do).

For GFX12, S_ALLOC_VGPR only works in wave32 mode, so we bail out during
ISel in wave64 mode. However, we can define the pseudos for wave64 too
so it's easy to handle if future generations support it.

---------

Co-authored-by: Ana Mihajlovic <Ana.Mihajlovic at amd.com>
Co-authored-by: Matt Arsenault <Matthew.Arsenault at amd.com>


  Commit: bf5cdd6358e8fc45319b748693090b5885beecee
      https://github.com/llvm/llvm-project/commit/bf5cdd6358e8fc45319b748693090b5885beecee
  Author: Stephan T. Lavavej <stl at nuwen.net>
  Date:   2025-03-20 (Thu, 20 Mar 2025)

  Changed paths:
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/stable_partition.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.rotate/rotate.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.swap/swap_ranges.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.merge/inplace_merge_comp.pass.cpp
    M libcxx/test/std/containers/sequences/array/assert.iterators.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/max_size.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.modifiers/assert.push_back.invalidation.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/ifstream.members/offset_range.pass.cpp
    M libcxx/test/std/input.output/iostream.format/print.fun/no_file_description.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/numeric.ops.gcd/gcd.pass.cpp
    M libcxx/test/std/time/time.clock/time.clock.utc/types.compile.pass.cpp
    M libcxx/test/std/utilities/utility/utility.swap/swap_array.pass.cpp
    M libcxx/test/support/min_allocator.h
    M libcxx/test/support/sized_allocator.h

  Log Message:
  -----------
  [libc++][test] Fix issues found by MSVC's STL (#131787)

* libcxx/test/support/min_allocator.h
+ Fix `tiny_size_allocator::rebind` which mistakenly said `T` instead of
`U`.
*
libcxx/test/std/algorithms/alg.modifying.operations/alg.partitions/stable_partition.pass.cpp
  + `std::stable_partition` requires bidirectional iterators.
* libcxx/test/std/containers/sequences/vector.bool/max_size.pass.cpp
+ Fix allocator type given to `std::vector<bool>`. The element types are
required to match, [N5008](https://isocpp.org/files/papers/N5008.pdf)
\[container.alloc.reqmts\]/5: "*Mandates:* `allocator_type::value_type`
is the same as `X::value_type`."
* libcxx/test/std/time/time.clock/time.clock.utc/types.compile.pass.cpp
+ Mark `is_steady` as `[[maybe_unused]]`, as it appears within
`LIBCPP_STATIC_ASSERT` only.
*
libcxx/test/std/algorithms/alg.modifying.operations/alg.rotate/rotate.pass.cpp
*
libcxx/test/std/algorithms/alg.modifying.operations/alg.swap/swap_ranges.pass.cpp
* libcxx/test/std/utilities/utility/utility.swap/swap_array.pass.cpp
+ Fix MSVC warning C4127 "conditional expression is constant".
`TEST_STD_AT_LEAST_23_OR_RUNTIME_EVALUATED` was introduced for this
purpose, so it should be used consistently.
* libcxx/test/std/numerics/numeric.ops/numeric.ops.gcd/gcd.pass.cpp
+ Fix `gcd()` precondition violation for `signed char`. This test case
was causing `-128` to be passed as a `signed char` to `gcd()`, which is
forbidden.
* libcxx/test/std/containers/sequences/array/assert.iterators.pass.cpp
*
libcxx/test/std/containers/sequences/vector/vector.modifiers/assert.push_back.invalidation.pass.cpp
*
libcxx/test/std/input.output/iostream.format/print.fun/no_file_description.pass.cpp
+ Split some REQUIRES and XFAIL lines. This is a "nice to have" for
MSVC's internal test harness, which is extremely simple and looks for
exact comment matches to skip tests. We can recognize the specific lines
"REQUIRES: has-unix-headers" and "XFAIL: msvc", but it's a headache to
maintain if they're chained with other conditions.
* libcxx/test/support/sized_allocator.h
+ Fix x86 truncation warnings. `std::allocator` takes `std::size_t`, so
we need to `static_cast`.
*
libcxx/test/std/input.output/file.streams/fstreams/ifstream.members/offset_range.pass.cpp
+ Fix x86 truncation warning. `std::min()` is returning
`std::streamoff`, which was being unnecessarily narrowed to
`std::size_t`.
*
libcxx/test/std/algorithms/alg.sorting/alg.merge/inplace_merge_comp.pass.cpp
+ Fix MSVC warning C4127 "conditional expression is constant" for an
always-true branch. This was very recently introduced by #129008 making
`N` constexpr. As it's a local constant just nine lines above, we don't
need to test whether 100 is greater than 0.


  Commit: 14006c8b5be12d24d8af2ff4bf4d152b1a2306f5
      https://github.com/llvm/llvm-project/commit/14006c8b5be12d24d8af2ff4bf4d152b1a2306f5
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-03-20 (Thu, 20 Mar 2025)

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

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

This patch fixes:

  llvm/lib/Target/AMDGPU/SILateBranchLowering.cpp:173:64: error:
  comparison of integers of different signs: 'unsigned int' and 'int'
  [-Werror,-Wsign-compare]


  Commit: b3b5527baaeceb923e9bb698f52883a1506f1b25
      https://github.com/llvm/llvm-project/commit/b3b5527baaeceb923e9bb698f52883a1506f1b25
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2025-03-20 (Thu, 20 Mar 2025)

  Changed paths:
    M lldb/include/lldb/Symbol/UnwindPlan.h
    M lldb/source/Plugins/ABI/AArch64/ABIMacOSX_arm64.cpp
    M lldb/source/Plugins/ABI/AArch64/ABISysV_arm64.cpp
    M lldb/source/Plugins/ABI/ARC/ABISysV_arc.cpp
    M lldb/source/Plugins/ABI/ARM/ABIMacOSX_arm.cpp
    M lldb/source/Plugins/ABI/ARM/ABISysV_arm.cpp
    M lldb/source/Plugins/ABI/Hexagon/ABISysV_hexagon.cpp
    M lldb/source/Plugins/ABI/LoongArch/ABISysV_loongarch.cpp
    M lldb/source/Plugins/ABI/MSP430/ABISysV_msp430.cpp
    M lldb/source/Plugins/ABI/Mips/ABISysV_mips.cpp
    M lldb/source/Plugins/ABI/Mips/ABISysV_mips64.cpp
    M lldb/source/Plugins/ABI/PowerPC/ABISysV_ppc.cpp
    M lldb/source/Plugins/ABI/PowerPC/ABISysV_ppc64.cpp
    M lldb/source/Plugins/ABI/RISCV/ABISysV_riscv.cpp
    M lldb/source/Plugins/ABI/SystemZ/ABISysV_s390x.cpp
    M lldb/source/Plugins/ABI/X86/ABIMacOSX_i386.cpp
    M lldb/source/Plugins/ABI/X86/ABISysV_i386.cpp
    M lldb/source/Plugins/ABI/X86/ABISysV_x86_64.cpp
    M lldb/source/Plugins/ABI/X86/ABIWindows_x86_64.cpp
    M lldb/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp
    M lldb/source/Plugins/Instruction/ARM64/EmulateInstructionARM64.cpp
    M lldb/source/Plugins/Instruction/MIPS/EmulateInstructionMIPS.cpp
    M lldb/source/Plugins/Instruction/MIPS64/EmulateInstructionMIPS64.cpp
    M lldb/source/Plugins/Instruction/PPC64/EmulateInstructionPPC64.cpp
    M lldb/source/Symbol/UnwindPlan.cpp

  Log Message:
  -----------
  [lldb] Use UnwindPlan::Row as values, part 2 (#132008)

This is the mechanical part of #131150.

I'm also removing the interfaces taking a RowSP.


  Commit: d4b586ad95d7a2d13e49c5e9cee8c5d6611efccb
      https://github.com/llvm/llvm-project/commit/d4b586ad95d7a2d13e49c5e9cee8c5d6611efccb
  Author: Kon <kinsei0916 at gmail.com>
  Date:   2025-03-20 (Thu, 20 Mar 2025)

  Changed paths:
    M lldb/docs/use/python-reference.rst

  Log Message:
  -----------
  [LLDB][NFC] Fix typo in docs (#131388)


  Commit: 0738f706151b41063d09b2dc349cabd471b2476e
      https://github.com/llvm/llvm-project/commit/0738f706151b41063d09b2dc349cabd471b2476e
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-03-20 (Thu, 20 Mar 2025)

  Changed paths:
    M llvm/include/llvm/IR/Intrinsics.h
    M llvm/lib/CodeGen/ExpandVectorPredication.cpp
    M llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
    M llvm/lib/CodeGen/MachineVerifier.cpp
    M llvm/lib/IR/Intrinsics.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/TableGen/intrinsic-attrs.td
    M llvm/utils/TableGen/Basic/IntrinsicEmitter.cpp

  Log Message:
  -----------
  [Intrinsics] Add Intrinsic::getFnAttributes() (NFC) (#132029)

Most places that call Intrinsic::getAttributes() are only interested in
the function attributes, so add a separate function for that.

The motivation for this is that I'd like to add the ability to specify
range attributes on intrinsics, which requires knowing the function
type. This avoids needing to know the type for most attribute queries.


  Commit: 01f04252b6711e281d9569172302ec20789e9bbe
      https://github.com/llvm/llvm-project/commit/01f04252b6711e281d9569172302ec20789e9bbe
  Author: Luke Lau <luke at igalia.com>
  Date:   2025-03-20 (Thu, 20 Mar 2025)

  Changed paths:
    M llvm/include/llvm/IR/VectorBuilder.h
    M llvm/include/llvm/Transforms/Utils/LoopUtils.h
    M llvm/lib/Transforms/Utils/LoopUtils.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp

  Log Message:
  -----------
  [LV] Get FMFs from VectorBuilder in createSimpleReduction. NFC (#132017)

The other createSimpleReduction takes the FMFs from the IRBuilder, so
this aligns the VectorBuilder variant to do the same and reduce the
possibility of there being a mismatch in flags.


  Commit: 750e716ef04ec33c8abc83d95d9c271009557c4a
      https://github.com/llvm/llvm-project/commit/750e716ef04ec33c8abc83d95d9c271009557c4a
  Author: Mike Aizatsky <mike.aizatsky at gmail.com>
  Date:   2025-03-20 (Thu, 20 Mar 2025)

  Changed paths:
    M llvm/include/llvm-c/Core.h

  Log Message:
  -----------
  [capi][nfc] Reference Function::getFunctionType in LLVMGlobalGetValueType (#132102)


  Commit: 64555e3d48223c4c5a851f0cbe0278ec6f2241ba
      https://github.com/llvm/llvm-project/commit/64555e3d48223c4c5a851f0cbe0278ec6f2241ba
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2025-03-20 (Thu, 20 Mar 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.h
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp

  Log Message:
  -----------
  [X86][NFCI] Add IsStore parameter to hasConditionalLoadStoreForType (#132153)

Address
https://github.com/llvm/llvm-project/pull/132032#issuecomment-2736936769


  Commit: f5ee10538b68835112323c241ca7db67ca78bf62
      https://github.com/llvm/llvm-project/commit/f5ee10538b68835112323c241ca7db67ca78bf62
  Author: Ivana Ivanovska <iivanovska at google.com>
  Date:   2025-03-20 (Thu, 20 Mar 2025)

  Changed paths:
    M clang/lib/Analysis/UnsafeBufferUsage.cpp

  Log Message:
  -----------
  [Clang] Optimize -Wunsafe-buffer-usage. (#125492)

The Clang disgnostic `-Wunsafe-buffer-usage` was adding up to +15%
compilation time when used. Profiling showed that most of the overhead
comes from the use of ASTMatchers.

This change replaces the ASTMatcher infrastructure with simple matching
functions and keeps the functionality unchanged. It reduces the overhead
added by `-Wunsafe-buffer-usage` by 87.8%, leaving a negligible
additional compilation time of 1.7% when the diagnostic is used.

**Old version without -Wunsafe-buffer-usage:**
```
$ hyperfine -i -w 1 --runs 5 '/tmp/old_clang -c -std=c++20 /tmp/preprocessed.cc -ferror-limit=20' 
Benchmark 1: /tmp/old_clang -c -std=c++20 /tmp/preprocessed.cc -ferror-limit=20
  Time (mean ± σ):     231.035 s ±  3.210 s    [User: 229.134 s, System: 1.704 s]
  Range (min … max):   228.751 s … 236.682 s    5 runs
```

**Old version with -Wunsafe-buffer-usage:**
```
$ hyperfine -i -w 1 --runs 10 '/tmp/old_clang -c -std=c++20 /tmp/preprocessed.cc -ferror-limit=20 -Wunsafe-buffer-usage'
Benchmark 1: /tmp/old_clang -c -std=c++20 /tmp/preprocessed.cc -ferror-limit=20 -Wunsafe-buffer-usage
  Time (mean ± σ):     263.840 s ±  0.854 s    [User: 262.043 s, System: 1.575 s]
  Range (min … max):   262.442 s … 265.142 s    10 runs
```

**New version with -Wunsafe-buffer-usage:**
```
$ hyperfine -i -w 1 --runs 10 '/tmp/new_clang -c -std=c++20 /tmp/preprocessed.cc -ferror-limit=20 -Wunsafe-buffer-usage'
Benchmark 1: /tmp/new_clang -c -std=c++20 /tmp/preprocessed.cc -ferror-limit=20 -Wunsafe-buffer-usage
  Time (mean ± σ):     235.169 s ±  1.408 s    [User: 233.406 s, System: 1.561 s]
  Range (min … max):   232.221 s … 236.792 s    10 runs
```


  Commit: 582a07e295b53c17976e3dcd1411b4084b2ef6f6
      https://github.com/llvm/llvm-project/commit/582a07e295b53c17976e3dcd1411b4084b2ef6f6
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-03-20 (Thu, 20 Mar 2025)

  Changed paths:
    M .github/workflows/libcxx-build-and-test.yaml
    M clang-tools-extra/clang-tidy/altera/SingleWorkItemBarrierCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/ComparePointerToMemberVirtualFunctionCheck.cpp
    M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
    M clang-tools-extra/clangd/ClangdServer.cpp
    M clang-tools-extra/clangd/CodeComplete.cpp
    M clang-tools-extra/clangd/CodeComplete.h
    M clang-tools-extra/clangd/Config.h
    M clang-tools-extra/clangd/ConfigCompile.cpp
    M clang-tools-extra/clangd/ConfigFragment.h
    M clang-tools-extra/clangd/ConfigYAML.cpp
    M clang-tools-extra/clangd/tool/ClangdMain.cpp
    M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
    M clang-tools-extra/test/clang-doc/basic-project.test
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/CanonicalType.h
    M clang/include/clang/AST/ExprCXX.h
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/DiagnosticASTKinds.td
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/include/clang/CIR/CIRGenerator.h
    A clang/include/clang/CIR/CIRToCIRPasses.h
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/Dialect/Passes.h
    M clang/include/clang/CIR/Dialect/Passes.td
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Frontend/FrontendOptions.h
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/include/clang/Tooling/DependencyScanning/InProcessModuleCache.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ExprCXX.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/MicrosoftMangle.cpp
    M clang/lib/AST/Type.cpp
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuilder.h
    M clang/lib/CIR/CodeGen/CIRGenConstantEmitter.h
    M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.h
    M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
    M clang/lib/CIR/CodeGen/CIRGenerator.cpp
    M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    A clang/lib/CIR/Dialect/Transforms/CIRCanonicalize.cpp
    M clang/lib/CIR/Dialect/Transforms/CMakeLists.txt
    M clang/lib/CIR/FrontendAction/CIRGenAction.cpp
    M clang/lib/CIR/FrontendAction/CMakeLists.txt
    M clang/lib/CIR/Lowering/CIRPasses.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
    M clang/lib/CodeGen/CGCXXABI.cpp
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGExprCXX.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenPGO.cpp
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M clang/lib/CodeGen/Targets/AMDGPU.cpp
    M clang/lib/CodeGen/Targets/TCE.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/FrontendTool/CMakeLists.txt
    M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
    M clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
    M clang/lib/Headers/hlsl/hlsl_compat_overloads.h
    M clang/lib/Sema/SemaAccess.cpp
    M clang/lib/Sema/SemaCast.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaLookup.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaStmt.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/StaticAnalyzer/Checkers/VirtualCallChecker.cpp
    M clang/test/Analysis/analyzer-config.c
    M clang/test/Analysis/virtualcall.cpp
    M clang/test/CIR/CodeGen/array.cpp
    M clang/test/CIR/CodeGen/basic.c
    M clang/test/CIR/CodeGen/basic.cpp
    M clang/test/CIR/CodeGen/cast.cpp
    M clang/test/CIR/CodeGen/local-vars.cpp
    M clang/test/CIR/CodeGen/unary-expr-or-type-trait.cpp
    M clang/test/CIR/CodeGen/unary.cpp
    M clang/test/CIR/IR/array.cir
    M clang/test/CIR/IR/cast.cir
    M clang/test/CIR/IR/func.cir
    M clang/test/CIR/IR/global-var-linkage.cir
    M clang/test/CIR/IR/global.cir
    M clang/test/CIR/Lowering/array.cpp
    M clang/test/CIR/Lowering/basic.cpp
    M clang/test/CIR/Lowering/func-simple.cpp
    A clang/test/CIR/Transforms/canonicalize.cir
    M clang/test/CIR/Transforms/scope.cir
    M clang/test/CIR/func-simple.cpp
    M clang/test/CIR/global-var-simple.cpp
    A clang/test/CIR/mlirargs.c
    A clang/test/CIR/mlprint.c
    M clang/test/CMakeLists.txt
    M clang/test/CodeGenCUDASPIRV/spirv-attrs.cu
    M clang/test/CodeGenHLSL/builtins/clamp.hlsl
    R clang/test/Driver/cuda-no-pgo-or-coverage.cu
    M clang/test/Driver/openmp-offload.c
    M clang/test/Driver/print-supported-extensions-riscv.c
    A clang/test/Modules/transitive-system.test
    M clang/test/Preprocessor/riscv-target-features.c
    A clang/test/SemaCUDA/spirv-attrs-diag.cu
    M clang/test/SemaCUDA/spirv-attrs.cu
    M clang/test/SemaCXX/builtin-structured-binding-size.cpp
    M clang/test/SemaCXX/sugar-common-types.cpp
    A clang/test/SemaCXX/unused-bindings.cpp
    M clang/test/SemaCXX/unused.cpp
    M clang/test/SemaHLSL/BuiltIns/clamp-errors-16bit.hlsl
    M clang/test/SemaHLSL/BuiltIns/clamp-errors.hlsl
    A clang/test/SemaHLSL/BuiltIns/max-errors-16bit.hlsl
    A clang/test/SemaHLSL/BuiltIns/min-errors-16bit.hlsl
    M clang/tools/cir-opt/cir-opt.cpp
    M clang/www/cxx_dr_status.html
    M clang/www/make_cxx_dr_status
    M compiler-rt/cmake/base-config-ix.cmake
    M compiler-rt/lib/ctx_profile/CtxInstrContextNode.h
    M compiler-rt/lib/ctx_profile/CtxInstrProfiling.cpp
    M compiler-rt/lib/ctx_profile/CtxInstrProfiling.h
    M compiler-rt/lib/ctx_profile/tests/CtxInstrProfilingTest.cpp
    M compiler-rt/lib/profile/InstrProfiling.h
    M compiler-rt/lib/profile/InstrProfilingBuffer.c
    M compiler-rt/lib/profile/InstrProfilingFile.c
    M compiler-rt/lib/profile/InstrProfilingInternal.h
    M compiler-rt/lib/profile/InstrProfilingPort.h
    M compiler-rt/lib/profile/InstrProfilingUtil.c
    M compiler-rt/lib/profile/InstrProfilingUtil.h
    M compiler-rt/lib/profile/InstrProfilingWriter.c
    M compiler-rt/test/ctx_profile/TestCases/generate-context.cpp
    M compiler-rt/test/profile/Posix/instrprof-fork.c
    R compiler-rt/test/profile/instrprof-no-mmap-during-merging.c
    M cross-project-tests/debuginfo-tests/llgdb-tests/llgdb.py
    M cross-project-tests/debuginfo-tests/llgdb-tests/test_debuginfo.pl
    M cross-project-tests/lit.cfg.py
    M flang-rt/lib/runtime/extensions.cpp
    M flang/docs/ArrayRepacking.md
    M flang/docs/Intrinsics.md
    M flang/examples/FeatureList/FeatureList.cpp
    M flang/examples/FlangOmpReport/FlangOmpReportVisitor.cpp
    M flang/include/flang/Parser/dump-parse-tree.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/include/flang/Semantics/expression.h
    M flang/include/flang/Semantics/tools.h
    M flang/include/flang/Tools/TargetSetup.h
    M flang/lib/Lower/ConvertVariable.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Parser/openmp-parsers.cpp
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/check-call.cpp
    M flang/lib/Semantics/check-coarray.cpp
    M flang/lib/Semantics/check-coarray.h
    M flang/lib/Semantics/check-declarations.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/pointer-assignment.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/tools.cpp
    M flang/test/Integration/debug-complex-1.f90
    M flang/test/Lower/Intrinsics/acos_complex16.f90
    M flang/test/Lower/Intrinsics/acosh_complex16.f90
    M flang/test/Lower/Intrinsics/asin_complex16.f90
    M flang/test/Lower/Intrinsics/asinh_complex16.f90
    M flang/test/Lower/Intrinsics/atan_complex16.f90
    M flang/test/Lower/Intrinsics/atanh_complex16.f90
    M flang/test/Lower/Intrinsics/cos_complex16.f90
    M flang/test/Lower/Intrinsics/cosh_complex16.f90
    M flang/test/Lower/Intrinsics/exp_complex16.f90
    M flang/test/Lower/Intrinsics/log_complex16.f90
    M flang/test/Lower/Intrinsics/pow_complex16.f90
    M flang/test/Lower/Intrinsics/pow_complex16i.f90
    M flang/test/Lower/Intrinsics/pow_complex16k.f90
    M flang/test/Lower/Intrinsics/product.f90
    M flang/test/Lower/Intrinsics/sin_complex16.f90
    M flang/test/Lower/Intrinsics/sinh_complex16.f90
    M flang/test/Lower/Intrinsics/sqrt_complex16.f90
    M flang/test/Lower/Intrinsics/sum.f90
    M flang/test/Lower/Intrinsics/tan_complex16.f90
    M flang/test/Lower/Intrinsics/tanh_complex16.f90
    M flang/test/Lower/complex-operations.f90
    A flang/test/Lower/repack-arrays-asynchronous.f90
    A flang/test/Lower/repack-arrays-finalized-dummy.f90
    A flang/test/Lower/repack-arrays-target.f90
    M flang/test/Parser/OpenMP/doacross-clause.f90
    M flang/test/Parser/OpenMP/from-clause.f90
    M flang/test/Parser/OpenMP/if-clause.f90
    M flang/test/Parser/OpenMP/ordered-depend.f90
    M flang/test/Parser/OpenMP/scan.f90
    M flang/test/Parser/OpenMP/target-update-to-clause.f90
    M flang/test/Semantics/array-constr-values.f90
    A flang/test/Semantics/bug131579.f90
    A flang/test/Semantics/bug396.f90
    M flang/test/Semantics/call10.f90
    A flang/test/Semantics/change_team02.f90
    M flang/test/Semantics/data05.f90
    M flang/test/Semantics/event02b.f90
    M flang/test/Semantics/form_team01a.f90
    M flang/test/Semantics/form_team01b.f90
    M flang/test/Semantics/intrinsics01.f90
    M flang/test/Semantics/modfile12.f90
    M flang/test/Semantics/structconst03.f90
    M flang/test/Semantics/structconst04.f90
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/hdr/CMakeLists.txt
    A libc/hdr/sched_macros.h
    M libc/hdr/types/CMakeLists.txt
    A libc/hdr/types/cpu_set_t.h
    M libc/include/llvm-libc-macros/linux/sched-macros.h
    M libc/include/llvm-libc-types/cpu_set_t.h
    M libc/src/sched/CMakeLists.txt
    M libc/src/sched/linux/CMakeLists.txt
    A libc/src/sched/linux/sched_getcpuisset.cpp
    A libc/src/sched/linux/sched_setcpuset.cpp
    A libc/src/sched/linux/sched_setcpuzero.cpp
    A libc/src/sched/sched_getcpuisset.h
    A libc/src/sched/sched_setcpuset.h
    A libc/src/sched/sched_setcpuzero.h
    M libc/test/UnitTest/ErrnoSetterMatcher.h
    M libc/test/UnitTest/Test.h
    M libc/test/src/sys/socket/linux/CMakeLists.txt
    M libc/test/src/sys/socket/linux/bind_test.cpp
    M libc/test/src/sys/socket/linux/send_recv_test.cpp
    M libc/test/src/sys/socket/linux/sendmsg_recvmsg_test.cpp
    M libc/test/src/sys/socket/linux/sendto_recvfrom_test.cpp
    M libc/test/src/sys/socket/linux/socket_test.cpp
    M libc/test/src/sys/socket/linux/socketpair_test.cpp
    M libc/test/src/unistd/CMakeLists.txt
    M libc/test/src/unistd/access_test.cpp
    M libc/test/src/unistd/chdir_test.cpp
    M libc/test/src/unistd/dup2_test.cpp
    M libc/test/src/unistd/dup3_test.cpp
    M libc/test/src/unistd/dup_test.cpp
    M libc/test/src/unistd/fchdir_test.cpp
    M libc/test/src/unistd/fpathconf_test.cpp
    M libc/test/src/unistd/ftruncate_test.cpp
    M libc/test/src/unistd/getentropy_test.cpp
    M libc/test/src/unistd/getsid_test.cpp
    M libc/test/src/unistd/isatty_test.cpp
    M libc/test/src/unistd/link_test.cpp
    M libc/test/src/unistd/linkat_test.cpp
    M libc/test/src/unistd/lseek_test.cpp
    M libc/test/src/unistd/pathconf_test.cpp
    M libc/test/src/unistd/pipe2_test.cpp
    M libc/test/src/unistd/pipe_test.cpp
    M libc/test/src/unistd/pread_pwrite_test.cpp
    M libc/test/src/unistd/read_write_test.cpp
    M libc/test/src/unistd/readlink_test.cpp
    M libc/test/src/unistd/readlinkat_test.cpp
    M libc/test/src/unistd/rmdir_test.cpp
    M libc/test/src/unistd/symlink_test.cpp
    M libc/test/src/unistd/symlinkat_test.cpp
    M libc/test/src/unistd/syscall_test.cpp
    M libc/test/src/unistd/truncate_test.cpp
    M libc/test/src/unistd/unlinkat_test.cpp
    M libcxx/docs/Status/Cxx23Issues.csv
    M libcxx/docs/TestingLibcxx.rst
    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/ranges_inplace_merge.h
    M libcxx/include/__bit/popcount.h
    M libcxx/include/__bit_reference
    M libcxx/include/__fwd/bit_reference.h
    M libcxx/include/__vector/comparison.h
    M libcxx/include/algorithm
    M libcxx/include/deque
    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/std/algorithms/alg.modifying.operations/alg.copy/copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/copy_backward.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/ranges.copy.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/ranges.copy_backward.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.rotate/rotate.pass.cpp
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.swap/swap_ranges.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.count/count.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.count/ranges.count.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.equal/equal.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.equal/ranges.equal.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/ranges_inplace_merge.pass.cpp
    M libcxx/test/std/algorithms/ranges_robust_against_dangling.pass.cpp
    M libcxx/test/std/algorithms/ranges_robust_against_omitting_invoke.pass.cpp
    M libcxx/test/std/algorithms/ranges_robust_against_proxy_iterators.pass.cpp
    M libcxx/test/std/algorithms/robust_against_adl_on_new.pass.cpp
    M libcxx/test/std/containers/sequences/array/assert.iterators.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/merge_lvalue.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/merge_lvalue_pred.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/merge_rvalue.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/merge_rvalue_pred.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/assign_copy.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/assign_move.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/max_size.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.modifiers/assert.push_back.invalidation.pass.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/ifstream.members/offset_range.pass.cpp
    M libcxx/test/std/input.output/iostream.format/print.fun/no_file_description.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/numeric.ops.gcd/gcd.pass.cpp
    M libcxx/test/std/time/time.clock/time.clock.utc/types.compile.pass.cpp
    M libcxx/test/std/utilities/utility/utility.swap/swap_array.pass.cpp
    M libcxx/test/support/min_allocator.h
    M libcxx/test/support/sized_allocator.h
    M libcxx/utils/ci/run-buildbot-container
    M lld/MachO/Config.h
    M lld/MachO/Driver.cpp
    M lld/MachO/LTO.cpp
    M lld/MachO/Options.td
    A lld/test/MachO/verify.ll
    M lldb/docs/use/python-reference.rst
    M lldb/include/lldb/Host/HostInfoBase.h
    M lldb/include/lldb/Host/macosx/HostInfoMacOSX.h
    M lldb/include/lldb/Symbol/UnwindPlan.h
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
    M lldb/source/Host/macosx/objcxx/HostInfoMacOSX.mm
    M lldb/source/Plugins/ABI/AArch64/ABIMacOSX_arm64.cpp
    M lldb/source/Plugins/ABI/AArch64/ABISysV_arm64.cpp
    M lldb/source/Plugins/ABI/ARC/ABISysV_arc.cpp
    M lldb/source/Plugins/ABI/ARM/ABIMacOSX_arm.cpp
    M lldb/source/Plugins/ABI/ARM/ABISysV_arm.cpp
    M lldb/source/Plugins/ABI/Hexagon/ABISysV_hexagon.cpp
    M lldb/source/Plugins/ABI/LoongArch/ABISysV_loongarch.cpp
    M lldb/source/Plugins/ABI/MSP430/ABISysV_msp430.cpp
    M lldb/source/Plugins/ABI/Mips/ABISysV_mips.cpp
    M lldb/source/Plugins/ABI/Mips/ABISysV_mips64.cpp
    M lldb/source/Plugins/ABI/PowerPC/ABISysV_ppc.cpp
    M lldb/source/Plugins/ABI/PowerPC/ABISysV_ppc64.cpp
    M lldb/source/Plugins/ABI/RISCV/ABISysV_riscv.cpp
    M lldb/source/Plugins/ABI/SystemZ/ABISysV_s390x.cpp
    M lldb/source/Plugins/ABI/X86/ABIMacOSX_i386.cpp
    M lldb/source/Plugins/ABI/X86/ABISysV_i386.cpp
    M lldb/source/Plugins/ABI/X86/ABISysV_x86_64.cpp
    M lldb/source/Plugins/ABI/X86/ABIWindows_x86_64.cpp
    M lldb/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp
    M lldb/source/Plugins/Instruction/ARM64/EmulateInstructionARM64.cpp
    M lldb/source/Plugins/Instruction/MIPS/EmulateInstructionMIPS.cpp
    M lldb/source/Plugins/Instruction/MIPS64/EmulateInstructionMIPS64.cpp
    M lldb/source/Plugins/Instruction/PPC64/EmulateInstructionPPC64.cpp
    M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
    M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.h
    M lldb/source/Plugins/Process/Utility/RegisterContextThreadMemory.cpp
    M lldb/source/Plugins/Process/Utility/RegisterContextThreadMemory.h
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.h
    M lldb/source/Symbol/UnwindPlan.cpp
    M lldb/test/API/iohandler/unicode/TestUnicode.py
    M lldb/tools/lldb-dap/CMakeLists.txt
    M lldb/tools/lldb-dap/DAP.cpp
    M lldb/tools/lldb-dap/DAP.h
    M lldb/tools/lldb-dap/DAPForward.h
    A lldb/tools/lldb-dap/DAPLog.cpp
    M lldb/tools/lldb-dap/DAPLog.h
    M lldb/tools/lldb-dap/EventHelper.cpp
    M lldb/tools/lldb-dap/Transport.cpp
    M lldb/tools/lldb-dap/Transport.h
    M lldb/tools/lldb-dap/lldb-dap.cpp
    M lldb/unittests/Host/HostInfoTest.cpp
    M lldb/unittests/Platform/PlatformDarwinTest.cpp
    M lldb/unittests/Process/gdb-remote/GDBRemoteCommunicationTest.cpp
    M llvm/CMakeLists.txt
    M llvm/docs/DirectX/DXContainer.rst
    M llvm/docs/LangRef.rst
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/docs/SPIRVUsage.rst
    M llvm/docs/SecurityTransparencyReports.rst
    M llvm/include/llvm-c/Core.h
    A llvm/include/llvm/Analysis/EphemeralValuesCache.h
    M llvm/include/llvm/Analysis/InlineCost.h
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/include/llvm/CodeGen/SelectionDAGISel.h
    M llvm/include/llvm/IR/Intrinsics.h
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/include/llvm/IR/VectorBuilder.h
    M llvm/include/llvm/ProfileData/CtxInstrContextNode.h
    M llvm/include/llvm/ProfileData/PGOCtxProfReader.h
    M llvm/include/llvm/ProfileData/PGOCtxProfWriter.h
    M llvm/include/llvm/Transforms/Utils/LoopUtils.h
    M llvm/lib/Analysis/CMakeLists.txt
    A llvm/lib/Analysis/EphemeralValuesCache.cpp
    M llvm/lib/Analysis/InlineAdvisor.cpp
    M llvm/lib/Analysis/InlineCost.cpp
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/CodeGen/ExpandVectorPredication.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
    M llvm/lib/CodeGen/MachineVerifier.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/IR/Intrinsics.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/ProfileData/PGOCtxProfReader.cpp
    M llvm/lib/ProfileData/PGOCtxProfWriter.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
    M llvm/lib/Target/AMDGPU/AMDGPUInstrInfo.td
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/MIMGInstructions.td
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SILateBranchLowering.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoC.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
    A llvm/lib/Target/RISCV/RISCVInstrInfoZclsd.td
    A llvm/lib/Target/RISCV/RISCVInstrInfoZilsd.td
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.h
    M llvm/lib/TargetParser/RISCVISAInfo.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/GlobalDCE.cpp
    M llvm/lib/Transforms/IPO/HotColdSplitting.cpp
    M llvm/lib/Transforms/IPO/Inliner.cpp
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
    M llvm/lib/Transforms/IPO/MergeFunctions.cpp
    M llvm/lib/Transforms/IPO/OpenMPOpt.cpp
    M llvm/lib/Transforms/IPO/SampleProfileProbe.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Instrumentation/BlockCoverageInference.cpp
    M llvm/lib/Transforms/Instrumentation/ControlHeightReduction.cpp
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
    M llvm/lib/Transforms/Instrumentation/SanitizerBinaryMetadata.cpp
    M llvm/lib/Transforms/Instrumentation/SanitizerCoverage.cpp
    M llvm/lib/Transforms/ObjCARC/PtrState.cpp
    M llvm/lib/Transforms/Scalar/ConstantHoisting.cpp
    M llvm/lib/Transforms/Scalar/GVN.cpp
    M llvm/lib/Transforms/Scalar/GVNSink.cpp
    M llvm/lib/Transforms/Scalar/LoopDistribute.cpp
    M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
    M llvm/lib/Transforms/Scalar/LoopSink.cpp
    M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
    M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
    M llvm/lib/Transforms/Scalar/NewGVN.cpp
    M llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
    M llvm/lib/Transforms/Utils/IRNormalizer.cpp
    M llvm/lib/Transforms/Utils/LoopUnrollAndJam.cpp
    M llvm/lib/Transforms/Utils/LoopUtils.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/CMakeLists.txt
    M llvm/test/CodeGen/AArch64/Atomics/aarch64-atomicrmw-lsfe.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomicrmw-lsfe.ll
    M llvm/test/CodeGen/AArch64/Atomics/generate-tests.py
    M llvm/test/CodeGen/AArch64/arm64-neon-mul-div-cte.ll
    M llvm/test/CodeGen/AArch64/arm64-vabs.ll
    M llvm/test/CodeGen/AArch64/ctlz.ll
    M llvm/test/CodeGen/AArch64/ctpop.ll
    M llvm/test/CodeGen/AArch64/cttz.ll
    M llvm/test/CodeGen/AArch64/sext.ll
    A llvm/test/CodeGen/AArch64/trunc.ll
    M llvm/test/CodeGen/AArch64/zext.ll
    A llvm/test/CodeGen/AMDGPU/amdgcn-cs-chain-intrinsic-dyn-vgpr-w32.ll
    M llvm/test/CodeGen/AMDGPU/isel-amdgcn-cs-chain-intrinsic-w32.ll
    M llvm/test/CodeGen/AMDGPU/isel-amdgcn-cs-chain-intrinsic-w64.ll
    A llvm/test/CodeGen/AMDGPU/isel-amdgpu-cs-chain-intrinsic-dyn-vgpr-w32.ll
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.bvh8_intersect_ray.ll
    M llvm/test/CodeGen/AMDGPU/mfma-no-register-aliasing.ll
    A llvm/test/CodeGen/AMDGPU/remove-register-flags.mir
    A llvm/test/CodeGen/AMDGPU/unsupported-cs-chain.ll
    M llvm/test/CodeGen/RISCV/attributes.ll
    M llvm/test/CodeGen/RISCV/push-pop-opt-crash.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-zipeven-zipodd.ll
    M llvm/test/CodeGen/RISCV/stores-of-loads-merging.ll
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/SV_GroupIndex.ll
    M llvm/test/Instrumentation/MemorySanitizer/AArch64/arm64-ld1.ll
    M llvm/test/Instrumentation/SanitizerCoverage/interposable-symbol.ll
    M llvm/test/MC/AMDGPU/gfx12_asm_vimage.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vimage_alias.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vimage.txt
    M llvm/test/MC/RISCV/attribute-arch.s
    M llvm/test/MC/RISCV/corev/XCVmem-invalid.s
    A llvm/test/MC/RISCV/rv32zclsd-alias-valid.c
    A llvm/test/MC/RISCV/rv32zclsd-invalid.s
    A llvm/test/MC/RISCV/rv32zclsd-valid.s
    A llvm/test/MC/RISCV/rv32zilsd-alias-valid.s
    A llvm/test/MC/RISCV/rv32zilsd-invalid.s
    A llvm/test/MC/RISCV/rv32zilsd-valid.s
    M llvm/test/MC/RISCV/rv64c-aliases-valid.s
    M llvm/test/MC/RISCV/rv64c-valid.s
    M llvm/test/MC/RISCV/rvc-aliases-valid.s
    A llvm/test/MC/RISCV/xqcilb-invalid.s
    A llvm/test/MC/RISCV/xqcilb-valid.s
    M llvm/test/TableGen/intrinsic-attrs.td
    A llvm/test/ThinLTO/X86/devirt_prevailing.ll
    M llvm/test/Transforms/Inline/cgscc-incremental-invalidate.ll
    M llvm/test/Transforms/InstCombine/freeze-phi.ll
    M llvm/test/Transforms/InstCombine/freeze.ll
    M llvm/test/Transforms/InstCombine/select-with-bitwise-ops.ll
    M llvm/test/Transforms/InstCombine/select.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/reg-usage.ll
    M llvm/test/Transforms/LoopVectorize/LoongArch/reg-usage.ll
    M llvm/test/Transforms/LoopVectorize/PowerPC/reg-usage.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/vplan-widen-call-instruction.ll
    A llvm/test/Transforms/SLPVectorizer/X86/revec-reduced-value-replace-extractelement.ll
    A llvm/test/tools/llvm-ctxprof-util/Inputs/valid-with-unhandled.yaml
    M llvm/test/tools/llvm-ctxprof-util/llvm-ctxprof-util.test
    A llvm/test/tools/llvm-ml/architecture.asm
    A llvm/test/tools/llvm-ml/architecture_errors.asm
    M llvm/test/tools/llvm-ml/dot_operator.asm
    M llvm/test/tools/llvm-ml/extern.asm
    M llvm/test/tools/llvm-ml/feat00.asm
    M llvm/test/tools/llvm-ml/feat00_override.asm
    M llvm/test/tools/llvm-ml/indirect_branch.asm
    M llvm/test/tools/llvm-ml/macro.asm
    M llvm/test/tools/llvm-ml/ml32-context.asm
    M llvm/test/tools/llvm-ml/nested_proc.asm
    M llvm/test/tools/llvm-ml/proc.asm
    M llvm/test/tools/llvm-ml/proc_frame.asm
    M llvm/test/tools/llvm-ml/repeat_directives.asm
    M llvm/test/tools/llvm-ml/rip_relative_addressing.asm
    M llvm/test/tools/llvm-ml/strings_errors.asm
    M llvm/test/tools/llvm-ml/struct.asm
    M llvm/test/tools/llvm-profdata/malformed-ptr-to-counter-array.test
    M llvm/tools/llc/NewPMDriver.cpp
    M llvm/tools/llvm-lto2/llvm-lto2.cpp
    M llvm/tools/llvm-ml/CMakeLists.txt
    M llvm/unittests/Analysis/CMakeLists.txt
    A llvm/unittests/Analysis/EphemeralValuesCacheTest.cpp
    M llvm/unittests/ProfileData/PGOCtxProfReaderWriterTest.cpp
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanHCFGTest.cpp
    M llvm/utils/TableGen/Basic/IntrinsicEmitter.cpp
    M llvm/utils/gn/secondary/lldb/tools/lldb-dap/BUILD.gn
    M mlir/include/mlir/Dialect/Tosa/IR/TosaComplianceData.h.inc
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaProfileCompliance.h
    M mlir/lib/Dialect/MemRef/Transforms/RuntimeOpVerification.cpp
    M mlir/lib/Dialect/SCF/Transforms/LoopPipelining.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp
    M mlir/test/Conversion/VectorToLLVM/pass-option-serialization.mlir
    M mlir/test/Dialect/SCF/loop-pipelining.mlir
    M mlir/test/Dialect/Tosa/availability.mlir
    M mlir/test/Dialect/Tosa/invalid.mlir
    M mlir/test/Dialect/Tosa/invalid_extension.mlir
    M mlir/test/Dialect/Tosa/profile_all_unsupported.mlir
    M mlir/test/Dialect/Tosa/profile_pro_int_unsupported.mlir
    A mlir/test/Integration/Dialect/MemRef/assume-alignment-runtime-verification.mlir
    M offload/DeviceRTL/src/DeviceUtils.cpp
    M offload/DeviceRTL/src/Misc.cpp
    M offload/plugins-nextgen/common/include/GlobalHandler.h
    M offload/plugins-nextgen/common/src/GlobalHandler.cpp
    A offload/test/offloading/gpupgo/pgo1.c
    A offload/test/offloading/gpupgo/pgo2.c
    R offload/test/offloading/pgo1.c
    M runtimes/CMakeLists.txt
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/libc_build_rules.bzl
    M utils/bazel/llvm-project-overlay/libc/test/src/sys/socket/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/src/unistd/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel

  Log Message:
  -----------
  Rebase, address comments

Created using spr 1.3.5


Compare: https://github.com/llvm/llvm-project/compare/22583d0cf6b8...582a07e295b5

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