This is the mail archive of the
gdb-testers@sources.redhat.com
mailing list for the GDB project.
sunday project, gdb, 2003-02-05
- From: Michael Elizabeth Chastain <mec at shout dot net>
- To: gdb-testers at sources dot redhat dot com
- Date: Wed, 5 Feb 2003 23:34:07 -0600
- Subject: sunday project, gdb, 2003-02-05
Highlights of this report:
. gdb HEAD has a serious regression in java support.
. gdb.mi/mi-syn-frame.exp is a new test with a lot of FAIL results.
It needs more work.
. gdb PR count: 572 open, 16 analyzed, 8 suspended, 10 feedback,
0 paperwork, 423 closed. PR gdb/701 is missing from the database.
Query executed 2003-02-05T23:51:31Z.
. I added gcc 3.2.2-20030203, a prerelease version of gcc 3.2.2.
I have been covering gcc gcc-3_2_branch and had no trouble with it.
gcc 3.2.2-20030203 has no regressions versus gcc 3.2.1.
Nice branch.
. gcc gcc-3_3-branch and gcc HEAD have many -gstabs+ regressions
compared to gcc 3.2.1. This has been going on for months and I need to
focus on it.
My tables are here:
http://www.shout.net/~mec/sunday/2003-02-05/index.html
Michael C
. Old Bugs Fixed
Michael C fixed a test script bug in gdb.base/advance.exp and
gdb.base/until.exp.
. New Bugs Detected
gdb has a new bug regarding setting breakpoints in Java programs.
. Libiberty Testing
. target=native, host=i686-pc-linux-gnu, osversion=red-hat-8.0, libc=2.2.93-5-rh
binutils HEAD 649 tests, 0 failures
gcc 2.95.3, binutils HEAD All 616 tests passed
gcc 3.2.1, binutils HEAD All 648 tests passed
gcc 3.2.2-20030203, binutils 2.13.2.1 All 648 tests passed
gcc 3.2.2-20030203, binutils HEAD All 648 tests passed
gcc 3.2.2-20030203, binutils vendor All 648 tests passed
gcc gcc-3_2-branch, binutils 2.13.2.1 All 648 tests passed
gcc gcc-3_2-branch, binutils HEAD All 648 tests passed
gcc gcc-3_2-branch, binutils vendor All 648 tests passed
gcc gcc-3_3-branch, binutils 2.13.2.1 649 tests, 0 failures
gcc gcc-3_3-branch, binutils HEAD 649 tests, 0 failures
gcc gcc-3_3-branch, binutils vendor 649 tests, 0 failures
gcc HEAD, binutils 2.13.2.1 649 tests, 0 failures
gcc HEAD, binutils HEAD 649 tests, 0 failures
gcc HEAD, binutils vendor 649 tests, 0 failures
gdb gdb_5_3-branch All 649 tests passed
gdb HEAD 649 tests, 0 failures
. Gdb Testing
My tables are at:
http://www.shout.net/~mec/sunday/2003-02-05/index.html
The previous report was 2003-02-01:
http://www.shout.net/~mec/sunday/2003-02-01/Analysis.txt
. Counts
gdb 5.3: 0 build aborts, 0 test aborts, 377 non-PASS results
gdb gdb_5_3_branch: 0 build aborts, 0 test aborts, 379 non-PASS results
gdb HEAD: 0 build aborts, 0 test aborts, 324 non-PASS results
A non-PASS result is any result except PASS. This includes ERROR,
WARNING, NOTE, FAIL, KPASS, KFAIL, XPASS, XFAIL, UNRESOLVED,
UNTESTED, UNSUPPORTED, and unknown results.
. 5.3
. gdb.c++/annota2.exp: annotate-quit
pr gdb/544: gdb.c++/annota2.exp: annotate-quit test sometimes fails
http://sources.redhat.com/cgi-bin/gnatsweb.pl?database=gdb&cmd=view&pr=544
Fluctuation in test result from unknown cause.
. gdb.threads/killed.exp: GDB exits after multi-threaded program exits messily
pr gdb/568: GDB confused by messily-exiting multi-threaded programs
http://sources.redhat.com/cgi-bin/gnatsweb.pl?database=gdb&cmd=view&pr=568
Jim B thinks that this test may depend on a race condition:
http://sources.redhat.com/ml/gdb-testers/2002-q4/msg00010.html
. gdb.threads/schedlock.exp: *
This test script is useless in this release because of a
signed-versus-unsigned bug.
Daniel J has an obvious fix, which has been applied to gdb HEAD:
http://sources.redhat.com/ml/gdb-patches/2002-10/msg00454.html
. gdb_5_3-branch
checkout date is '2003-02-05 07:32:11 UTC'.
. gdb.c++/annota2.exp: annotate-quit
gdb.threads/killed.exp: GDB exits after multi-threaded program exits messily
gdb.threads/schedlock.exp: *
Same analysis as 5.3.
. HEAD
checkout date is '2003-02-05 07:30:23 UTC'.
. gdb.base/advance.exp: advance function called as param
gdb.base/advance.exp: advance function not called by current frame
gdb.base/advance.exp: advance with no argument
gdb.base/advance.exp: continue to call to func3 in main
gdb.base/until.exp: continue to call to func3 in main
FAIL -> PASS
Michael C fixed a bug in the test script so that it accommodates
both gcc 2.X and gcc 3.X. gdb itself was fine.
. gdb.c++/anon-union.exp: *
Michael C changed the test script to handle gcc errors
differently. Instead of calling gdb_suppress_entire_file, the
script calls perror and then 'continue' past all the tests.
This results in one ERROR instead of a WARNING followed by a
bunch of cascade problems. The most pernicious problem was that
the cascades continued into the next test script!
. gdb.c++/casts.exp: cast base class pointer to derived class pointer
UNRESOLVED -> PASS
This test was unresolved because of a cascade problem from the
previous test, gdb.c++/anon-union.exp. That was some cascade.
. gdb.c++/local.exp: Local out of scope
null -> PASS
null -> FAIL
null -> KFAIL
Jim B wrote a new test to cover an existing bug in gdb. The new
test PASSed with gcc 3.X -gdwarf-2 and KFAILed with gcc 3.X
-gstabs+.
pr gdb/825: gdb gets scope of class local to a function wrong
http://sources.redhat.com/cgi-bin/gnatsweb.pl?database=gdb&cmd=view&pr=825
The new test FAILed with gcc 2.X, both dwarf-2 and stabs+.
Those should also be KFAILs. I have committed a patch.
. gdb.c++/local.exp: ptype Local
FAIL -> KFAIL
Jim B improved this test and tied it to PR gdb/483.
pr gdb/825: gdb.c++/local.exp: ptype Local
http://sources.redhat.com/cgi-bin/gnatsweb.pl?database=gdb&cmd=view&pr=825
. gdb.c++/overload.exp: print intToChar(1)
null -> PASS
David C wrote a new test which PASSed in all configurations.
. gdb.c++/ovldbreak.exp: continue to bp overloaded : char
gdb.c++/ovldbreak.exp: continue to bp overloaded : short
gdb.c++/ovldbreak.exp: continue to bp overloaded : signed char
gdb.c++/ovldbreak.exp: continue to bp overloaded : unsigned char
gdb.c++/ovldbreak.exp: continue to bp overloaded : unsigned short
FAIL -> KFAIL
David C wrote PR gdb/1025 for an existing bug.
pr gdb/1025: failures in gdb.c++/ovldbreak.exp
http://sources.redhat.com/cgi-bin/gnatsweb.pl?database=gdb&cmd=view&pr=1025
There are actually two problems here with common symptoms.
One problem is that gnu binutils 2.12.1 and earlier have bugs
(fixed in binutils 2.13). The second problem is an un-analyzed
problem with gcc 2.95.3 -gdwarf-2.
. gdb.c++/pr-1023.exp: break myClass::performBlocking
null -> KFAIL
null -> PASS
gdb.c++/pr-1023.exp: break myClass::performUnblocking
null -> PASS
Michael C wrote a new test script which reproduces a bug
submitted by zeitler@lucent.com. The new script produced KFAIL
results with gcc 2.95.3 -gstabs+.
pr gdb/1023: setting a breakpoint on C++ member functions
http://sources.redhat.com/cgi-bin/gnatsweb.pl?database=gdb&cmd=view&pr=1023
. gdb.java/jmisc2.exp: setting breakpoint at jmisc.main(java.lang.String[])
null -> FAIL
. gdb.java/jmisc2.exp: p *args
gdb.java/jmisc2.exp: p args
PASS -> FAIL
This is a regression in gdb. The test script is unable to set a
breakpoint on the main function (this action does not ordinarily
PASS, hence the null -> FAIL transition). The other FAILs
cascade from there.
pr gdb/1039: regression: cannot set breakpoint on jmisc.main(java.lang.String[])
http://sources.redhat.com/cgi-bin/gnatsweb.pl?database=gdb&cmd=view&pr=1023
. gdb.mi/mi-syn-frame.exp: *
null -> PASS
null -> FAIL
Jason M wrote a new test script. There are some PASSes and a
lot of FAILs, particular with gcc 3.X. This test script needs
more work.
. gdb.threads/killed.exp: GDB exits after multi-threaded program exits messily
Same analysis as 5.3.
. gdb.threads/schedlock.exp: *
These results are noisier than 'cp /vmlinux /dev/audio'.
This test is still in a state where it's better to analyze the
absolute results than to compare results from date to date.
. Test Matrix
target => native
host => i686-pc-linux-gnu
osversion => red-hat-8.0
gdb => 5.3, gdb_5_3-branch%20030205, HEAD%20030205
gcc => 2.95.3, 3.2-7-rh, 3.2.1, 3.2.2-20030203, gcc-3_2-branch%20030204, gcc-3_3-branch%20030204, HEAD%20030204
binutils => 2.13.90.0.2-rh, 2.13.2.1, HEAD%20030204
libc => 2.2.93-5-rh
gformat => dwarf-2, stabs+
count 114 = 1 * 1 * 1 * 3 * (6*3+1*1) * 1 * 2
'target' and 'host' are gnu configuration triples.
'osversion' is the host operating system name, which is additional
information beyond 'host'.
'gdb', 'gcc', 'binutils', and 'libc' are version names.
versions starting with a digit are official releases or snapshots.
versions starting with a digit and ending with '-rh' are
vendor-supplied official releases on my red hat linux host.
versions named 'HEAD' are the cvs HEAD, also known as 'mainline' or 'trunk'.
versions with any other name are cvs branches.
cvs versions (head and branch) show the checkout date after a '%' delimiter.
'gformat' is the debugging information format.
'count' is the total number of configurations tested.
The vendor gcc is available only with vendor binutils,
thus the '(6*3+1*1)' term for gcc/binutils combinations.
. Baseline software
. host=i686-pc-linux-gnu, osversion=red-hat-8.0
make 3.79.1
binutils 2.13.2.1
gcc 3.2.1
flex 2.5.4
bison 1.35
tcl 8.4.1
expect 5.38.0
dejagnu 1.4.3
The sources.redhat.com cvs repository has its own versions of tcl,
expect, and dejagnu. I don't have the resources to test with both
tcl/expect/dejagnu stacks, so I choose the stock stack for my test
bed.
The sources.redhat.com version of tcl is nearly identical to tcl
8.4.1. The sources.redhat.com version of expect dates from
1998-06-15. The sources.redhat.com version of dejagnu is nearly
identical to dejagnu 1.4.3.
I have packaged and published my scripts to manage the baseline
software. They are called Migchain (Michael's Gnu Toolchain),
and they are licensed under the GPL.
ftp://ftp.shout.net/pub/users/mec/migchain/migchain-0.3.tar.gz
. Test Bed Changes Since Last Report
I implemented a suggestion from Andrew C about the way I check out
cvs trees. First, I run an 'ntpdate' command on my test bed host to
adjust my clock. Then I take the current date and subtract 180
seconds. Then I use this time as an argument to "cvs -D ..."
and list the time in this report.
In principle, anyone can reproduce my checkouts by issuing the same
"cvs -D ...". Or someone could tag or branch the tree at the same
date that I checked out for testing. This might be useful during the
release cycle.
The sources.redhat.com and gcc.gnu.org servers are also NTP
synchronized, so my date argument should always be in the past
according to the CVS server clock (the 180 seconds should be way more
than enough to cover any residual skew between NTP'd machines). This
avoids a window where "cvs -D ..." might be a few seconds in the
future on the server, and someone commits a file during that window.
It would be nice if the CVS protocol supported "cvs time" to discover
the current time on the server.
I added gcc 3.2.2-20030203 as a test compiler. I still build the test
bed itself with gcc 3.2.1.
Next report, I plan to drop gcc 3.2.1, gcc 3.2.2-20030203, and
gcc gcc-3_2-branch in favor of gcc 3.2.2. But for building the
test bed itself, I will stay with gcc 3.2.1 until I get some
spare CPU cycles.
I changed my results cruncher so that it munges both
'gdb.mi/mi0-*.exp' and 'gdb.mi/mi1-*.exp' to 'gdb.mi/mi[01]-*.exp'.
This improves comparability between gdb 5.3 and gdb HEAD.