Date: Fri, 29 Aug 2025 16:12:24 -0700
On Friday, 29 August 2025 13:48:36 Pacific Daylight Time Tiago Freire via Std-
Discussion wrote:
> 3rd All function that make sense on a specific architecture (things that the
> CPU provide specific instructions for) should be put in a library
> collection that is only available on a specific architecture being
> targeted. Not necessarily every single instruction but most intrinsics
> should probably end-up there. I’m talking stuff like “cupid” (on arm or
> x86), AVX instructions, AES or CRC instructions. The intel intrinsics
> library does a very good job to make this more or less portable, but I’m
> talking a similar thing for all major architectures. And if the functions
> do something deterministic, make it constexpr as well.
These don't need to be in the C++ Standard. It can be a standard/spec defined
by the vendor or group of vendors.
Which is already the case for both x86 and ARM ecosystems.
Discussion wrote:
> 3rd All function that make sense on a specific architecture (things that the
> CPU provide specific instructions for) should be put in a library
> collection that is only available on a specific architecture being
> targeted. Not necessarily every single instruction but most intrinsics
> should probably end-up there. I’m talking stuff like “cupid” (on arm or
> x86), AVX instructions, AES or CRC instructions. The intel intrinsics
> library does a very good job to make this more or less portable, but I’m
> talking a similar thing for all major architectures. And if the functions
> do something deterministic, make it constexpr as well.
These don't need to be in the C++ Standard. It can be a standard/spec defined
by the vendor or group of vendors.
Which is already the case for both x86 and ARM ecosystems.
-- Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org Principal Engineer - Intel Platform & System Engineering
Received on 2025-08-29 23:12:35