* Re: [rfa/symtab] Move find_pc_section call to lookup_minimal_symbol_by_pc
@ 2004-02-09 21:58 Michael Elizabeth Chastain
2004-02-10 16:38 ` Adam Fedor
2004-02-16 18:11 ` Elena Zannoni
0 siblings, 2 replies; 24+ messages in thread
From: Michael Elizabeth Chastain @ 2004-02-09 21:58 UTC (permalink / raw)
To: ezannoni, fedor; +Cc: cagney, gdb-patches
The filenames are a problem because gdb1237-1280-main.c
and gdb1237-1280.c are not 8.3 unique.
You either have to make them 8.3 unique (preferred) or
add lines to config/djgpp/fnchange.lst.
For the kfail's, please use more specific patterns than just
".*$gdb_prompt $". kfail's should be for known bugs, which means
there should be known-bad output. If the output doesn't match a
specific known-bad output, then it means that gdb has regressed
even more, and the KFAIL turns into a FAIL (this does happen).
You don't need to call get_compiler_info unless you use one of
these functions or data symbols later: test_compiler_info,
gcc_compiled, hp_cc_compiler, hp_aCC_compiler, signed_keyword_not_used.
I missed the beginning of the thread, but it helps to say what
system(s) you tested it on (so when it breaks on a different system
later, it makes it easier to figure out what is wrong ... morbid
but true).
Michael C
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [rfa/symtab] Move find_pc_section call to lookup_minimal_symbol_by_pc
2004-02-09 21:58 [rfa/symtab] Move find_pc_section call to lookup_minimal_symbol_by_pc Michael Elizabeth Chastain
@ 2004-02-10 16:38 ` Adam Fedor
2004-02-16 18:11 ` Elena Zannoni
1 sibling, 0 replies; 24+ messages in thread
From: Adam Fedor @ 2004-02-10 16:38 UTC (permalink / raw)
To: Michael Elizabeth Chastain; +Cc: ezannoni, cagney, gdb-patches
On Monday, February 9, 2004, at 02:58 PM, Michael Elizabeth Chastain
wrote:
> For the kfail's, please use more specific patterns than just
> ".*$gdb_prompt $". kfail's should be for known bugs, which means
> there should be known-bad output. If the output doesn't match a
> specific known-bad output, then it means that gdb has regressed
> even more, and the KFAIL turns into a FAIL (this does happen).
>
>
The failure results in the test stopping somewhere in an internal
function. I think this changed in the different times it was broken,
and it might also change in between releases of the OS. So the actual
output might not be that useful for a KFAIL.
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [rfa/symtab] Move find_pc_section call to lookup_minimal_symbol_by_pc
2004-02-09 21:58 [rfa/symtab] Move find_pc_section call to lookup_minimal_symbol_by_pc Michael Elizabeth Chastain
2004-02-10 16:38 ` Adam Fedor
@ 2004-02-16 18:11 ` Elena Zannoni
2004-02-17 4:47 ` Adam Fedor
1 sibling, 1 reply; 24+ messages in thread
From: Elena Zannoni @ 2004-02-16 18:11 UTC (permalink / raw)
To: Michael Elizabeth Chastain; +Cc: ezannoni, fedor, cagney, gdb-patches
Michael Elizabeth Chastain writes:
> The filenames are a problem because gdb1237-1280-main.c
> and gdb1237-1280.c are not 8.3 unique.
>
> You either have to make them 8.3 unique (preferred) or
> add lines to config/djgpp/fnchange.lst.
>
I created a new PR to include both problems and use that new number. PR/1555.
> For the kfail's, please use more specific patterns than just
> ".*$gdb_prompt $". kfail's should be for known bugs, which means
> there should be known-bad output. If the output doesn't match a
> specific known-bad output, then it means that gdb has regressed
> even more, and the KFAIL turns into a FAIL (this does happen).
>
I am not sure what to do here, except start adding patterns.
> You don't need to call get_compiler_info unless you use one of
> these functions or data symbols later: test_compiler_info,
> gcc_compiled, hp_cc_compiler, hp_aCC_compiler, signed_keyword_not_used.
>
it is using gcc_compiled to figure out the flags to build the shlibs.
> I missed the beginning of the thread, but it helps to say what
> system(s) you tested it on (so when it breaks on a different system
> later, it makes it easier to figure out what is wrong ... morbid
> but true).
>
Adam?
I'd like to close this thread and get the test in.
elena
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [rfa/symtab] Move find_pc_section call to lookup_minimal_symbol_by_pc
2004-02-16 18:11 ` Elena Zannoni
@ 2004-02-17 4:47 ` Adam Fedor
2004-02-17 5:00 ` Daniel Jacobowitz
2004-02-17 14:23 ` Elena Zannoni
0 siblings, 2 replies; 24+ messages in thread
From: Adam Fedor @ 2004-02-17 4:47 UTC (permalink / raw)
To: Elena Zannoni; +Cc: Michael Elizabeth Chastain, Andrew Cagney, gdb-patches
[-- Attachment #1: Type: text/plain, Size: 533 bytes --]
On Mon, 2004-02-16 at 11:07, Elena Zannoni wrote:
> Michael Elizabeth Chastain writes:
> > The filenames are a problem because gdb1237-1280-main.c
> > and gdb1237-1280.c are not 8.3 unique.
> >
> > You either have to make them 8.3 unique (preferred) or
> > add lines to config/djgpp/fnchange.lst.
> >
>
> I created a new PR to include both problems and use that new number. PR/1555.
>
OK. Well I've added patterns that match the most recent failure, which
is the only one I can recreate in a reasonable amount of time.
[-- Attachment #2: gdb1555.patch --]
[-- Type: text/plain, Size: 6509 bytes --]
2004-02-17 Adam Fedor <fedor@gnu.org>
* gdb.base/gdb1555.exp: New file.
* gdb.base/gdb1555-main.c, gdb.base/gdb1555.c: New files.
Index: gdb.base/gdb1555-main.c
===================================================================
RCS file: gdb.base/gdb1555-main.c
diff -N gdb.base/gdb1555-main.c
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ gdb.base/gdb1555-main.c 17 Feb 2004 04:43:29 -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/gdb1555.c
===================================================================
RCS file: gdb.base/gdb1555.c
diff -N gdb.base/gdb1555.c
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ gdb.base/gdb1555.c 17 Feb 2004 04:43:29 -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/gdb1555.exp
===================================================================
RCS file: gdb.base/gdb1555.exp
diff -N gdb.base/gdb1555.exp
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ gdb.base/gdb1555.exp 17 Feb 2004 04:43:29 -0000
@@ -0,0 +1,119 @@
+# 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 gdb/1555, was PR shlib/1280, shlib/1237).
+
+if $tracelevel then {
+ strace $tracelevel
+}
+
+set testfile gdb1555-main
+set libfile gdb1555
+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
+}
+
+# PR/1555 (was 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 "0x\[0-9a-f\]+ in .* \\(\\) from /lib/ld.so.1.*$gdb_prompt $" {
+ kfail "gdb/1555" $name
+ }
+}
+# -re " 0x\[0-9a-f\]+ in \?\? () from /lib/ld.so.1.*$gdb_prompt $" {
+
+# PR/1555 (was 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 "Single stepping until exit from function __cache_line_size, \r\nwhich has no line number information.\r\n\r\nProgram exited normally.*$gdb_prompt $" {
+ kfail "gdb/1555" $name
+ }
+}
+
^ permalink raw reply [flat|nested] 24+ messages in thread* Re: [rfa/symtab] Move find_pc_section call to lookup_minimal_symbol_by_pc
2004-02-17 4:47 ` Adam Fedor
@ 2004-02-17 5:00 ` Daniel Jacobowitz
2004-02-17 14:23 ` Elena Zannoni
1 sibling, 0 replies; 24+ messages in thread
From: Daniel Jacobowitz @ 2004-02-17 5:00 UTC (permalink / raw)
To: Adam Fedor
Cc: Elena Zannoni, Michael Elizabeth Chastain, Andrew Cagney, gdb-patches
On Mon, Feb 16, 2004 at 09:47:08PM -0700, Adam Fedor wrote:
> + -re "Single stepping until exit from function __cache_line_size, \r\nwhich has no line number information.\r\n\r\nProgram exited normally.*$gdb_prompt $" {
Please use "function .*," instead - which function we think we're in
(presumably inside the PLT) will vary system to system.
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer
^ permalink raw reply [flat|nested] 24+ messages in thread* Re: [rfa/symtab] Move find_pc_section call to lookup_minimal_symbol_by_pc
2004-02-17 4:47 ` Adam Fedor
2004-02-17 5:00 ` Daniel Jacobowitz
@ 2004-02-17 14:23 ` Elena Zannoni
2004-02-18 3:40 ` Adam Fedor
1 sibling, 1 reply; 24+ messages in thread
From: Elena Zannoni @ 2004-02-17 14:23 UTC (permalink / raw)
To: Adam Fedor
Cc: Elena Zannoni, Michael Elizabeth Chastain, Andrew Cagney, gdb-patches
Adam Fedor writes:
> On Mon, 2004-02-16 at 11:07, Elena Zannoni wrote:
> > Michael Elizabeth Chastain writes:
> > > The filenames are a problem because gdb1237-1280-main.c
> > > and gdb1237-1280.c are not 8.3 unique.
> > >
> > > You either have to make them 8.3 unique (preferred) or
> > > add lines to config/djgpp/fnchange.lst.
> > >
> >
> > I created a new PR to include both problems and use that new number. PR/1555.
> >
>
>
> OK. Well I've added patterns that match the most recent failure, which
> is the only one I can recreate in a reasonable amount of time.
>
this is fine and can go in, after you address DanielJ concern.
elena
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [rfa/symtab] Move find_pc_section call to lookup_minimal_symbol_by_pc
2004-02-17 14:23 ` Elena Zannoni
@ 2004-02-18 3:40 ` Adam Fedor
0 siblings, 0 replies; 24+ messages in thread
From: Adam Fedor @ 2004-02-18 3:40 UTC (permalink / raw)
To: Elena Zannoni; +Cc: Michael Elizabeth Chastain, Andrew Cagney, gdb-patches
On Tue, 2004-02-17 at 07:19, Elena Zannoni wrote:
> Adam Fedor writes:
> > On Mon, 2004-02-16 at 11:07, Elena Zannoni wrote:
> > > Michael Elizabeth Chastain writes:
> > > > The filenames are a problem because gdb1237-1280-main.c
> > > > and gdb1237-1280.c are not 8.3 unique.
> > > >
> > > > You either have to make them 8.3 unique (preferred) or
> > > > add lines to config/djgpp/fnchange.lst.
> > > >
> > >
> > > I created a new PR to include both problems and use that new number. PR/1555.
> > >
> >
> >
> > OK. Well I've added patterns that match the most recent failure, which
> > is the only one I can recreate in a reasonable amount of time.
> >
>
> this is fine and can go in, after you address DanielJ concern.
>
OK. Commited with the suggested change, and also the platform I tested
on.
^ permalink raw reply [flat|nested] 24+ messages in thread
* [rfa/symtab] Move find_pc_section call to lookup_minimal_symbol_by_pc
@ 2004-01-27 22:23 Andrew Cagney
2004-01-27 22:52 ` Daniel Jacobowitz
2004-01-29 20:15 ` Elena Zannoni
0 siblings, 2 replies; 24+ messages in thread
From: Andrew Cagney @ 2004-01-27 22:23 UTC (permalink / raw)
To: gdb-patches
[-- Attachment #1: Type: text/plain, Size: 897 bytes --]
Hello,
Ref: RFA symtab: Fix for PR c++/1267 ("next" and shared libraries)
http://sources.redhat.com/ml/gdb-patches/2003-07/msg00354.html
The change unfortunatly broke IRIX 6.5's host compiler which is using
mdebugread :-( That code was looking for a symbol in the absolute
section "*ABS*" but the PR/1267 change was causing *ABS* symbols to be
ignored (find_pc_section didn't return an absolute section).
Since the underlying problem with PR/1267 was with the frame code
needing a minimal symbol that was in the same section as the frame's PC,
and that code [indirectly] calls lookup_minimal_symbol_by_pc, I moved
the find_pc_section call to that function.
Tested on i386 GNU/Linux (dwarf 2) with no regressions.
Tested on PPC NetBSD (stabs) with no regressions.
Tested on IRIX and all the warnings, and many failures, disappeared.
See gdb/1519 for how to exercise the bug.
ok?
Andrew
[-- Attachment #2: diffs --]
[-- Type: text/plain, Size: 3199 bytes --]
2004-01-27 Andrew Cagney <cagney@redhat.com>
* minsyms.c (lookup_minimal_symbol_by_pc): Use find_pc_section
instead of find_pc_mapped_section.
(lookup_minimal_symbol_by_pc_section): If the SECTION is NULL, do
not default to the section containing PC. Fix PR gdb/1519.
Index: minsyms.c
===================================================================
RCS file: /cvs/src/src/gdb/minsyms.c,v
retrieving revision 1.39
diff -u -r1.39 minsyms.c
--- minsyms.c 11 Nov 2003 20:04:52 -0000 1.39
+++ minsyms.c 27 Jan 2004 21:24:26 -0000
@@ -355,7 +355,7 @@
/* Search through the minimal symbol table for each objfile and find
the symbol whose address is the largest address that is still less
- than or equal to PC, and matches SECTION (if non-null). Returns a
+ than or equal to PC, and matches SECTION (if non-NULL). Returns a
pointer to the minimal symbol if such a symbol is found, or NULL if
PC is not in a suitable range. Note that we need to look through
ALL the minimal symbol tables before deciding on the symbol that
@@ -374,20 +374,23 @@
struct minimal_symbol *best_symbol = NULL;
struct obj_section *pc_section;
- /* pc has to be in a known section. This ensures that anything beyond
- the end of the last segment doesn't appear to be part of the last
- function in the last segment. */
+ /* PC has to be in a known section. This ensures that anything
+ beyond the end of the last segment doesn't appear to be part of
+ the last function in the last segment. */
pc_section = find_pc_section (pc);
if (pc_section == NULL)
return NULL;
- /* If no section was specified, then just make sure that the PC is in
- the same section as the minimal symbol we find. */
- if (section == NULL)
- section = pc_section->the_bfd_section;
-
- /* FIXME drow/2003-07-19: Should we also check that PC is in SECTION
- if we were passed a non-NULL SECTION argument? */
+ /* NOTE: cagney/2004-01-27: Removed code (added 2003-07-19) that was
+ trying to force the PC into a valid section as returned by
+ find_pc_section. It broke IRIX 6.5 mdebug which relies on this
+ code returning an absolute symbol - the problem was that
+ find_pc_section wasn't returning an absolute section and hence
+ the code below would skip over absolute symbols. Since the
+ original problem was with finding a frame's function, and that
+ uses [indirectly] lookup_minimal_symbol_by_pc, the original
+ problem has been fixed by having that function use
+ find_pc_section. */
for (objfile = object_files;
objfile != NULL;
@@ -497,7 +500,13 @@
struct minimal_symbol *
lookup_minimal_symbol_by_pc (CORE_ADDR pc)
{
- return lookup_minimal_symbol_by_pc_section (pc, find_pc_mapped_section (pc));
+ /* NOTE: cagney/2004-01-27: This was using find_pc_mapped_section to
+ force the section but that (well unless you're doing overlay
+ debugging) always returns NULL making the call somewhat useless. */
+ struct obj_section *section = find_pc_section (pc);
+ if (section == NULL)
+ return NULL;
+ return lookup_minimal_symbol_by_pc_section (pc, section->the_bfd_section);
}
\f
^ permalink raw reply [flat|nested] 24+ messages in thread* Re: [rfa/symtab] Move find_pc_section call to lookup_minimal_symbol_by_pc
2004-01-27 22:23 Andrew Cagney
@ 2004-01-27 22:52 ` Daniel Jacobowitz
2004-01-29 20:15 ` Elena Zannoni
1 sibling, 0 replies; 24+ messages in thread
From: Daniel Jacobowitz @ 2004-01-27 22:52 UTC (permalink / raw)
To: gdb-patches
On Tue, Jan 27, 2004 at 05:19:45PM -0500, Andrew Cagney wrote:
> Hello,
>
> Ref: RFA symtab: Fix for PR c++/1267 ("next" and shared libraries)
> http://sources.redhat.com/ml/gdb-patches/2003-07/msg00354.html
>
> The change unfortunatly broke IRIX 6.5's host compiler which is using
> mdebugread :-( That code was looking for a symbol in the absolute
> section "*ABS*" but the PR/1267 change was causing *ABS* symbols to be
> ignored (find_pc_section didn't return an absolute section).
>
> Since the underlying problem with PR/1267 was with the frame code
> needing a minimal symbol that was in the same section as the frame's PC,
> and that code [indirectly] calls lookup_minimal_symbol_by_pc, I moved
> the find_pc_section call to that function.
>
> Tested on i386 GNU/Linux (dwarf 2) with no regressions.
> Tested on PPC NetBSD (stabs) with no regressions.
> Tested on IRIX and all the warnings, and many failures, disappeared.
> See gdb/1519 for how to exercise the bug.
>
> ok?
> Andrew
Seems reasonable to me (if a little unintuitive).
> 2004-01-27 Andrew Cagney <cagney@redhat.com>
>
> * minsyms.c (lookup_minimal_symbol_by_pc): Use find_pc_section
> instead of find_pc_mapped_section.
> (lookup_minimal_symbol_by_pc_section): If the SECTION is NULL, do
> not default to the section containing PC. Fix PR gdb/1519.
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer
^ permalink raw reply [flat|nested] 24+ messages in thread* Re: [rfa/symtab] Move find_pc_section call to lookup_minimal_symbol_by_pc
2004-01-27 22:23 Andrew Cagney
2004-01-27 22:52 ` Daniel Jacobowitz
@ 2004-01-29 20:15 ` Elena Zannoni
2004-01-29 23:22 ` Andrew Cagney
2004-01-30 3:29 ` Adam Fedor
1 sibling, 2 replies; 24+ messages in thread
From: Elena Zannoni @ 2004-01-29 20:15 UTC (permalink / raw)
To: Andrew Cagney, fedor; +Cc: gdb-patches
Andrew Cagney writes:
> Hello,
>
> Ref: RFA symtab: Fix for PR c++/1267 ("next" and shared libraries)
> http://sources.redhat.com/ml/gdb-patches/2003-07/msg00354.html
>
> The change unfortunatly broke IRIX 6.5's host compiler which is using
> mdebugread :-( That code was looking for a symbol in the absolute
> section "*ABS*" but the PR/1267 change was causing *ABS* symbols to be
> ignored (find_pc_section didn't return an absolute section).
>
> Since the underlying problem with PR/1267 was with the frame code
> needing a minimal symbol that was in the same section as the frame's PC,
> and that code [indirectly] calls lookup_minimal_symbol_by_pc, I moved
> the find_pc_section call to that function.
>
> Tested on i386 GNU/Linux (dwarf 2) with no regressions.
> Tested on PPC NetBSD (stabs) with no regressions.
> Tested on IRIX and all the warnings, and many failures, disappeared.
> See gdb/1519 for how to exercise the bug.
>
> ok?
ok. Does it still fix shlibs/1237 and shlibs/1280 too? Adam, could you
check please?
elena
^ permalink raw reply [flat|nested] 24+ messages in thread* Re: [rfa/symtab] Move find_pc_section call to lookup_minimal_symbol_by_pc
2004-01-29 20:15 ` Elena Zannoni
@ 2004-01-29 23:22 ` Andrew Cagney
2004-01-30 3:30 ` Adam Fedor
2004-01-30 4:53 ` Adam Fedor
2004-01-30 3:29 ` Adam Fedor
1 sibling, 2 replies; 24+ messages in thread
From: Andrew Cagney @ 2004-01-29 23:22 UTC (permalink / raw)
To: Elena Zannoni; +Cc: fedor, gdb-patches
> Andrew Cagney writes:
> > Hello,
> >
> > Ref: RFA symtab: Fix for PR c++/1267 ("next" and shared libraries)
> > http://sources.redhat.com/ml/gdb-patches/2003-07/msg00354.html
> >
> > The change unfortunatly broke IRIX 6.5's host compiler which is using
> > mdebugread :-( That code was looking for a symbol in the absolute
> > section "*ABS*" but the PR/1267 change was causing *ABS* symbols to be
> > ignored (find_pc_section didn't return an absolute section).
> >
> > Since the underlying problem with PR/1267 was with the frame code
> > needing a minimal symbol that was in the same section as the frame's PC,
> > and that code [indirectly] calls lookup_minimal_symbol_by_pc, I moved
> > the find_pc_section call to that function.
> >
> > Tested on i386 GNU/Linux (dwarf 2) with no regressions.
> > Tested on PPC NetBSD (stabs) with no regressions.
> > Tested on IRIX and all the warnings, and many failures, disappeared.
> > See gdb/1519 for how to exercise the bug.
> >
> > ok?
>
> ok. Does it still fix shlibs/1237 and shlibs/1280 too? Adam, could you
> check please?
Isn't that covered by the testsuite? Sigh.
Andrew
^ permalink raw reply [flat|nested] 24+ messages in thread* Re: [rfa/symtab] Move find_pc_section call to lookup_minimal_symbol_by_pc
2004-01-29 23:22 ` Andrew Cagney
@ 2004-01-30 3:30 ` Adam Fedor
2004-01-30 4:53 ` Adam Fedor
1 sibling, 0 replies; 24+ messages in thread
From: Adam Fedor @ 2004-01-30 3:30 UTC (permalink / raw)
To: Andrew Cagney; +Cc: Elena Zannoni, gdb-patches
On Thu, 2004-01-29 at 16:19, Andrew Cagney wrote:
> > Andrew Cagney writes:
> > > Hello,
> > >
> > > Ref: RFA symtab: Fix for PR c++/1267 ("next" and shared libraries)
> > > http://sources.redhat.com/ml/gdb-patches/2003-07/msg00354.html
> > >
> > > The change unfortunatly broke IRIX 6.5's host compiler which is using
> > > mdebugread :-( That code was looking for a symbol in the absolute
> > > section "*ABS*" but the PR/1267 change was causing *ABS* symbols to be
> > > ignored (find_pc_section didn't return an absolute section).
> > >
> > > Since the underlying problem with PR/1267 was with the frame code
> > > needing a minimal symbol that was in the same section as the frame's PC,
> > > and that code [indirectly] calls lookup_minimal_symbol_by_pc, I moved
> > > the find_pc_section call to that function.
> > >
> > > Tested on i386 GNU/Linux (dwarf 2) with no regressions.
> > > Tested on PPC NetBSD (stabs) with no regressions.
> > > Tested on IRIX and all the warnings, and many failures, disappeared.
> > > See gdb/1519 for how to exercise the bug.
> > >
> > > ok?
> >
> > ok. Does it still fix shlibs/1237 and shlibs/1280 too? Adam, could you
> > check please?
>
> Isn't that covered by the testsuite? Sigh.
I'll try to write a testcase.
^ permalink raw reply [flat|nested] 24+ messages in thread* Re: [rfa/symtab] Move find_pc_section call to lookup_minimal_symbol_by_pc
2004-01-29 23:22 ` Andrew Cagney
2004-01-30 3:30 ` Adam Fedor
@ 2004-01-30 4:53 ` Adam Fedor
2004-02-04 22:25 ` Elena Zannoni
1 sibling, 1 reply; 24+ messages in thread
From: Adam Fedor @ 2004-01-30 4:53 UTC (permalink / raw)
To: gdb-patches; +Cc: Elena Zannoni, Andrew Cagney
[-- Attachment #1: Type: text/plain, Size: 1321 bytes --]
On Thu, 2004-01-29 at 16:19, Andrew Cagney wrote:
> > Andrew Cagney writes:
> > > Hello,
> > >
> > > Ref: RFA symtab: Fix for PR c++/1267 ("next" and shared libraries)
> > > http://sources.redhat.com/ml/gdb-patches/2003-07/msg00354.html
> > >
> > > The change unfortunatly broke IRIX 6.5's host compiler which is using
> > > mdebugread :-( That code was looking for a symbol in the absolute
> > > section "*ABS*" but the PR/1267 change was causing *ABS* symbols to be
> > > ignored (find_pc_section didn't return an absolute section).
> > >
> > > Since the underlying problem with PR/1267 was with the frame code
> > > needing a minimal symbol that was in the same section as the frame's PC,
> > > and that code [indirectly] calls lookup_minimal_symbol_by_pc, I moved
> > > the find_pc_section call to that function.
> > >
> > > Tested on i386 GNU/Linux (dwarf 2) with no regressions.
> > > Tested on PPC NetBSD (stabs) with no regressions.
> > > Tested on IRIX and all the warnings, and many failures, disappeared.
> > > See gdb/1519 for how to exercise the bug.
> > >
> > > ok?
> >
> > ok. Does it still fix shlibs/1237 and shlibs/1280 too? Adam, could you
> > check please?
>
> Isn't that covered by the testsuite? Sigh.
>
This is probably ugly, but it shows the basic idea...
[-- Attachment #2: sh1280test.patch --]
[-- Type: text/x-patch, Size: 4490 bytes --]
Index: ChangeLog
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/ChangeLog,v
retrieving revision 1.769
diff -u -r1.769 ChangeLog
--- ChangeLog 29 Jan 2004 11:15:42 -0000 1.769
+++ ChangeLog 30 Jan 2004 04:50:33 -0000
@@ -1,3 +1,8 @@
+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.
+
2004-01-29 Paul N. Hilfinger <Hilfinger@gnat.com>
* gdb.base/chng-syms.exp: New file.
Index: gdb.base/ppc-main.c
===================================================================
RCS file: gdb.base/ppc-main.c
diff -N gdb.base/ppc-main.c
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ gdb.base/ppc-main.c 30 Jan 2004 04:50:33 -0000
@@ -0,0 +1,8 @@
+extern int hithere2 ();
+
+int
+main()
+{
+ hithere2();
+ return 0;
+}
Index: gdb.base/ppc-shared.c
===================================================================
RCS file: gdb.base/ppc-shared.c
diff -N gdb.base/ppc-shared.c
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ gdb.base/ppc-shared.c 30 Jan 2004 04:50:33 -0000
@@ -0,0 +1,5 @@
+int hithere2()
+{
+ return 21;
+}
+
Index: gdb.base/ppc-shared.exp
===================================================================
RCS file: gdb.base/ppc-shared.exp
diff -N gdb.base/ppc-shared.exp
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ gdb.base/ppc-shared.exp 30 Jan 2004 04:50:33 -0000
@@ -0,0 +1,98 @@
+# Copyright 2003 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
+
+# ppc-shared.exp -- Test stepping into and continuing to a function in
+# a shared library (PR shlib/1280, shlib/1237).
+
+if $tracelevel then {
+ strace $tracelevel
+}
+
+set testfile ppc-main
+set libfile ppc-shared
+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
+}
+
+gdb_test s \
+ "hithere2 \\(\\) at.*${libfile}.c:3\r\n3.*return 21.*" \
+ "Step into shared lib function"
+
^ permalink raw reply [flat|nested] 24+ messages in thread* Re: [rfa/symtab] Move find_pc_section call to lookup_minimal_symbol_by_pc
2004-01-30 4:53 ` Adam Fedor
@ 2004-02-04 22:25 ` Elena Zannoni
2004-02-09 4:26 ` Adam Fedor
0 siblings, 1 reply; 24+ messages in thread
From: Elena Zannoni @ 2004-02-04 22:25 UTC (permalink / raw)
To: Adam Fedor; +Cc: gdb-patches, Elena Zannoni, Andrew Cagney
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.
> Index: gdb.base/ppc-main.c
> ===================================================================
> RCS file: gdb.base/ppc-main.c
> diff -N gdb.base/ppc-main.c
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ gdb.base/ppc-main.c 30 Jan 2004 04:50:33 -0000
> @@ -0,0 +1,8 @@
> +extern int hithere2 ();
> +
> +int
> +main()
> +{
> + hithere2();
> + return 0;
> +}
> Index: gdb.base/ppc-shared.c
> ===================================================================
> RCS file: gdb.base/ppc-shared.c
> diff -N gdb.base/ppc-shared.c
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ gdb.base/ppc-shared.c 30 Jan 2004 04:50:33 -0000
> @@ -0,0 +1,5 @@
> +int hithere2()
> +{
> + return 21;
> +}
> +
> Index: gdb.base/ppc-shared.exp
> ===================================================================
> RCS file: gdb.base/ppc-shared.exp
> diff -N gdb.base/ppc-shared.exp
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ gdb.base/ppc-shared.exp 30 Jan 2004 04:50:33 -0000
> @@ -0,0 +1,98 @@
> +# Copyright 2003 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
> +
> +# ppc-shared.exp -- Test stepping into and continuing to a function in
> +# a shared library (PR shlib/1280, shlib/1237).
This is only testing the step. And it's fine for 1280. I would do a
separate set of files for 1237.
Probably use kfail too.
Remember the copyright notices in the new .c files. And the correct
year (years, if derived from another file).
elena
^ permalink raw reply [flat|nested] 24+ messages in thread* Re: [rfa/symtab] Move find_pc_section call to lookup_minimal_symbol_by_pc
2004-02-04 22:25 ` Elena Zannoni
@ 2004-02-09 4:26 ` Adam Fedor
2004-02-09 15:31 ` Elena Zannoni
0 siblings, 1 reply; 24+ messages in thread
From: Adam Fedor @ 2004-02-09 4:26 UTC (permalink / raw)
To: Elena Zannoni; +Cc: gdb-patches, Andrew Cagney
[-- Attachment #1: Type: text/plain, Size: 628 bytes --]
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:
[-- Attachment #2: gdb1237.patch --]
[-- Type: text/plain, Size: 6264 bytes --]
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.
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 }
+}
+
^ permalink raw reply [flat|nested] 24+ messages in thread* Re: [rfa/symtab] Move find_pc_section call to lookup_minimal_symbol_by_pc
2004-02-09 4:26 ` Adam Fedor
@ 2004-02-09 15:31 ` Elena Zannoni
0 siblings, 0 replies; 24+ messages in thread
From: Elena Zannoni @ 2004-02-09 15:31 UTC (permalink / raw)
To: Adam Fedor; +Cc: Elena Zannoni, gdb-patches, Andrew Cagney
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 }
> +}
> +
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [rfa/symtab] Move find_pc_section call to lookup_minimal_symbol_by_pc
2004-01-29 20:15 ` Elena Zannoni
2004-01-29 23:22 ` Andrew Cagney
@ 2004-01-30 3:29 ` Adam Fedor
2004-02-04 22:20 ` Elena Zannoni
1 sibling, 1 reply; 24+ messages in thread
From: Adam Fedor @ 2004-01-30 3:29 UTC (permalink / raw)
To: Elena Zannoni; +Cc: Andrew Cagney, gdb-patches
On Thu, 2004-01-29 at 13:13, Elena Zannoni wrote:
> Andrew Cagney writes:
> > Hello,
> >
> > Ref: RFA symtab: Fix for PR c++/1267 ("next" and shared libraries)
> > http://sources.redhat.com/ml/gdb-patches/2003-07/msg00354.html
> >
> > The change unfortunatly broke IRIX 6.5's host compiler which is using
> > mdebugread :-( That code was looking for a symbol in the absolute
> > section "*ABS*" but the PR/1267 change was causing *ABS* symbols to be
> > ignored (find_pc_section didn't return an absolute section).
> >
> > Since the underlying problem with PR/1267 was with the frame code
> > needing a minimal symbol that was in the same section as the frame's PC,
> > and that code [indirectly] calls lookup_minimal_symbol_by_pc, I moved
> > the find_pc_section call to that function.
> >
> > Tested on i386 GNU/Linux (dwarf 2) with no regressions.
> > Tested on PPC NetBSD (stabs) with no regressions.
> > Tested on IRIX and all the warnings, and many failures, disappeared.
> > See gdb/1519 for how to exercise the bug.
> >
> > ok?
>
> ok. Does it still fix shlibs/1237 and shlibs/1280 too? Adam, could you
> check please?
>
> elena
No. It breaks again. I get:
localhost /home/users/fedor/src/CSharedLib>../gdb-build/gdb/gdb
simple_share
GNU gdb 2004-01-29-cvs
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you
are
welcome to change it and/or distribute copies of it under certain
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for
details.
This GDB was configured as "powerpc-unknown-linux-gnu"...Using host
libthread_db library "/lib/libthread_db.so.1".
(gdb) break main
Breakpoint 1 at 0x10001778: file testit.c, line 7.
(gdb) run
Starting program: /home/users/fedor/src/CSharedLib/simple_share
Breakpoint 1, main () at testit.c:7
7 hithere2();
(gdb) s
0x30024f60 in ?? () from /lib/ld.so.1
(gdb) bt
#0 0x30024f60 in ?? () from /lib/ld.so.1
(gdb) n
Single stepping until exit from function __cache_line_size,
which has no line number information.
here is were you type next (n)
hi there
Program exited normally.
(gdb)
^ permalink raw reply [flat|nested] 24+ messages in thread* Re: [rfa/symtab] Move find_pc_section call to lookup_minimal_symbol_by_pc
2004-01-30 3:29 ` Adam Fedor
@ 2004-02-04 22:20 ` Elena Zannoni
2004-02-04 23:06 ` Andrew Cagney
0 siblings, 1 reply; 24+ messages in thread
From: Elena Zannoni @ 2004-02-04 22:20 UTC (permalink / raw)
To: Adam Fedor; +Cc: Elena Zannoni, Andrew Cagney, gdb-patches
Adam Fedor writes:
> No. It breaks again. I get:
>
Adam, just to be clear, you applied Andrew's patch? I.e. is it
Andrew's patch that breaks it again, or was it broken as of this day in
cvs?
elena
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [rfa/symtab] Move find_pc_section call to lookup_minimal_symbol_by_pc
2004-02-04 22:20 ` Elena Zannoni
@ 2004-02-04 23:06 ` Andrew Cagney
2004-02-06 18:59 ` Andrew Cagney
0 siblings, 1 reply; 24+ messages in thread
From: Andrew Cagney @ 2004-02-04 23:06 UTC (permalink / raw)
To: Elena Zannoni; +Cc: Adam Fedor, gdb-patches
> 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.
Um, I'm not sure what is happening. My GNU/Linux amd64 box appears to
pass both times:
6 hithere2();
(gdb) s
hithere2 () at
/home/cygnus/cagney/PENDING/YYYY-MM-DD-mips/src/gdb/testsuite/gdb
.base/ppc-shared.c:3
3 return 21;
(gdb) PASS: gdb.base/ppc-shared.exp: Step into shared lib function
While my NetBSD box fails both times (but I suspect that's just the
NetBSD code):
6 hithere2();
(gdb) s
7 return 0;
(gdb) FAIL: gdb.base/ppc-shared.exp: Step into shared lib function
Mind you, means it's a good test :-)
Andrew
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [rfa/symtab] Move find_pc_section call to lookup_minimal_symbol_by_pc
2004-02-04 23:06 ` Andrew Cagney
@ 2004-02-06 18:59 ` Andrew Cagney
2004-02-08 5:17 ` Adam Fedor
2004-02-09 15:35 ` Elena Zannoni
0 siblings, 2 replies; 24+ messages in thread
From: Andrew Cagney @ 2004-02-06 18:59 UTC (permalink / raw)
To: Elena Zannoni, Adam Fedor; +Cc: gdb-patches
[-- Attachment #1: Type: text/plain, Size: 1068 bytes --]
> Um, I'm not sure what is happening. My GNU/Linux amd64 box appears to pass both times:
I've found the right machine (YelloDog 3.0), the attached appears to
work on both yellow dog and IRIX (and Fedora Core).
The new patch modifies find_pc_partial_function supply the PC's section
when available.
Look ok?
The problem was that the symbol lookup was finding a symbol from a
previous section, instead of no symbol in the current section. That
leads to this test (using Joe's rewrite):
> + if (ecs->stop_func_name == NULL
> + && step_over_calls == STEP_OVER_UNDEBUGGABLE)
> + {
> + /* We couldn't determine where we stopped, so we just stepped
> + inside undebuggable code. Since we want to step over this
> + kind of code, we keep going until the inferior returns from
> + the current function. */
> + handle_step_into_function (ecs);
> + return;
> + }
not triggering. ->stop_func_name had a non-NULL but bogus symbol name.
ok?
Andrew
PS: I think GDB has a few too many symbol lookup interfaces :-(
[-- Attachment #2: diffs --]
[-- Type: text/plain, Size: 4645 bytes --]
2004-02-06 Andrew Cagney <cagney@redhat.com>
* blockframe.c (find_pc_partial_function): If find_pc_overlay
fails, try find_pc_section. Fix PR c++/1267.
* minsyms.c (lookup_minimal_symbol_by_pc): Use find_pc_section
instead of find_pc_mapped_section.
(lookup_minimal_symbol_by_pc_section): If the SECTION is NULL, do
not default to the section containing PC. Fix PR symtab/1519.
Index: blockframe.c
===================================================================
RCS file: /cvs/src/src/gdb/blockframe.c,v
retrieving revision 1.87
diff -u -r1.87 blockframe.c
--- blockframe.c 4 Feb 2004 16:34:51 -0000 1.87
+++ blockframe.c 6 Feb 2004 18:42:16 -0000
@@ -507,10 +507,24 @@
find_pc_partial_function (CORE_ADDR pc, char **name, CORE_ADDR *address,
CORE_ADDR *endaddr)
{
- asection *section;
+ struct bfd_section *bfd_section;
- section = find_pc_overlay (pc);
- return find_pc_sect_partial_function (pc, section, name, address, endaddr);
+ /* To ensure that the symbol returned belongs to the correct setion
+ (and that the last [random] symbol from the previous section
+ isn't returned) try to find the section containing PC. First try
+ the overlay code (which by default returns NULL); and second try
+ the normal section code (which almost always succeeds). */
+ bfd_section = find_pc_overlay (pc);
+ if (bfd_section == NULL)
+ {
+ struct obj_section *obj_section = find_pc_section (pc);
+ if (obj_section == NULL)
+ bfd_section = NULL;
+ else
+ bfd_section = obj_section->the_bfd_section;
+ }
+ return find_pc_sect_partial_function (pc, bfd_section, name, address,
+ endaddr);
}
/* Return the innermost stack frame executing inside of BLOCK,
Index: minsyms.c
===================================================================
RCS file: /cvs/src/src/gdb/minsyms.c,v
retrieving revision 1.39
diff -u -r1.39 minsyms.c
--- minsyms.c 11 Nov 2003 20:04:52 -0000 1.39
+++ minsyms.c 6 Feb 2004 18:42:16 -0000
@@ -355,7 +355,7 @@
/* Search through the minimal symbol table for each objfile and find
the symbol whose address is the largest address that is still less
- than or equal to PC, and matches SECTION (if non-null). Returns a
+ than or equal to PC, and matches SECTION (if non-NULL). Returns a
pointer to the minimal symbol if such a symbol is found, or NULL if
PC is not in a suitable range. Note that we need to look through
ALL the minimal symbol tables before deciding on the symbol that
@@ -374,20 +374,23 @@
struct minimal_symbol *best_symbol = NULL;
struct obj_section *pc_section;
- /* pc has to be in a known section. This ensures that anything beyond
- the end of the last segment doesn't appear to be part of the last
- function in the last segment. */
+ /* PC has to be in a known section. This ensures that anything
+ beyond the end of the last segment doesn't appear to be part of
+ the last function in the last segment. */
pc_section = find_pc_section (pc);
if (pc_section == NULL)
return NULL;
- /* If no section was specified, then just make sure that the PC is in
- the same section as the minimal symbol we find. */
- if (section == NULL)
- section = pc_section->the_bfd_section;
-
- /* FIXME drow/2003-07-19: Should we also check that PC is in SECTION
- if we were passed a non-NULL SECTION argument? */
+ /* NOTE: cagney/2004-01-27: Removed code (added 2003-07-19) that was
+ trying to force the PC into a valid section as returned by
+ find_pc_section. It broke IRIX 6.5 mdebug which relies on this
+ code returning an absolute symbol - the problem was that
+ find_pc_section wasn't returning an absolute section and hence
+ the code below would skip over absolute symbols. Since the
+ original problem was with finding a frame's function, and that
+ uses [indirectly] lookup_minimal_symbol_by_pc, the original
+ problem has been fixed by having that function use
+ find_pc_section. */
for (objfile = object_files;
objfile != NULL;
@@ -497,7 +500,13 @@
struct minimal_symbol *
lookup_minimal_symbol_by_pc (CORE_ADDR pc)
{
- return lookup_minimal_symbol_by_pc_section (pc, find_pc_mapped_section (pc));
+ /* NOTE: cagney/2004-01-27: This was using find_pc_mapped_section to
+ force the section but that (well unless you're doing overlay
+ debugging) always returns NULL making the call somewhat useless. */
+ struct obj_section *section = find_pc_section (pc);
+ if (section == NULL)
+ return NULL;
+ return lookup_minimal_symbol_by_pc_section (pc, section->the_bfd_section);
}
\f
^ permalink raw reply [flat|nested] 24+ messages in thread* Re: [rfa/symtab] Move find_pc_section call to lookup_minimal_symbol_by_pc
2004-02-06 18:59 ` Andrew Cagney
@ 2004-02-08 5:17 ` Adam Fedor
2004-02-09 15:35 ` Elena Zannoni
1 sibling, 0 replies; 24+ messages in thread
From: Adam Fedor @ 2004-02-08 5:17 UTC (permalink / raw)
To: Andrew Cagney; +Cc: Elena Zannoni, gdb-patches
On Fri, 2004-02-06 at 11:59, Andrew Cagney wrote:
> > Um, I'm not sure what is happening. My GNU/Linux amd64 box appears to pass both times:
>
> I've found the right machine (YelloDog 3.0), the attached appears to
> work on both yellow dog and IRIX (and Fedora Core).
>
> The new patch modifies find_pc_partial_function supply the PC's section
> when available.
>
> Look ok?
>
> The problem was that the symbol lookup was finding a symbol from a
> previous section, instead of no symbol in the current section. That
> leads to this test (using Joe's rewrite):
>
> > + if (ecs->stop_func_name == NULL
> > + && step_over_calls == STEP_OVER_UNDEBUGGABLE)
> > + {
> > + /* We couldn't determine where we stopped, so we just stepped
> > + inside undebuggable code. Since we want to step over this
> > + kind of code, we keep going until the inferior returns from
> > + the current function. */
> > + handle_step_into_function (ecs);
> > + return;
> > + }
>
> not triggering. ->stop_func_name had a non-NULL but bogus symbol name.
>
> ok?
Current gdb with this patch works fine for me (using PR 1237 and PR 1280
tests).
^ permalink raw reply [flat|nested] 24+ messages in thread* Re: [rfa/symtab] Move find_pc_section call to lookup_minimal_symbol_by_pc
2004-02-06 18:59 ` Andrew Cagney
2004-02-08 5:17 ` Adam Fedor
@ 2004-02-09 15:35 ` Elena Zannoni
2004-02-09 16:40 ` Andrew Cagney
1 sibling, 1 reply; 24+ messages in thread
From: Elena Zannoni @ 2004-02-09 15:35 UTC (permalink / raw)
To: Andrew Cagney; +Cc: Elena Zannoni, Adam Fedor, gdb-patches
Andrew Cagney writes:
>
> > Um, I'm not sure what is happening. My GNU/Linux amd64 box appears to pass both times:
>
> I've found the right machine (YelloDog 3.0), the attached appears to
> work on both yellow dog and IRIX (and Fedora Core).
>
> The new patch modifies find_pc_partial_function supply the PC's section
> when available.
>
> Look ok?
>
> The problem was that the symbol lookup was finding a symbol from a
> previous section, instead of no symbol in the current section. That
> leads to this test (using Joe's rewrite):
>
> > + if (ecs->stop_func_name == NULL
> > + && step_over_calls == STEP_OVER_UNDEBUGGABLE)
> > + {
> > + /* We couldn't determine where we stopped, so we just stepped
> > + inside undebuggable code. Since we want to step over this
> > + kind of code, we keep going until the inferior returns from
> > + the current function. */
> > + handle_step_into_function (ecs);
> > + return;
> > + }
>
> not triggering. ->stop_func_name had a non-NULL but bogus symbol name.
So, the complete fix includes Joel's patch?
>
> ok?
sure, let's see what other obscure cases break now. :-)
> PS: I think GDB has a few too many symbol lookup interfaces :-(
yes.
>
> 2004-02-06 Andrew Cagney <cagney@redhat.com>
>
> * blockframe.c (find_pc_partial_function): If find_pc_overlay
> fails, try find_pc_section. Fix PR c++/1267.
> * minsyms.c (lookup_minimal_symbol_by_pc): Use find_pc_section
> instead of find_pc_mapped_section.
> (lookup_minimal_symbol_by_pc_section): If the SECTION is NULL, do
> not default to the section containing PC. Fix PR symtab/1519.
>
^ permalink raw reply [flat|nested] 24+ messages in thread* Re: [rfa/symtab] Move find_pc_section call to lookup_minimal_symbol_by_pc
2004-02-09 15:35 ` Elena Zannoni
@ 2004-02-09 16:40 ` Andrew Cagney
2004-02-09 17:54 ` Joel Brobecker
0 siblings, 1 reply; 24+ messages in thread
From: Andrew Cagney @ 2004-02-09 16:40 UTC (permalink / raw)
To: Elena Zannoni, Joel Brobecker; +Cc: Adam Fedor, gdb-patches
> > > + if (ecs->stop_func_name == NULL
> > > + && step_over_calls == STEP_OVER_UNDEBUGGABLE)
> > > + {
> > > + /* We couldn't determine where we stopped, so we just stepped
> > > + inside undebuggable code. Since we want to step over this
> > > + kind of code, we keep going until the inferior returns from
> > > + the current function. */
> > > + handle_step_into_function (ecs);
> > > + return;
> > > + }
> >
> > not triggering. ->stop_func_name had a non-NULL but bogus symbol name.
>
> So, the complete fix includes Joel's patch?
Not really. It was only by seeing Joel's change, and hence knowing that
edge case, that I had a fighting chance of figuring out how it was ment
to work. BTW, even though "step_over_calls == STEP_OVER_UNDEBUGGABLE"
is technically redundant, I think it is needed - clarifies this specific
condition.
(Joel, perhaphs write the above as:
step_over_calls == STEP_OVER_UNDEBUGGABLE && cs->stop_func_name == NULL
since that is how the test is ordered elsewhere (since neither has a
sideeffect it's no real difference).)
>> ok?
>
> sure, let's see what other obscure cases break now. :-)
In it goes ...
Andrew
^ permalink raw reply [flat|nested] 24+ messages in thread* Re: [rfa/symtab] Move find_pc_section call to lookup_minimal_symbol_by_pc
2004-02-09 16:40 ` Andrew Cagney
@ 2004-02-09 17:54 ` Joel Brobecker
0 siblings, 0 replies; 24+ messages in thread
From: Joel Brobecker @ 2004-02-09 17:54 UTC (permalink / raw)
To: Andrew Cagney; +Cc: Elena Zannoni, Adam Fedor, gdb-patches
> (Joel, perhaphs write the above as:
> step_over_calls == STEP_OVER_UNDEBUGGABLE && cs->stop_func_name == NULL
> since that is how the test is ordered elsewhere (since neither has a
> sideeffect it's no real difference).)
That makes sense. Will do.
--
Joel
^ permalink raw reply [flat|nested] 24+ messages in thread
end of thread, other threads:[~2004-02-18 3:40 UTC | newest]
Thread overview: 24+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-02-09 21:58 [rfa/symtab] Move find_pc_section call to lookup_minimal_symbol_by_pc Michael Elizabeth Chastain
2004-02-10 16:38 ` Adam Fedor
2004-02-16 18:11 ` Elena Zannoni
2004-02-17 4:47 ` Adam Fedor
2004-02-17 5:00 ` Daniel Jacobowitz
2004-02-17 14:23 ` Elena Zannoni
2004-02-18 3:40 ` Adam Fedor
-- strict thread matches above, loose matches on Subject: below --
2004-01-27 22:23 Andrew Cagney
2004-01-27 22:52 ` Daniel Jacobowitz
2004-01-29 20:15 ` Elena Zannoni
2004-01-29 23:22 ` Andrew Cagney
2004-01-30 3:30 ` Adam Fedor
2004-01-30 4:53 ` Adam Fedor
2004-02-04 22:25 ` Elena Zannoni
2004-02-09 4:26 ` Adam Fedor
2004-02-09 15:31 ` Elena Zannoni
2004-01-30 3:29 ` Adam Fedor
2004-02-04 22:20 ` Elena Zannoni
2004-02-04 23:06 ` Andrew Cagney
2004-02-06 18:59 ` Andrew Cagney
2004-02-08 5:17 ` Adam Fedor
2004-02-09 15:35 ` Elena Zannoni
2004-02-09 16:40 ` Andrew Cagney
2004-02-09 17:54 ` Joel Brobecker
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox