On Mon, 15 Jun 2020 at 14:06, Phil Endecott via Boost
Dear All,
I have been looking at the UTF-8 decoding code in the proposed Boost.Text, as this is a problem I've looked at myself in the past. I've mentioned an issue with the copyright in another message. Here are my other observations.
1. The SIMD code is x86-specific. It doesn't need to be; I think it could use gcc's vector builtins to do the same thing and be portable to other SIMD implementations. (Clang provides the same builtins; I'm not sure about what you need to do on MSVC/Windows.) See: https://gcc.gnu.org/onlinedocs/gcc/Vector-Extensions.html
Bar writing intel assembler for ml64 [a stand-alone assembler, the only option on Windows-x64 is Intel Intrinsics ( https://software.intel.com/sites/landingpage/IntrinsicsGuide/# ). Over and above the Intel Intrinsics, Microsoft offers 'a number of extensions', which often correspond to some builtin_ in clang/gcc. I'm not sure this is related, but there is also the vectorcall-ABI. degski