Create relocations with bfd_install_relocation.
[ksplice.git] / objmanip.h
blobf820a1f6a75731e31ba1db00395a2c33bb4d4c00
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 write_ksplice_reloc(bfd *ibfd, asection *isection, arelent *orig_reloc,
16 struct supersect *ss);
17 bfd_vma blot_section(bfd *abfd, asection *sect, int offset,
18 reloc_howto_type *howto);
19 void write_ksplice_size(bfd *ibfd, asymbol **symp);
20 void write_ksplice_patch(bfd *ibfd, char *symname);
21 void rm_from_special(bfd *ibfd, struct specsect *s);
22 void mark_wanted_if_referenced(bfd *abfd, asection *sect, void *ignored);
23 void check_for_ref_to_section(bfd *abfd, asection *looking_at,
24 void *looking_for);
25 static bfd_boolean copy_object(bfd *ibfd, bfd *obfd);
26 static void setup_section(bfd *ibfd, asection *isection, void *obfdarg);
27 static void setup_new_section(bfd *obfd, struct supersect *ss);
28 static void write_section(bfd *obfd, asection *osection, void *arg);
29 static void mark_symbols_used_in_relocations(bfd *ibfd, asection *isection,
30 void *symbolsarg);
31 static void ss_mark_symbols_used_in_relocations(struct supersect *ss);
32 static void filter_symbols(bfd *abfd, bfd *obfd, struct asymbolp_vec *osyms,
33 struct asymbolp_vec *isyms);
34 int exists_sym_with_name(struct asymbolp_vec *syms, const char *desired);
35 int match_varargs(const char *str);
36 int want_section(const char *name, char **newname);
37 struct specsect *is_special(const char *name);