Skip to content

Incorporate SIMD Everywhere for... whatever other SIMD there are #57

@Artoria2e5

Description

@Artoria2e5

https://github.com/simd-everywhere/simde is a bunch of headers that implements one platform's SIMD intrinsics using either another platform's or just a heavily-hinted generic loop. It might be a good idea to use its version of SSE2 and/or AVX2 to get a non-zero amount of SIMD on platforms such as PPC (AltiVec), RISC-V (two separate things they have), even WASM (yeah sure, run a prime test in a browser, why not?)

Also SIMDE works with intrinsics, so might need to dig up some older version written in intrinsics instead of full inline assembly.


On the same note the generic-vector stuff in type.h seem to be largely redundant with GCC Vector Extensions (https://gcc.gnu.org/onlinedocs/gcc/Vector-Extensions.html), which has nicer syntax and is also supported by clang, though migrating existing member accesses might be quite a headache. Should be compatible with native and SIMDE intrins.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions