[Development] Using SSE/NEON in Qt 6

Allan Sandfeld Jensen kde at carewolf.com
Sat Feb 8 12:31:49 CET 2020


On Samstag, 8. Februar 2020 05:00:31 CET Thiago Macieira wrote:
> If we don't need runtime detection, then just #include <immiintrin.h> or a
> wrapper header to deal with MSVC not defining __SSE2__. qfloat16.h does
> that.
> 
> We also need to decide whether we want the macro normalisation that
> qsimd_p.h does should be public too. qsimd_p.h defines the GCC/Clang macros
> that ICC and MSVC don't (__F16C__, __PCLMUL__, __FMA__, __LZCNT__, etc.).
> 
If the header becomes public, it might be a good idea to instead normalize to 
those to Qt specific macros to avoid potentially confusing third party code 
about which platform it is on. 

Note we have a similar problem with NEON, where we depend on __ARM_NEON__ 
which doesn't exist on aarch64 where it is called __ARM_NEON instead.

'Allan






More information about the Development mailing list