From b187204769974b9af9d2a3c3bca83ad40e4f1ac9 Mon Sep 17 00:00:00 2001 From: Cameron Gutman Date: Thu, 19 Feb 2026 20:04:31 -0600 Subject: [PATCH] Restore fallback scalar path for x86 --- nanors/deps/obl/oblas_lite.c | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/nanors/deps/obl/oblas_lite.c b/nanors/deps/obl/oblas_lite.c index bd1c47e..64cc8d8 100644 --- a/nanors/deps/obl/oblas_lite.c +++ b/nanors/deps/obl/oblas_lite.c @@ -172,7 +172,7 @@ void obl_axpyb32_ref(u8 *a, u32 *b, u8 u, unsigned k) } \ } while (0) -#else +#elif defined(OBLAS_SSE3) || !(defined(__x86_64__) || defined(__i386__) || defined(_M_IX86) || defined(_M_AMD64)) #if defined(OBLAS_SSE3) #include @@ -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)); \ } \ } 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 #define OBL_NOOP(a, b) (b)