mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-25 04:49:54 +08:00
gdb/
2012-11-06 Pedro Alves <palves@redhat.com> PR gdb/14810 * breakpoint.c (bpstat_stop_status): Skip disabled locations. gdb/testsuite/ 2012-11-06 Pedro Alves <palves@redhat.com> PR gdb/14810 * gdb.base/disabled-location.c: New file. * gdb.base/disabled-location.exp: New file.
This commit is contained in:
@ -1,3 +1,9 @@
|
||||
2012-11-06 Pedro Alves <palves@redhat.com>
|
||||
|
||||
PR gdb/14810
|
||||
|
||||
* breakpoint.c (bpstat_stop_status): Skip disabled locations.
|
||||
|
||||
2012-11-06 Pierre Muller <muller@sourceware.org>
|
||||
|
||||
* contrib/ari/create-web-ari-in-src.sh: Avoid problem if script
|
||||
|
@ -5175,7 +5175,7 @@ bpstat_stop_status (struct address_space *aspace,
|
||||
if (b->type == bp_hardware_watchpoint && bl != b->loc)
|
||||
break;
|
||||
|
||||
if (bl->shlib_disabled)
|
||||
if (!bl->enabled || bl->shlib_disabled)
|
||||
continue;
|
||||
|
||||
if (!bpstat_check_location (bl, aspace, bp_addr, ws))
|
||||
|
@ -1,3 +1,10 @@
|
||||
2012-11-06 Pedro Alves <palves@redhat.com>
|
||||
|
||||
PR gdb/14810
|
||||
|
||||
* gdb.base/disabled-location.c: New file.
|
||||
* gdb.base/disabled-location.exp: New file.
|
||||
|
||||
2012-11-06 Tom Tromey <tromey@redhat.com>
|
||||
|
||||
* gdb.threads/gcore-thread.exp: Use gdb_gcore_cmd.
|
||||
|
29
gdb/testsuite/gdb.base/disabled-location.c
Normal file
29
gdb/testsuite/gdb.base/disabled-location.c
Normal file
@ -0,0 +1,29 @@
|
||||
/* This testcase is part of GDB, the GNU debugger.
|
||||
|
||||
Copyright (C) 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/>. */
|
||||
|
||||
static int
|
||||
function (void)
|
||||
{
|
||||
return 1; /* step stops here */
|
||||
}
|
||||
|
||||
int
|
||||
main ()
|
||||
{
|
||||
function ();
|
||||
return 0;
|
||||
}
|
41
gdb/testsuite/gdb.base/disabled-location.exp
Normal file
41
gdb/testsuite/gdb.base/disabled-location.exp
Normal file
@ -0,0 +1,41 @@
|
||||
# Copyright (C) 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/>.
|
||||
|
||||
standard_testfile
|
||||
|
||||
if { [prepare_for_testing ${testfile}.exp ${testfile}] } {
|
||||
return -1
|
||||
}
|
||||
|
||||
if ![runto_main] then {
|
||||
fail "Can't run to main"
|
||||
return 0
|
||||
}
|
||||
|
||||
gdb_test "break function" \
|
||||
"Breakpoint.*at.* file .*$srcfile, line.*" \
|
||||
"setting breakpoint on function"
|
||||
|
||||
gdb_test_no_output "disable \$bpnum.1" "disable location"
|
||||
|
||||
set test "step doesn't trip on disabled location"
|
||||
gdb_test_multiple "step" $test {
|
||||
-re "Breakpoint .*$gdb_prompt $" {
|
||||
fail $test
|
||||
}
|
||||
-re "function \\(\\) at .*$srcfile:.*step stops here.*$gdb_prompt $" {
|
||||
pass $test
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user