diff options
author | Yao Qi <yao@codesourcery.com> | 2012-10-14 12:24:08 +0000 |
---|---|---|
committer | Yao Qi <yao@codesourcery.com> | 2012-10-14 12:24:08 +0000 |
commit | 91567807f8a31f1ff194b45f784f5be4db84d4c6 (patch) | |
tree | 6d25f1456b7fdd6f33a0b9e50f04320addb5af2a /gdb/testsuite/gdb.mi/mi2-watch.exp | |
parent | 088aad051fd0ac9a109259f8e42feb0e513d13fe (diff) | |
download | gdb-91567807f8a31f1ff194b45f784f5be4db84d4c6.zip gdb-91567807f8a31f1ff194b45f784f5be4db84d4c6.tar.gz gdb-91567807f8a31f1ff194b45f784f5be4db84d4c6.tar.bz2 |
gdb/testsuite/
* gdb.mi/mi2-cli.exp: Move to mi-cli.exp.
* gdb.mi/mi-cli.exp: New.
* gdb.mi/mi2-basics.exp: Remove.
* gdb.mi/mi2-break.exp: Remove.
* gdb.mi/mi2-console.exp: Remove.
* gdb.mi/mi2-disassemble.exp: Remove.
* gdb.mi/mi2-eval.exp: Remove.
* gdb.mi/mi2-file.exp: Remove.
* gdb.mi/mi2-hack-cli.exp: Remove.
* gdb.mi/mi2-pthreads.exp: Remove.
* gdb.mi/mi2-read-memory.exp: Remove.
* gdb.mi/mi2-regs.exp: Remove.
* gdb.mi/mi2-return.exp: Remove.
* gdb.mi/mi2-simplerun.exp: Remove.
* gdb.mi/mi2-stack.exp: Remove.
* gdb.mi/mi2-stepi.exp: Remove.
* gdb.mi/mi2-syn-frame.exp: Remove.
* gdb.mi/mi2-until.exp: Remove.
* gdb.mi/mi2-watch.exp: Remove.
* gdb.mi/mi2-var-block.exp: Remove.
* gdb.mi/mi2-var-cmd.exp: Remove.
* gdb.mi/mi2-var-display.exp: Remove.
Diffstat (limited to 'gdb/testsuite/gdb.mi/mi2-watch.exp')
-rw-r--r-- | gdb/testsuite/gdb.mi/mi2-watch.exp | 186 |
1 files changed, 0 insertions, 186 deletions
diff --git a/gdb/testsuite/gdb.mi/mi2-watch.exp b/gdb/testsuite/gdb.mi/mi2-watch.exp deleted file mode 100644 index 5a56c8e..0000000 --- a/gdb/testsuite/gdb.mi/mi2-watch.exp +++ /dev/null @@ -1,186 +0,0 @@ -# Copyright 1999-2004, 2007-2012 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 3 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, see <http://www.gnu.org/licenses/>. - -# -# Test essential Machine interface (MI) operations -# -# Verify that, using the MI, we can run a simple program and perform basic -# debugging activities like: insert breakpoints, run the program, -# step, next, continue until it ends and, last but not least, quit. -# -# The goal is not to test gdb functionality, which is done by other tests, -# but to verify the correct output response to MI operations. -# - -load_lib mi-support.exp -set MIFLAGS "-i=mi2" - -gdb_exit -if [mi_gdb_start] { - continue -} - -standard_testfile basics.c - -if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug}] != "" } { - untested mi2-watch.exp - return -1 -} - -proc test_watchpoint_creation_and_listing {type} { - global mi_gdb_prompt - global srcfile - global hex - - set line_callee4_head [gdb_get_line_number "callee4 ("] - set line_callee4_body [expr $line_callee4_head + 2] - - # Insert a watchpoint and list - # Tests: - # -break-watch C - # -break-list - - mi_gdb_test "111-break-watch C" \ - "111\\^done,wpt=\{number=\"2\",exp=\"C\"\}" \ - "break-watch operation" - - mi_gdb_test "222-break-list" \ - "222\\\^done,BreakpointTable=\{nr_rows=\".\",nr_cols=\".\",hdr=\\\[\{width=\".*\",alignment=\".*\",col_name=\"number\",colhdr=\"Num\"\}.*colhdr=\"Type\".*colhdr=\"Disp\".*colhdr=\"Enb\".*colhdr=\"Address\".*colhdr=\"What\".*\\\],body=\\\[bkpt=\{number=\"2\",type=\".*watchpoint\",disp=\"keep\",enabled=\"y\",what=\"C\",times=\"0\",original-location=\"C\"\}\\\]\}" \ - "list of watchpoints" - -} - -# UNUSED at the time -proc test_awatch_creation_and_listing {type} { - global mi_gdb_prompt - global srcfile - global hex - - set line_main_head [gdb_get_line_number "main ("] - set line_main_body [expr $line_main_head + 2] - - # Insert an access watchpoint and list it - # Tests: - # -break-watch -a A - # -break-list - - mi_gdb_test "333-break-watch -a A" \ - "333\\^done,bkpt=\{number=\"1\",addr=\"$hex\",file=\".*basics.c\",line=\"$line_main_body\"\}" \ - "break-watch -a operation" - - mi_gdb_test "444-break-list" \ - "444\\^done,BreakpointTable=\{.*,hdr=\\\[.*\\\],body=\\\[bkpt=\{number=\"3\",type=\"watchpoint\",disp=\"del\",enabled=\"y\",addr=\"$hex\",func=\"main\",file=\".*basics.c\",line=\"$line_main_body\",times=\"0\"\},.*\}\\\]\}" \ - "list of watchpoints awatch" - - mi_gdb_test "777-break-delete 3" \ - "777\\^done" \ - "delete access watchpoint" -} - -# UNUSED at the time -proc test_rwatch_creation_and_listing {type} { - global mi_gdb_prompt - global srcfile - global hex - - set line_main_head [gdb_get_line_number "main ("] - set line_main_body [expr $line_main_head + 2] - - # Insert a read watchpoint and list it. - # Tests: - # -break-insert -r B - # -break-list - - mi_gdb_test "200-break-watch -r C" \ - "200\\^done,bkpt=\{number=\"5\",type=\"breakpoint\",disp=\"keep\",enabled=\"y\",addr=\"$hex\",func=\"callee4\",file=\".*basics.c\",line=\"$line_main_body\",times=\"0\"\}" \ - "break-insert -r operation" - - mi_gdb_test "300-break-list" \ - "300\\^done,BreakpointTable=\{.*,hdr=\\\[.*\\\],body=\\\[bkpt=\{number=\"5\",type=\"breakpoint\",disp=\"keep\",enabled=\"y\",addr=\"$hex\",func=\"main\",file=\".*basics.c\",line=\"$line_main_body\",times=\"0\"\},.*\}\\\}\}" \ - "list of breakpoints" - - mi_gdb_test "177-break-delete 4" \ - "177\\^done" \ - "delete read watchpoint" -} - -proc test_watchpoint_triggering {type} { - global mi_gdb_prompt - global hex - - set line_callee4_return_0 [gdb_get_line_number "return 0;"] - set line_callee3_head [gdb_get_line_number "callee3 ("] - set line_callee3_close_brace [expr $line_callee3_head + 3] - - # Continue execution until the watchpoint is reached, continue again, - # to see the watchpoint go out of scope. - # Does: - # -exec-continue (Here wp triggers) - # -exec-continue (Here wp goes out of scope) - - mi_execute_to "exec-continue" "watchpoint-trigger" "callee4" "" \ - ".*basics.c" $line_callee4_return_0 \ - {"" "wpt=\{number=\"2\",exp=\"C\"\},value=\{old=\".*\",new=\"3\"\}"} \ - "watchpoint trigger" - - if { $type == "sw" } { - setup_xfail *-*-* - } - mi_execute_to "exec-continue" "watchpoint-scope" "callee3" ".*" \ - ".*basics.c" $line_callee3_close_brace \ - {"" "wpnum=\"2\""} \ - "watchpoint trigger" - clear_xfail *-*-* -} - -proc test_watchpoint_all {type} { with_test_prefix "$type" { - upvar srcdir srcdir - upvar subdir subdir - upvar binfile binfile - - mi_delete_breakpoints - mi_gdb_reinitialize_dir $srcdir/$subdir - mi_gdb_load ${binfile} - - mi_runto callee4 - test_watchpoint_creation_and_listing $type - #test_rwatch_creation_and_listing $type - #test_awatch_creation_and_listing $type - test_watchpoint_triggering $type -}} - -# Run the tests twice, once using software watchpoints... -mi_gdb_test "567-gdb-set can-use-hw-watchpoints 0" \ - "567\\^done" \ - "hw watchpoints toggle (1)" -test_watchpoint_all sw - -mi_gdb_exit - -# ... and unless requested otherwise... -if [target_info exists gdb,no_hardware_watchpoints] { - return 0 -} - -mi_gdb_start - -# ... once using hardware watchpoints (if available). -mi_gdb_test "890-gdb-set can-use-hw-watchpoints 1" \ - "890\\^done" \ - "hw watchpoints toggle (2)" -test_watchpoint_all hw - -mi_gdb_exit -return 0 |