This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: How to implement gcore on pa-hpux ?


> OK, well, without looking at your code I don't know if this is
> applicable, but I did write the gcore code so as to use callbacks.
> It was intended to be extendable, so that whatever needed to be
> done per-section(segment) could be done by the callbacks, which
> you could supply.
> 
> The callbacks supplied are for elf, for instance, which
> is the only object format that I directly addressed, but
> I would hope that callbacks for other formats could be
> made to fit.  I was intending, for instance, to implement
> a callback for remote targets that would simply read the
> memory from the remote-writeable sections and copy it into
> a file.
> 
> Can this not be made to work for you?

I think I see what you mean, and I now understand the reason for
the callbacks. I suppose I could do the same for HP/UX, but it would
be more work than just relying on ttrace.

The discussion started because I thought it would be a shame to
duplicate a few lines of code. But perhaps there is another way
of dealing with this.

        1. Create a new file gcore-elf.c
           Move the elf section there.

        2. Create a new file gcore-hpux.c
           Put the hpux code there

        3. Have gcore call a predefined routine, or maybe a hook
           specified by the gcore-* module.

It's not as elegant as having a gdbarch or target method, but it's
probably easier to implement. We defer a bit the work that makes this
a method of some vector, but it's not necessary right now. Perhaps
the pragmatic thing to do would be to wait until we need it before
we start worrying about it. Even then, the work is slightly prepared
because we already have the genericity based on the hook.

What do you guys think?

-- 
Joel



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]