Bug 4402 - egcs can't compile Kerberos 5 - sig11 error- compiler bug?
Summary: egcs can't compile Kerberos 5 - sig11 error- compiler bug?
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: egcs
Version: 6.0
Hardware: i386
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Nalin Dahyabhai
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 1999-08-06 18:08 UTC by wingc
Modified: 2008-05-01 15:37 UTC (History)
0 users

Fixed In Version:
Clone Of:
Environment:
Last Closed: 1999-10-05 15:05:15 UTC
Embargoed:


Attachments (Terms of Use)

Description wingc 1999-08-06 18:08:41 UTC
There seems to be a bug in egcs on i386. When doing a
straight compile of Kerberos 5 from the MIT sources, the
'make' eventually dies:

cc -fPIC -O2 -m486 -fno-strength-reduce -D_GNU_SOURCE
-DHAVE_LIBNSL=1 -DPOSIX_FILE_LOCKS=1 -DHAS_UNISTD_H=1
-DHAVE_SYS_SELECT_H=1 -DHAVE_TIME_H=1 -DHAS_STDLIB_H=1
-DLSBFIRST=1 -DSIZEOF_INT=4 -DBITS32=1 -DKRB4_USE_KEYTAB=1
-DHAVE_SETEUID=1 -DHAVE_SETREUID=1 -DHAVE_SETRESUID=1
-DKRB5_KRB4_COMPAT -I./../../include -I../../include
-I./../../include/krb5 -I../../include/krb5
-I./../../include/kerberosIV -o shared/g_ad_tkt.o -c
g_ad_tkt.c
cc: Internal compiler error: program cc1 got fatal signal 11
make: *** [g_ad_tkt.o] Error 1


If I type in that same command line manually, _without_ the
-O2 flag, the compile succeeds without an error. So I'd
guess there is a bug in the optimizer that is showing up at
least on the i386 platform.

I've tried this on two different machines with Red Hat
6.0/Intel: a dual PPro/200 and a single PII-400. The same
error occurs on both machines.

The compile works fine on an Alpha 21164 system with Red Hat
6.0. (aside from an include file bug in the Kerberos
sources)

I haven't tried using gcc 2.95 to see if the bug has been
fixed.

-Chris Wing
wingc.edu

Comment 1 Jim Kingdon 1999-08-08 13:14:59 UTC
Please supply the output of gcc -E (so that we can reproduce the
bug by feeding this file directly to cc1, with worrying about
kerberos5 header files and so on).
Of course that is assuming you always get a sig11 on this
particular file - if the sig11 is intermittent or sometimes happens
on another file, it is probably a hardware problem (see seg11 FAQ).

Comment 2 wingc 1999-08-09 00:50:59 UTC
The crash is 100% repeatable on i386 (tried it on 3 different machines
so far). I tried it on a Red Hat 6.0/Alpha machine and it didn't
crash.

Here is the code which makes it fail: (gcc -E output like you
requested)

http://www.engin.umich.edu/caen/systems/Linux/code/misc/make_egcs_crash.c

cc -fPIC -O2 -m486 -fno-strength-reduce -o die.o -c make_egcs_crash.c

causes egcs to crash with a sig11 failure,
but

cc -fPIC -m486 -fno-strength-reduce -o die.o -c make_egcs_crash.c

works okay. So I'm guessing it's a bug in the optimizer.

-Chris
wingc.edu

Comment 3 Jim Kingdon 1999-08-31 16:50:59 UTC
See http://egcs.cygnus.com/ml/gcc-patches/1999-08/msg01007.html
for a patch to egcs for this bug.  There isn't a new RPM package
containing this fix yet.

Comment 4 Jim Kingdon 1999-08-31 18:52:59 UTC
Christopher Allen Wing <wingc.edu> writes in email:

  Thanks for taking a look at the bug and fixing it! I'll rebuild my
egcs
  RPM with the patch and try it out.

  (in the meanwhile, I just built Kerberos 5 disabling the optimizer
on that
  particular file)

Comment 5 Jim Kingdon 1999-10-05 15:05:59 UTC
Fixed in the egcs which ships with Red Hat Linux 6.1.


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