On Wed, Jul 09, 2025 at 01:14:59PM +0100, Daniel P. Berrangé wrote: > On Wed, Jul 09, 2025 at 01:16:45PM +0200, Jan Stanek wrote: > > Hello everyone! > > I recently ran into build failure in the upcoming nodejs24, on i686 > > architecture (yay!). It seems like some of the sse vector instructions > > are not defined, on just this arch: > > > Side note, the code that is trying to call this has an alternative > > path for processors that do not support the SSE2 instructions, so if > > the solution for this would be "undefine __SSE2__", it would be > > viable. I would just like to figure out what is going on first. > > Presumably nodejs is not relevant in multilib scenarios, so its build > could be disabled on i686 entirely, if that doesn't have too terrible > ripple effects on important deps ?
It it is the only problematic intrinsic, then one can handle it by hand, trying to extract long long from __m128 can be done on i?86 e.g. with ((__v4si)val)[0] + (((unsigned long long)((__v4si)val)[1]) << 32) where val is the __m128 value. For SSE4 one can use portably _mm_extract_epi32(val, 0) + (((unsigned long long)_mm_extract_epi32(val, 1)) << 32) Or even with just SSE2 you can hop through memory, unsigned long long res; memcpy (&res, &val, sizeof (res)); will do it as well. Jakub -- _______________________________________________ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue