Mirror of the gdb mailing list
 help / color / mirror / Atom feed
* FRAME_ARGS_SKIP
@ 2001-06-14 11:07 Jim Blandy
  2001-06-15  0:10 ` FRAME_ARGS_SKIP Andrew Cagney
  0 siblings, 1 reply; 5+ messages in thread
From: Jim Blandy @ 2001-06-14 11:07 UTC (permalink / raw)
  To: gdb

Here's the entry from gdbarch.sh for FRAME_ARGS_SKIP:

v:2:FRAME_ARGS_SKIP:CORE_ADDR:frame_args_skip::::0:-1

This sets 0 as the static default, -1 as the predefault, and specifies
no postdefault.  If I'm reading gdbarch.sh correctly, this means that:

- we use 0 as the value in the dummy gdbarch object we use during
  startup, and

- we set this field to -1 in a newly allocated gdbarch object, and we
  report an internal error if we notice later that it still has this
  value.

If I add a postdefault, then instead of getting an internal error when
it's not initialized, we'll just drop in the postdefault value.

Is that correct?

This field should be zero for almost every architecture.  Would anyone
mind if I added a postdefault of zero?


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: FRAME_ARGS_SKIP
  2001-06-14 11:07 FRAME_ARGS_SKIP Jim Blandy
@ 2001-06-15  0:10 ` Andrew Cagney
       [not found]   ` <npu21doxx4.fsf@zwingli.cygnus.com>
  0 siblings, 1 reply; 5+ messages in thread
From: Andrew Cagney @ 2001-06-15  0:10 UTC (permalink / raw)
  To: Jim Blandy; +Cc: gdb

> Here's the entry from gdbarch.sh for FRAME_ARGS_SKIP:
> 
> v:2:FRAME_ARGS_SKIP:CORE_ADDR:frame_args_skip::::0:-1
> 
> This sets 0 as the static default, -1 as the predefault, and specifies
> no postdefault. If I'm reading gdbarch.sh correctly, this means that:


gdbarch.log (generated) should confirm this:


> - we use 0 as the value in the dummy gdbarch object we use during
> startup, and


Just FYI, that value was chosen strictly on the basis that it didn't 
appear to make GDB dump core during initialization.


> - we set this field to -1 in a newly allocated gdbarch object, and we
> report an internal error if we notice later that it still has this
> value.
> 
> If I add a postdefault, then instead of getting an internal error when
> it's not initialized, we'll just drop in the postdefault value.
> 
> Is that correct?


Yes.  It is also possible to make the pre-default zero and gag the error 
checking.


> This field should be zero for almost every architecture. Would anyone
> mind if I added a postdefault of zero?


Now that is a US$64 question (rougly AUD$64,000,000).

The strategy, when converting a macro to multi-arch, has been to 
preserve existing behavour.  If, pre-multi-arch, not defining a macro 
caused compiler errors, post- multi-arch it triggered an internal error.

If someone wants to go back and change a variable, after the event, 
then, mostly I'm not worried.  I'd just discourage it when there are 
more complex initialization dependencies such as for the dummy frame.

	Andrew


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: FRAME_ARGS_SKIP
       [not found]   ` <npu21doxx4.fsf@zwingli.cygnus.com>
@ 2001-06-19  9:22     ` Andrew Cagney
  2001-06-25 21:06       ` FRAME_ARGS_SKIP Jim Blandy
  0 siblings, 1 reply; 5+ messages in thread
From: Andrew Cagney @ 2001-06-19  9:22 UTC (permalink / raw)
  To: Jim Blandy; +Cc: gdb

Is your target pure multi-arch?  The gdbarch code does many many more 
startup checks on such targets.

	Andrew


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: FRAME_ARGS_SKIP
  2001-06-19  9:22     ` FRAME_ARGS_SKIP Andrew Cagney
@ 2001-06-25 21:06       ` Jim Blandy
  2001-06-25 21:20         ` FRAME_ARGS_SKIP Andrew Cagney
  0 siblings, 1 reply; 5+ messages in thread
From: Jim Blandy @ 2001-06-25 21:06 UTC (permalink / raw)
  To: Andrew Cagney; +Cc: gdb

Andrew Cagney <ac131313@cygnus.com> writes:

> 
> Is your target pure multi-arch?  The gdbarch code does many many more 
> startup checks on such targets.
> 
> 	Andrew

The complete contents of its tm-*.h file are:

/* This target uses an architecture vector exclusively.  */

#define GDB_MULTI_ARCH 1


So I'm guessing that should be GDB_MULTI_ARCH should actually be set
to GDB_MULTI_ARCH_PURE.  Is that right?


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: FRAME_ARGS_SKIP
  2001-06-25 21:06       ` FRAME_ARGS_SKIP Jim Blandy
@ 2001-06-25 21:20         ` Andrew Cagney
  0 siblings, 0 replies; 5+ messages in thread
From: Andrew Cagney @ 2001-06-25 21:20 UTC (permalink / raw)
  To: Jim Blandy; +Cc: gdb

> Is your target pure multi-arch?  The gdbarch code does many many more 
>> startup checks on such targets.
>> 
>> Andrew
> 
> 
> The complete contents of its tm-*.h file are:
> 
> /* This target uses an architecture vector exclusively.  */
> 
> #define GDB_MULTI_ARCH 1
> 
> 
> So I'm guessing that should be GDB_MULTI_ARCH should actually be set
> to GDB_MULTI_ARCH_PURE.  Is that right?


In that case you don't even need a tm.h. Instead tweek the end of 
configure.tgt so that it is something like the m68hc11.

	Andrew




^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2001-06-25 21:20 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-06-14 11:07 FRAME_ARGS_SKIP Jim Blandy
2001-06-15  0:10 ` FRAME_ARGS_SKIP Andrew Cagney
     [not found]   ` <npu21doxx4.fsf@zwingli.cygnus.com>
2001-06-19  9:22     ` FRAME_ARGS_SKIP Andrew Cagney
2001-06-25 21:06       ` FRAME_ARGS_SKIP Jim Blandy
2001-06-25 21:20         ` FRAME_ARGS_SKIP Andrew Cagney

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox