Add System.map reading code to objmanip.
[ksplice.git] / objmanip.h
blob9b99405463a1ad1e55b08a1af959c31f03cbc62d
1 struct wsect {
2 char *name;
3 struct wsect *next;
4 };
6 struct specsect {
7 char *sectname;
8 unsigned char odd_relocs;
9 char *odd_relocname;
10 int entry_size;
13 int main(int argc, char **argv);
14 void rm_some_relocs(bfd *ibfd, asection *isection);
15 void print_reloc(bfd *ibfd, asection *isection, arelent *orig_reloc,
16 struct supersect *ss);
17 int blot_section(bfd *abfd, asection *sect, int offset, int size);
18 const char *canonical_sym(const char *sect_wlabel);
19 void rm_from_special(bfd *ibfd, struct specsect *s);
20 void mark_wanted_if_referenced(bfd *abfd, asection *sect, void *ignored);
21 void check_for_ref_to_section(bfd *abfd, asection *looking_at,
22 void *looking_for);
23 static bfd_boolean copy_object(bfd *ibfd, bfd *obfd);
24 static void setup_section(bfd *ibfd, asection *isection, void *obfdarg);
25 static void setup_new_section(bfd *obfd, struct supersect *ss);
26 static void copy_section(bfd *ibfd, asection *isection, void *obfdarg);
27 static void write_new_section(bfd *obfd, struct supersect *ss);
28 static void mark_symbols_used_in_relocations(bfd *ibfd, asection *isection,
29 void *symbolsarg);
30 static void ss_mark_symbols_used_in_relocations(struct supersect *ss);
31 static void filter_symbols(bfd *abfd, bfd *obfd, struct asymbolp_vec *osyms,
32 struct asymbolp_vec *isyms);
33 int exists_sym_with_name(struct asymbolp_vec *syms, const char *desired);
34 int match_varargs(const char *str);
35 int want_section(const char *name, char **newname);
36 struct specsect *is_special(const char *name);