[libcxx-commits] [libcxx] 9917d39 - [libc++] <experimental/simd> Fix vector_aligned_tag (#76611)

via libcxx-commits libcxx-commits at lists.llvm.org
Wed Jan 17 21:59:05 PST 2024


Author: ZhangYin
Date: 2024-01-18T13:59:01+08:00
New Revision: 9917d39dfceb6a436cd0e370392f9001f30758f1

URL: https://github.com/llvm/llvm-project/commit/9917d39dfceb6a436cd0e370392f9001f30758f1
DIFF: https://github.com/llvm/llvm-project/commit/9917d39dfceb6a436cd0e370392f9001f30758f1.diff

LOG: [libc++] <experimental/simd> Fix vector_aligned_tag (#76611)

Co-authored-by: Nikolas Klauser <nikolasklauser at berlin.de>

Added: 
    

Modified: 
    libcxx/include/experimental/__simd/aligned_tag.h

Removed: 
    


################################################################################
diff  --git a/libcxx/include/experimental/__simd/aligned_tag.h b/libcxx/include/experimental/__simd/aligned_tag.h
index edbb3b24931f5a..31d2b50aa1dd36 100644
--- a/libcxx/include/experimental/__simd/aligned_tag.h
+++ b/libcxx/include/experimental/__simd/aligned_tag.h
@@ -11,6 +11,7 @@
 #define _LIBCPP_EXPERIMENTAL___SIMD_ALIGNED_TAG_H
 
 #include <__memory/assume_aligned.h>
+#include <__type_traits/remove_const.h>
 #include <cstddef>
 #include <experimental/__config>
 #include <experimental/__simd/traits.h>
@@ -35,7 +36,7 @@ inline constexpr bool is_simd_flag_type_v<element_aligned_tag> = true;
 
 struct vector_aligned_tag {
   template <class _Tp, class _Up = typename _Tp::value_type>
-  static constexpr size_t __alignment = memory_alignment_v<_Tp, _Up>;
+  static constexpr size_t __alignment = memory_alignment_v<_Tp, remove_const_t<_Up>>;
 
   template <class _Tp, class _Up>
   static _LIBCPP_HIDE_FROM_ABI constexpr _Up* __apply(_Up* __ptr) {


        


More information about the libcxx-commits mailing list