sunday project, gdb, 2003-10-04
Michael Elizabeth Chastain
mec@shout.net
Sun Oct 5 14:20:00 GMT 2003
. Highlights of this report
gdb gdb_6_0-branch continues to be healthy.
gcc gcc-3_3-branch continues to have healthy debug info for
the configurations that I test.
The current tables are always at
http://www.shout.net/~mec/sunday/current/index.html
Michael C
. Old Bugs Fixed
None.
. New Bugs Detected
None.
. PR Count
Query executed 2003-10-05 12:59:51 2003
1406 matches found
21 analyzed
648 closed
23 feedback
701 open
3 paperwork
10 suspended
1406 TOTAL
. Libiberty Testing
. target=native, host=i686-pc-linux-gnu, osversion=red-hat-8.0, libc=2.2.93-5-rh
binutils HEAD 714 tests, 31 failures
gcc 2.95.3, binutils HEAD All 616 tests passed
gcc 3.3.1, binutils HEAD 649 tests, 0 failures
gcc gcc-3_3-branch, binutils 2.14 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.14 714 tests, 31 failures
gcc HEAD, binutils HEAD 714 tests, 31 failures
gcc HEAD, binutils vendor 714 tests, 31 failures
gdb HEAD 714 tests, 31 failures
gdb carlton_dictionary-branch 714 tests, 31 failures
gdb gdb_6_0-branch 649 tests, 0 failures
These are long-standing demangler bugs.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=7986
Problems with demangling (__cxa_demangle())
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=11028
The standalone C++ demangler doesn't work on some symbols
A libiberty log is available at
http://gcc.gnu.org/ml/gcc/2003-07/msg00032.html
. Gdb Testing
My tables are at
http://www.shout.net/~mec/sunday/2003-10-04/index.html
The previous tables are at
http://www.shout.net/~mec/sunday/2003-10-02/index.html
. Non-PASS Results
gdb 5.3 351 non-PASS results
gdb 6.0 323 non-PASS results
gdb gdb_6_0-branch 312 non-PASS results
gdb HEAD 358 non-PASS results
. 5.3
. gdb.c++/annota2.exp: annotate-quit
http://sources.redhat.com/gdb/bugs/544
gdb.c++/annota2.exp: annotate-quit test sometimes fails
Fluctuation in test result probably due to a signal handling
race in the command loop.
. gdb.threads/killed.exp: GDB exits after multi-threaded program exits messily
http://sources.redhat.com/gdb/bugs/568
GDB confused by messily-exiting multi-threaded programs
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/print-threads.exp: Hit kill breakpoint, 10 (slow with kill breakpoint)
blank -> PASS
Fluctuation with unknown cause. Probably harmless.
. 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
. 6.0
This is a pre-release version of gdb 6.0 from a tarball named
gdb-5.3.94.tar.bz2.
. gdb.cp/annota2.exp: annotate-quit
Same analysis as gdb 5.3.
. gdb.mi/mi*-pthreads.exp: check mi_thread_command_set: -thread-select [3456]
PASS -> blank
blank -> PASS
When gdb operates on an inferior program with threads, the
thread library in the inferior program behaves differently: it
generates more signals so that gdb can track events.
This causes some programs to behave differently because they
aren't prepared to handle the additional signals. The test
program for mi-pthreads.exp is such a program.
http://sources.redhat.com/ml/gdb/2003-09/msg00279.html
http://sources.redhat.com/gdb/bugs/259
. gdb.threads/print-threads.exp: Hit thread_function breakpoint, 5 (slow with kill breakpoint)
blank -> PASS
Same analysis as gdb 5.3.
. gdb.threads/schedlock.exp: *
PASS
FAIL
gdb.threads/schedlock.exp: thread 0 ran (didn't run)
gdb.threads/schedlock.exp: thread 1 ran (didn't run)
gdb.threads/schedlock.exp: thread 2 ran (didn't run)
gdb.threads/schedlock.exp: thread 3 ran (didn't run)
gdb.threads/schedlock.exp: thread 4 ran (didn't run)
gdb.threads/schedlock.exp: thread 5 ran (didn't run)
PASS
FAIL
All tests PASSed in almost all configurations except for the
"thread N ran" tests. Here are the counts per thread.
PASS FAIL
thread 0 1 25
thread 1 25 1
thread 2 25 1
thread 3 26 0
thread 4 25 1
thread 5 26 0
One configuration had anomalous results with many FAILs.
http://sources.redhat.com/gdb/bugs/1393
FAIL: gdb.threads/schedlock.exp: continue to breakpoint: return to loop (initial)
The log excerpt is:
# gdb.log excerpt
# target=native, host=i686-pc-linux-gnu, osversion=red-hat-8.0
# gdb=6.0
# gcc=2.95.3
# binutils=2.13.90.0.2-2-rh
# gformat=stabs+, glevel=2
(gdb) break 41 if arg != 5
Breakpoint 3 at 0x8048590: file /berman/migchain/source/gdb-6.0/gdb/testsuite/gdb.threads/schedlock.c, line 41.
(gdb) continue
Continuing.
Program received signal SIGINT, Interrupt.
[Switching to Thread 24580 (LWP 10234)]
0x42028c82 in sigprocmask () from /lib/i686/libc.so.6
(gdb) FAIL: gdb.threads/schedlock.exp: continue to breakpoint: return to loop (initial)
... many more FAILS ...
. gdb gdb_6_0-branch
checkout date is '2003-10-04 15:09:28 UTC'
previous date is '2003-10-02 22:45:03 UTC'
. gdb.cp/annota2.exp: annotate-quit
gdb.cp/annota3.exp: annotate-quit
Same analysis as gdb 5.3.
. gdb.mi/mi*-pthreads.exp: check mi_thread_command_set: -thread-select [3456]
blank -> PASS
PASS -> blank
Same analysis as gdb 6.0.
. gdb.threads/print-threads.exp: Hit kill breakpoint, 11 (slow with kill breakpoint)
gdb.threads/print-threads.exp: Hit thread_function breakpoint, 5 (slow with kill breakpoint)
blank -> PASS
Same analysis as gdb 5.3.
. gdb.threads/schedlock.exp: *
PASS
gdb.threads/schedlock.exp: thread 0 ran (didn't run)
gdb.threads/schedlock.exp: thread 1 ran (didn't run)
gdb.threads/schedlock.exp: thread 2 ran (didn't run)
gdb.threads/schedlock.exp: thread 3 ran (didn't run)
gdb.threads/schedlock.exp: thread 4 ran (didn't run)
gdb.threads/schedlock.exp: thread 5 ran (didn't run)
PASS
FAIL
All tests PASSed in all configurations except for the
"thread N ran" tests. Here are the counts per thread.
PASS FAIL
thread 0 5 21
thread 1 21 5
thread 2 26 0
thread 3 26 0
thread 4 26 0
thread 5 26 0
. gdb HEAD
checkout date is '2003-10-04 15:07:02 UTC'
previous date is '2003-10-02 22:41:55 UTC'
. gdb.cp/annota2.exp: annotate-quit
Same analysis as gdb 5.3.
. gdb.mi/mi*-pthreads.exp: check mi_thread_command_set: -thread-select [3456]
PASS -> blank
Same analysis as gdb 6.0.
gdb.threads/print-threads.exp: Hit kill breakpoint, 10 (slow with kill breakpoint)
blank -> PASS
PASS -> blank
Same analysis as gdb 5.3.
. gdb.threads/schedlock.exp: *
PASS
gdb.threads/schedlock.exp: thread 0 ran (didn't run)
gdb.threads/schedlock.exp: thread 1 ran (didn't run)
gdb.threads/schedlock.exp: thread 2 ran (didn't run)
gdb.threads/schedlock.exp: thread 3 ran (didn't run)
gdb.threads/schedlock.exp: thread 4 ran (didn't run)
gdb.threads/schedlock.exp: thread 5 ran (didn't run)
PASS
FAIL
All tests PASSed in all configurations except for the
"thread N ran" tests. Here are the counts per thread.
PASS FAIL
thread 0 2 24
thread 1 23 3
thread 2 26 0
thread 3 26 0
thread 4 26 0
thread 5 26 0
. Test Matrix
target => native
host => i686-pc-linux-gnu
osversion => red-hat-8.0
gdb => 5.3, 6.0, gdb_6_0-branch, HEAD
gcc => 2.95.3, 3.2-7-rh, 3.3.1, gcc-3_3-branch, HEAD
binutils => 2.13.90.0.2-rh, 2.14, HEAD
glibc => 2.2.93-5-rh
gformat => dwarf-2, stabs+
glevel => 2
count 104 = 1 * 1 * 1 * 4 * (4*3+1*1) * 1 * 2 * 1
'target' and 'host' are gnu configuration triples.
'osversion' is the host operating system name, which is additional
information beyond 'host'.
'gdb', 'gcc', 'binutils', and 'glibc' 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.
'gformat' is the debugging information format.
'glevel' is the debugging level.
'count' is the total number of configurations tested.
The vendor gcc is available only with vendor binutils,
thus the '(4*3+1*1)' term for gcc/binutils combinations.
. Host Software
. host=i686-pc-linux-gnu, osversion=red-hat-8.0
make 3.79.1
binutils 2.14
gcc 3.3
flex 2.5.4
bison 1.875
tcl 8.4.4
expect 5.39
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
Migbat (Michael's Gnu Build and Test), and they are licensed under the
GPL.
ftp://ftp.shout.net/pub/users/mec/migchain/migchain-0.6.tar.gz
ftp://ftp.shout.net/pub/users/mec/migbat/migbat-0.6.tar.gz
. Test Bed Changes Since Last Report
None.
More information about the Gcc-testresults
mailing list