Dear Matthew,
I repeated your posting on my RH6 machine, and it really crashed with a
core dump.
On a Debian 2.1 machine also with egcs-1.1.2, nothing happened, the
program finished properly without a dump.
Greetings,
Marc
Below the output from the Debian machine:
hemberg:lxts00/hemberg> g++ -v --save-temps -O2 langston.cxx -o langston
Reading specs from /usr/lib/gcc-lib/i486-linux/egcs-2.91.66/specs
gcc version egcs-2.91.66 Debian GNU/Linux (egcs-1.1.2 release)
/usr/lib/gcc-lib/i486-linux/egcs-2.91.66/cpp -lang-c++ -v -undef
-D__GNUC__=2 -D__GNUG__=2 -D__cplusplus -D__GNUC_MINOR__=91 -D__ELF__
-Dunix -Di386 -D__i386__ -Dlinux -D__ELF__ -D__unix__ -D__i386__
-D__i386__ -D__linux__ -D__unix -D__i386 -D__linux -Asystem(posix)
-D__EXCEPTIONS -D__OPTIMIZE__ -Asystem(unix) -Acpu(i386) -Amachine(i386)
-Di386 -D__i386 -D__i386__ -Di486 -D__i486 -D__i486__ langston.cxx
langston.ii
GNU CPP version egcs-2.91.66 Debian GNU/Linux (egcs-1.1.2 release) (i386
Linux/ELF)
#include "..." search starts here:
#include <...> search starts here:
/usr/include/g++-2
/usr/local/include
/usr/lib/gcc-lib/i486-linux/egcs-2.91.66/include
/usr/include
End of search list.
/usr/lib/gcc-lib/i486-linux/egcs-2.91.66/cc1plus langston.ii -quiet
-dumpbase langston.cc -O2 -version -o langston.s
GNU C++ version egcs-2.91.66 Debian GNU/Linux (egcs-1.1.2 release)
(i486-linux) compiled by GNU C version egcs-2.91.66 Debian GNU/Linux
(egcs-1.1.2 release).
as -V -Qy -o langston.o langston.s
GNU assembler version 2.9.1 (i486-linux), using BFD version 2.9.1.0.19
/usr/lib/gcc-lib/i486-linux/egcs-2.91.66/collect2 -m elf_i386
-dynamic-linker /lib/ld-linux.so.2 -o langston /usr/lib/crt1.o
/usr/lib/crti.o /usr/lib/gcc-lib/i486-linux/egcs-2.91.66/crtbegin.o
-L/usr/lib/gcc-lib/i486-linux/egcs-2.91.66 langston.o -lstdc++ -lm -lgcc
-lc -lgcc /usr/lib/gcc-lib/i486-linux/egcs-2.91.66/crtend.o
/usr/lib/crtn.o
----------------------------------------
Dr. Marc Hemberger
Gesellschaft f. Schwerionenforschung mbH
Planckstr. 1
64291 Darmstadt
Tel.: 06159/71-2554
M.Hemberger@gsi.de
On Wed, 30 Jun 1999, Matthew D. Langston wrote:
> Hi Damir
>
> Damir Buskulic wrote:
> >
> > It's very nice you warn us. Could you be more specific, please. I'm
> > using -O2 on LinuxPPC R5 which is the equivalent of RedHat6.0 for
> > Macs. What is the exact problem, and could you give a simple script
> > that shows it, so I can try and see if it happens also on my mnachine?
>
> I am cross posting to the roottalk list in case others may want to test
> their systems for this bug as well.
>
> I have attached the files which I included in my original bug report to
> the egcs developers.
>
> To test if you might have the bug, then compile "test.cxx" with
> "g++ -O2". On my system this will create a program that will cause a
> core dump at run time due to a signal 11, Segmentation fault.
>
> If you inspect the program with gdb (making sure to specify the core
> file), and if you know Intel assembly (see the file test.s for the full,
> but tiny, assembler listing) then it will be obvious where the problem
> is (pow's exponent is being used as a register offset).
>
> --
> Matthew D. Langston
> SLD, Stanford Linear Accelerator Center
> langston@SLAC.Stanford.EDU
>