std::experi..._abi::native(3)

πŸ“¦ version 2024.07.05, in nixpkgs unstable, opensuse-leap 16.0

✨ NAME ✨

okay bestie, this is the manual page for std::experimental::simd_abi::native, aka the std::experi..._abi::native(3) page from the C++ Standard Libary β€” yes, that's the header's spelling, not mine πŸ’€. It's literally an ABI tag situation, and it's giving main character energy for explicit vectorization πŸ’…


🌸 Synopsis 🌸

Defined in header <experimental/simd>
template< class T >                         (parallelism TS v2)
using native = /*implementation-defined*/;

so native<T> is an implementation-defined alias for an ABI tag. No cap: this is the primary ABI tag to use for efficient explicit vectorization. periodt ✨

πŸ¦‹ Notes πŸ¦‹

the whole intent, fr fr, is to use the ABI tag that produces the most efficient data-parallel execution for element type T that's supported on the currently targeted system. iykyk 🫢

For target architectures without ISA extensions, the native<T> and compatible<T> aliases will likely be the same. For target architectures with ISA extensions, compiler flags may influence the native<T> alias while compatible<T> will be the same independent of such flags. Not compatible<T> staying unbothered by the compiler flags 😭✨

πŸ‘‘ See also πŸ‘‘

  • scalar β€” tag type for storing a single element (parallelism TS v2) (typedef)
  • fixed_size β€” tag type for storing specified number of elements (parallelism TS v2) (alias template)
  • compatible β€” tag type that ensures ABI compatibility (parallelism TS v2) (alias template)
  • deduce and deduce_t β€” obtains an ABI type for given element type and number of elements (parallelism TS v2) (class template)

mwah πŸ’– that's the whole page β€” source/version: http://cppreference.com, dated 2024.06.10, page title std::experi..._abi::native(3). bye bestie 🫢

πŸ“¦ where this page comes from