FS#29590 - [devil] unconditional use of SSE3 instructions

Attached to Project: Community Packages
Opened by Daniel Scharrer (dscharrer) - Tuesday, 24 April 2012, 05:43 GMT
Last edited by Laurent Carlier (lordheavy) - Monday, 30 April 2012, 19:19 GMT
Task Type Bug Report
Category Packages
Status Closed
Assigned To Laurent Carlier (lordheavy)
Architecture i686
Severity High
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:

DevIL's 1.7.8 ./configure script enables SSE, SSE2 and SSE3 instructions if
supported by the compiler and unless such instructions are explicitly disabled
by --disable-sse3 etc. There is not run-time check for CPU support when using
these instructions - in fact it adds the -msse3 compiler option.

SSE3 is not universally supported in 32-bit x86 CPUs and using affected
functions such as ilConvertImage() may result in the application being
terminated with the SIGILL signal on such CPUs.

Re-building DevIL without SSE3 support fixes this bug - disabling SSE2 and SSE
should also be considered.

There is also an upstream DevIL bug report at
https://sourceforge.net/tracker/?func=detail&aid=3520344&group_id=4470&atid=104470

Additional info:
This bug is also found in many other Linux distributions' DevIL packages:
- Gentoo (fixed): https://bugs.gentoo.org/show_bug.cgi?id=412791
- Debian (open since over a year)
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=572954
- Ubuntu (open): https://bugs.launchpad.net/ubuntu/+source/devil/+bug/987634
- openSUSE (open): https://bugzilla.novell.com/show_bug.cgi?id=758713
This task depends upon

Closed by  Laurent Carlier (lordheavy)
Monday, 30 April 2012, 19:19 GMT
Reason for closing:  Implemented
Additional comments about closing:  devil-1.7.8-11
Comment by Laurent Carlier (lordheavy) - Monday, 30 April 2012, 19:18 GMT
I've disabled sse3 instructions for 32 bits CPU, it should be enough, as sse2 are available since 2000 (2004 for sse3).

Loading...