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>