* Re: [patch] multi-arch INIT_FRAME_PC*; Was: New gdb 31 & 64 bit patches for S/390
@ 2001-06-16 17:39 Michael Elizabeth Chastain
2001-06-17 8:51 ` Andrew Cagney
2001-06-17 9:58 ` Andrew Cagney
0 siblings, 2 replies; 8+ messages in thread
From: Michael Elizabeth Chastain @ 2001-06-16 17:39 UTC (permalink / raw)
To: ac131313; +Cc: gdb-patches
Backtrace is working again on native solaris 2.6 and native red hat linux 6.2.
But native solaris traces back past main without stopping. Native linux
does not have a problem.
Yesterday before the change:
[chastain@delta fsf]$ /horton/chastain/fsf/2001-06-15-16.00.00/delta/native/build/gdb/gdb ~/tmp/miscexprs.delta
GNU gdb 2001-06-15-cvs
Copyright 2001 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 "sparc-sun-solaris2.6"...
(gdb) break marker1
Breakpoint 1 at 0x1057c: file /horton/chastain/fsf/2001-06-09/source/gdb/testsuite/gdb.base/miscexprs.c, line 5.
(gdb) run
Starting program: /home/chastain/tmp/miscexprs.delta
Breakpoint 1, marker1 ()
at /horton/chastain/fsf/2001-06-09/source/gdb/testsuite/gdb.base/miscexprs.c:5
5 }
(gdb) bt
#0 marker1 ()
at /horton/chastain/fsf/2001-06-09/source/gdb/testsuite/gdb.base/miscexprs.c:5
#1 0x00010628 in main ()
at /horton/chastain/fsf/2001-06-09/source/gdb/testsuite/gdb.base/miscexprs.c:47
(gdb) cont
Continuing.
Program exited normally.
(gdb) quit
Current gdb:
[chastain@delta fsf]$ /horton/chastain/fsf/2001-06-16/delta/native/build/gdb/gdb ~/tmp/miscexprs.delta
GNU gdb 2001-06-16-cvs
Copyright 2001 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 "sparc-sun-solaris2.6"...
(gdb) break marker1
Breakpoint 1 at 0x1057c: file /horton/chastain/fsf/2001-06-09/source/gdb/testsuite/gdb.base/miscexprs.c, line 5.
(gdb) run
Starting program: /home/chastain/tmp/miscexprs.delta
Breakpoint 1, marker1 ()
at /horton/chastain/fsf/2001-06-09/source/gdb/testsuite/gdb.base/miscexprs.c:5
5 }
(gdb) bt
#0 marker1 ()
at /horton/chastain/fsf/2001-06-09/source/gdb/testsuite/gdb.base/miscexprs.c:5
#1 0x00010628 in main ()
at /horton/chastain/fsf/2001-06-09/source/gdb/testsuite/gdb.base/miscexprs.c:47
#2 0x00010414 in .nope ()
#3 0x00000008 in ?? ()
(gdb) cont
Continuing.
Program exited normally.
(gdb) quit
Michael
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [patch] multi-arch INIT_FRAME_PC*; Was: New gdb 31 & 64 bit patches for S/390
2001-06-16 17:39 [patch] multi-arch INIT_FRAME_PC*; Was: New gdb 31 & 64 bit patches for S/390 Michael Elizabeth Chastain
@ 2001-06-17 8:51 ` Andrew Cagney
2001-06-17 9:26 ` Andrew Cagney
2001-06-17 9:58 ` Andrew Cagney
1 sibling, 1 reply; 8+ messages in thread
From: Andrew Cagney @ 2001-06-17 8:51 UTC (permalink / raw)
To: Michael Elizabeth Chastain; +Cc: gdb-patches
> Backtrace is working again on native solaris 2.6 and native red hat linux 6.2.
> But native solaris traces back past main without stopping. Native linux
> does not have a problem.
Michael, the sparc case has me stumped. tm-sparc.h defines both
INIT_FRAME_PC() and INIT_FRAME_PC_FIRST() so (as far as theories go :-)
shouldn't be affected by the change.
Andrew
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [patch] multi-arch INIT_FRAME_PC*; Was: New gdb 31 & 64 bit patches for S/390
2001-06-17 8:51 ` Andrew Cagney
@ 2001-06-17 9:26 ` Andrew Cagney
0 siblings, 0 replies; 8+ messages in thread
From: Andrew Cagney @ 2001-06-17 9:26 UTC (permalink / raw)
To: Andrew Cagney; +Cc: Michael Elizabeth Chastain, gdb-patches
>
> Michael, the sparc case has me stumped. tm-sparc.h defines both INIT_FRAME_PC() and INIT_FRAME_PC_FIRST() so (as far as theories go :-) shouldn't be affected by the change.
>
>
Found it. It needs to be native:
make[1]: Entering directory `/horton/cagney/GDB/native/gdb'
gcc -c -g -O -I/usr/include/v9 -I. -I/horton/cagney/GDB/src/gdb -I/horton/cagn
ey/GDB/src/gdb/config -DHAVE_CONFIG_H -I/horton/cagney/GDB/src/gdb/../include/op
code -I/horton/cagney/GDB/src/gdb/../readline/.. -I../bfd -I/horton/cagney/GDB/s
rc/gdb/../bfd -I/horton/cagney/GDB/src/gdb/../include -I../intl -I/horton/cagne
y/GDB/src/gdb/../intl -DUI_OUT=1 -Werror /horton/cagney/GDB/src/gdb/main.c
In file included from /horton/cagney/GDB/src/gdb/defs.h:1148,
from /horton/cagney/GDB/src/gdb/main.c:22:
/horton/cagney/GDB/src/gdb/gdbarch.h:691: warning: `CANNOT_STORE_REGISTER' redef
ined
/horton/cagney/GDB/src/gdb/config/sparc/tm-sparc.h:412: warning: this is the loc
ation of the previous definition
/horton/cagney/GDB/src/gdb/gdbarch.h:830: warning: `INIT_FRAME_PC_FIRST' redefin
ed
/horton/cagney/GDB/src/gdb/config/sparc/tm-sparc.h:538: warning: this is the loc
ation of the previous definition
/horton/cagney/GDB/src/gdb/gdbarch.h:844: warning: `INIT_FRAME_PC' redefined
/horton/cagney/GDB/src/gdb/config/sparc/tm-sparc.h:535: warning: this is the loc
ation of the previous definition
make[1]: *** [main.o] Error 1
make[1]: Leaving directory `/horton/cagney/GDB/native/gdb'
make: *** [all-gdb] Error 2
status=2
I'm going to tweek gdbarch.sh so that it is more pig-headed about this.
Andrew
PS: Michael, time to use -Werror.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [patch] multi-arch INIT_FRAME_PC*; Was: New gdb 31 & 64 bit patches for S/390
2001-06-16 17:39 [patch] multi-arch INIT_FRAME_PC*; Was: New gdb 31 & 64 bit patches for S/390 Michael Elizabeth Chastain
2001-06-17 8:51 ` Andrew Cagney
@ 2001-06-17 9:58 ` Andrew Cagney
1 sibling, 0 replies; 8+ messages in thread
From: Andrew Cagney @ 2001-06-17 9:58 UTC (permalink / raw)
To: Michael Elizabeth Chastain; +Cc: gdb-patches
Michael,
I've checked in the attached as an obvious fix. I'll follow this up
with a more pig-headed gdbarch.sh (#error) so that the problem gets
detected earlier.
Andrew
From ac131313@cygnus.com Sun Jun 17 10:47:00 2001
From: Andrew Cagney <ac131313@cygnus.com>
To: gdb-patches@sources.redhat.com
Subject: [patch] treat conflicting multi-arch macros as an error
Date: Sun, 17 Jun 2001 10:47:00 -0000
Message-id: <3B2CED49.90809@cygnus.com>
X-SW-Source: 2001-06/msg00335.html
Content-length: 126
Per other e-mail. This should cause a compilation failure when there is
a conflicting multi-arch macro definition.
Andrew
From chastain@cygnus.com Sun Jun 17 11:15:00 2001
From: Michael Elizabeth Chastain <chastain@cygnus.com>
To: ac131313@cygnus.com
Cc: gdb-patches@sources.redhat.com
Subject: Re: [patch] multi-arch INIT_FRAME_PC*; Was: New gdb 31 & 64 bit patches for S/390
Date: Sun, 17 Jun 2001 11:15:00 -0000
Message-id: <200106171816.LAA21467@bosch.cygnus.com>
X-SW-Source: 2001-06/msg00336.html
Content-length: 252
> PS: Michael, time to use -Werror.
I'll try it. Is this the right incantation?
/.../.../configure ... --enable-build-warnings=-Wimplicit,-Wreturn-type,-Wcomment,-Wtrigraphs,-Wformat,-Wparentheses,-Wpointer-arith,-Wuninitialized,-Werror
Michael
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [patch] multi-arch INIT_FRAME_PC*; Was: New gdb 31 & 64 bit patches for S/390
[not found] <200106171816.LAA21467@bosch.cygnus.com>
@ 2001-06-18 5:52 ` Andrew Cagney
0 siblings, 0 replies; 8+ messages in thread
From: Andrew Cagney @ 2001-06-18 5:52 UTC (permalink / raw)
To: Michael Elizabeth Chastain; +Cc: gdb-patches
For solaris it is just:
--enable-gdb-build-warnings=-Werror
(dud header files) for cross targets it is normally:
--enable-gdb-build-warnings=,-Werror
Andrew
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [patch] multi-arch INIT_FRAME_PC*; Was: New gdb 31 & 64 bit patches for S/390
@ 2001-06-16 16:14 Michael Elizabeth Chastain
0 siblings, 0 replies; 8+ messages in thread
From: Michael Elizabeth Chastain @ 2001-06-16 16:14 UTC (permalink / raw)
To: ac131313; +Cc: gdb-patches
> The attached should fix the problem. Michael, if it doesn't it may pay
> to revert this and the other patch (until I find a thinking cap that
> fits) :-/
Cool. I'll crank up some native linux and solaris builds and check
it out.
Michael
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [patch] multi-arch INIT_FRAME_PC*; Was: New gdb 31 & 64 bit patches for S/390
[not found] <200106161813.LAA20846@bosch.cygnus.com>
@ 2001-06-16 12:35 ` Andrew Cagney
0 siblings, 0 replies; 8+ messages in thread
From: Andrew Cagney @ 2001-06-16 12:35 UTC (permalink / raw)
To: Michael Elizabeth Chastain, gdb-patches
Oops,
As MichaelC just pointed out to me it might work fine for my target
(MIPS) but doesn't work fine for any other target :-(. Back traces fail
because blockframe.c no longer gets the default:
- #if !defined (INIT_FRAME_PC)
- #define INIT_FRAME_PC(fromleaf, prev) \
- prev->pc = (fromleaf ? SAVED_PC_AFTER_CALL (prev->next) : \
- prev->next ? FRAME_SAVED_PC (prev->next) : read_pc ());
- #endif
-
The attached should fix the problem. Michael, if it doesn't it may pay
to revert this and the other patch (until I find a thinking cap that
fits) :-/
Andrew
^ permalink raw reply [flat|nested] 8+ messages in thread
* [patch] multi-arch INIT_FRAME_PC*; Was: New gdb 31 & 64 bit patches for S/390
2001-02-27 12:39 DJBARROW
@ 2001-06-15 16:09 ` Andrew Cagney
0 siblings, 0 replies; 8+ messages in thread
From: Andrew Cagney @ 2001-06-15 16:09 UTC (permalink / raw)
To: DJBARROW; +Cc: gdb-patches, schwidefsky, ARENZ
Hello,
I've checked in the attatched, it multi-arches INIT_FRAME_PC_FIRST. (I
also got a little carried away and multi-arched INIT_FRAME_PC as well :-)
Andrew
From msnyder@cygnus.com Fri Jun 15 16:22:00 2001
From: Michael Snyder <msnyder@cygnus.com>
To: "Peter.Schauer" <Peter.Schauer@Regent.E-Technik.TU-Muenchen.DE>, gdb-patches@sources.redhat.com
Subject: [RFC] if (INNER_THAN (read_sp(), step_sp - 16))
Date: Fri, 15 Jun 2001 16:22:00 -0000
Message-id: <3B2A97C7.52A839FD@cygnus.com>
X-SW-Source: 2001-06/msg00307.html
Content-length: 1134
Hellooooooo, Peter Schauer!
Back in April of 1998 a patch from you was checked in (you may have
submitted it some time earlier) for x86 Solaris. Among other things,
it contained a test in infrun.c (wait_for_inferior) that looked like:
[stuff...]
(CURRENTLY_STEPPING ()
&& prev_pc != stop_pc - DECR_PC_AFTER_BREAK
&& !(step_range_end
&& read_sp () INNER_THAN (step_sp - 16)));
A comment explains that the INNER_THAN expression is meant to detect
hitting a breakpoint in a signal handler without an intervening stop
in sigtramp.
The lines have metamorphosed since then, but the expression with
(step_sp - 16) is still in there, and I would really like to get
rid of it. Especially since I have now found that it can cause
serious bugs in debugging native Linux x86.
But I have no idea how to detect the situation that you are
trying to test for. So I'd like to toss it back to you.
Can you find a better way to test for this? Maybe with
(ugh) another state variable?
And if not, can you put those two lines into an ifdef,
so they won't affect targets for which they're not intended?
Thanks a lot,
Michael
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2001-06-18 5:52 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-06-16 17:39 [patch] multi-arch INIT_FRAME_PC*; Was: New gdb 31 & 64 bit patches for S/390 Michael Elizabeth Chastain
2001-06-17 8:51 ` Andrew Cagney
2001-06-17 9:26 ` Andrew Cagney
2001-06-17 9:58 ` Andrew Cagney
[not found] <200106171816.LAA21467@bosch.cygnus.com>
2001-06-18 5:52 ` Andrew Cagney
-- strict thread matches above, loose matches on Subject: below --
2001-06-16 16:14 Michael Elizabeth Chastain
[not found] <200106161813.LAA20846@bosch.cygnus.com>
2001-06-16 12:35 ` Andrew Cagney
2001-02-27 12:39 DJBARROW
2001-06-15 16:09 ` [patch] multi-arch INIT_FRAME_PC*; Was: " Andrew Cagney
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox