ecoff-bfd.h 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. /* Externally visible ECOFF routines.
  2. Copyright (C) 2019-2022 Free Software Foundation, Inc.
  3. This file is part of BFD, the Binary File Descriptor library.
  4. This program is free software; you can redistribute it and/or modify
  5. it under the terms of the GNU General Public License as published by
  6. the Free Software Foundation; either version 3 of the License, or
  7. (at your option) any later version.
  8. This program is distributed in the hope that it will be useful,
  9. but WITHOUT ANY WARRANTY; without even the implied warranty of
  10. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  11. GNU General Public License for more details.
  12. You should have received a copy of the GNU General Public License
  13. along with this program; if not, write to the Free Software
  14. Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
  15. MA 02110-1301, USA. */
  16. extern bool bfd_ecoff_set_gp_value
  17. (bfd *abfd, bfd_vma gp_value);
  18. extern bool bfd_ecoff_set_regmasks
  19. (bfd *abfd, unsigned long gprmask, unsigned long fprmask,
  20. unsigned long *cprmask);
  21. extern void *bfd_ecoff_debug_init
  22. (bfd *output_bfd, struct ecoff_debug_info *output_debug,
  23. const struct ecoff_debug_swap *output_swap, struct bfd_link_info *);
  24. extern void bfd_ecoff_debug_free
  25. (void *handle, bfd *output_bfd, struct ecoff_debug_info *output_debug,
  26. const struct ecoff_debug_swap *output_swap, struct bfd_link_info *);
  27. extern bool bfd_ecoff_debug_accumulate
  28. (void *handle, bfd *output_bfd, struct ecoff_debug_info *output_debug,
  29. const struct ecoff_debug_swap *output_swap, bfd *input_bfd,
  30. struct ecoff_debug_info *input_debug,
  31. const struct ecoff_debug_swap *input_swap, struct bfd_link_info *);
  32. extern bool bfd_ecoff_debug_accumulate_other
  33. (void *handle, bfd *output_bfd, struct ecoff_debug_info *output_debug,
  34. const struct ecoff_debug_swap *output_swap, bfd *input_bfd,
  35. struct bfd_link_info *);
  36. extern bool bfd_ecoff_debug_externals
  37. (bfd *abfd, struct ecoff_debug_info *debug,
  38. const struct ecoff_debug_swap *swap, bool relocatable,
  39. bool (*get_extr) (struct bfd_symbol *, struct ecoff_extr *),
  40. void (*set_index) (struct bfd_symbol *, bfd_size_type));
  41. extern bool bfd_ecoff_debug_one_external
  42. (bfd *abfd, struct ecoff_debug_info *debug,
  43. const struct ecoff_debug_swap *swap, const char *name,
  44. struct ecoff_extr *esym);
  45. extern bfd_size_type bfd_ecoff_debug_size
  46. (bfd *abfd, struct ecoff_debug_info *debug,
  47. const struct ecoff_debug_swap *swap);
  48. extern bool bfd_ecoff_write_debug
  49. (bfd *abfd, struct ecoff_debug_info *debug,
  50. const struct ecoff_debug_swap *swap, file_ptr where);
  51. extern bool bfd_ecoff_write_accumulated_debug
  52. (void *handle, bfd *abfd, struct ecoff_debug_info *debug,
  53. const struct ecoff_debug_swap *swap,
  54. struct bfd_link_info *info, file_ptr where);