Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 7 Sep 1997 00:49:26 -0700 (PDT)
From:      tedm@toybox.placo.com
To:        FreeBSD-gnats-submit@FreeBSD.ORG
Subject:   gnu/4480: Malaysian CPU blows up GCC
Message-ID:  <199709070749.AAA10820@mail.portsoft.com>
Resent-Message-ID: <199709070750.AAA05493@hub.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         4480
>Category:       gnu
>Synopsis:       cc crashes with Internal compiler error when building kernel
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    freebsd-bugs
>State:          open
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sun Sep  7 00:50:01 PDT 1997
>Last-Modified:
>Originator:     Ted Mittelstaedt
>Organization:
No Organization
>Release:        FreeBSD 2.2.2-RELEASE i386
>Environment:

	

Clone 386/35DX 8MB ram, 500MB IDE disk completely given over to FreeBSD.  
Motherboard BIOS is AMI, bios OEM manufacturer is MPT.  Motherboard is a
full-sized AT-style motherboard with 8MB of DRAM chips on board, and a slot
for a proprietary memory card.  (no card currently in machine)

>Description:

	

When attempting to recompile the kernel, compiler crashes with the following
error message:

cc: Internal compiler error: program cc1 got fatal signal 11

>How-To-Repeat:

	

Attempt to recompile kernel

>Fix:
	
	

Replace CPU.

I am posting the following in the hope that some Intel silicon guru can
tell me exactly what the difference is between the following CPU's is.  Here
is the story:

The machine ran flawlessly with FreeBSD up through version 2.1.6, I could
recompile the kernel with no problems.  The problem began after installing
FreeBSD 2.2.2 on the machine.  I was unable to recompile the kernel.

I opened up the machine and as part of the troubleshooting I was doing to
isolate this problem I happened to replace the Intel 80386DX-25 CPU with
another Intel 80386DX-25 CPU that looked identical.  The machine began to
work properly, I was able to completely recompile the kernel without any
problems.  I then took this CPU out and put the original one back in, the
machine then began exibiting the bug, the compiler was unable to operate.
I then put the scond CPU back in and the machine's proper operation was
restored.

I then assumed that the problem was due to a different stepping level between
CPU's, so I ran several diagnostic programs on both CPU's.  The first program
was InfoPlus, this revealed that both CPU's contained the POPADD bug, which
is apparently well-known with the 386 family.  The second program I ran was
386STEP, this was popular with the OS/2 community, because OS/2 will not run
on early-version 386 CPU's.  This program claimed that both CPU's were stepping
level D0 or later.  The 386STEP program was discussed in the February 11th,
1992 issue of PC Magazine.

I am sure that there is a processor bug in the CPU that gcc crashes on and
I would very much like to know what it is.  I have seen the same problem with
GCC crashing on a Pentium class machine (although it was more random) and
I feel sure that if someone well versed in Intel CPU lore were to determine
what this problem is we could implement a fix that would help people that use
other processors than the 386 CPU's

At any rate, here are the processor markings, both top and bottom, for both
the good and the bad CPU:

Markings on CPU that makes gcc dump core with Internal compiler error:

Top of CPU:
   A80386DX-25  IV
   SX133
   L9500910
   INTEL   '85

Bottom of CPU:
   58351563AB
   MALAY
          948
   A0


Markings on CPU that works properly:

Top of CPU:
   A80386DX-25  IV
   SX218
   L0420501
   INTEL     '85

Bottom of CPU:
   90301121EF
   BZ   38
   KOREA


As you can see the major difference between the CPU's is that the good one
is made in Korea, and the bad one is made in Malaysia. 


>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199709070749.AAA10820>