Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[libc++] <experimental/simd> Add load constructor for class simd/simd_mask #76610

Merged
merged 1 commit into from Jan 21, 2024

Conversation

joy2myself
Copy link
Member

No description provided.

@joy2myself joy2myself requested a review from a team as a code owner December 30, 2023 08:18
@llvmbot llvmbot added the libc++ libc++ C++ Standard Library. Not GNU libstdc++. Not libc++abi. label Dec 30, 2023
@llvmbot
Copy link
Collaborator

llvmbot commented Dec 30, 2023

@llvm/pr-subscribers-libcxx

Author: ZhangYin (joy2myself)

Changes

Full diff: https://github.com/llvm/llvm-project/pull/76610.diff

7 Files Affected:

  • (modified) libcxx/include/experimental/__simd/scalar.h (+7)
  • (modified) libcxx/include/experimental/__simd/simd.h (+6)
  • (modified) libcxx/include/experimental/__simd/simd_mask.h (+6)
  • (modified) libcxx/include/experimental/__simd/vec_ext.h (+11)
  • (added) libcxx/test/std/experimental/simd/simd.class/simd_ctor_load.pass.cpp (+105)
  • (added) libcxx/test/std/experimental/simd/simd.mask.class/simd_mask_ctor_load.pass.cpp (+55)
  • (modified) libcxx/test/std/experimental/simd/test_utils.h (+12)
diff --git a/libcxx/include/experimental/__simd/scalar.h b/libcxx/include/experimental/__simd/scalar.h
index 5eeff4c1e82a38..717fd6cd92d710 100644
--- a/libcxx/include/experimental/__simd/scalar.h
+++ b/libcxx/include/experimental/__simd/scalar.h
@@ -56,6 +56,11 @@ struct __simd_operations<_Tp, simd_abi::__scalar> {
   static _LIBCPP_HIDE_FROM_ABI _SimdStorage __generate(_Generator&& __g) noexcept {
     return {__g(std::integral_constant<size_t, 0>())};
   }
+
+  template <class _Up>
+  static _LIBCPP_HIDE_FROM_ABI void __load(_SimdStorage& __s, const _Up* __mem) noexcept {
+    __s.__data = static_cast<_Tp>(__mem[0]);
+  }
 };
 
 template <class _Tp>
@@ -63,6 +68,8 @@ struct __mask_operations<_Tp, simd_abi::__scalar> {
   using _MaskStorage = __mask_storage<_Tp, simd_abi::__scalar>;
 
   static _LIBCPP_HIDE_FROM_ABI _MaskStorage __broadcast(bool __v) noexcept { return {__v}; }
+
+  static _LIBCPP_HIDE_FROM_ABI void __load(_MaskStorage& __s, const bool* __mem) noexcept { __s.__data = __mem[0]; }
 };
 
 } // namespace parallelism_v2
diff --git a/libcxx/include/experimental/__simd/simd.h b/libcxx/include/experimental/__simd/simd.h
index c345811fee7fc7..db4ebb8e4a381b 100644
--- a/libcxx/include/experimental/__simd/simd.h
+++ b/libcxx/include/experimental/__simd/simd.h
@@ -64,6 +64,12 @@ class simd {
   explicit _LIBCPP_HIDE_FROM_ABI simd(_Generator&& __g) noexcept
       : __s_(_Impl::__generate(std::forward<_Generator>(__g))) {}
 
+  // load constructor
+  template <class _Up, class _Flags, enable_if_t<__is_vectorizable_v<_Up> && is_simd_flag_type_v<_Flags>, int> = 0>
+  _LIBCPP_HIDE_FROM_ABI simd(const _Up* __mem, _Flags) {
+    _Impl::__load(__s_, _Flags::template __apply<simd>(__mem));
+  }
+
   // scalar access [simd.subscr]
   _LIBCPP_HIDE_FROM_ABI reference operator[](size_t __i) noexcept { return reference(__s_, __i); }
   _LIBCPP_HIDE_FROM_ABI value_type operator[](size_t __i) const noexcept { return __s_.__get(__i); }
diff --git a/libcxx/include/experimental/__simd/simd_mask.h b/libcxx/include/experimental/__simd/simd_mask.h
index db03843b46e3ad..754db7992683b1 100644
--- a/libcxx/include/experimental/__simd/simd_mask.h
+++ b/libcxx/include/experimental/__simd/simd_mask.h
@@ -52,6 +52,12 @@ class simd_mask {
     }
   }
 
+  // load constructor
+  template <class _Flags, enable_if_t<is_simd_flag_type_v<_Flags>, int> = 0>
+  _LIBCPP_HIDE_FROM_ABI simd_mask(const value_type* __mem, _Flags) {
+    _Impl::__load(__s_, _Flags::template __apply<simd_mask>(__mem));
+  }
+
   // scalar access [simd.mask.subscr]
   _LIBCPP_HIDE_FROM_ABI reference operator[](size_t __i) noexcept { return reference(__s_, __i); }
   _LIBCPP_HIDE_FROM_ABI value_type operator[](size_t __i) const noexcept { return __s_.__get(__i); }
diff --git a/libcxx/include/experimental/__simd/vec_ext.h b/libcxx/include/experimental/__simd/vec_ext.h
index 07ba032f493b1e..7883132ba6c0db 100644
--- a/libcxx/include/experimental/__simd/vec_ext.h
+++ b/libcxx/include/experimental/__simd/vec_ext.h
@@ -73,6 +73,12 @@ struct __simd_operations<_Tp, simd_abi::__vec_ext<_Np>> {
   static _LIBCPP_HIDE_FROM_ABI _SimdStorage __generate(_Generator&& __g) noexcept {
     return __generate_init(std::forward<_Generator>(__g), std::make_index_sequence<_Np>());
   }
+
+  template <class _Up>
+  static _LIBCPP_HIDE_FROM_ABI void __load(_SimdStorage& __s, const _Up* __mem) noexcept {
+    for (size_t __i = 0; __i < _Np; __i++)
+      __s.__data[__i] = static_cast<_Tp>(__mem[__i]);
+  }
 };
 
 template <class _Tp, int _Np>
@@ -87,6 +93,11 @@ struct __mask_operations<_Tp, simd_abi::__vec_ext<_Np>> {
     }
     return __result;
   }
+
+  static _LIBCPP_HIDE_FROM_ABI void __load(_MaskStorage& __s, const bool* __mem) noexcept {
+    for (size_t __i = 0; __i < _Np; __i++)
+      __s.__data[__i] = experimental::__set_all_bits<_Tp>(__mem[__i]);
+  }
 };
 
 } // namespace parallelism_v2
diff --git a/libcxx/test/std/experimental/simd/simd.class/simd_ctor_load.pass.cpp b/libcxx/test/std/experimental/simd/simd.class/simd_ctor_load.pass.cpp
new file mode 100644
index 00000000000000..407dc07fee4d57
--- /dev/null
+++ b/libcxx/test/std/experimental/simd/simd.class/simd_ctor_load.pass.cpp
@@ -0,0 +1,105 @@
+//===----------------------------------------------------------------------===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+
+// UNSUPPORTED: c++03, c++11, c++14
+
+// <experimental/simd>
+//
+// [simd.class]
+// template<class U, class Flags> simd(const U* mem, Flags);
+
+#include "../test_utils.h"
+
+namespace ex = std::experimental::parallelism_v2;
+
+template <class T, class SimdAbi, std::size_t array_size>
+struct ElementAlignedLoadCtorHelper {
+  template <class U>
+  void operator()() const {
+    constexpr std::size_t alignas_size = alignof(U);
+    alignas(alignas_size) U buffer[array_size];
+    for (size_t i = 0; i < array_size; ++i)
+      buffer[i] = static_cast<U>(i);
+    ex::simd<T, SimdAbi> origin_simd(buffer, ex::element_aligned_tag());
+    assert_simd_values_equal(origin_simd, buffer);
+  }
+};
+
+template <class T, class SimdAbi, std::size_t array_size>
+struct VectorAlignedLoadCtorHelper {
+  template <class U>
+  void operator()() const {
+    constexpr std::size_t alignas_size = ex::memory_alignment_v<ex::simd<T, SimdAbi>, U>;
+    alignas(alignas_size) U buffer[array_size];
+    for (size_t i = 0; i < array_size; ++i)
+      buffer[i] = static_cast<U>(i);
+    ex::simd<T, SimdAbi> origin_simd(buffer, ex::vector_aligned_tag());
+    assert_simd_values_equal(origin_simd, buffer);
+  }
+};
+
+template <class T, class SimdAbi, std::size_t array_size>
+struct OveralignedLoadCtorHelper {
+  template <class U>
+  void operator()() const {
+    constexpr std::size_t alignas_size = bit_ceil(sizeof(U) + 1);
+    alignas(alignas_size) U buffer[array_size];
+    for (size_t i = 0; i < array_size; ++i)
+      buffer[i] = static_cast<U>(i);
+    ex::simd<T, SimdAbi> origin_simd(buffer, ex::overaligned_tag<alignas_size>());
+    assert_simd_values_equal(origin_simd, buffer);
+  }
+};
+
+template <class T, std::size_t>
+struct CheckSimdLoadCtor {
+  template <class SimdAbi>
+  void operator()() {
+    constexpr std::size_t array_size = ex::simd_size_v<T, SimdAbi>;
+
+    types::for_each(arithmetic_no_bool_types(), ElementAlignedLoadCtorHelper<T, SimdAbi, array_size>());
+    types::for_each(arithmetic_no_bool_types(), VectorAlignedLoadCtorHelper<T, SimdAbi, array_size>());
+    types::for_each(arithmetic_no_bool_types(), OveralignedLoadCtorHelper<T, SimdAbi, array_size>());
+  }
+};
+
+template <class U, class T, class Flags, class SimdAbi = ex::simd_abi::compatible<T>, class = void>
+struct has_load_ctor : std::false_type {};
+
+template <class U, class T, class Flags, class SimdAbi>
+struct has_load_ctor<U,
+                     T,
+                     Flags,
+                     SimdAbi,
+                     std::void_t<decltype(ex::simd<T, SimdAbi>(std::declval<const U*>(), Flags()))>> : std::true_type {
+};
+
+template <class T, std::size_t>
+struct CheckLoadCtorTraits {
+  template <class SimdAbi>
+  void operator()() {
+    // This function shall not participate in overload resolution unless
+    //   — is_simd_flag_type_v<Flags> is true, and
+    //   — U is a vectorizable type.
+    static_assert(has_load_ctor<int, T, ex::element_aligned_tag, SimdAbi>::value);
+
+    // is_simd_flag_type_v<Flags> is false
+    static_assert(!has_load_ctor<int, T, int, SimdAbi>::value);
+    static_assert(!has_load_ctor<int, T, SimdAbi, SimdAbi>::value);
+
+    // U is not a vectorizable type.
+    static_assert(!has_load_ctor<SimdAbi, T, ex::element_aligned_tag, SimdAbi>::value);
+    static_assert(!has_load_ctor<ex::element_aligned_tag, T, ex::element_aligned_tag, SimdAbi>::value);
+  }
+};
+
+int main(int, char**) {
+  test_all_simd_abi<CheckSimdLoadCtor>();
+  test_all_simd_abi<CheckLoadCtorTraits>();
+  return 0;
+}
diff --git a/libcxx/test/std/experimental/simd/simd.mask.class/simd_mask_ctor_load.pass.cpp b/libcxx/test/std/experimental/simd/simd.mask.class/simd_mask_ctor_load.pass.cpp
new file mode 100644
index 00000000000000..74d20b296b1583
--- /dev/null
+++ b/libcxx/test/std/experimental/simd/simd.mask.class/simd_mask_ctor_load.pass.cpp
@@ -0,0 +1,55 @@
+//===----------------------------------------------------------------------===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+
+// UNSUPPORTED: c++03, c++11, c++14
+
+// <experimental/simd>
+//
+// [simd.class]
+// template<class Flags> simd_mask(const value_type* mem, Flags);
+
+#include "../test_utils.h"
+
+namespace ex = std::experimental::parallelism_v2;
+
+template <class T, std::size_t>
+struct CheckSimdMaskLoadCtor {
+  template <class SimdAbi>
+  void operator()() {
+    constexpr std::size_t array_size = ex::simd_size_v<T, SimdAbi>;
+
+    // element aligned tag
+    constexpr std::size_t element_alignas_size = alignof(bool);
+    alignas(element_alignas_size) bool element_buffer[array_size];
+    for (size_t i = 0; i < array_size; ++i)
+      element_buffer[i] = static_cast<bool>(i % 2);
+    ex::simd_mask<T, SimdAbi> element_mask(element_buffer, ex::element_aligned_tag());
+    assert_simd_mask_values_equal(element_mask, element_buffer);
+
+    // vector aligned tag
+    constexpr std::size_t vector_alignas_size = ex::memory_alignment_v<ex::simd_mask<T, SimdAbi>>;
+    alignas(vector_alignas_size) bool vector_buffer[array_size];
+    for (size_t i = 0; i < array_size; ++i)
+      vector_buffer[i] = static_cast<bool>(i % 2);
+    ex::simd_mask<T, SimdAbi> vector_mask(vector_buffer, ex::vector_aligned_tag());
+    assert_simd_mask_values_equal(vector_mask, vector_buffer);
+
+    // overaligned tag
+    constexpr std::size_t over_alignas_size = bit_ceil(sizeof(bool) + 1);
+    alignas(over_alignas_size) bool overaligned_buffer[array_size];
+    for (size_t i = 0; i < array_size; ++i)
+      overaligned_buffer[i] = static_cast<bool>(i % 2);
+    ex::simd_mask<T, SimdAbi> overaligned_mask(overaligned_buffer, ex::overaligned_tag<over_alignas_size>());
+    assert_simd_mask_values_equal(overaligned_mask, overaligned_buffer);
+  }
+};
+
+int main(int, char**) {
+  test_all_simd_abi<CheckSimdMaskLoadCtor>();
+  return 0;
+}
diff --git a/libcxx/test/std/experimental/simd/test_utils.h b/libcxx/test/std/experimental/simd/test_utils.h
index 30a48521aa589c..b3679b51e50b50 100644
--- a/libcxx/test/std/experimental/simd/test_utils.h
+++ b/libcxx/test/std/experimental/simd/test_utils.h
@@ -79,4 +79,16 @@ void assert_simd_mask_values_equal(const ex::simd_mask<T, SimdAbi>& origin_mask,
     assert(origin_mask[i] == expected_value[i]);
 }
 
+template <class SimdAbi, class T, class U = T>
+void assert_simd_values_equal(const ex::simd<T, SimdAbi>& origin_simd, U* expected_value) {
+  for (size_t i = 0; i < origin_simd.size(); ++i)
+    assert(origin_simd[i] == static_cast<T>(expected_value[i]));
+}
+
+template <class SimdAbi, class T>
+void assert_simd_mask_values_equal(const ex::simd_mask<T, SimdAbi>& origin_mask, bool* expected_value) {
+  for (size_t i = 0; i < origin_mask.size(); ++i)
+    assert(origin_mask[i] == expected_value[i]);
+}
+
 #endif // LIBCXX_TEST_STD_EXPERIMENTAL_SIMD_TEST_UTILS_H

@joy2myself
Copy link
Member Author

CI errors fixed by #76611

@joy2myself joy2myself force-pushed the split_simd branch 3 times, most recently from 8bae8c1 to db580a3 Compare December 30, 2023 11:30
@joy2myself
Copy link
Member Author

@philnik777 Any other comments here and for #76611 ?

@joy2myself joy2myself merged commit 6bb5c98 into llvm:main Jan 21, 2024
45 checks passed
@maryammo
Copy link
Contributor

maryammo commented Jan 23, 2024

@joy2myself, simd_ctor_load.pass.cpp fails on PowerPC rhel bot with following error

# .---command stderr------------
# | t.tmp.exe: /home/maryammo/llvm-workspace/myFork/llvm-project/libcxx/test/std/experimental/simd/simd.class/../test_utils.h:85: void assert_simd_values_equal(const ex::simd<T, SimdAbi> &, U *) [SimdAbi = std::experimental::simd_abi::__vec_ext<2>, T = long double, U = char]: Assertion `origin_simd[i] == static_cast<T>(expected_value[i])' failed.
# `-----------------------------
# error: command failed with exit status: 250

Could you please take a look? Thanks.

Update : Actually, it seems to be a similar assertion issue as simd_ctor_broadcast.pass.cpp one where it was XFAILed for PowerPC and tracked by this issue.

fadlyas07 pushed a commit to greenforce-project/llvm-project that referenced this pull request Jan 27, 2024
* llvm-project/main:
  [clang][Diagnostics] Highlight code snippets (#66514)
  [DAGCombiner] Use SmallDenseMap (NFC) (#79681)
  [LLDB] Default implementation for pack indexing types. (#79695)
  [Clang] Fix asan error after ad1a65fca
  [VPlan] Implement cloning of VPlans. (#73158)
  [RISCV] Fix -Wunused-variable in RISCVISelLowering.cpp (NFC)
  [Flang][OpenMP] Skip component symbols when creating extended values (#79657)
  [RISCV][ISel] Remove redundant vmerge for the vwadd. (#78403)
  [DevPolicy] Add guidance on bans  (#69701)
  Disable gdb_pretty_printer_test.sh.cpp for clang 19
  [Sema] Substitute parameter packs when deduced from function arguments (#79371)
  [Clang][C++26] Implement Pack Indexing (P2662R3). (#72644)
  [MLGO] Bump mlgo-utils version to 19.0.0
  [clang][Interp][NFC] Don't unnecessarily use std::optional
  [clang][Interp][NFC] Remove unused function
  [Driver] Use StringRef::consume_back (NFC)
  [CodeGen] Use a range-based for loop (NFC)
  [Analysis] Use llvm::succ_empty and llvm::successors (NFC)
  [clang-tools-extra] Use SmallString::operator std::string (NFC)
  [Concepts] Traverse the instantiation chain for parameter injection inside a constraint scope (#79568)
  [sanitizer] Handle Gentoo's libstdc++ path
  Revert "[Coverage] Map regions from system headers (#76950)"
  [bazel]: de-alias pybind11 headers target (#79676)
  [lldb] Remove obsolete signBinary helper (#79656)
  [InstCombine] Fix a comment. (#79422)
  [mlir][complex] Prevent underflow in complex.abs (#76316)
  ValueTracking: Merge fcmpImpliesClass and fcmpToClassTest (#66522)
  [clang-format] Fix a bug in AnnotatingParser::rParenEndsCast() (#79549)
  [clang][analyzer] Improve modeling of 'popen' and 'pclose' in StdLibraryFunctionsChecker (#78895)
  [IR] Use SmallDenseSet (NFC) (#79556)
  [llvm-exegesis] Refactor BenchmarkMeasure instantiation in tests
  [libc] adjust linux's `mman.h` definitions (#79652)
  [TextAPI] Rename SymbolKind to EncodeKind (#79622)
  [Exegesis] Do not assume the size and layout of the assembled snippet (#79636)
  [-Wunsafe-buffer-usage] Add a new warning for uses of std::span two-parameter constructors (#77148)
  [lldb] Fix progress reporting for SymbolLocatorDebugSymbols (#79624)
  [lldb] Streamline ConstString -> std::string conversion (NFC) (#79649)
  [X86] Skip unused VRegs traverse (#78229)
  [lldb] Remove unnecessary suffix from libc++ type name patterns (NFC) (#79644)
  [NVPTX] improve identifier renaming for PTX (#79459)
  [MLGO] Switch test to invoke pytype through python
  Revert "Refactor recomputeLiveIns to operate on whole CFG (#79498)"
  [fuchsia][libc] Include missing macro definitions (#79639)
  [libc++] Annotate generic_category/system_category as const (#78052)
  [libc++] Use GitHub-provided runners for the windows CI (#79326)
  [MLGO] Add pytype test (#79558)
  [libc++][NFC] Improve variable naming in __libcpp_thread_poll_with_backoff (#79638)
  [InstCombine] Preserve nuw/nsw/exact flags when transforming (C shift (A add nuw C1)) --> ((C shift C1) shift A). (#79490)
  [workflows] Use a custom token for creating backport PRs (#79501)
  Refactor recomputeLiveIns to operate on whole CFG (#79498)
  [-Wcompletion-handler] Fix a non-termination issue (#78380)
  [clangd] fix clang-tidy warning (llvm-qualified-auto) (#79617)
  [libc++] Add clang-19 to failing tests on Windows (#79619)
  [ELF] Improve comment of InputSection::file and update getFile. NFC (#79550)
  [lldb][NFCI] Remove EventData* parameter from BroadcastEventIfUnique (#79045)
  [X86] Do not end 'note.gnu.property' section with -fcf-protection (#79360)
  [NFC][AArch64] Fix indentation.
  [lldb][NFCI] Constrain EventDataBytes creation (#79508)
  [lldb][NFCI] Change BreakpointIDList::FindBreakpointID to BreakpointIDList::Contains (#79517)
  [DAG] Add a one-use check to concat -> scalar_to_vector fold. (#79510)
  [AIX][TLS] Disallow the use of -maix-small-local-exec-tls and -fno-data-sections (#79252)
  [Clang][RISCV] Forward --no-relax option to linker for RISC-V (#76432)
  Change check for embedded llvm version number to a regex to make test more flexible. (#79528)
  [Driver,CodeGen] Support -mtls-dialect= (#79256)
  [compiler-rt][builtins][FMV] Early exit in the Apple __init_cpu_features_resolver(). NFC
  [TargetParser][AArch64] Update a comment now that FMV support builtins have moved. NFC
  [OpenACC] Implement 'tile' clause parsing
  [PowerPC][X86] Make cpu id builtins target independent and lower for PPC (#68919)
  [clang][Interp] Cleaning up `FIXME`s added during `ArrayInitLoopExpr` implementation. (#70053)
  [RISCV] Add TuneNoSinkSplatOperands to sifive-p670 (#79492)
  [SeperateConstOffsetFromGEP] Handle `or disjoint` flags (#76997)
  [X86][GlobalISel] Remove G_OR/G_AND/G_XOR test duplication (NFC) (#79088)
  [gn build] Port 9058503d2690
  Minor bazel file cleanup (#79607)
  [X86] Fold not(pcmpeq(and(X,CstPow2),0)) -> pcmpeq(and(X,CstPow2),CstPow2) (REAPPLIED)
  [mlir][mesh] Rename cluster to mesh (#79484)
  [X86][ISEL] Add NDD entries in X86ISelDAGToDAG.cpp
  [flang] Lower passing non assumed-rank/size to assumed-ranks (#79145)
  Revert "[DebugInfo][RemoveDIs] Don't pointlessly scan funcs for debug-info (#79327)"
  [BOLT] Deprecate hfsort+ in favor of cdsort (#72408)
  [X86] Comment all getTargetConstantBitsFromNode calls that override the Whole/Partial Undefs flags. NFC.
  Revert "Fix bazel build past 3fdb431b636975f2062b1931158aa4dfce6a3ff1… (#79601)
  [LoopVectorize] Refine runtime memory check costs when there is an outer loop (#76034)
  Fix MSVC "signed/unsigned mismatch" warning. NFC.
  [llvm][DebugInfo] Fix c++20 warnings in LVOptions.h (#79585)
  Fix bazel build past 3fdb431b636975f2062b1931158aa4dfce6a3ff1 (#79599)
  Add support to meger strings used by metadata (#77364)
  [flang][Runtime] Add SIGNAL intrinisic (#79337)
  [libc][NFC] Use specific ASSERT macros to test errno (#79573)
  [X86][CodeGen] Add NDD entries for X86InstrInfo::foldImmediate
  [GISel] Lower scalar G_SELECT in LegalizerHelper (#79342)
  Reland "[lldb][ObjC][NFC] Fix c++20 gcc compile errors"
  [mlir][Linalg] Support lowerUnPack for identity out_dims_perm cases. (#79594)
  [mlir][LLVM] Use int32_t to indirectly construct GEPArg (#79562)
  [RISCV] Fix M1 shuffle on wrong SrcVec in lowerShuffleViaVRegSplitting
  [RISCV] Add test to showcase miscompile from #79072
  [VPlan] Relax IV user assertion after 0ab539f for epilogue vec.
  [MLIR] Added check for IsTerminator trait (#79317)
  [MemProf] Fix assert when exists direct recursion (#78264)
  [NFC] Rename TargetInstrInfo::FoldImmediate to TargetInstrInfo::foldImmediate and simplify implementation for X86
  Revert "[lldb][ObjC][NFC] Fix c++20 gcc compile errors"
  [lldb][ObjC][NFC] Fix c++20 gcc compile errors
  [RISCV] Refine cost on Min/Max reduction with i1 type (#79401)
  [LV] Fix handling of interleaving linear args (#78725)
  Fix bazel deps on ilogb_test_template (#79577)
  [VPlan] Add new VPScalarCastRecipe, use for IV & step trunc. (#78113)
  [flang][runtime] Implement SLEEP intrinsic (#79074)
  [llvm][Support][NFC] Remove stray character in AutoConvert.h license comment
  [AMDGPU] Fix typos. NFC
  [X86][CodeGen] Add NDD entries for isAssociativeAndCommutative
  [lldb][FreeBSD] Fix unused variable warning
  [DebugInfo][RemoveDIs] Don't pointlessly scan funcs for debug-info (#79327)
  [mlir][IR] Change `notifyBlockCreated` to `notifyBlockInserted` (#79472)
  [mlir][ArmSME] Fix loop bounds of masked loads/stores (#78983)
  [NFC][FMV] Add tests to demonstrate feature priorities. (#79455)
  [X86][test] Add MRM7r/MRM7m entries in evex format enc/dec tests
  [X86][CodeGen] Support flags copy lowering for NDD ADC/SBB/RCL/RCR (#79280)
  [AArch64] Add a couple more csinc tests with disjoint ors. NFC
  [CodeGen] Add no-op machine function pass for test purpose (#79541)
  [AMDGPU][NFC] Remove FIXME that has been resolved (#79047)
  [Clang][RISCV][RVV Intrinsic] Fix codegen redundant intrinsic names (#77889)
  Reland "[MemProf] Add missing header to list of installed headers. (#79413)"
  Revert "[MemProf] Add missing header to list of installed headers. (#79413)"
  [Clang][Sema] fix outline member function template with default align crash (#78400)
  [X86] Support APX promoted RAO-INT and MOVBE instructions (#77431)
  [Clang][Sema] fix crash of attribute transform (#78088)
  [X86] Support promoted ENQCMD, KEYLOCKER and USERMSR (#77293)
  [Target][AMDGPU] Fix TSan error on AMDGPU Target. (#79529)
  [mlir][TilingInterface] Use `LoopLikeOpInterface` in tiling using SCF to unify tiling with `scf.for` and `scf.forall`. (#77874)
  [llvm] [cmake] Include httplib in LLVMConfig.cmake (#79305)
  [Docs] Fix documentation build.
  [RISCV][clang] Optimize memory usage of intrinsic lookup table (#77487)
  [RISCV][SiFive] Reduce intrinsics of SiFive VCIX extension (#79407)
  [RISCV] Add missing dependency check for Zvkb (#79467)
  [ItaniumDemangle] reapply 0e754e114a6 (#79488)
  [RISCV] Minor whitespace as a test change [nfc]
  [LoongArch] Fixing the incorrect return value of LoongArchTTIImpl::getRegisterBitWidth (#79441)
  [TableGen] Use StringRef::consume_{front,back} (NFC)
  [Analysis] Use llvm::successors (NFC)
  [Transforms] Use llvm::pred_size and llvm::pred_successors (NFC)
  [Frontend] Use SmallString::operator std::string (NFC)
  [MemProf][NFC] Rename DefaultShadowGranularity to DefaultMemGranulari… (#79412)
  [PowerPC] Diagnose invalid combination with Altivec, VSX and soft-float (#79109)
  [MemProf] Add missing header to list of installed headers. (#79413)
  [mlir][sparse] fix error when convolution stride is applied on a dens… (#79521)
  Revert "[libc] add epoll_wait functions" (#79534)
  Make two texts static in `ReplayInlineAdvisor` (#79489)
  [libc] add epoll_wait functions (#79515)
  [flang][runtime] Fix integer overflow check for FORMATs (#79471)
  [flang] Improve USE merging of homonymous types, interfaces, and proc… (#79364)
  [flang] Rename new test to avoid a conflict on case-insensitive files… (#79531)
  [flang] Support KNINT and KIDNNT legacy intrinsic functions (#79190)
  Temporarily disable two libcxx chrono formatter tests
  [flang] Accept OPEN(...,CONVERT="SWAP") in semantics (#79050)
  [flang] Don't create impossible conversions in intrinsic extension (#79042)
  [OpenMP] Disable LTO build of libomptarget and plugins by default. (#79387)
  [flang] Inhibit case of false tokenization of Hollerith (#79029)
  [flang] Accomodate historic preprocessing usage (#78868)
  [flang] Get base objects right in definability checker (#78854)
  [BOLT] Deduplicate equal offsets in BAT (#76905)
  [flang] Silence spurious errors about SAVE (#78765)
  [DebugInfo][RemoveDIs] Add a DPValue implementation for instcombine sinking (#77930)
  [flang][runtime] Use std::fmod for most MOD/MODULO (#78745)
  [flang][runtime] Fix namelist substring checking (#78649)
  [flang] More Cray pointee checks (#78624)
  [BOLT][DWARF] Add option to specify DW_AT_comp_dir (#79395)
  [flang] Fix module file generation when generic shadows derived type (#78618)
  [flang][runtime] Validate pointer DEALLOCATE (#78612)
  [flang][runtime] Catch error on Ew.0 output editing (#78522)
  [flang] Correct checking of PRESENT() (#78364)
  [BOLT] Report input staleness (#79496)
  [flang][runtime] Invert component/element loops in assignment (#78341)
  [mlir][flang][openacc] Add device_type support for update op (#78764)
  [NVPTX] Add support for -march=native in standalone NVPTX (#79373)
  [flang] Add warnings for non-standard C_F_POINTER() usage (#78332)
  [ci] Diff against origin/BASE-BRANCH
  [ELF] Implement R_RISCV_TLSDESC for RISC-V
  [SCEVExp] Move logic to replace congruent IV increments to helper (NFC).
  [ci] Fix the base branch we use to determine changes (#79503)
  [workflows] Fix version-check.yml to work with the new minor release bump
  [workflows] Drop the intermediate /branch comment for release workflow (#79481)
  [SLP][NFC]Improve BottomTopTop reordering of orders for multi-iterations attempts, NFC.
  [llvm-objdump,SHT_LLVM_BB_ADDR_MAP,NFC] Use auto && instead of const auto & to allow moving from BBAddrMap objects. (#79456)
  [libc++] Fix missing and incorrect push/pop macros (#79204)
  [libc++] Update XFAIL for layout_stride/assert.conversion.pass.cpp in debug mode on PowerPC (#79169)
  [mlir][sparse] fix mismatch between `enter/exitWhileLoop` (#79493)
  [tsan] Lazily call 'personality' to minimize sandbox violations (#79334)
  [libc] Add fminf128 and fmaxf128 implementations for Linux x86_64. (#79307)
  [RISCV] Add Tune to DontSinkSplatOperands (#79199)
  [ASan][libc++] Correct (explicit) annotation size (#79292)
  Apply clang-tidy fixes for performance-unnecessary-value-param in NVGPUTransformOps.cpp (NFC)
  Apply clang-tidy fixes for bugprone-macro-parentheses in NVGPUTransformOps.cpp (NFC)
  Apply clang-tidy fixes for readability-identifier-naming in PipelineGlobalOps.cpp (NFC)
  Apply clang-tidy fixes for llvm-qualified-auto in PipelineGlobalOps.cpp (NFC)
  Apply clang-tidy fixes for llvm-qualified-auto in MLProgramOps.cpp (NFC)
  [sanitizer_common] Fix type in format specifier by casting
  [lldb][NFCI] Remove unused method BreakpointIDList::FindBreakpointID(const char *, size_t *) (#79215)
  [mlir][vector] Extend vector.{insert|extract}_strided_slice (#79052)
  [DeadStoreElimination] Use SmallSetVector (NFC) (#79410)
  [lldb] Fix printf format errors
  [libc] Fix type warning on gcc in float to str (#79482)
  Reapply 215b8f1e252, reverted in c3f7fb1421e
  [libc++] Add base for LLVM 19 release notes (#78990)
  [AArch64] Combine store (trunc X to <3 x i8>) to sequence of ST1.b. (#78637)
  Recommit "[RISCV] Support __riscv_v_fixed_vlen for vbool types. (#76551)"
  [ELF] Fix terminology: TLS optimizations instead of TLS relaxation. NFC
  [AArch64] Add a test from #79100, showing extra unnecessary movs. NFC
  [doc] Add special case for unsupported test (#78858)
  [ELF] Clean up R_RISCV_RELAX code. NFC
  bazel: fix build past 184ca39529a93e69eb175861d7fff5fc79988e53
  [RISCV] Disable exact VLEN splitting for bitrotate shuffles (#79468)
  [Object][Wasm] Allow parsing of GC types in type and table sections (#79235)
  [CodeGen] Add standard traits for LiveInterval::SingleLinkedListIterator (#79473)
  Revert "[X86] Fold not(pcmpeq(and(X,CstPow2),0)) -> pcmpeq(and(X,CstPow2),CstPow2)"
  Revert "[RISCV] Support __riscv_v_fixed_vlen for vbool types. (#76551)"
  [libc] Move printf long double to simple calc (#75414)
  [RISCV] Support __riscv_v_fixed_vlen for vbool types. (#76551)
  [llvm][LV] Move new test into X86 subfolder
  [gn] port 184ca39529a9
  [llvm] Move CodeGenTypes library to its own directory (#79444)
  [RISCV] Fix TLSDESC comment. NFC (#79403)
  [AMDGPU] Disable V_MAD_U64_U32/V_MAD_I64_I32 workaround for GFX11.5 (#79460)
  [analyzer] Avoid a crash in a debug printout function (#79446)
  [LTO] Fix fat-lto output for -c -emit-llvm. (#79404)
  [reland][mlir][amdgpu] Shared memory access optimization pass (#79164)
  [AMDGPU] Do not bother adding reserved registers to liveins (#79436)
  [mlir][ArmSME] Refactor ArmSMEToSCF to used shared loop-building helper (NFC) (#79172)
  [AMDGPU][NFC] Eliminate unnecessary operand classes. (#79450)
  [clang] Add test for CWG472 (#67948)
  [mlir][tensor] Enhance SimplifyUnPackToCollapseShape for unit dim cases. (#79262)
  [openmp] Silence warning when compiling with MSVC targetting x86
  [llvm] Silence warning when building with Clang ToT
  [LLD][ELF] Silence warning when building with Clang ToT
  [compiler-rt] Silence warning when building with Clang ToT
  [lldb] Silence warning when building with Clang ToT
  [llvm] Silence warning when compiling with MSVC targetting x86
  [llvm] Silence warning when compiling with MSVC targetting x86
  [llvm] Silence warning when compiling with MSVC targetting x86
  [LLD] Silence warning when compiling with MSVC targetting x86
  [clangd] Silence warning when compiling with MSVC targetting x86
  [clang] Silence warning when compiling with MSVC targetting x86
  [clang] Silence warning when building with MSVC targetting x86
  [SLP]Fix PR79229: Do not erase extractelement, if it used in multiregister node.
  Revert "[DebugInfo][RemoveDIs] Convert debug-info modes when loading bitcode (#78967)"
  [LoopFlatten] Use loop versioning when overflow can't be disproven (#78576)
  [gn] port 12a8bc0 more
  [gn build] Port 3fdb431b6369
  [Flang] Move genMinMaxlocReductionLoop to a common location.
  [AMDGPU][NFC] Rename the reg-or-imm operand predicates to match their class names. (#79439)
  [DebugInfo][RemoveDIs] Convert debug-info modes when loading bitcode (#78967)
  [clang][Interp][NFC] Add some working _Complex tests
  [DebugInfo][RemoveDIs] Make getDbgValueRange inlineable (#79331)
  More bazel fixes past 72ce6294157964042b7ed5576ce2c99257eeea9d (#79442)
  [flang] Lower struct ctor with character allocatable components (#79179)
  [gn] port 12a8bc09ca4f
  [LV] Check for innermost loop instead of EnableVPlanNativePath in CM.
  [clang][Parse][NFC] Make a local variable const
  [Flang] Minloc elemental intrinsic lowering (#74828)
  [AMDGPU][AsmParser][NFC] Rename integer modifier operands to follow the convention. (#79284)
  [AMDGPU][NFC] Use templates to decode AV operands. (#79313)
  [X86] Fix warning about unused variable [NFC]
  [mlir][bufferization] Fix SimplifyClones with dealloc before cloneOp (#79098)
  [mlir][IR] Add rewriter API for moving operations (#78988)
  [clang-apply-replacements] Add support for the `.yml` file extension (#78842)
  Fix bazel build past 3fdb431b636975f2062b1931158aa4dfce6a3ff1 (#79429)
  [LTO] Fix Veclib flags correctly pass to LTO flags (#78749)
  [CodeGen] Port FreeMachineFunction to new pass manager (#79421)
  Fix bazel build past 72ce6294157964042b7ed5576ce2c99257eeea9d (#79424)
  [RISCV] Use TableGen-based macro fusion (#72224)
  [RISCV][MC] Add experimental support of Zaamo and Zalrsc
  [flang] fix procedure fir.box_addr identification in boxed-procedure (#79290)
  [AMDGPU] Fix warnings about unused variables [NFC]
  [mlir][nvgpu] Fix `transposeB` in `nvgpu.warpgroup.mma` (#79271)
  [TableGen] Use MapVector to remove non-determinism
  [ARM] Fix MVEFloatOps check on creating VCVTN (#79291)
  Reapply "ValueTracking: Identify implied fp classes by general fcmp (#66505)"
  [Pass] Add hyphen to some pass names (#74287)
  [AMDGPU] New llvm.amdgcn.wave.id intrinsic (#79325)
  [CodeGen] Remove MachinePassKey (#79406)
  ValueTracking: Use correct compare type in test
  [RISCV] Reformat riscv-target-features.c. NFC (#79409)
  [TableGen] Add predicates for immediates comparison (#76004)
  [AArch64] Fix gcc warning about mix of enumeral and non-enumeral types [NFC]
  [RISCV] Implement foward inserting save/restore FRM instructions. (#77744)
  [CodeGen] Use llvm::successors (NFC)
  [clangd] Use SmallString::operator std::string (NFC)
  [Sema] Use StringRef::consume_front (NFC)
  [Analysis] Use llvm::pred_size (NFC)
  [Docs] Capitalize the first letter of Zi* extensions in RISCVUsage.rst. NFC
  [NFC] Fix various unintentional `//namespace` formatting
  [AMDGPU] Rename AMDGPULoadTr intrinsic class. NFC. (#79394)
  [RISCV] Add IsSignExtendingOpW to amocas.w. (#79351)
  [RISCV] Add test cases showing missed opportunity to remove sext.w after amocas.w. NFC
  [RISCV][CostModel] Refine Arithmetic reduction costs (#79103)
  [mlir][tensor] Enhance SimplifyPackToExpandShape for unit dim cases. (#79247)
  [X86][MC] Support Enc/Dec for NF BMI instructions (#76709)
  [Instrumentation] Remove unused variable 'DL' in MemProfiler.cpp (NFC)
  [MemProf][NFC] remove unneeded sized memory access callback (#79260)
  [MemProf][NFC] remove unneeded TypeSize in InterestingMemoryAccess (#79244)
  [RISCV] Add test coverage for bad interaction of exact vlen and rotate shuffles
  Revert "[Modules] [HeaderSearch] Don't reenter headers if it is pragm… (#79396)
  [clang][analyzer] Improve modeling of 'execv' and 'execvp' in StdLibraryFunctionsChecker (#78930)
  [RISCV] Fix a bug accidentally introduced in e9311f9
  [RISCV] Add test coverage for shuffle index > i8 cornercase
  [libc] Use __SIZEOF_LONG__ to define LONG_WIDTH instead of sizeof(long). (#79391)
  [BOLT] Fix updating DW_AT_stmt_list for DWARF5 TUs (#79374)
  [msan] Enable msan-handle-asm-conservative for userspace by default (#79251)
  [gn build] Port bddeef54cb66
  [lldb] [NFC] Remove unused WatchpointResource::SetID method (#79389)
  [lldb] [NFC] Remove unused WatchpointResourceList class (#79385)
  [compiler-rt] remove hexdump interception. (#79378)
  Reland "[SimplifyCFG] Improve the precision of `PtrValueMayBeModified`"
  Reland "[SimplifyCFG] Check if the return instruction causes undefined behavior"
  [AMDGPU] Simplify VOP3PWMMA_Profile. NFC. (#79377)
  [SHT_LLVM_BB_ADDR_MAP] Avoids side-effects in addition since order is unspecified. (#79168)
  [libc] Add backup definition for LONG_WIDTH in limits-macros.h. (#79375)
  [MLIR] Fix tblgen properties printing to filter them out of discardable attrs dict (#79243)
  [SLP]Fix PR79321: SLPVectorizer's PHICompare doesn't provide a strict weak ordering. Try to make PHICompare to meat strict weak ordering criteria.
  [OpenACC} Implement 'async' parsing.
  [libc] Add C23 limits.h header. (#78887)
  [AMDGPU] Update isLegalAddressingMode for GFX12 SMEM loads (#78728)
  [RISCV][GISel] First mask argument placed in v0 according to RISCV Ve… (#79343)
  Revert "[SemaCXX] Implement CWG2137 (list-initialization from objects of the same type) (#77768)"
  Revert "compiler-rt: Fix FLOAT16 feature detection"
  [Driver,test] Add --target= to unsupported-option-gpu.c
  [libc][NFC] mark hashtable as resizable (#79354)
  [libc][NFC] remove TODO about AppProperties (#79356)
  [mlir][sparse] fix stack UAF (#79353)
  Fix comparison of Structural Values
  [Docs] Mention RISC-V in the introductory paragraph in ShadowCallStack.rst. (#79241)
  Unconditionally lower std::string's alignment requirement from 16 to 8. (#68925)
  [Offload] Fix the offloading wrapper when merged multiple times. (#79231)
  [LinkerWrapper] Do not link device code under a relocatable link (#79314)
  [mlir][sparse] setup `SparseIterator` to help generating code to traverse a sparse tensor level. (#78345)
  [SLP]Fix PR79229: Check that extractelement is used only in a single node before erasing.
  Move raw_string_ostream back to raw_ostream.cpp (#79224)
  [SystemZ] Require D12 for i128 accesses in isLegalAddressingMode() (#79221)
  [libc] remove unstable mincore test for invalid vec (#79348)
  [lld][WebAssembly] Fix test on Windows, use llvm-ar instead of ar
  [opt] Remove trailing space that accidentally got added
  [clang] Make sure the same UsingType is searched and inserted (#79182)
  [mlgo] bazel rules for mlgo-utils (#79217)
  [gn] port 32f7922646d5 (LLVMOptDriver)
  Reland "[CMake/Bazel] Support usage of opt driver as a library (#79205)"
  [CodeGen][MISched] Rename instance of Cycle -> ReleaseAtCycle
  Revert "[CMake/Bazel] Support usage of opt driver as a library (#79205)"
  [libc] reland mincore (#79309)
  [CodeGen][MISched] Handle empty sized resource usage. (#75951)
  [CMake/Bazel] Support usage of opt driver as a library (#79205)
  [libc][NFC] Fix `-DSHOW_INTERMEDIATE_OBJECTS=DEPS` to work properly for entry points and unit tests. (#79254)
  [Clang] Fix the signature of __builtin___stpncpy_chk
  [Driver] Test ignored target-specific options for AMDGPU/NVPTX (#79222)
  [BPI] Transfer value-handles when assign/move constructing BPI (#77774)
  [gn build] port 4a582845597e (tablegen'd clang builtins)
  [clang] Incorrect IR involving the use of bcopy (#79298)
  [SLP]Fix PR79321: SLPVectorizer's PHICompare doesn't provide a strict weak ordering.
  [NVPTX] use incomplete aggregate initializers (#79062)
  [ConstraintElimination] Use std::move in the constructor (NFC) (#79259)
  [RISCV] Separate single source and dual source lowering code [nfc]
  [clangd] Make sure ninja can clean "ClangdXPC.framework" (#75669)
  [TableGen] Include source location in JSON dump (#79028)
  [ci] Remove unused generate-buildkite-pipeline-scheduled script (#79320)
  [flang][openacc] Lower DO CONCURRENT with acc loop (#79223)
  [ELF] Don't resolve relocations referencing SHN_ABS to tombstone in non-SHF_ALLOC sections (#79238)
  [RISCV] Sink code into using branch in shuffle lowering [nfc]
  [clang] NFC: Remove `{File,Directory}Entry::getName()` (#74910)
  Remove fork handling from release issue workflow (#79310)
  [llvm][bazel] Fix BUILD
  [llvm][bazel] Fix BUILD.
  [RISCV] Recurse on second operand of two operand shuffles (#79197)
  Fix bazel build past 4a582845597e97d245e8ffdc14281f922b835e56 (#79318)
  [libunwind][doc] Remove reference to Phabricator from the landing page
  [libc++][docs] Remove mention of Phabricator on the landing page
  [clang][bazel] Fix BUILD after 4a582845597e97d245e8ffdc14281f922b835e56.
  [OpenMP][MLIR] Add omp.distribute op to the OMP dialect (#67720)
  [ci] Remove bits that are unused since we stopped using Phabricator
  [AMDGPU][NFC] Simplify AGPR/VGPR load/store operand definitions. (#79289)
  [clang][bazel] Fix BUILD after 4a582845597e97d245e8ffdc14281f922b835e56.
  [HEXAGON] Inlining Division (#79021)
  [NFC][DebugInfo] Maintain RemoveDIs flag when attributor creates functions (#79143)
  [clang][Parse][NFC] Make a local variable const
  [libc] Add sqrtf128 implementation for Linux x86_64. (#79195)
  compiler-rt: Fix FLOAT16 feature detection
  [AMDGPU] Move architected SGPR implementation into isel (#79120)
  Use correct tokens in release issue workflow (#79300)
  [DebugNames] Implement Entry::GetParentEntry query (#78760)
  Add necessary permissions to release issue workflow (#79272)
  [libc++][NFC] Fix leftover && in comment
  [libc++][NFC] Rewrite function call on two lines for clarity (#79141)
  [ConstraintElim] Make sure min/max intrinsic results are not poison.
  [InstCombine] Canonicalize constant GEPs to i8 source element type (#68882)
  [AArch64] Add vec3 tests with different load/store alignments.
  [clang][AST][NFC] Turn a isa<> + cast<> into dynamic_cast<>
  [JumpThreading] Add test for #79175 (NFC)
  [X86] X86FixupVectorConstants - shrink vector load to movsd/movsd/movd/movq 'zero upper' instructions (#79000)
  [Support] Adjust .note.GNU-stack guard in Support/BLAKE3/blake3_*_x86-64_unix.S (#76229)
  [AArch64] FP/SIMD is not mandatory for v8-R (#79004)
  Fix bazel build past 7251243315ef66f9b3f32e6f8e9536f701aa0d0a (#79282)
  [Loads] Use BatchAAResults for available value APIs (NFCI)
  [AMDGPU] Add GFX12 WMMA and SWMMAC instructions (#77795)
  [flang] Set assumed-size last extent to -1 (#79156)
  [X86] Fold not(pcmpeq(and(X,CstPow2),0)) -> pcmpeq(and(X,CstPow2),CstPow2)
  [X86] Add test coverage based on #78888
  Fix spelling typo. NFC
  [clang][Interp][NFC] Complex elements can only be primitives
  [ConstraintElim] Add tests for #78621.
  [AMDGPU] Require explicit immediate offsets for SGPR+IMM SMEM instructions. (#79131)
  [AMDGPU][GFX12] VOP encoding and codegen - add support for v_cvt fp8/… (#78414)
  Revert "AMDGPU/GlobalISelDivergenceLowering: select divergent i1 phis" (#79274)
  [AST] Mark the fallthrough coreturn statement implicit. (#77465)
  AMDGPU: update GFX11 wmma hazards (#76143)
  AMDGPU/GlobalISelDivergenceLowering: select divergent i1 phis (#78482)
  [openmp][flang][offloading] Do not use fixed device IDs in checks (#78973)
  [clang-repl] Refine fix for linker error: PLT offset too large
  [DebugInfo][RemoveDIs] Support DPValues in HWAsan (#78731)
  Fix release issue workflow (#79268)
  [clang] Refactor Builtins.def to be a tablegen file (#68324)
  [LAA] Drop alias scope metadata that is not valid across iterations (#79161)
  [PhaseOrdering] Add additional test for #79161 (NFC)
  [X86][NFC] Remove dead code for "_REV" instructions
  [MSSAUpdater] Handle simplified accesses when updating phis (#78272)
  [X86][CodeGen] Fix crash when commute operands of Instruction for code size (#79245)
  [DebugInfo] Use std::size (NFC)
  [AMDGPU] Use llvm::none_of (NFC)
  [Transforms] Use llvm::pred_size and llvm::predecessors (NFC)
  [Driver] Use StringRef::consume_front (NFC)
  [mlir][Bazel] Add missing dependency after 750e90e4403df23d6b271afb90e6b4d463739965
  [RISCV] Add tests for reverse shuffles of i1 vectors. NFC
  [mlir][vector] Support scalable vec in `TransferReadAfterWriteToBroadcast` (#79162)
  [docs] [C++20] [Modules] Document how to import modules in clang-repl
  [llvm-objcopy] Don't remove .gnu_debuglink section when using --strip-all (#78919)
  [NFC] Add more requirement to clang/test/Interpreter/cxx20-modules.cppm
  [X86][Peephole] Add NDD entries for EFLAGS optimization
  Support C++20 Modules in clang-repl (#79261)
  Revert "[lldb] Improve maintainability and readability for ValueObject methods (#75865)"
  [clang][dataflow] Eliminate two uses of `RecordValue::getLoc()`. (#79163)
  [Clang][NFC] Optimize isAsciiIdentifierContinue (#78699)
  [X86][NFC] Pre-commit test for RA hints for APX NDD instructions
  [include-cleaner] Check emptiness instead of occurences (#79154)
  [gn build] Port 7251243315ef
  [MLIR] NFC. Clean up stale TODO comments and style deviations in affine utils (#79079)
  Update compiler version expected that seems to be embedded in CHECK line of test at llvm/test/CodeGen/SystemZ/zos-ppa2.ll.
  [X86][CodeGen] Transform NDD SUB to CMP if dest reg is dead (#79135)
  [RISCV] Update performCombineVMergeAndVOps comments. NFC (#78472)
  [LoongArch][test] Add tests reporting error if lsx/lasx feature is missing when lsx/lasx builtins are called (#79250)
  [test] Make dwarf-loongarch-relocs.ll non-sensitive of function alignment
  [RISCV] Allow VCIX with SE to reorder (#77049)
  [CodeGen][Passes] Move `CodeGenPassBuilder.h` to Passes (#79242)
  [test] Update dwarf-loongarch-relocs.ll
  Bump trunk version to 19.0.0git
  [RISCV][MC] Split tests for A into Zaamo and Zalrsc parts
  [RISCV] Add sifive-p670 processor (#79015)
  [llc] Remove C backend support (#79237)
  [Modules] [HeaderSearch] Don't reenter headers if it is pragma once  (#76119)
  [gn build] port 7e50f006f7f6
  [LSR] Fix incorrect comment. NFC (#79207)
  [AMDGPU] Pick available high VGPR for CSR SGPR spilling (#78669)
  [NewPM][CodeGen][llc] Add NPM support (#70922)
  [ELF,test] Improve dead-reloc-in-nonalloc.s
  [SROA] Only try additional vector type candidates when needed (#77678)
  [LoongArch] Insert nops and emit align reloc when handle alignment directive (#72962)
  [Github] Only run libclang-python-tests on monorepo main
  [AsmPrinter] Remove mbb-profile-dump flag (#76595)
  [SROA] NFC: Precommit test for pull/77678
  [mlir] Add example of `printAlias` to test dialect (NFC) (#79232)
  [RISCV] Support TLSDESC in the RISC-V backend (#66915)
  [lldb] Improve maintainability and readability for ValueObject methods (#75865)
  [nfc][clang] Fix test in new-array-init.cpp (#79225)
  [SROA] NFC: Extract code to checkVectorTypesForPromotion
  [libc] remove redundant call_once (#79226)
  [Docs][DebugInfo][RemoveDIs] Document some debug-info transition info (#79167)
  Revert "[ASan][libc++] Turn on ASan annotations for short strings (#79049)"
  [DebugInfo][RemoveDIs] "Final" cleanup for non-instr debug-info (#79121)
  [mlir][ArithToAMDGPU] Add option for saturating truncation to fp8 (#74153)
  [mlir][sparse] adjust compression scheme for example (#79212)
  [NFCI] Move SANITIZER_WEAK_IMPORT to sanitizer_common (#79208)
  AMDGPU: Add SourceOfDivergence for int_amdgcn_global_load_tr (#79218)
  [Clang][Driver] Fix `--save-temps` for OpenCL AoT compilation (#78333)
  [misc-coroutine-hostile-raii] Use getOperand instead of getCommonExpr. (#79206)
  [clang][FatLTO] Avoid UnifiedLTO until it can support WPD/CFI (#79061)
  [libc++] Fix outdated release procedure for release notes
  [Preprocessor][test] Test ARM64EC definitions (#78916)
  [lldb][NFCI] Remove unused method BreakpointIDList::AddBreakpointID(const char *) (#79189)
  [mlir][Target] Teach dense_resource conversion to LLVMIR Target (#78958)
  Added feature in llvm-profdata merge to filter functions from the profile (#78378)
  [libc] Fix implicit conversion in FEnvImpl for arm32 targets. (#79210)
  [clang] Use LazyDetector for all toolchains. (#79073)
  [PowerPC] lower partial vector store cost (#78358)
  [ELF,test] Actually fix defsym.ll
  [ELF,test] Fix defsym.ll
  [SLP]Fix PR79193: skip analysis of gather nodes for minbitwidth.
  [IndVars] Add NUW variants to iv-poison.ll and variants with extra uses.
  [Format] Fix detection of languages when reading from stdin (#79051)
  [libc++] Run the nightly libc++ build at 03:00 Eastern for real (#79184)
  [libc] Fix aliasing function name got accidentally deleted in #79128. (#79203)
  [RISCV] Move FeatureStdExtH in RISCVFeatures.td. NFC
  Revert "[libc] Fix forward arm32 buildbot" (#79201)
  [lldb] Include SBFormat.h in LLDB.h (#79194)
  [ELF] --save-temps --lto-emit-asm: derive ELF/asm file names from bitcode file names
  [CMake][Release] Add option for enabling PGO to release cache file. (#78823)
  [ELF] Improve thin-archivecollision.ll
  [NFC] Size and element numbers are often swapped when calling calloc (#79081)
  [RISCV] Regenerate autogen test to remove spurious diff
  [RISCV] Recurse on first operand of two operand shuffles (#79180)
  [LLD] [COFF] Fix crashes for cfguard with undefined weak symbols (#79063)
  [RISCV] Exploit register boundaries when lowering shuffle with exact vlen (#79072)
  [libc] fix sysconf (#79159)
  [ASan][libc++] Turn on ASan annotations for short strings (#79049)
  [ASan][JSON] Unpoison memory before its reuse (#79065)
  [mlir][AMDGPU] Actually update the default ABI version, add comments (#79185)
  [test] Avoid libc dep in Update warn-unsafe-buffer-usage-warning-data… (#79183)
  [ASan][ADT] Don't scribble with ASan (#79066)
  Revert "Reapply [hwasan] Update dbg.assign intrinsics in HWAsan pass … (#79186)
  AMDGPU: Do not generate non-temporal hint when Load_Tr intrinsic did not specify it (#79104)
  [RISCV] Re-format RISCVFeatures.td so it doesn't look like AssemblerPredicate is an operand to Predicate. (#79076)
  [Orc] Let LLJIT default to JITLink for ELF-based ARM targets  (#77313)
  Re-land [openmp] Fix warnings when building on Windows with latest MSVC or Clang ToT (#77853)
  Revert "[clang-repl] Enable native CPU detection by default (#77491)" (#79178)
  [ConstantHoisting] Cache OptForSize. (#79170)
  [gn] port 5176df55d3a
  [libc][Docs] Update the GPU RPC documentation (#79069)
  [RISCV] Add regalloc hints for Zcb instructions. (#78949)
  [RISCV] Continue with early return for shuffle lowering [nfc]
  [clang][modules] Fix CodeGen options that can affect the AST. (#78816)
  [MachineCopyPropagation] Make a SmallVector larger (NFC) (#79106)
  [OpenACC] Implement 'device_type' clause parsing
  [clang] Add missing streaming attributes to SVE builtins (#79134)
  [RISCV] Use early return for select shuffle lowering [nfc]
  [LangRef] adjust IR atomics specification following C++20 model tweaks. (#77263)
  [DebugInfo][RemoveDIs] Disable a run-line while investigating a problem
  [JITLink][AArch32] Implement Armv5 ldr-pc stubs and use them for all pre-v7 targets (#79082)
  [CompilerRT] Attempt to fix a lit-config issue
  [Clang][AArch64] Add diagnostics for builtins that use ZT0. (#79140)
  [RemoveDIs][DebugInfo] Enable creation of DPVAssigns, update outstanding AT tests (#79148)
  [AMDGPU] Enable architected SGPRs for GFX12 (#79160)
  [libc][NFC] Remove `FPBits` cast operator (#79142)
  [DAG] visitSCALAR_TO_VECTOR - don't fold scalar_to_vector(bin(extract(x),extract(y)) -> bin(x,y) if extracts have other uses
  [DebugInfo][RemoveDIs] Use splice in Outliner rather than moveBefore (#79124)
  [AMDGPU] Properly check op_sel in GCNDPPCombine (#79122)
  [RemoveDIs][DebugInfo] Handle DPVAssign in most transforms (#78986)
  [VecLib] Fix: Restore DebugFlag state in ReplaceWithVecLibTest (#78989)
  [LAA] Add test for #79137 (NFC)
  [AArch64][FMV] Support feature MOPS in Function Multi Versioning. (#78788)
  [X86] Add test case for Issue #78897
  [libc][NFC] use builder pattern for ErrnoSetterMatcher (#79153)
  [libc] Remove specific nan payload in math functions (#79133)
  [lld-macho][arm64] implement -objc_stubs_small (#78665)
  [PGO] Remove calls to `__llvm_orderfile_dump()` in `instrprof-api.c` test (#79150)
  Remove config.aarch64_sme from compiler-rt/unittests/lit.common.unit.configured.in
  [libc] Fix forward arm32 buildbot (#79151)
  [DebugInfo][RemoveDIs] Handle non-instr debug-info in GlobalISel (#75228)
  [MLIR][AMDGPU] Switch to code object version 5 (#79144)
  [gn build] Port 40bdfd39e394
  [CMake][PGO] Add libunwind to list of stage1 runtimes (#78869)
  [ARM] Introduce the v9.5-A architecture version to Arm targets (#78994)
  [llvm-reduce][DebugInfo] Support reducing non-instruction debug-info (#78995)
  [RemoveDIs][DebugInfo] Handle DPVAssigns in Assignment Tracking excluding lowering (#78982)
  [AMDGPU] Remove getWorkGroupIDSGPR, unused since aa6fb4c45e01
  [MachineOutliner] Refactor iterating over Candidate's instructions (#78972)
  fix test (#79018)
  [clang][Interp][NFC] Move ToVoid casts to the bottom
  [Headers][X86] Add macro descriptions to bmiintrin.h (#79048)
  Revert 10f3296dd7d74c975f208a8569221dc8f96d1db1 - [openmp] Fix warnings when building on Windows with latest MSVC or Clang ToT (#77853)
  [test] Update stack_guard_remat.ll (#79139)
  [openmp] Fix warnings when building on Windows with latest MSVC or Clang ToT (#77853)
  ValueTracking: Recognize fcmp ole/ugt with inf as a class test (#79095)
  Restore: [mlir][ROCDL] Stop setting amdgpu-implicitarg-num-bytes (#79129)
  [reland][libc] Remove unnecessary `FPBits` functions and properties (#79128)
  [gn] port 3ab8d2aac7bc
  [AArch64] Add vec3 tests with add between load and store.
  [MC][X86] Merge lane/element broadcast comment printers. (#79020)
  [RemoveDIs][DebugInfo] Handle DPVAssigns in AssignmentTrackingLowering (#78980)
  [AMDGPU] Handle V_PERMLANE64_B32 in fixVcmpxPermlaneHazards (#79125)
  Revert "[clang][modules] Print library module manifest path. (#76451)"
  ProfileSummary.h - remove unnecessary std::move.
  [clang-repl] Fix CMake errors when cross compiling
  [Support] Avoid a VirtualBox shared folders mmap bug (#78597)
  [AMDGPU] Update llvm-objdump lit tests for COV5 (#79039)
  [AMDGPU] Change default AMDHSA Code Object version to 5 (#79038)
  [PhaseOrder] Add test where indvars dropping NSW prevents vectorization.
  [Clang] Amend SME attributes with support for ZT0. (#77941)
  [X86] canonicalizeShuffleWithOp - recognise constant vectors with getTargetConstantFromNode
  Fix MSVC "result of 32-bit shift implicitly converted to 64 bits" warning. NFC.
  [AArch64][compiler-rt] Add memcpy, memset, memmove, memchr builtins. (#77496)
  Reapply [hwasan] Update dbg.assign intrinsics in HWAsan pass #78606
  [SCEVExp] Add additional tests for hoisting IVs with NSW flags.
  [Lex] Avoid repeated calls to getIdentifierInfo() (NFC)
  [InstCombine] Remove one-use check if other logic operand is constant (#77973)
  [RemoveDIs][NFC] Disable RemoveDIs tests that are not yet enabled
  Revert "[libc] Remove unnecessary `FPBits` functions and properties" (#79118)
  [OrcJITTests] Fix warning: suggest explicit braces to avoid ambiguous 'else' (NFC)
  [llvm-jitlink-executor] Fix unused function warning with LLVM_ENABLE_THREADS=0 (NFC)
  [libc] Remove unnecessary `FPBits` functions and properties (#79113)
  [libc++] Remove a duplicated definition of _LIBCPP_NOINLINE (#79114)
  [AMDGPU][NFC] Refine determining the vdata operand in MUBUF_Load_Pseudo<>.
  test/llvm-cov: Regenerate mcdc-maxbs.o w/o zlib (#78963)
  [TLI] Remove leftover assert in TargetLibraryInfoImpl initialize (#79056)
  fix optional wait wrongly treated as false (#78149)
  [dsymutil] Add --linker parallel to more tests. (#78581)
  [DebugInfo] Remove redefinition of 'getDPVAssignmentMarkers' (NFC)
  [AMDGPU][True16] Support source DPP operands. (#79025)
  [Flang][OpenMP] Fix to variables not inheriting data sharing attributes (#79017)
  [RemoveDIs][DebugInfo] Update SROA to handle DPVAssigns (#78475)
  [clang][dataflow] Process terminator condition within `transferCFGBlock()`. (#78127)
  [X86][CodeGen] Add entries for NDD SHLD/SHRD to the commuteInstructionImpl
  [Coverage] getMaxBitmapSize: Scan `max(BitmapIdx)` instead of the last `Decision` (#78963)
  [RISCV] Add IntrArgMemOnly for vector unit stride load/store intrinsics (#78415)
  Reland "[llvm][AArch64] Copy all operands when expanding BLR_BTI bundle (#78267)" (#78719)
  [X86][NFC] Simplify function X86InstrInfo::commuteInstructionImpl
  [C++20] [Modules] Handle inconsistent deduced function return type from importing modules
  [llvm-exegesis] Add additional validation counters (#76788)
  Fix MFS warning format
  [CodeGen][LoongArch] Set FP_TO_SINT/FP_TO_UINT to legal for vector types (#79107)
  [flang] Do not leak intrinsics used by ISO_C_BINDING and ISO_FORTRAN_ENV (#79006)
  [libc++][hardening] Categorize assertions related to strict weak ordering (#77405)
  [docs] Add llvm & clang release notes for LoongArch (#79097)
  [CodeGen][LoongArch] Set SINT_TO_FP/UINT_TO_FP to legal for vector types (#78924)
  [RISCV] Fix stack size computation when M extension disabled (#78602)
  [clang-tidy][DOC] Update list.rst
  [ELF] Improve ThinLTO tests
  [LoongArch] Add definitions and feature 'frecipe' for FP approximation intrinsics/builtins (#78962)
  [libc] add missing header deps to getauxval (#79091)
  [libc] remove getauxval from arm32 entrypoint list (#79093)
  [Coverage] Map regions from system headers (#76950)
  [gn build] Port a6065f0fa55a
  Arm64EC entry/exit thunks, consolidated. (#79067)
  [libc++][test] Use LIBCPP_ASSERT in some `system_category`-related tests (#78834)
  [llvm-diff] Use llvm::predecessors (NFC)
  [SPIRV] Use llvm::find (NFC)
  [IR] Use StringRef::consume_front (NFC)
  [DebugInfo] Use DenseMap::lookup (NFC)
  ValueTracking: Handle fcmp true/false in fcmpToClassTest
  ValueTracking: Add tests for fcmpToClassTest for fcmp ole/ugt inf
  ValueTracking: Add tests fcmpToClassTest for fcmp true/false
  [RISCV] Add FeatureFastUnalignedAccess to sifive-p450. (#79075)
  [clang][dataflow] Make cap on block visits configurable by caller. (#77481)
  [libc++][NFC] Fix formatting in check_assertion.h
  [libc++] Fix the behavior of throwing `operator new` under -fno-exceptions (#69498)
  nfc add test cases for PowerPC vector instructions cost analysis
  [clang-format]: Fix formatting of if statements with BlockIndent  (#77699)
  [RISCV][CostModel] Make VMV_S_X and VMV_X_S cost independent of LMUL (#78739)
  [clang-format] Fix a bug in ContinuationIndenter (#78921)
  [libc] implement sys/getauxval (#78493)
  [libc] Include missing RISC-V stdlib.h and math.h entrypoints (#79034)
  [FatLTO] output of -ffat-lto-objects -S should be assembly. (#79041)
  [JITLink][AArch32] Implement R_ARM_PREL31 and process .ARM.exidx sections (#79044)
  Revert "[gn] port 3ab8d2aac7bc"
  [X86] Support encoding/decoding and lowering for APX variant SHL/SHR/SAR/ROL/ROR/RCL/RCR/SHLD/SHRD (#78853)
  Revert "[AArch64][compiler-rt] Add memcpy, memset, memmove, memchr builtins. (#77496)"
  [ELF] Fix spurious warning for -z rel && -z rela
  [libc++][hardening] Classify assertions related to leaks and syscalls. (#77164)
  [libc++] Fix linking for platforms that don't implement std::exception_ptr (#79040)
  [JITLink][AArch32] Multi-stub support for armv7/thumbv7 (#78371)
  [RISCV] Merge ADDI with X0 into base offset (#78940)
  [AMDGPU] SILowerSGPRSpills: do not update MRI reserve registers (#77888)
  Apply clang-tidy fixes for readability-identifier-naming in PolynomialApproximation.cpp (NFC)
  Apply clang-tidy fixes for llvm-else-after-return in LLVMDialect.cpp (NFC)
  Apply clang-tidy fixes for readability-simplify-boolean-expr in Vectorization.cpp (NFC)
  Apply clang-tidy fixes for readability-identifier-naming in Transforms.cpp (NFC)
  Apply clang-tidy fixes for modernize-loop-convert in Transforms.cpp (NFC)
  [Docs] Add anchors for llvm.minimum/maximum in LangRef.rst. NFC
  [gn] port 3ab8d2aac7bc
  [clang][analyzer] Remove unused variable in StreamChecker.cpp (NFC)
  [clang][analyzer] Support 'getdelim' and 'getline' in StreamChecker (#78693)
  [LoongArch] Permit auto-vectorization using LSX/LASX with `auto-vec` feature (#78943)
  [HIP][Driver] Automatically include `hipstdpar` forwarding header (#78915)
  [VP][RISCV] Introduce llvm.vp.minimum/maximum intrinsics (#74840)
  [libc] Replace -nostdlib++ flag when building with gcc and add placement new operator to HermeticTestUtils.cpp. (#78906)
  [BitcodeWriter] Remove ThinLTO-specific bits from legacy pass
  [SelectOpt] Add handling for Select-like operations. (#77284)
  [Blaze] Fix build file
  [AArch64][compiler-rt] Add memcpy, memset, memmove, memchr builtins. (#77496)
  [NFC][DebugInfo] Set a testing flag to be hidden
  [flang] Allow assumed-shape element pass to dummy arg with ignore_tkr (#78196)
  [clang-tidy] Ignore user-defined literals in google-runtime-int (#78859)
  [flang][driver] deprecate manual usage of -lFortran_main (#79016)
  [NFC][Debuginfo][RemoveDIs] Switch an insertion to use iterators
  [tsan] Fix build for FreeBSD and NetBSD after 0784b1eefa36 (#79019)
  Revert "Reland [Clang][CMake] Support perf, LBR, and Instrument CLANG_BOLT options (#69133)"
  [libc] default enable -ftrivial-auto-var-init=pattern (#78776)
  Reland [Clang][CMake] Support perf, LBR, and Instrument CLANG_BOLT options (#69133)
  [Coverage][clang] Ensure bitmap for ternary condition is updated before visiting children (#78814)
  [AMDGPU] Remove s_set_inst_prefetch_distance support from GFX12 (#78786)
  [RISCV] Remove extra semicolons. NFC
  [Coverage] Const-ize `MCDCRecordProcessor` stuff (#78918)
  [test] Update stack_guard_remat.ll
  [RISCV] Add coverage for shuffles splitable using exact VLEN
  Require asserts for llvm/test/CodeGen/PowerPC/sms-regpress.mir.
  Reland "[lli] Revisit Orc debug output tests (#79055)"
  [NFC][Clang] Fix compile warning caused by #78330
  [clang][NFC] Update top-level Code Coverage documentation to include MC/DC.
  [RISCV] Add TuneNoDefaultUnroll to sifive-p450.
  [OpenMP][Fix] Require USM capability in force-usm test (#79059)
  [Thumb,ELF] Fix access to dso_preemptable __stack_chk_guard with static relocation model (#78950)
  [RISCV] Combine HasStdExtZfhOrZfhmin and HasStdExtZfhmin. NFC (#78826)
  [RISCV] Add Zic64b, Ziccamoa, Ziccif, Zicclsm, Ziccrse, and Za64rs to sifive-p450. (#79030)
  [OpenMP][USM] Introduces -fopenmp-force-usm flag (#76571)
  Revert "[lli] Revisit Orc debug output tests" (#79055)
  [clang-tidy] fix misc-const-correctnes false-positive for fold expressions (#78320)
  Fix a bug in implementation of Smith's algorithm used in complex div. (#78330)
  Revert "Reapply [hwasan] Update dbg.assign intrinsics in HWAsan pass … (#79053)
  [gn build] Port 263efb044add
  [lli] Revisit Orc debug output tests (#76822)
  [Clang] Update feature test macros for Clang 18 (#78991)
  [gn build] Port 06c3c3b67cb0
  [gn] port 4f21fb844792
  [mlir] Update "UNSUPPORTED" directive in a test
  [PGO] Reland PGO's Counter Reset and File Dumping APIs #76471 (#78285)
  [clang][AIX] Only export libclang.map symbols from libclang (#78748)
  [CLANG] Add warning when INF or NAN are used in a binary operation or as function argument in fast math mode. (#76873)
  [OpenACC] Implement 'vector' and 'worker' cluase argument parsing
  [libc][riscv] Check if we have F or D extension before using them (#79036)
  [lldb][libc++] Adds system_clock data formatters. (#78609)
  [flang] Fix a warning
  [gn] port a80e65e00ada7
  [CodeGen][X86] Fix lowering of tailcalls when `-ms-hotpatch` is used (#77245)
  [Sema] Fix a warning
  [libc++] Fix std::regex_search to match $ alone with match_default flag (#78845)
  Added settings for DEBUGINFOD cache location and timeout (#78605)
  [RemoveDIs][DebugInfo] Add support for DPValues to LoopStrengthReduce (#78706)
  [AArch64][Clang] Fix linker error for function multiversioning (#74358)
  [flang][openacc] Fix test with new loop design
  [-Wunsafe-buffer-usage] Fix the crash introduced by the unsafe invocation of span::data warning (#78815)
  [lldb][NFCI] Remove EventData* param from BroadcastEvent (#78773)
  [OpenACC] Implement remaining 'simple' int-expr clauses.
  [clang][modules] Print library module manifest path. (#76451)
  [libc++] Fix noexcept behaviour of operator new helper functions  (#74337)
  [CGProfile] Use callee's PGO name when caller->callee is an indirect call. (#78610)
  [RemoveDIs] Remove tests for redundant DPVAssigns until DPVAssigns are enabled
  [flang][openacc] Lower loop directive to the new acc.loop op design (#65417)
  [mlir][openacc] Update acc.loop to be a proper loop like operation (#67355)
  [libc] Use QUEUE_TYPEOF in STAILQ_LAST (#79011)
  [DebugInfo][RemoveDIs] Handle DPValues in SelectOptimize (#79005)
  [libc++] Protect the libc++ implementation from CUDA SDK's __noinline__ macro (#73838)
  [ELF] Suppress --no-allow-shlib-undefined diagnostic when a SharedSymbol is overridden by a hidden visibility Defined which is later discarded
  [libc++] Diagnoses insufficiently aligned pointers for std::assume_aligned during constant evaluation (#73775)
  [libc++][chrono] Fixes (sys|local)_time formatters. (#76456)
  [lld][WebAssembly] Implement `--start-lib`/`--end-lib` (#78821)
  [RemoveDIs][DebugInfo] Remove redundant DPVAssigns (#78574)
  [libc] support PIE relocations (#78993)
  Revert "[libc++][format] P2637R3: Member `visit` (`std::basic_format_arg`) (#76449)"
  [libc++] Mention __cxa_init_primary_exception in the ABI changelog
  [TLI] Add missing ArmPL mappings (#78474)
  [AArch64][SME] Take arm_sme.h out of draft (#78961)
  [libc++][modules] Add using_if_exists attribute (#77559) (#78909)
  [builtins][FMV][Apple] Use builtin atomic load/store, instead of libdispatch (#78807)
  [ELF] Add internal InputFile (#78944)
  [libc++] Add "using-if-exists" to timespec_get in modules (#78686)
  Reapply [hwasan] Update dbg.assign intrinsics in HWAsan pass #78606
  [Libomptarget] Move target table handling out of the plugins (#77150)
  [asan,test] Make alloca_loop_unpoisoning.cpp robust and fix s390x failure (#78774)
  [mlir][openacc][NFC] Cleanup hasOnly functions for device_type support (#78800)
  [mlir][openacc] Fix num_gang parser (#78792)
  [DebugInfo] Disable a test runline temporarily
  [AArch64][SME2] Extend SMEABIPass to handle functions with new ZT0 state (#78848)
  [OpenMP] Enable automatic unified shared memory on MI300A. (#77512)
  [AMDGPU] Make a few more tests default COV agnostic (#78926)
  [clang-repl] Limit use of PLT offset flag to linkers that support it
  [clang-tidy] Add bugprone-chained-comparison check (#76365)
  [X86] printConstant - add ConstantVector handling
  [flang] Handle -S assemble only flag in flang-to-external-fc (#78979)
  [mlir] Remove duplicate test
  [JITLink][AArch32] Implement ELF relocation R_ARM_NONE
  [JITLink][AArch32] Implement ELF relocation R_ARM_TARGET1
  [clang][ExtractAPI] Ensure typedef to pointer types are preserved (#78584)
  [X86] printZeroUpperMove - add support for constant vectors.
  [X86] Update X86::getConstantFromPool to take base OperandNo instead of Displacement MachineOperand
  [SelectionDAG][DebugInfo][RemoveDIs] Handle entry value variables in DPValues too (#78726)
  [Headers][X86] Add macro descriptions to ia32intrin.h (#78613)
  [clang][ExtractAPI] Add support C unions in non C++ parsing mode (#77451)
  AMDGPU/Docs: Add link to MI300 Instruction Set Architecture (#78777)
  [clang-tidy] Fix macros handling in cppcoreguidelines-prefer-member-initializer (#72037)
  [libc++abi] Implement __cxa_init_primary_exception and use it to optimize std::make_exception_ptr (#65534)
  [AArch64][SME2] Refine fcvtu/fcvts/scvtf/ucvtf (#77947)
  [OpenACC] Implement 'vector_length' clause parsing.
  [Flang][OpenMP] Reword comment for clarification, NFC
  [include-cleaner] Add --only-headers flag, opposite of --ignore-headers (#78714)
  [AArch64] Add vec3 load/store tests with GEPs with const offsets.
  [OpenMP] Fix two usm tests for amdgpus. (#78824)
  [Transforms] Fix -Wunused-variable and remove redundant VerifyStates after #75826 (NFC)
  [ConstraintElim] Remove unused checkCondition() parameters (NFC)
  [HLSL][SPIR-V] Add support -fspv-target-env opt (#78611)
  [Flang][OpenMP] Restructure recursive lowering in `createBodyOfOp` (#77761)
  [libc++] Make sure to publish release notes at ReleaseNotes.html
  [mlir][nfc] Update comments
  [DebugInfo][RemoveDIs] Adjust AMDGPU passes to work with DPValues (#78736)
  [libc++][NFC] Fix incorrect formatting of release notes
  [reland][libc] `FPRep` builders return `FPRep` instead of raw `StorageType` (#78978)
  True fixpoint algorithm in RS4GC (#75826)
  [AArch64][GlobalISel] Legalize Shifts for Smaller/Larger Vectors (#78750)
  [libc++] Ensure that std::expected has no tail padding (#69673)
  Revert "[libc] `FPRep` builders return `FPRep` instead of raw `StorageType`" (#78974)
  [libc] `FPRep` builders return `FPRep` instead of raw `StorageType` (#78588)
  [InstCombine] Try to fold trunc(shuffle(zext)) to just a shuffle (#78636)
  [libc++][NFC] Remove trailing whitespace from release notes
  [UnrollAnalyzerTest] Remove dependency to pass managers (#78473)
  Revert "[hwasan] Update dbg.assign intrinsics in HWAsan pass" (#78971)
  [LLVM][CMake] Add ffi_static target for the FFI static library (#78779)
  [AArch64] Adding tests for shifts
  [clang-format] Don't confuse initializer equal signs in for loops (#77712)
  [clang-repl] Fix PLT offset too large linker error on ARM (#78959)
  [clang-format][NFC] Unify token size tests to use ASSERT_EQ
  [Sema] Add `-fvisibility-global-new-delete=` option (#75364)
  [clang-format] Support of TableGen statements in unwrapped line parser (#78846)
  [X86] Add printElementBroadcast constant comments helper. NFC.
  [X86] Add printLaneBroadcast constant comments helper. NFC.
  [mlir] Fix -Wunused-variable in Barvinok.cpp (NFC)
  [AArch64] Convert UADDV(add(zext, zext)) into UADDLV(concat). (#78301)
  [coverage] skipping code coverage for 'if constexpr' and 'if consteval' (#78033)
  [X86] Add printZeroUpperMove constant/shuffle comments helper. NFC.
  [X86] X86FixupVectorConstants.cpp - pull out rebuildConstant helper for future patches. NFC.
  [hwasan] Update dbg.assign intrinsics in HWAsan pass (#78606)
  [gn] port 03c19e91e8d8
  [libcxx] Fix typo in parallel `for_each_n` test (#78954)
  [RemoveDIs][DebugInfo] Add interface changes for AT analysis (#78460)
  [JITLink][AArch32] Add GOT builder and implement R_ARM_GOT_PREL relocations for ELF (#78753)
  [MTE] Disable all MTE protection of globals in sections (#78443)
  [mlir][bazel] Fix BUILD after 9f7fff7f1391ea3bec394d8251b81cea92175cca.
  Fix an unused variable, NFC.
  [GlobalISel][AArch64] Combine Vector Reduction Add Long (#76241)
  [llvm-jitlink] Use SmallVectorImpl when referencing StubInfos (NFC)
  [RISCV] Teach RISCVMergeBaseOffset to handle inline asm (#78945)
  [AMDGPU] Drop verify from SIMemoryLegalizer tests (#78697)
  [mlir] Add `mlir_arm_runner_utils` library for use in integration tests (#78583)
  [mlir][ArmSME] Add arith-to-arm-sme conversion pass (#78197)
  [GitHub][workflows] Run automation script with python3 (#78695)
  [lldb] refactor highlighting function for image lookup command (#76112)
  [clang] Fix assertion failure with deleted overloaded unary operators (#78316)
  Revert "[Clang][CMake] Support perf, LBR, and Instrument CLANG_BOLT options (#69133)"
  [clang][analyzer] Add function 'fscanf' to StreamChecker. (#78180)
  [MLIR][Presburger] Implement function to evaluate the number of terms in a generating function. (#78078)
  [LLVM][ADT] Explicitly convert size_t values to SmallVector's size type (#77939)
  Enable direct methods and fast alloc calls for libobjc2. (#78030)
  [AMDGPU][NFC] Update cache policy descriptions (#78768)
  libclc: add missing AMD gfx symlinks (#78884)
  Revert "[Clang][Sema] Diagnose function/variable templates that shadow their own template parameters (#78274)"
  [OpenMP][OMPIRBuilder] Fix LLVM IR codegen for collapsed device loop (#78708)
  [clang][dataflow] Treat comma operator correctly in `getResultObjectLocation()`. (#78427)
  [Thumb,test] Improve __stack_chk_guard test
  [CodeGen][MachinePipeliner] Fix -Wpessimizing-move in MachinePipeliner.cpp (NFC)
  [clang-tidy] Use llvm::any_of (NFC)
  [Analysis] Use StringRef::ends_with_insensitive (NFC)
  [llvm] Use MachineBasicBlock::succ_empty (NFC)
  [lld] Use SmallString::operator std::string (NFC)
  [CodeGen][MachinePipeliner] Limit register pressure when scheduling (#74807)
  [RISCV] Arrange RISCVFeatures.td into sections of related extensions. NFC (#78790)
  [MLIR][NVVM] Update cp.async.bulk Ops to use intrinsics (#78900)
  [MLIR][NVVM] Explicit Data Type for Output in `wgmma.mma_async` (#78713)
  [mlir][nvgpu] Fix 'warpgroup.mma.store' index calculation (#78413)
  [docs] Update StandardCPlusPlusModules.rst with clang18
  [Clang][CMake] Support perf, LBR, and Instrument CLANG_BOLT options (#69133)
  [hwasan] Fix a possible null dereference problem (#77737)
  [RISCV] Replace Zvbb with Zvkb in the Zvk* combine tests in riscv-target-features.c. NFC
  [RISCV] Add Zvkb test to riscv-target-features.c. NFC
  [libc++][numeric] P0543R3: Saturation arithmetic (#77967)
  [X86][Driver] Enable feature ndd for -mapxf (#78901)
  [X86] Fix Werror X86GenCompressEVEXTables.inc:1627:2: error: extra ';' outside of a function
  [X86][NFC] Auto-generate the function to check predicate for EVEX compression
  [X86][APX]Support lowering for APX promoted AMX-TILE instructions (#78689)
  [X86] Add lowering tests for promoted CMPCCXADD and update CC representation (#78685)
  [Clang] Drop workaround for old gcc versions (#78803)
  [libc] Fix issue introduces by #76449
  [libc] fix unit tests in fullbuild (#78864)
  [ELF] Reimplement unknown -z options using the isClaimed bit
  [ELF] Claim recognized -z options. NFC
  [docs] Add llvm and clang release notes for the global-var code model attribute (#78664)
  [clang][analyzer][NFC] Simplify ranges in StdLibraryFunctionsChecker (#78886)
  [ELF] Clarify the first entry of .got.plt NFC
  [lldb] Skip ObjC timezone tests on macOS >= 14 (NFC) (#78817)
  [MLGO] Fix make_corpus_script.test
  [MLGO] Remove absl dependency from scripts (#78880)
  [MLGO] Add tests for scripts (#78878)
  [libc++] Fix Coverity warning about use-after-move (#78780)
  [clang] Remove `CXXNewInitializationStyle::Implicit` (#78793)
  [c++20] P1907R1: Support for generalized non-type template arguments of scalar type. (#78041)
  [libc++][doc] Update the release notes for LLVM 18 (#78324)
  [C23] Implement N2490, Remove trigraphs??!
  [AMDGPU] Add an asm directive to track code_object_version (#76267)
  [libc] add missing header dependencies for sched objects (#78741)
  [libc++] Fix typo in _LIBCPP_REMOVE_TRANSITIVE_INCLUDES (#78639)
  [clang-tidy][NFC] Enable exceptions in test for google-readability-casting
  [VPlan] Use replaceUsesWithIf in replaceAllUseswith and add comment (NFCI).
  [clang-tidy] Fix handling of functional cast in google-readability-casting (#71650)
  [libc++] Clang-tidy enable modernize-use-nullptr.
  [NFC][libc++] tab -> space
  [X86][NFC] Remove unnecessary parameters for MaskedShiftAmountPats/MaskedRotateAmountPats and rename one_bit_patterns
  [libc++] Install modules. (#75741)
  [libc++][modules] Improves std.compat module. (#76330)
  [libc++] Reland CI module improvements.
  [libc++][format] P2637R3: Member `visit` (`std::basic_format_arg`) (#76449)
  [libc++][spaceship][NFC] Status page update (#78894)
  [mlir][bufferization] Buffer deallocation: Make op preconditions stricter (#75127)
  [Clang] Use const pointer to eliminate warning with libxml 2.12.0 (#76719)
  [mlir][IR] Add `notifyBlockRemoved` callback to listener (#78306)
  [AArch64] Remove non-sensible define nonlazybind test
  [libc++][hardening] Categorize assertions that produce incorrect results (#77183)
  [libc++][hardening] XFAIL tests with HWASAN (#78866)
  Revert "Add workflow to release mlgo utils"
  Add workflow to release mlgo utils
  [AArch64] Improve nonlazybind test
  [libc++][variant] P2637R3: Member `visit` (`std::variant`) (#76447)
  [libc++] <experimental/simd> Add load constructor for class simd/simd_mask (#76610)
  [MLGO] Disable mlgo-utils tests on Windows builders
  [Github] Update paths for mlgo PR subscribers
  [MLGO] Remove absl dep from libraries
  [TableGen] Use StringRef::consume_front (NFC)
  [Sema] Use llvm::all_of (NFC)
  [Mips] Use MachineBasicBlock::pred_size (NFC)
  [Hexagon] Use llvm::children (NFC)
  [clang] Use SmallString::operator std::string (NFC)
  [clang-repl] We do not need to call new in the object allocation. (#78843)
  [mlir] Exclude masked ops in VectorDropLeadUnitDim (#76468)
  [libc] Add missing header ioctl.h on aarch64. (#78865)
  [clang-format] Handle templated elaborated type specifier in function… (#77013)
  [Support] Use llvm::children and llvm::inverse_children (NFC)
  [Frontend] Use SmallString::operator std::string (NFC)
  [Passes] Use a range-based for loop with llvm::successors (NFC)
  [Sparc] Use StringRef::starts_with_insensitive (NFC)
  [Sema] Use llvm::is_contained (NFC)
  [InlineOrder] Fix InlineOrder erase_if implementation (#78684)
  [Flang] Fix for replacing loop uses in LoopVersioning pass (#77899)
  [lld-macho] Find objects in library search path (#78628)
  [libc++] FreeBSD CI: Adds `<signal.h>` to `check_assertion.h` (#78863)
  [libc++][hardening] XFAIL test in fast mode under HWASAN (#78862)
  [clang-format] Fix poor spacing in `AlignArrayOfStructures: Left` (#77868)
  [libc++] fix condition_variable_any hangs on stop_request (#77127)
  [libc] Fix size_t used without including stddef.h in CPP/limit.h. (#78861)
  new-prs-labeler: Add `clang-tools-extra` labeling (#78633)
  Module documentation improvement: prebuilt module location can be directly fetched via CMake variable. (#78405)
  [libc] Fix float.h header to include the system float.h first and add more definitions. (#78857)
  [NFC] Rename internal fns (#77994)
  [Clang][Obvious] Correctly disable Windows on linker-wrapper test
  Warning for incorrect use of 'pure' attribute (#78200)

Change-Id: I6c63dd73fc6c6343009018c3eea4387c285aa5de
Signed-off-by: greenforce-auto-merge <greenforce-auto-merge@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
libc++ libc++ C++ Standard Library. Not GNU libstdc++. Not libc++abi.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants