Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 157409 - gimp fails to start with "Illegal Instruction"
Summary: gimp fails to start with "Illegal Instruction"
Alias: None
Product: Fedora
Classification: Fedora
Component: gimp
Version: rawhide
Hardware: i386
OS: Linux
Target Milestone: ---
Assignee: Nils Philippsen
QA Contact: David Lawrence
: 157473 157487 157621 (view as bug list)
Depends On:
TreeView+ depends on / blocked
Reported: 2005-05-11 13:30 UTC by James Laska
Modified: 2013-09-02 06:05 UTC (History)
10 users (show)

Fixed In Version: 2.2.7-4
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2005-09-05 00:24:59 UTC

Attachments (Terms of Use)

System ID Priority Status Summary Last Updated
GNOME Bugzilla 303796 None None None Never

Description James Laska 2005-05-11 13:30:54 UTC
RPM: gimp-2.2.7-1.i386

$ gimp
Illegal instruction

$ > gdb /usr/bin/gimp
GNU gdb Red Hat Linux (
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-redhat-linux-gnu"...Using host libthread_db
library "/lib/".

(gdb) r
Starting program: /usr/bin/gimp
Reading symbols from shared object read from target memory...done.
Loaded system supplied DSO at 0x9f6000
[Thread debugging using libthread_db enabled]
[New Thread -1208400192 (LWP 4786)]

Program received signal SIGILL, Illegal instruction.
[Switching to Thread -1208400192 (LWP 4786)]
0x00be4989 in gimp_rgba_get_uchar (rgba=0x971a018, r=0xbfcad3d0
"x\203p\t`\uffff\026", g=0xbfcad3d1 "\203p\t`\uffff\026",
    b=0xbfcad3d2 "p\t`\uffff\026", a=0xbfcad3d3 "\t`\uffff\026") at gimprgb.c:360
360       if (r) *r = ROUND (CLAMP (rgba->r, 0.0, 1.0) * 255.0);

Let me know if you have additional debugging tips.

Comment 1 James Laska 2005-05-11 13:31:14 UTC
Forgot the backtrace ...

(gdb) bt
#0  0x00be4989 in gimp_rgba_get_uchar (rgba=0x971a018, r=0xbfcad3d0
"x\203p\t`\uffff\026", g=0xbfcad3d1 "\203p\t`\uffff\026",
    b=0xbfcad3d2 "p\t`\uffff\026", a=0xbfcad3d3 "\t`\uffff\026") at gimprgb.c:360
#1  0x0821ff08 in gimp_param_rgb_values_cmp (pspec=0x9708378, value1=0x0,
value2=0xbfcad420) at gimpconfig-params.c:159
#2  0x00144ad6 in g_param_values_cmp () from /usr/lib/
#3  0x0821dad4 in gimp_config_iface_equal (a=0x971b3c8, b=0x96cb440) at
#4  0x08221bfc in gimp_config_diff_property (a=Variable "a" is not available.
) at gimpconfig-utils.c:165
#5  0x08221cd6 in gimp_config_diff_same (a=0x971a578, b=0x96cb278, flags=3) at
#6  0x08222099 in gimp_config_sync (src=0x971a578, dest=0x96cb278, flags=3) at
#7  0x08227676 in gimp_rc_duplicate (config=0x971a578) at gimprc.c:319
#8  0x0819346c in gimp_load_config (gimp=0x970e748, alternate_system_gimprc=0x0,
alternate_gimprc=0x0) at gimp.c:817
#9  0x080630c2 in app_run (full_prog_name=0x0, gimp_argc=0,
gimp_argv=0xbfcad7f8, alternate_system_gimprc=0x0,
    alternate_gimprc=0x0, session_name=0x0, batch_interpreter=0x0,
batch_commands=0x0, no_interface=0, no_data=0,
    no_fonts=0, no_splash=0, be_verbose=0, use_shm=0, use_cpu_accel=158441496,
pdb_compat_mode=GIMP_PDB_COMPAT_OFF) at app_procs.c:265
#10 0x08063bfc in main (argc=1, argv=0xbfcad7f4) at main.c:473
#11 0x002d0de6 in __libc_start_main () from /lib/
#12 0x08062e81 in _start ()

Comment 2 Lars G 2005-05-11 15:56:32 UTC
same here.

Comment 3 Zuirdj 2005-05-11 16:38:45 UTC

Comment 4 Nils Philippsen 2005-05-12 10:31:36 UTC
I'm working on a fix which still allows GIMP to utilize MMX/SSE/SSE2 optimized
code on CPUs that can handle it.

Comment 5 Nils Philippsen 2005-05-12 10:37:09 UTC
*** Bug 157487 has been marked as a duplicate of this bug. ***

Comment 6 Nils Philippsen 2005-05-12 10:37:30 UTC
*** Bug 157473 has been marked as a duplicate of this bug. ***

Comment 7 Nils Philippsen 2005-05-13 08:26:14 UTC
*** Bug 157621 has been marked as a duplicate of this bug. ***

Comment 8 Zuirdj 2005-05-13 15:57:50 UTC
It seems that bug was fixed with latest rawhide (gimp-2.2.7-2)

Comment 9 James Laska 2005-05-13 16:04:05 UTC
Confirmed ... gimp-2.2.7-2.i386 no longer causes "Illegal Instruction" failure.   

* Wed May 11 2005 Nils Philippsen <>
- use -mmmx/sse/sse2/... only for the relevant source files so that extended
  instruction sets only get used on suitable CPUs (#157409)

Holding off from closing this defect until it is placed in MODIFIED.

Comment 10 Lars G 2005-05-13 16:31:34 UTC
works for me too, thanks for fixing!

Comment 11 Nils Philippsen 2005-05-14 12:06:07 UTC
The real fix is in 2.2.7-4 which allows asm optimizations on CPUs that support
it again (2.2.7-2 only used generic C routines, courtesy of libtool :-().

For differences between the two releases, check the output of "gimp --verbose"
and look at the line "Processor instruction sets". With 2.2.7-4, it's:

Processor instruction sets: +mmx +sse +sse2 -3dnow -altivec -vis

on my machine while with 2.2.7-2 it was:

Processor instruction sets: -mmx -sse -sse2 -3dnow -altivec -vis

meaning no utilization of the MMX/SSE instructions that my CPU would understand.

Note You need to log in before you can comment on or make changes to this bug.