This commit is contained in:
Jay D Dee
2023-10-06 22:18:09 -04:00
parent bc5a5c6df8
commit 31c4dedf59
144 changed files with 5931 additions and 3746 deletions

View File

@@ -118,44 +118,41 @@
//////////////////////////////////////////////////////////////////////////
#include <inttypes.h>
#include <x86intrin.h>
#include <memory.h>
#include <stdlib.h>
#include <stdbool.h>
#include <stdint.h>
#if defined(__x86_64__)
#include <x86intrin.h>
#elif defined(__aarch64__)
#include <arm_neon.h>
#endif
// 64 and 128 bit integers.
#include "simd-utils/simd-int.h"
#if defined(__MMX__)
// 64 bit vectors
// x86_64 MMX 64 bit vectors
#include "simd-utils/simd-64.h"
#if defined(__SSE2__)
// 128 bit vectors
// x86_64 SSE2 128 bit vectors
#include "simd-utils/simd-128.h"
#if defined(__AVX__)
// 256 bit vector basics
// x86_64 AVX2 256 bit vectors
#include "simd-utils/simd-256.h"
#if defined(__AVX2__)
// Utilities that require AVX2 are defined in simd-256.h.
// Skylake-X has all these
#if defined(__AVX512F__) && defined(__AVX512VL__) && defined(__AVX512DQ__) && defined(__AVX512BW__)
// 512 bit vectors
// x86_64 AVX512 512 bit vectors
#include "simd-utils/simd-512.h"
#endif // AVX512
#endif // AVX2
#endif // AVX
#endif // SSE2
#endif // MMX
// move up after cleaning
// CPU architectire abstraction
//#include "simd-utils/simd-portable.h"
// aarch64 neon 128 bit vectors
#include "simd-utils/simd-neon.h"
#include "simd-utils/intrlv.h"