This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: [rfa/symtab] Move find_pc_section call tolookup_minimal_symbol_by_pc
- From: Elena Zannoni <ezannoni at redhat dot com>
- To: Adam Fedor <fedor at doc dot com>
- Cc: Elena Zannoni <ezannoni at redhat dot com>,"gdb-patches at sources dot redhat dot com" <gdb-patches at sources dot redhat dot com>,Andrew Cagney <cagney at gnu dot org>
- Date: Mon, 9 Feb 2004 10:28:19 -0500
- Subject: Re: [rfa/symtab] Move find_pc_section call tolookup_minimal_symbol_by_pc
- References: <4016E401.2050001@gnu.org><16409.26976.292424.689823@localhost.redhat.com><401994EE.9060306@gnu.org><1075438401.29218.20.camel@localhost.localdomain><16417.28827.748483.614684@localhost.redhat.com><1076300792.24865.298.camel@localhost.localdomain>
Adam Fedor writes:
> On Wed, 2004-02-04 at 15:22, Elena Zannoni wrote:
> > Adam Fedor writes:
> >
> > > +2004-01-29 Adam Fedor <fedor@gnu.org>
> > > +
> > > + * gdb.base/ppc-shared.exp: New file.
> > > + * gdb.base/ppc-main.c, gdb.base/ppc-shared.c: New files.
> > > +
> >
> >
> > I would just name these files with the PR number, since the test is generic.
> > The other problem (runaway with next) should have its own set of files.
> >
>
> Well the difference between the tests is only one line and the bugs are
> so similar it seems like shame to put them in completely different
> files. But I guess I could if it was necessary. Here it is again with
> both tests:
>
>
> 2004-02-08 Adam Fedor <fedor@gnu.org>
>
> * gdb.base/gdb1237-1280.exp: New file.
> * gdb.base/gdb1237-1280-main.c, gdb.base/gdb1237-1280.c: New files.
>
They seem ok. I have no objections to the unified tests, if the
filename doesn't create any problems. I'd say commit these and then
let MichaelC do a verification next time he does a test run.
elena
> Index: gdb.base/gdb1237-1280-main.c
> ===================================================================
> RCS file: gdb.base/gdb1237-1280-main.c
> diff -N gdb.base/gdb1237-1280-main.c
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ gdb.base/gdb1237-1280-main.c 9 Feb 2004 04:22:10 -0000
> @@ -0,0 +1,29 @@
> +/* Test step/next in a shared library
> +
> + Copyright 2004, Free Software Foundation, Inc.
> +
> + This file is part of GDB.
> +
> + 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. */
> +
> +extern int hithere2 ();
> +
> +int
> +main()
> +{
> + hithere2();
> + return 0;
> +}
> Index: gdb.base/gdb1237-1280.c
> ===================================================================
> RCS file: gdb.base/gdb1237-1280.c
> diff -N gdb.base/gdb1237-1280.c
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ gdb.base/gdb1237-1280.c 9 Feb 2004 04:22:10 -0000
> @@ -0,0 +1,28 @@
> +/* Test step/next in a shared library
> +
> + Copyright 2004, Free Software Foundation, Inc.
> +
> + This file is part of GDB.
> +
> + 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. */
> +
> +int hithere2()
> +{
> + int a;
> + a = 21;
> + return a;
> +}
> +
> Index: gdb.base/gdb1237-1280.exp
> ===================================================================
> RCS file: gdb.base/gdb1237-1280.exp
> diff -N gdb.base/gdb1237-1280.exp
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ gdb.base/gdb1237-1280.exp 9 Feb 2004 04:22:10 -0000
> @@ -0,0 +1,114 @@
> +# Copyright 2004 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
> +
> +# Test stepping into and continuing on from a function in
> +# a shared library (PR shlib/1280, shlib/1237).
> +
> +if $tracelevel then {
> + strace $tracelevel
> +}
> +
> +set testfile gdb1237-1280-main
> +set libfile gdb1237-1280
> +set srcfile ${testfile}.c
> +set binfile ${objdir}/${subdir}/${testfile}
> +
> +remote_exec build "rm -f ${binfile}"
> +
> +# get the value of gcc_compiled
> +if [get_compiler_info ${binfile}] {
> + return -1
> +}
> +
> +if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}.o" object {debug}] != "" } {
> + return -1
> +}
> +
> +# Build the shared libraries this test case needs.
> +#
> +
> +if {$gcc_compiled == 0} {
> + if [istarget "hppa*-hp-hpux*"] then {
> + set additional_flags "additional_flags=+z"
> + } elseif { [istarget "mips-sgi-irix*"] } {
> + # Disable SGI compiler's implicit -Dsgi
> + set additional_flags "additional_flags=-Usgi"
> + } else {
> + # don't know what the compiler is...
> + set additional_flags ""
> + }
> +} else {
> + if { ([istarget "powerpc*-*-aix*"]
> + || [istarget "rs6000*-*-aix*"]) } {
> + set additional_flags ""
> + } else {
> + set additional_flags "additional_flags=-fpic"
> + }
> +}
> +
> +set additional_flags "$additional_flags -shared"
> +if {[gdb_compile "${srcdir}/${subdir}/${libfile}.c" "${objdir}/${subdir}/${libfile}.so" executable [list debug $additional_flags "incdir=${objdir}"]] != ""} {
> + return -1
> +}
> +
> +if { ($gcc_compiled
> +&& ([istarget "powerpc*-*-aix*"]
> +|| [istarget "rs6000*-*-aix*"] )) } {
> + set additional_flags "additional_flags=-L${objdir}/${subdir}"
> +} elseif { [istarget "mips-sgi-irix*"] } {
> + set additional_flags "additional_flags=-rpath ${objdir}/${subdir}"
> +} else {
> + set additional_flags ""
> +}
> +
> +if {[gdb_compile "${objdir}/${subdir}/${testfile}.o ${objdir}/${subdir}/${libfile}.so" "${binfile}" executable [list debug $additional_flags]] != ""} {
> + return -1
> +}
> +
> +
> +gdb_exit
> +gdb_start
> +gdb_reinitialize_dir $srcdir/$subdir
> +gdb_load ${binfile}
> +
> +if ![runto_main] then {
> + fail "Can't run to main"
> + return 0
> +}
> +
> +# shlib 1280 test
> +set name "Step into shared lib function"
> +gdb_test_multiple "s" $name \
> +{
> + -re "hithere2 \\(\\) at.*${libfile}.c:25\r\n25.*a = 21;.*$gdb_prompt $" {
> + pass $name
> + }
> + -re ".*$gdb_prompt $" { kfail "gdb/1280" $name }
> +}
> +
> +# shlib 1237 test
> +set name "Next while in a shared lib function"
> +gdb_test_multiple "n" $name \
> +{
> + -re "26.*return a;.*$gdb_prompt $" {
> + pass $name
> + }
> + -re ".*$gdb_prompt $" { kfail "gdb/1237" $name }
> +}
> +