std::experi...:overaligned(3)

๐Ÿ“ฆ version 2024.07.05, in nixpkgs unstable, opensuse-leap 16.0

๐Ÿ’– std::experimental::overaligned_tag,std::experimental::overaligned ๐Ÿ’–

okay so this is the std::experi...:overaligned(3) page from the C++ Standard Libary manual โ€” yes, โ€œLibaryโ€ is literally how the manual name is spelled in the source, Iโ€™m not fixing it ๐Ÿ’…. Itโ€™s giving very niche C++ simd alignment lore, and honestly? iconic.

โœจ NAME โœจ

  • std::experimental::overaligned_tag,std::experimental::overaligned โ€” the page title/name, and the source repeats the same thing after the dash: std::experimental::overaligned_tag,std::experimental::overaligned. fr fr.

๐Ÿ“‹ Synopsis ๐Ÿ“‹

Defined in header <experimental/simd>:

template< std::size_t N >
struct overaligned_tag {};

That struct overaligned_tag {}; is marked (parallelism TS v2).

template< std::size_t N >
inline constexpr overaligned_tag<N> overaligned{};

Lowkey the whole point: this tag type indicates that the buffer of copy_from and copy_to is aligned to N. No cap, thatโ€™s the vibe.

๐Ÿงฎ Template parameters ๐Ÿงฎ

  • N โ€” the alignment in bytes the memory access may assume. Thatโ€™s the number youโ€™re promising the universe, bestie โœจ.

๐Ÿ‘€ See also ๐Ÿ‘€

  • vector_aligned_tag โ€” flag indicating alignment of the load/store address to vector.
  • vector_aligned โ€” alignment (parallelism TS v2) (class).
  • element_aligned_tag โ€” flag indicating alignment of the load/store address to element.
  • element_aligned โ€” alignment (parallelism TS v2) (class).

๐Ÿซถ cute sign-off time: this page is from http://cppreference.com, dated 2024.06.10, and its slug/footer thing is std::experi...:overaligned(3). Go forth and align responsibly, bestie ๐Ÿ’–โœจ๐ŸŽ€

๐Ÿ“ฆ where this page comes from