An update on this:
Kevin Kofler wrote:
This is only a minor annoyance where a portable fallback exists (we
can
just ship the portable C/C++ version in /usr/lib and the SSE2 version in
/usr/lib/sse2, as we are doing with Qt 5 QtDeclarative). The real problem
is software which has no portable fallback at all, such as
Chromium/QtWebEngine or Darktable. This completely screws not only
non-SSE2 x86, but also all secondary architectures, and in some cases such
as Darktable, even the primary architecture ARM. It is unfortunate that
the number of such non- portable software seems increasing lately.
Portability to any and all CPU architectures used to be a big selling
point for Free Software. These days, more and more projects seem happy to
sacrifice this on the altar of performance. :-(
I think I have what it takes to get QtWebEngine working on non-SSE2 now:
1.
https://bugzilla.redhat.com/show_bug.cgi?id=1293190
2.
https://bugzilla.redhat.com/show_bug.cgi?id=1244196#c24
Thankfully, V8 actually does support non-SSE2 x86: Shortly after support was
removed from the "ia32" target, it was readded as a separate "x87"
one. So
only Chromium/QtWebEngine needs patching (because they started requiring
SSE2 in their own code).
That said, this only helps 32-bit x86. Most secondary architectures are
still screwed, because V8 does not have portable C/C++ fallback code (unlike
Chromium's own code).
Kevin Kofler