diff options
author | Daniel Jacobowitz <drow@false.org> | 2005-06-13 16:15:40 +0000 |
---|---|---|
committer | Daniel Jacobowitz <drow@false.org> | 2005-06-13 16:15:40 +0000 |
commit | c1bd25fd1de1bc9e80bf95feb670c26be62c833b (patch) | |
tree | 040f83c9ea28a54f68672022b0a04975c5b9c37c /gdb/testsuite | |
parent | 37f6032b8594c94b585732cf7ae09affe8614eee (diff) | |
download | gdb-c1bd25fd1de1bc9e80bf95feb670c26be62c833b.zip gdb-c1bd25fd1de1bc9e80bf95feb670c26be62c833b.tar.gz gdb-c1bd25fd1de1bc9e80bf95feb670c26be62c833b.tar.bz2 |
gdb/
* Makefile.in (symfile.o): Add $(exec_h).
* exec.h (exec_set_section_address): Add prototype.
* exec.c (exec_set_section_address): New function.
* symfile.c: Include "exec.h".
(struct place_section_arg, place_section): New.
(default_symfile_offsets): Call place_section for each
section of a relocatable file.
gdb/testsuite/
* gdb.base/relocate.c: Add a copyright notice.
(dummy): Remove.
* gdb.base/relocate.exp: Test printing the values of variables
from a relocatable file.
Diffstat (limited to 'gdb/testsuite')
-rw-r--r-- | gdb/testsuite/ChangeLog | 7 | ||||
-rw-r--r-- | gdb/testsuite/gdb.base/relocate.c | 24 | ||||
-rw-r--r-- | gdb/testsuite/gdb.base/relocate.exp | 16 |
3 files changed, 41 insertions, 6 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 48bf65c..e8580db 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,3 +1,10 @@ +2005-06-13 Daniel Jacobowitz <dan@codesourcery.com> + + * gdb.base/relocate.c: Add a copyright notice. + (dummy): Remove. + * gdb.base/relocate.exp: Test printing the values of variables + from a relocatable file. + 2005-06-12 Daniel Jacobowitz <dan@codesourcery.com> * gdb.mi/mi-syn-frame.exp, gdb.mi/mi2-syn-frame.exp: Don't expect diff --git a/gdb/testsuite/gdb.base/relocate.c b/gdb/testsuite/gdb.base/relocate.c index 90e70ff..7e85efb 100644 --- a/gdb/testsuite/gdb.base/relocate.c +++ b/gdb/testsuite/gdb.base/relocate.c @@ -1,10 +1,26 @@ +/* This testcase is part of GDB, the GNU debugger. + + Copyright 2002, 2003, 2004, 2005 + 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., 51 Franklin Street, Fifth Floor, Boston, MA + 02110-1301, USA. */ + static int static_foo = 1; static int static_bar = 2; -/* This padding is just for the benefit of the test harness. It - causes the globals to have different addresses than the functions. */ -int dummy[] = {1, 1, 1, 1, 1, 1, 1, 1, 1, 1}; - int global_foo = 3; int global_bar = 4; diff --git a/gdb/testsuite/gdb.base/relocate.exp b/gdb/testsuite/gdb.base/relocate.exp index 916ce1c..13ea62a 100644 --- a/gdb/testsuite/gdb.base/relocate.exp +++ b/gdb/testsuite/gdb.base/relocate.exp @@ -1,4 +1,4 @@ -# Copyright 2002, 2003 Free Software Foundation, Inc. +# Copyright 2002, 2003, 2005 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 @@ -131,4 +131,16 @@ if { "${function_foo_addr}" == "${new_function_foo_addr}" } { pass "function foo has a different address" } -return 0 +# Now try loading the object as an exec-file; we should be able to print +# the values of variables after we do this. + +gdb_exit +gdb_start +gdb_reinitialize_dir $srcdir/$subdir +gdb_load ${binfile} + +# Check the values of the variables. +gdb_test "print static_foo" "\\\$$decimal = 1" +gdb_test "print static_bar" "\\\$$decimal = 2" +gdb_test "print global_foo" "\\\$$decimal = 3" +gdb_test "print global_bar" "\\\$$decimal = 4" |