SIMD Cross-platform headers is a cross- platform, cross-compiler, cross CPU C/C++ header collection that aids the creation portable vectorized (SIMD) C/C++ code. It supports (or partially supports) x86 (MMX/SSE/SSE2) GCC and MSVC, PPC Altivec GCC and CodeWarrior, ARM GCC, and software-emulated SIMD.
Uses for SIMD-CPH
I had someone ask me why I created and how I use
SIMD-CPH. The best example I can give is that while I was
creating it, I was testing it with MAME. I optimized and
vectorized the Gaelco 3D hardware emulator and speed it up
from 15fps to 38fps. SIMD-CPH is suited to this as MAME is
cross-platform and cross-CPU. Using the SIMD-CPH macros
means that the code can compile on different CPUs, and if
there isn't a SIMD-CPH file for the compiler or platform,
SIMD-CPH writes software emulation SIMD code in such a
way that a smart vectorizing compiler can vectorize the code,
while still allowing it to compile and run without a slow-down
on systems without SIMD instruction sets.