This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
disturbing g++ 971031 results. defer-pop to blame?
- To: egcs at cygnus dot com
- Subject: disturbing g++ 971031 results. defer-pop to blame?
- From: Robert Lipe <robertl at dgii dot com>
- Date: Sun, 2 Nov 1997 14:28:10 -0600
- References: <19971101224835.30144@dgii.com>
> Jeff's dwarf2out.c patch applied. Top level make bootstrap-lean
> to build it.
>
> --target=i586-pc-sco3.2v5.0.4
>
> For GCC, Both ELF and COFF fail minimally and identically.
Something screwy is going on here...
On the 1024 snapshot, g++ worked pretty well for both ELF and COFF.
I can't swear that I rebuilt the libraries on 1024, but I will swear
that I have this time. I will also swear that I've done a top-level
make clean and make bootstrap-lean since applying Jeff's dwarf2out
patch.
I'm seeing different failures on g++ than I have before. ELF and COFF
used to fail identically. Since it's sort of wierd, I should confess
that ELF on this target uses dwarf2eh and COFF uses sjlj.
Here are the failures. First ELF, then COFF.
FAIL: g++.benjamin/warn01.C (test for excess errors)
FAIL: g++.brendan/template9.C Execution test
FAIL: g++.jason/2371.C Execution test
XPASS: g++.jason/destruct3.C - (test for bogus messages, line 38)
FAIL: g++.jason/template31.C (test for excess errors)
FAIL: g++.law/arg8.C Execution test
FAIL: g++.law/code-gen5.C Execution test
FAIL: g++.law/cvt2.C Execution test
FAIL: g++.law/profile1.C (test for excess errors)
XPASS: g++.mike/dyncast1.C Execution test
XPASS: g++.mike/dyncast2.C Execution test
FAIL: g++.mike/eh2.C Execution test
FAIL: g++.mike/net34.C Execution test
FAIL: g++.mike/net46.C Execution test
FAIL: g++.mike/p658.C Execution test
FAIL: g++.mike/p9732b.C Execution test
=== g++ Summary ===
# of expected passes 3367
# of unexpected failures 13
# of unexpected successes 3
# of expected failures 80
# of untested testcases 6
./negcs version egcs-2.90.15 971031 (gcc2-970802 experimental)
If I hand-compile and run, say, template.9.C, I see the "PASS" output
followed by an 'illegal instruction. Core dumped'. Even if I modify
the assembly output for that file to just make main return, I get the
same. I tried a couple of tests manually and got similar results.
$ ./negcs /tmp/net34.C -lstdc++
(robertl) rjlhome:/play/testgcc
$ ./a.out
bar_1::k -> 1
bar_2::k -> 2
bar_1::get_k() -> 1
bar_2::get_k() -> 2
Memory fault(coredump)
I get this with or without -fno-exceptions and with any -O from 0 to 3.
If I add '-defer-pop' to most of the cases I've tried by hand, it
seems to work. In fact, I just wrote a script to loop through those
cases and with -defer-pop. With -defer-pop, 8 of them pass. Without
-defer-pop, none of them pass.
Test Run By robertl on Sun Nov 2 13:11:08 1997
Native configuration is i586-pc-sco3.2v5.0.4
FAIL: g++.benjamin/warn01.C (test for excess errors)
XPASS: g++.jason/destruct3.C - (test for bogus messages, line 38)
FAIL: g++.jason/thunk2.C (test for excess errors)
FAIL: g++.law/profile1.C (test for excess errors)
XPASS: g++.mike/dyncast1.C Execution test
XPASS: g++.mike/dyncast2.C Execution test
FAIL: g++.mike/eh30.C (test for excess errors)
FAIL: g++.mike/init1.C Execution test
FAIL: g++.mike/p2736.C Execution test
FAIL: g++.mike/p4750.C (test for excess errors)
=== g++ Summary ===
# of expected passes 3372
# of unexpected failures 7
# of unexpected successes 3
# of expected failures 81
# of untested testcases 6
./negcs version egcs-2.90.15 971031 (gcc2-970802 experimental)
The COFF test results are more consistent with what we've seen
to date on this target.
Any ideas what's going on?
Thanx,
RJL