import gdb-1999-11-01 snapshot

This commit is contained in:
Jason Molenda
1999-11-02 04:44:47 +00:00
parent 9503fd8735
commit 5c44784c11
57 changed files with 2267 additions and 391 deletions

View File

@@ -1,3 +1,14 @@
1999-11-01 Stan Shebs <shebs@andros.cygnus.com>
From Jimmy Guo <guo@cup.hp.com>:
* gdb.base/annota1.exp: Add tests for annotate ignore count change.
* gdb.base/annota1.c: Add code for tests to work with.
1999-10-26 Frank Ch. Eigler <fche@cygnus.com>
* gdb.base/remote.exp: New test for remote downloading settings.
* gdb.base/remote.c: New file with large .data.
1999-10-18 Jim Blandy <jimb@zwingli.cygnus.com>
* gdb.threads/linux-dp.c, gdb.threads/linux-dp.exp: New test suite

View File

@@ -39,6 +39,12 @@ main ()
printf ("value is %d\n", value);
printf ("my_array[2] is %d\n", my_array[2]);
{
int i;
for (i = 0; i < 5; i++)
value++;
}
return 0;
}

View File

@@ -359,6 +359,54 @@ gdb_expect {
timeout { fail "re-run (timeout)" }
}
#
# Test that breakpoints-invalid is issued once and only once for
# breakpoint ignore count changes, after annotation stopped.
#
send_gdb "break 46\n"
gdb_expect {
-re "Breakpoint 5 at $hex: file .*$srcfile, line 46.*$gdb_prompt$" {
pass "break at 46"
}
-re ".*$gdb_prompt$" { fail "break at 46" }
timeout { fail "break at 46 (timeout)" }
}
send_gdb "ignore 5 4\n"
gdb_expect {
-re "Will ignore next 4 crossings of breakpoint 5.*$gdb_prompt$" {
pass "ignore 5 4"
}
-re ".*$gdb_prompt$" { fail "ignore 5 4" }
timeout { fail "ignore 5 4 (timeout)" }
}
send_gdb "continue\n"
gdb_expect {
-re ".*$srcfile:46:.*\032\032stopped\r\n\r\n\032\032breakpoints-invalid\r\n$gdb_prompt$" {
pass "annotate ignore count change"
}
-re ".*$gdb_prompt$" { fail "annotate ignore count change" }
timeout { fail "annotate ignore count change (timeout)" }
}
# check that ignore command is working, or the above can provide
# misleading assurance ...
send_gdb "next\n"
gdb_expect {
-re "$gdb_prompt$" {}
timeout { fail "next to exit loop" }
}
send_gdb "next\n"
gdb_expect {
-re ".*$srcfile:49:.*$gdb_prompt$" {
pass "breakpoint ignore count"
}
-re ".*$gdb_prompt$" { fail "breakpoint ignore count" }
timeout { fail "breakpoint ignore count (timeout)" }
}
#
# Send a signal that is not handled; test:

View File

@@ -0,0 +1,26 @@
#include <stdio.h>
#include <stdlib.h>
/**************************************************************************
* TESTS :
* -- downloading of a rather large executable
***************************************************************************/
/* A large array in .data. If RLE compression becomes available during
downloads, this would have to become a bunch of real random data.
Here's a quick way of generating such a bunch:
yes | awk '{printf ("%4d,", rand()*1000);}' | fold -w80 -s | head -4096
*/
unsigned long random_data[65536] = { 1 };
int
main()
{
printf ("%lu\n", random_data [rand() %
(sizeof (random_data) /
sizeof (random_data [0]))]);
}

View File

@@ -0,0 +1,83 @@
# Copyright (C) 1999 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
# Please email any bugs, comments, and/or additions to this file to:
# bug-gdb@prep.ai.mit.edu
if $tracelevel then {
strace $tracelevel
}
set prms_id 0
set bug_id 0
# test only on a remote target board
if {! [is_remote target]} {
return
}
set testfile "remote"
set srcfile ${testfile}.c
set binfile ${objdir}/${subdir}/${testfile}
proc gdb_load_timed {executable writesize} {
global test gdb_prompt
set test "timed download `[file tail $executable]' ($writesize)"
if {$writesize != ""} then {
send_gdb "set remotewritesize $writesize\n"
gdb_expect 5 {
-re ".*$gdb_prompt $" { }
timeout { fail "$test - setting remotewritesize" ; return }
}
}
set load_begin_time [clock clicks]
set result [gdb_load $executable]
set load_end_time [clock clicks]
if {$result < 0} then { fail "$test - loading executable"; return }
verbose "$test - time [expr ($load_end_time - $load_begin_time) / 1000] ms"
pass $test
}
# tests
gdb_start
set result [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug}]
if {$result != "" } then {
gdb_suppress_entire_file "Testcase compile failed, so all tests in this file will automatically fail."
}
gdb_load_timed $binfile {}
gdb_load_timed $binfile 50
gdb_load_timed $binfile 100
gdb_load_timed $binfile 200
gdb_load_timed $binfile 400
# extra tests for capable targets
if {[target_info gdb,big_rx_buffers] != ""} then {
gdb_load_timed $binfile 800
gdb_load_timed $binfile 8000
gdb_load_timed $binfile 80000
}
gdb_exit