comparison src/impl/fallback.c @ 35:99e4539f922f

Backed out changeset e49e70f7012f
author Paper <paper@tflc.us>
date Fri, 25 Apr 2025 17:40:51 -0400
parents 8b5e0974fd41
children
comparison
equal deleted inserted replaced
34:8b5e0974fd41 35:99e4539f922f
5 // Fallback implementations - this is what an implementation should use if it 5 // Fallback implementations - this is what an implementation should use if it
6 // doesn't support a specific function *and* the actual representation in 6 // doesn't support a specific function *and* the actual representation in
7 // memory is unknown or yields incorrect results from the generic functions. 7 // memory is unknown or yields incorrect results from the generic functions.
8 // This is *extremely* unlikely; for x86 the layout is exactly the same in 8 // This is *extremely* unlikely; for x86 the layout is exactly the same in
9 // memory as the generic functions (i.e. it is literally stored as an array of 9 // memory as the generic functions (i.e. it is literally stored as an array of
10 // integers). This is likely true for AltiVec and NEON as well, but those 10 // integers).
11 // aren't tested for now. 11 //
12 // These functions can probably be removed if every current implementation is
13 // found to have the same
12 14
13 #define VEC_FALLBACK_OPERATION(op, sign, csign, bits, size) \ 15 #define VEC_FALLBACK_OPERATION(op, sign, csign, bits, size) \
14 do { \ 16 do { \
15 V##csign##INT##bits##x##size##_ALIGNED_ARRAY(varr1); \ 17 V##csign##INT##bits##x##size##_ALIGNED_ARRAY(varr1); \
16 V##csign##INT##bits##x##size##_ALIGNED_ARRAY(varr2); \ 18 V##csign##INT##bits##x##size##_ALIGNED_ARRAY(varr2); \