diff options
author | David Henkel-Wallace <gumby@cygnus> | 1991-03-21 21:11:25 +0000 |
---|---|---|
committer | David Henkel-Wallace <gumby@cygnus> | 1991-03-21 21:11:25 +0000 |
commit | 4a81b56152631cda9dc351cb4d2f61f395ee4414 (patch) | |
tree | 562bc9b14bcf414b6c301b769d4ce528c51d4703 /bfd/TODO | |
parent | 907621824e31daf6504860009535f03676afee4d (diff) | |
download | gdb-4a81b56152631cda9dc351cb4d2f61f395ee4414.zip gdb-4a81b56152631cda9dc351cb4d2f61f395ee4414.tar.gz gdb-4a81b56152631cda9dc351cb4d2f61f395ee4414.tar.bz2 |
Initial revision
Diffstat (limited to 'bfd/TODO')
-rw-r--r-- | bfd/TODO | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/bfd/TODO b/bfd/TODO new file mode 100644 index 0000000..45cf905 --- /dev/null +++ b/bfd/TODO @@ -0,0 +1,49 @@ +Things that still need to be handled: -*- Text -*- + + o - check all the swapping code. + o - change the memory usage to reflect the message which follows the + page break. + o - implement bfd_abort, which should close the bfd but not alter the + filesystem. + o - remove the following obsolete functions: + bfd_symbol_value + bfd_symbol_name + bfd_get_first_symbol + bfd_get_next_symbol + bfd_classify_symbol + bfd_symbol_hasclass + o - update the bfd doc; write a how-to-write-a-backend doc. + o - change reloc handling as per Steve's suggestion. + + +Changing the way bfd uses memory. The new convention is simple: + + o - bfd will never write into user-supplied memory, nor attempt to + free it. + o - closing a bfd may reclaim all bfd-allocated memory associated + with that bfd. + - - bfd_target_list will be the one exception; you must reclaim the + returned vector yourself. + +Interface implications are minor (get_symcount_upper_bound will go +away; bfd_cannicalize_symtab will allocate its own memory, etc). + +Certain operations consume a lot of memory; for them manual +reclaimation is available: + + o - bfd_canonicalize_symtab will return a pointer to a + null-terminated vector of symbols. Subsequent calls may or may + not return the same pointer. + bfd_canonicalize_relocs will do the same; returning a pointer to + an array of arelocs. Calling this function will read symbols in + too. + + o - bfd_reclaim_relocs will free the memory used by these relocs. + the symbols will be untouched. + bfd_reclaim_symtab (ne bfd_reclaim_symbol_table) will free the + memory allocated by canonialize_symtab. + Since relocations point to symbols, any relocations obtained by a + call to bfd_canonicalize_relocs will be reclaimed as well. + + o - if you don't call the reclaim_ functions, the memory will be + reclaimed at bfd_close time. |