Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 30 May 2002 11:00:44 +0200 (CEST)
From:      Martin Blapp <mb@imp.ch>
To:        Terry Lambert <tlambert2@mindspring.com>
Cc:        Brian Somers <brian@freebsd-services.com>, Jake Burkholder <jake@locore.ca>, <freebsd-current@FreeBSD.ORG>
Subject:   Re: CURRENT and P-IV problems
Message-ID:  <20020530104809.P18017-100000@levais.imp.ch>
In-Reply-To: <3CE0D768.8756A096@mindspring.com>

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

Hi all,

I can tell now for sure, that all SIG11 and SIG4 problems are
gone with make buildworld, if I compile here

make(8)
rm(8)
mkdir(8)

with -g -ggdb

If I don't do that, make world stops after 4 - 30 seconds. So it
could be definitly some optimizing bug in our gcc. And this bug
seems to be present in gcc 2.95.4 as well, as in the new gcc 3.1.

> The VAX and Windows debuggers are famous for making pointer
> errors "disappear" when you compile /debug.  GDB is better at
> not doing this, but isn't perfect.  Compiling with and without
> debug will yield different code.
>
> -g makes binaries bigger, and prevents some optimizations,
> even if you aren't telling the compiler to optimize.
>
> Does a "strip -g"'ed version of the -g compiled binary have the
> same problem?

No. This still works fine. I can compile with -g -ggdb and then
strip the binary and it still works fine.

>
> Also, an "objdump -p" comparison of the two might be informative;
> there were a number of problems in Alpha-land when the compiler
> assumptions changed because of the new binutils.  This might be a
> similar problem to the ld.so problems there, only with the ELF
> loader code.

With -g -ggdb

Program Header:
    LOAD off    0x00000000 vaddr 0x08048000 paddr 0x08048000 align 2**12
         filesz 0x0004e9ed memsz 0x0004e9ed flags r-x
    LOAD off    0x0004ea00 vaddr 0x08097a00 paddr 0x08097a00 align 2**12
         filesz 0x00001598 memsz 0x00010d70 flags rw-
    NOTE off    0x00000094 vaddr 0x08048094 paddr 0x08048094 align 2**2
         filesz 0x00000018 memsz 0x00000018 flags r--

The problematic version here on PIV 2Ghz:

# objdump -p /bin/rm

/bin/rm:     file format elf32-i386

Program Header:
    LOAD off    0x00000000 vaddr 0x08048000 paddr 0x08048000 align 2**12
         filesz 0x0004e56d memsz 0x0004e56d flags r-x
    LOAD off    0x0004e580 vaddr 0x08097580 paddr 0x08097580 align 2**12
         filesz 0x00001598 memsz 0x00010d70 flags rw-
    NOTE off    0x00000094 vaddr 0x08048094 paddr 0x08048094 align 2**2
         filesz 0x00000018 memsz 0x00000018 flags r--


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




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