Mercurial > vec
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); \ |