* Questions on how to implement native core file support
@ 2009-04-22 19:37 Joel Brobecker
2009-04-24 14:31 ` Mark Kettenis
0 siblings, 1 reply; 2+ messages in thread
From: Joel Brobecker @ 2009-04-22 19:37 UTC (permalink / raw)
To: gdb
Hello,
While looking at expunging REGISTER_U_ADDR from our documentation
(no longer used), I found out that the documentation about how to
provide core file support is out of date (core-aout has been deleted
a year ago).
Having never written support for core file reading, I have tried
to figure out how to add it. As far as I can tell, I can see
two forms of core file support:
1. Native core file support
2. gdbarch core file support
In the second case, it appears that all you have to do is define
the gdbarch_regset_from_core_section method for your architecture,
and I would guess that this is the prefered method. However, may
not be always doable, in particular if you depend on certain
system headers... Any other possible reason?
In the first case, it looks like core_low is relying on
a struct core_fns which is provides pointers to various
target-dependent routines. The thing is, the routine I see
in order to register a particular instance is marked as
deprecated:
extern void deprecated_add_core_fns (struct core_fns *cf);
Does it mean that, as of today, we only consider the second
gdbarch-based approach? If that's the case, then should we simply
update the documentation to either remove the "Native core file Support"
section, or replace it with a link to gdbarch_regset_from_core_section?
--
Joel
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: Questions on how to implement native core file support
2009-04-22 19:37 Questions on how to implement native core file support Joel Brobecker
@ 2009-04-24 14:31 ` Mark Kettenis
0 siblings, 0 replies; 2+ messages in thread
From: Mark Kettenis @ 2009-04-24 14:31 UTC (permalink / raw)
To: brobecker; +Cc: gdb
> Date: Wed, 22 Apr 2009 12:18:33 -0700
> From: Joel Brobecker <brobecker@adacore.com>
>
> Hello,
>
> While looking at expunging REGISTER_U_ADDR from our documentation
> (no longer used), I found out that the documentation about how to
> provide core file support is out of date (core-aout has been deleted
> a year ago).
>
> Having never written support for core file reading, I have tried
> to figure out how to add it. As far as I can tell, I can see
> two forms of core file support:
>
> 1. Native core file support
> 2. gdbarch core file support
>
> In the second case, it appears that all you have to do is define
> the gdbarch_regset_from_core_section method for your architecture,
> and I would guess that this is the prefered method. However, may
> not be always doable, in particular if you depend on certain
> system headers... Any other possible reason?
You never have to depend on system headers. The right thing to do is
add support to BFD for the core file format in question. That code
should compile on any system, and relevant constants and data
structures should go in a header file in the toplevel include
directory. After that, writing the appropriate
gdbarch_regset_from_core_section() function is all that's needed on
the GDB side.
We certainly should avoid adding more "native core file support" code.
> In the first case, it looks like core_low is relying on
> a struct core_fns which is provides pointers to various
> target-dependent routines. The thing is, the routine I see
> in order to register a particular instance is marked as
> deprecated:
>
> extern void deprecated_add_core_fns (struct core_fns *cf);
>
> Does it mean that, as of today, we only consider the second
> gdbarch-based approach? If that's the case, then should we simply
> update the documentation to either remove the "Native core file Support"
> section, or replace it with a link to gdbarch_regset_from_core_section?
I think so.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2009-04-22 19:37 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-04-22 19:37 Questions on how to implement native core file support Joel Brobecker
2009-04-24 14:31 ` Mark Kettenis
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox