libbfd-in.h

来自「基于4个mips核的noc设计」· C头文件 代码 · 共 556 行 · 第 1/2 页

H
556
字号
   bfd_nullvoidptr)/* Routines to use for BFD_JUMP_TABLE_RELOCS when there is no reloc   support.  Use BFD_JUMP_TABLE_RELOCS (_bfd_norelocs).  */#define _bfd_norelocs_get_reloc_upper_bound \  ((long (*) PARAMS ((bfd *, asection *))) _bfd_n1)#define _bfd_norelocs_canonicalize_reloc \  ((long (*) PARAMS ((bfd *, asection *, arelent **, asymbol **))) _bfd_n1)#define _bfd_norelocs_bfd_reloc_type_lookup \  ((reloc_howto_type *(*) PARAMS ((bfd *, bfd_reloc_code_real_type))) \   bfd_nullvoidptr)/* Routines to use for BFD_JUMP_TABLE_WRITE for targets which may not   be written.  Use BFD_JUMP_TABLE_WRITE (_bfd_nowrite).  */#define _bfd_nowrite_set_arch_mach \  ((boolean (*) PARAMS ((bfd *, enum bfd_architecture, unsigned long))) \   bfd_false)#define _bfd_nowrite_set_section_contents \  ((boolean (*) PARAMS ((bfd *, asection *, PTR, file_ptr, bfd_size_type))) \   bfd_false)/* Generic routines to use for BFD_JUMP_TABLE_WRITE.  Use   BFD_JUMP_TABLE_WRITE (_bfd_generic).  */#define _bfd_generic_set_arch_mach bfd_default_set_arch_machextern boolean _bfd_generic_set_section_contents  PARAMS ((bfd *, asection *, PTR, file_ptr, bfd_size_type));/* Routines to use for BFD_JUMP_TABLE_LINK for targets which do not   support linking.  Use BFD_JUMP_TABLE_LINK (_bfd_nolink).  */#define _bfd_nolink_sizeof_headers ((int (*) PARAMS ((bfd *, boolean))) bfd_0)#define _bfd_nolink_bfd_get_relocated_section_contents \  ((bfd_byte *(*) \    PARAMS ((bfd *, struct bfd_link_info *, struct bfd_link_order *, \	     bfd_byte *, boolean, asymbol **))) \   bfd_nullvoidptr)#define _bfd_nolink_bfd_relax_section \  ((boolean (*) \    PARAMS ((bfd *, asection *, struct bfd_link_info *, boolean *))) \   bfd_false)#define _bfd_nolink_bfd_gc_sections \  ((boolean (*) \    PARAMS ((bfd *, struct bfd_link_info *))) \   bfd_false)#define _bfd_nolink_bfd_link_hash_table_create \  ((struct bfd_link_hash_table *(*) PARAMS ((bfd *))) bfd_nullvoidptr)#define _bfd_nolink_bfd_link_add_symbols \  ((boolean (*) PARAMS ((bfd *, struct bfd_link_info *))) bfd_false)#define _bfd_nolink_bfd_final_link \  ((boolean (*) PARAMS ((bfd *, struct bfd_link_info *))) bfd_false)#define _bfd_nolink_bfd_link_split_section \  ((boolean (*) PARAMS ((bfd *, struct sec *))) bfd_false)/* Routines to use for BFD_JUMP_TABLE_DYNAMIC for targets which do not   have dynamic symbols or relocs.  Use BFD_JUMP_TABLE_DYNAMIC   (_bfd_nodynamic).  */#define _bfd_nodynamic_get_dynamic_symtab_upper_bound _bfd_n1#define _bfd_nodynamic_canonicalize_dynamic_symtab \  ((long (*) PARAMS ((bfd *, asymbol **))) _bfd_n1)#define _bfd_nodynamic_get_dynamic_reloc_upper_bound _bfd_n1#define _bfd_nodynamic_canonicalize_dynamic_reloc \  ((long (*) PARAMS ((bfd *, arelent **, asymbol **))) _bfd_n1)/* Generic routine to determine of the given symbol is a local   label.  */extern boolean bfd_generic_is_local_label_name PARAMS ((bfd *, const char *));/* Generic minisymbol routines.  */extern long _bfd_generic_read_minisymbols  PARAMS ((bfd *, boolean, PTR *, unsigned int *));extern asymbol *_bfd_generic_minisymbol_to_symbol  PARAMS ((bfd *, boolean, const PTR, asymbol *));/* Find the nearest line using .stab/.stabstr sections.  */extern boolean _bfd_stab_section_find_nearest_line  PARAMS ((bfd *, asymbol **, asection *, bfd_vma, boolean *, const char **,	   const char **, unsigned int *, PTR *));/* Find the neaderst line using DWARF 1 debugging information.  */extern boolean _bfd_dwarf1_find_nearest_line  PARAMS ((bfd *, asection *, asymbol **, bfd_vma, const char **,	   const char **, unsigned int *));/* Find the nearest line using DWARF 2 debugging information.  */extern boolean _bfd_dwarf2_find_nearest_line  PARAMS ((bfd *, asection *, asymbol **, bfd_vma, const char **,	   const char **, unsigned int *, unsigned int,	   PTR *));/* A routine to create entries for a bfd_link_hash_table.  */extern struct bfd_hash_entry *_bfd_link_hash_newfunc  PARAMS ((struct bfd_hash_entry *entry,	   struct bfd_hash_table *table,	   const char *string));/* Initialize a bfd_link_hash_table.  */extern boolean _bfd_link_hash_table_init  PARAMS ((struct bfd_link_hash_table *, bfd *,	   struct bfd_hash_entry *(*) (struct bfd_hash_entry *,				       struct bfd_hash_table *,				       const char *)));/* Generic link hash table creation routine.  */extern struct bfd_link_hash_table *_bfd_generic_link_hash_table_create  PARAMS ((bfd *));/* Generic add symbol routine.  */extern boolean _bfd_generic_link_add_symbols  PARAMS ((bfd *, struct bfd_link_info *));/* Generic add symbol routine.  This version is used by targets for   which the linker must collect constructors and destructors by name,   as the collect2 program does.  */extern boolean _bfd_generic_link_add_symbols_collect  PARAMS ((bfd *, struct bfd_link_info *));/* Generic archive add symbol routine.  */extern boolean _bfd_generic_link_add_archive_symbols  PARAMS ((bfd *, struct bfd_link_info *,	   boolean (*checkfn) (bfd *, struct bfd_link_info *, boolean *)));/* Forward declaration to avoid prototype errors.  */typedef struct bfd_link_hash_entry _bfd_link_hash_entry;/* Generic routine to add a single symbol.  */extern boolean _bfd_generic_link_add_one_symbol  PARAMS ((struct bfd_link_info *, bfd *, const char *name, flagword,	   asection *, bfd_vma, const char *, boolean copy,	   boolean constructor, struct bfd_link_hash_entry **));/* Generic link routine.  */extern boolean _bfd_generic_final_link  PARAMS ((bfd *, struct bfd_link_info *));extern boolean _bfd_generic_link_split_section  PARAMS ((bfd *, struct sec *));/* Generic reloc_link_order processing routine.  */extern boolean _bfd_generic_reloc_link_order  PARAMS ((bfd *, struct bfd_link_info *, asection *,	   struct bfd_link_order *));/* Default link order processing routine.  */extern boolean _bfd_default_link_order  PARAMS ((bfd *, struct bfd_link_info *, asection *,	   struct bfd_link_order *));/* Count the number of reloc entries in a link order list.  */extern unsigned int _bfd_count_link_order_relocs  PARAMS ((struct bfd_link_order *));/* Final link relocation routine.  */extern bfd_reloc_status_type _bfd_final_link_relocate  PARAMS ((reloc_howto_type *, bfd *, asection *, bfd_byte *,	   bfd_vma address, bfd_vma value, bfd_vma addend));/* Relocate a particular location by a howto and a value.  */extern bfd_reloc_status_type _bfd_relocate_contents  PARAMS ((reloc_howto_type *, bfd *, bfd_vma, bfd_byte *));/* Link stabs in sections in the first pass.  */extern boolean _bfd_link_section_stabs  PARAMS ((bfd *, PTR *, asection *, asection *, PTR *));/* Write out the .stab section when linking stabs in sections.  */extern boolean _bfd_write_section_stabs  PARAMS ((bfd *, PTR *, asection *, PTR *, bfd_byte *));/* Write out the .stabstr string table when linking stabs in sections.  */extern boolean _bfd_write_stab_strings PARAMS ((bfd *, PTR *));/* Find an offset within a .stab section when linking stabs in   sections.  */extern bfd_vma _bfd_stab_section_offset  PARAMS ((bfd *, PTR *, asection *, PTR *, bfd_vma));/* Create a string table.  */extern struct bfd_strtab_hash *_bfd_stringtab_init PARAMS ((void));/* Create an XCOFF .debug section style string table.  */extern struct bfd_strtab_hash *_bfd_xcoff_stringtab_init PARAMS ((void));/* Free a string table.  */extern void _bfd_stringtab_free PARAMS ((struct bfd_strtab_hash *));/* Get the size of a string table.  */extern bfd_size_type _bfd_stringtab_size PARAMS ((struct bfd_strtab_hash *));/* Add a string to a string table.  */extern bfd_size_type _bfd_stringtab_add  PARAMS ((struct bfd_strtab_hash *, const char *, boolean hash,	   boolean copy));/* Write out a string table.  */extern boolean _bfd_stringtab_emit PARAMS ((bfd *, struct bfd_strtab_hash *));/* Check that endianness of input and output file match.  */extern boolean _bfd_generic_verify_endian_match PARAMS ((bfd *, bfd *));/* Macros to tell if bfds are read or write enabled.   Note that bfds open for read may be scribbled into if the fd passed   to bfd_fdopenr is actually open both for read and write   simultaneously.  However an output bfd will never be open for   read.  Therefore sometimes you want to check bfd_read_p or   !bfd_read_p, and only sometimes bfd_write_p.*/#define	bfd_read_p(abfd) ((abfd)->direction == read_direction || (abfd)->direction == both_direction)#define	bfd_write_p(abfd) ((abfd)->direction == write_direction || (abfd)->direction == both_direction)void	bfd_assert PARAMS ((const char*,int));#define BFD_ASSERT(x) \{ if (!(x)) bfd_assert(__FILE__,__LINE__); }#define BFD_FAIL() \{ bfd_assert(__FILE__,__LINE__); }extern void _bfd_abort PARAMS ((const char *, int, const char *))     ATTRIBUTE_NORETURN;/* if gcc >= 2.6, we can give a function name, too */#if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 6)#define __PRETTY_FUNCTION__  ((char *) NULL)#endif#undef abort#define abort() _bfd_abort (__FILE__, __LINE__, __PRETTY_FUNCTION__)FILE *	bfd_cache_lookup_worker PARAMS ((bfd *));extern bfd *bfd_last_cache;/* List of supported target vectors, and the default vector (if   bfd_default_vector[0] is NULL, there is no default).  */extern const bfd_target * const *bfd_target_vector;extern const bfd_target *bfd_default_vector[];/* Functions shared by the ECOFF and MIPS ELF backends, which have no   other common header files.  */#if defined(__STDC__) || defined(ALMOST_STDC)struct ecoff_find_line;#endifextern boolean _bfd_ecoff_locate_line  PARAMS ((bfd *, asection *, bfd_vma, struct ecoff_debug_info * const,	   const struct ecoff_debug_swap * const, struct ecoff_find_line *,	   const char **, const char **, unsigned int *));extern boolean _bfd_ecoff_get_accumulated_pdr PARAMS ((PTR, bfd_byte *));extern boolean _bfd_ecoff_get_accumulated_sym PARAMS ((PTR, bfd_byte *));extern boolean _bfd_ecoff_get_accumulated_ss PARAMS ((PTR, bfd_byte *));extern bfd_vma _bfd_get_gp_value PARAMS ((bfd *));extern void _bfd_set_gp_value PARAMS ((bfd *, bfd_vma));/* Function shared by the COFF and ELF SH backends, which have no   other common header files.  */extern boolean _bfd_sh_align_load_span  PARAMS ((bfd *, asection *, bfd_byte *,	   boolean (*) (bfd *, asection *, PTR, bfd_byte *, bfd_vma),	   PTR, bfd_vma **, bfd_vma *, bfd_vma, bfd_vma, boolean *));/* And more follows */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?