target_xfer_memory()
J.T. Conklin
jtc@redback.com
Mon Mar 20 17:06:00 GMT 2000
I'm changing target_xfer_memory() to support memory region attributes.
While poking around, I came up with a few of questions:
* target_xfer_memory takes a bfd_section argument, which it assigns to
the global variable target_memory_bfd_section. The only place it is
used is within a #if 0'd section of code. There is a comment above
its definition in target.c:
/* This variable is used to pass section information down to
targets. This *should* be done by adding an argument to
the target_xfer_memory function of all the targets, but I
didn't feel like changing 50+ files. */
Does anyone know the history and/or future of this? I'm going to
add a memory attribute pointer to the target_xfer_function of all
the targets anyway, so it would not be difficult to add a section
pointer at the same time. On the other hand, if it's one of GDBs
dead ends, I can remove it (and target_xfert_memory's section
pointer argument) as well.
* how much does using current_target.to_xfer_memory win over going
through the target stack? When I added the code to break up a
transfer into region-sized chunks, handling the special case for
current_target became a bit more complicated.
Thanks,
--jtc
--
J.T. Conklin
RedBack Networks
More information about the Gdb
mailing list