Restore fallback scalar path for x86

This commit is contained in:
Cameron Gutman
2026-02-19 20:04:31 -06:00
parent 3872285d8c
commit b187204769

View File

@@ -172,7 +172,7 @@ void obl_axpyb32_ref(u8 *a, u32 *b, u8 u, unsigned k)
} \ } \
} while (0) } while (0)
#else #elif defined(OBLAS_SSE3) || !(defined(__x86_64__) || defined(__i386__) || defined(_M_IX86) || defined(_M_AMD64))
#if defined(OBLAS_SSE3) #if defined(OBLAS_SSE3)
#include <emmintrin.h> #include <emmintrin.h>
@@ -230,6 +230,23 @@ void obl_axpyb32_ref(u8 *a, u32 *b, u8 u, unsigned k)
_mm_storeu_si128(ap, _mm_xor_si128(_mm_loadu_si128(ap), ret_hi)); \ _mm_storeu_si128(ap, _mm_xor_si128(_mm_loadu_si128(ap), ret_hi)); \
} \ } \
} while (0) } while (0)
#else
#undef OBLAS_ALIGN
#define OBLAS_ALIGN (sizeof(void *))
#undef OBL_SHUF
#define OBL_SHUF(op, a, b, f) \
do { \
op##_ref(a, b, u, k); \
} while (0)
#undef OBL_SHUF_XOR
#define OBL_SHUF_XOR
#undef OBL_AXPYB32
#define OBL_AXPYB32 obl_axpyb32_ref
#endif #endif
#define OBL_NOOP(a, b) (b) #define OBL_NOOP(a, b) (b)