I'm thinking of implementation std.simd in fashion different to
https://github.com/TurkeyMan/simd
since it looks dead and too sophisticated.

My proposal is:
- std.simd - processor independent intrinsics and some high level stuff.
      You only depend on different sizes of SIMD vector.
- std.simd.x86 - provides unified (compiler independent) x86/x86_64 intrinsic call. Each SIMD version (sse, sse2, ...) has its own namespace(struct) with
          intrinsic wrappers. Each wrapper is straightforward.
        - std.simd.arm - provides unified arm-based SIMD.

Demo:
https://github.com/Iakh/simd
At the end of the file
https://github.com/Iakh/simd/blob/master/std/simd/x86.d
is a long unittest with sse2 memchar implementation.

Reply via email to