This is the mail archive of the
gdb-patches@sourceware.cygnus.com
mailing list for the GDB project.
Re: RFC: Testsuite patches, a few comments and questions...
- To: Scott Bambrough <scottb at netwinder dot org>
- Subject: Re: RFC: Testsuite patches, a few comments and questions...
- From: Daniel Berlin <dan at cgsoftware dot com>
- Date: Thu, 20 Apr 2000 14:39:32 -0700 (PDT)
- cc: GDB Patches Mail List <gdb-patches at sourceware dot cygnus dot com>
Pleaes don't remove the xfails from virtfunc.exp, they only pass by
accident right now.
I'm working on it as we speak, it's taking a while, with finals and all.
--Dan
On Thu, 20 Apr 2000, Scott Bambrough wrote:
> I spent most of today running the testsuite on the 5.0 branch on a NetWinder.
> My goal was to get rid of all XPASS and UNTESTED results. I also took the time
> to examine which tests were not being run on my platform and why. In many cases
> that boiled down to which tests ran only on HP platforms.
>
> Using the attached patches to the test suite I can achieve the appended results
> on ARM Linux in the GDB 5.0 branch. Most of the patches remove setup_xfails or
> simple enable the tests to be run on ARM Linux. The lone exception is:
>
> * testsuite/gdb.base/so-impl-ld.exp: Fixed typo in triplet for
> linux. Added wildcard to handle gnu-oldld case on ARM.
>
> I had to remove a leading space in the triplet to get the test to run. I also
> added a wildcard ("*") after the gnu to handle the arm*-*-linux-gnuoldld target.
>
> I enabled the following tests to run on ARM Linux. For the most part, the
> previously they only ran on HP configurations. They are included in the
> appended results. For the most part they seem to be useful tests for Linux in
> general, but are just run for HP configurations. I'd appreciate comments if
> someone thinks they are not. I only gave them a cursory once over during my
> tests today.
>
> gdb.base/environ.exp 23/26 tests pass
> gdb.base/recurse.exp 19/19 tests pass
> gdb.base/sect-cmd.exp 3/4 tests pass
> gdb.base/so-indr-cl.exp 1/2 tests pass
>
> I also tried the following tests on ARM Linux. None of these run on anything
> but HP configurations. They are NOT included in the attached results. These
> seem like they would be useful, but for the most part more than 50% of the tests
> fail. I've spent no time following these up. Some of the results are
> surprising; completion.exp tests command line completion. I'd expect it to work
> on any machine. Comments would interest me.
>
> gdb.base/attach.exp 15/23 tests pass
> gdb.base/completion.exp 4/23 tests pass
> gdb.base/foll-exec.exp 12/27 tests pass
> gdb.base/foll-fork.exp 15/26 tests pass
> gdb.base/foll-vfork.exp 6/15 tests pass
> gdb.base/member-ptr.exp 12/39 tests pass
> gdb.base/solib.exp 0/26 tests pass
>
> I also tried the following tests on ARM Linux. None of these compiled for me.
>
> gdb.c++/ambiguous.exp
> gdb.c++/ctti.exp
> gdb.threads/step.exp
> gdb.threads/step2.exp
>
> I don't understand the following code from pthreads.exp:
>
> proc test_startup {} {
> global srcdir srcfile gdb_prompt expect_out
> global horiz
> global main_id thread1_id thread2_id
>
> # We should be able to do an info threads before starting any others.
> send_gdb "info threads\n"
> gdb_expect {
> -re ".*Thread.*LWP.*main.*$gdb_prompt $" {
> pass "info threads"
> }
> -re "\r\n$gdb_prompt $" {
> pass "info threads"
> setup_xfail "*-*-*"
> fail "gdb does not support pthreads for this machine"
> return 0
> ...
>
> The last expect case is very odd. It succeeds, sets up an xfail, fails and
> exits deliberately as it is starting the tests. Why? Is there some reason for
> this?
>
> While I did this work in the branch, I'm not convinced the patch is suitable for
> it. Any comments?
>
> The results follow:
>
> Native configuration is armv4l-unknown-linux-gnu
>
> === gdb tests ===
>
>
> Running target unix
> FAIL: gdb.base/annota1.exp: run until main breakpoint
> FAIL: gdb.base/annota1.exp: backtrace from shlibrary
> FAIL: gdb.base/annota1.exp: backtrace @ signal handler
> FAIL: gdb.base/break.exp: break main #1
> FAIL: gdb.base/break.exp: break main #2
> FAIL: gdb.base/break.exp: clear main
> FAIL: gdb.base/break.exp: breakpoint function, optimized file
> FAIL: gdb.base/break.exp: run until function breakpoint, optimized file
> FAIL: gdb.base/break.exp: run until breakpoint set at small function, optimized
> file
> FAIL: gdb.base/commands.exp: continue in infrun_breakpoint_command_test
> FAIL: gdb.base/corefile.exp: args: -core=corefile
> FAIL: gdb.base/environ.exp: info program
> FAIL: gdb.base/environ.exp: info program after step
> FAIL: gdb.base/environ.exp: info program after deleted breakpoint
> FAIL: gdb.base/interrupt.exp: continue
> FAIL: gdb.base/interrupt.exp: send end of file
> FAIL: gdb.base/return.exp: correct value returned double test (known problem
> with i*86 and sparc solaris
> FAIL: gdb.base/sect-cmd.exp: set section command
> FAIL: gdb.base/selftest.exp: backtrace through signal handler
> FAIL: gdb.base/sigall.exp: get signal CHLD
> FAIL: gdb.base/sigall.exp: advance to TTIN
> FAIL: gdb.base/sigall.exp: get signal TTIN
> FAIL: gdb.base/signals.exp: 'next' behaved as 'continue (known SVR4 bug)'
> FAIL: gdb.base/signals.exp: bt in signals.exp
> FAIL: gdb.base/so-impl-ld.exp: step into solib call
> FAIL: gdb.base/so-impl-ld.exp: step in solib call
> FAIL: gdb.base/so-impl-ld.exp: step out of solib call
> FAIL: gdb.base/so-indr-cl.exp: break on indirect solib call before running
> FAIL: gdb.base/step-test.exp: large struct by value
> FAIL: gdb.base/step-test.exp: continue until exit at step-test.exp: the program
> is no longer running
> FAIL: gdb.base/structs2.exp: structs2 continue2 (PRMS 13536)
> FAIL: gdb.c++/annota2.exp: delete bps
> FAIL: gdb.c++/annota2.exp: annotate-quit
> FAIL: gdb.c++/virtfunc.exp: print pEe->vvb()
> FAIL: gdb.mi/mi-console.exp: Hello message (timeout)
> FAIL: gdb.mi/mi-stack.exp: stack args listing 0
> FAIL: gdb.mi/mi-stack.exp: stack args listing 1
> FAIL: gdb.mi/mi-stack.exp: stack info-depth
> FAIL: gdb.mi/mi-stack.exp: stack info-depth 99
> FAIL: gdb.stabs/weird.exp: p v_comb
>
> === gdb Summary ===
>
> # of expected passes 6929
> # of unexpected failures 40
> # of expected failures 175
>
>
> 2000-04-19 Scott Bambrough <scottb@netwinder.org>
>
> * testsuite/gdb.base/environ.exp: Run tests for arm*-*-linux-gnu*.
> * testsuite/gdb.base/recurse.exp: Run tests for arm*-*-linux-gnu*.
> * testsuite/gdb.base/sect-cmd.exp: Run tests for arm*-*-linux-gnu*.
>
> * testsuite/gdb.base/so-impl-ld.exp: Fixed typo in triplet for
> linux. Added wildcard to handle gnu-oldld case on ARM.
>
> * testsuite/gdb.base/so-indr-cl.exp: Run tests for arm*-*-linux-gnu*.
> * testsuite/gdb.base/watchpoint.exp (test_stepping): Clear xfail.
>
> * testsuite/gdb.c++/derivation.exp
> (print g_instance.afoo): Remove setup_xfail "*-*-*".
> (print g_instance.bfoo): Remove setup_xfail "*-*-*".
> (print g_instance.cfoo): Remove setup_xfail "*-*-*".
>
> * testsuite/gdb.c++/overload.exp
> (print foo_instance1.overload_args()): Remove setup_xfail "*-*-*"
> on all tests (1-11 arguments).
> (print foo_instance1.overload1arg()): Remove setup_xfail "*-*-*"
> on all tests (none, char, signed char, unsigned char, short,
> unsigned short, int, unsigned int, long, unsigned long, float
> and double arguments).
>
> * testsuite/gdb.c++/virtfunc.exp
> (print pAa->f()): Remove setup_xfail "*-*-*".
> (print pDe->vg()): Remove setup_xfail "*-*-*".
> (print pADe->vg()): Remove setup_xfail "*-*-*".
> (print pDd->vg()): Remove setup_xfail "*-*-*".
> (print pEe->vvb()): Remove setup_xfail "*-*-*".
> (print pVb->vvb()): Remove setup_xfail "*-*-*".
>
> --
> Scott Bambrough - Software Engineer
> REBEL.COM http://www.rebel.com
> NetWinder http://www.netwinder.org