aboutsummaryrefslogtreecommitdiff
path: root/gdb/testsuite
diff options
context:
space:
mode:
authorDaniel Jacobowitz <drow@false.org>2005-06-13 16:15:40 +0000
committerDaniel Jacobowitz <drow@false.org>2005-06-13 16:15:40 +0000
commitc1bd25fd1de1bc9e80bf95feb670c26be62c833b (patch)
tree040f83c9ea28a54f68672022b0a04975c5b9c37c /gdb/testsuite
parent37f6032b8594c94b585732cf7ae09affe8614eee (diff)
downloadgdb-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/ChangeLog7
-rw-r--r--gdb/testsuite/gdb.base/relocate.c24
-rw-r--r--gdb/testsuite/gdb.base/relocate.exp16
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"