elf64-target.h

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

H
619
字号
#endif#ifndef elf_backend_output_arch_syms#define elf_backend_output_arch_syms		NULL#endif#ifndef elf_backend_copy_indirect_symbol#define elf_backend_copy_indirect_symbol  _bfd_elf_link_hash_copy_indirect#endif#ifndef elf_backend_hide_symbol#define elf_backend_hide_symbol		_bfd_elf_link_hash_hide_symbol#endif/* Previously, backends could only use SHT_REL or SHT_RELA relocation   sections, but not both.  They defined USE_REL to indicate SHT_REL   sections, and left it undefined to indicated SHT_RELA sections.   For backwards compatibility, we still support this usage.  */#ifndef USE_REL#define USE_REL 0#else#undef USE_REL#define USE_REL 1#endif/* Use these in new code.  */#ifndef elf_backend_may_use_rel_p#define elf_backend_may_use_rel_p USE_REL#endif#ifndef elf_backend_may_use_rela_p#define elf_backend_may_use_rela_p !USE_REL#endif#ifndef elf_backend_default_use_rela_p#define elf_backend_default_use_rela_p !USE_REL#endif#ifndef ELF_MACHINE_ALT1#define ELF_MACHINE_ALT1 0#endif#ifndef ELF_MACHINE_ALT2#define ELF_MACHINE_ALT2 0#endif#ifndef elf_backend_size_info#define elf_backend_size_info _bfd_elf64_size_info#endif#ifndef elf_backend_sign_extend_vma#define elf_backend_sign_extend_vma 0#endifextern const struct elf_size_info _bfd_elf64_size_info;#ifndef INCLUDED_TARGET_FILEstatic CONST struct elf_backend_data elf64_bed ={  ELF_ARCH,			/* arch */  ELF_MACHINE_CODE,		/* elf_machine_code */  ELF_MAXPAGESIZE,		/* maxpagesize */  elf_info_to_howto,  elf_info_to_howto_rel,  elf_backend_sym_is_global,  elf_backend_object_p,  elf_backend_symbol_processing,  elf_backend_symbol_table_processing,  elf_backend_get_symbol_type,  elf_backend_section_processing,  elf_backend_section_from_shdr,  elf_backend_section_flags,  elf_backend_section_from_phdr,  elf_backend_fake_sections,  elf_backend_section_from_bfd_section,  elf_backend_add_symbol_hook,  elf_backend_link_output_symbol_hook,  elf_backend_create_dynamic_sections,  elf_backend_check_relocs,  elf_backend_adjust_dynamic_symbol,  elf_backend_always_size_sections,  elf_backend_size_dynamic_sections,  elf_backend_relocate_section,  elf_backend_finish_dynamic_symbol,  elf_backend_finish_dynamic_sections,  elf_backend_begin_write_processing,  elf_backend_final_write_processing,  elf_backend_additional_program_headers,  elf_backend_modify_segment_map,  elf_backend_gc_mark_hook,  elf_backend_gc_sweep_hook,  elf_backend_post_process_headers,  elf_backend_print_symbol_all,  elf_backend_output_arch_syms,  elf_backend_copy_indirect_symbol,  elf_backend_hide_symbol,  elf_backend_ecoff_debug_swap,  ELF_MACHINE_ALT1,  ELF_MACHINE_ALT2,  &elf_backend_size_info,  elf_backend_got_symbol_offset,  elf_backend_got_header_size,  elf_backend_plt_header_size,  elf_backend_collect,  elf_backend_type_change_ok,  elf_backend_may_use_rel_p,  elf_backend_may_use_rela_p,  elf_backend_default_use_rela_p,  elf_backend_sign_extend_vma,  elf_backend_want_got_plt,  elf_backend_plt_readonly,  elf_backend_want_plt_sym,  elf_backend_plt_not_loaded,  elf_backend_plt_alignment,  elf_backend_can_gc_sections,  elf_backend_want_dynbss};#endif/* Forward declaration for use when initialising alternative_target field.  */#ifdef TARGET_LITTLE_SYMextern const bfd_target TARGET_LITTLE_SYM;#endif#ifdef TARGET_BIG_SYMconst bfd_target TARGET_BIG_SYM ={  /* name: identify kind of target */  TARGET_BIG_NAME,  /* flavour: general indication about file */  bfd_target_elf_flavour,  /* byteorder: data is big endian */  BFD_ENDIAN_BIG,  /* header_byteorder: header is also big endian */  BFD_ENDIAN_BIG,  /* object_flags: mask of all file flags */  (HAS_RELOC | EXEC_P | HAS_LINENO | HAS_DEBUG | HAS_SYMS | HAS_LOCALS |   DYNAMIC | WP_TEXT | D_PAGED),  /* section_flags: mask of all section flags */  (SEC_HAS_CONTENTS | SEC_ALLOC | SEC_LOAD | SEC_RELOC | SEC_READONLY |   SEC_CODE | SEC_DATA | SEC_DEBUGGING | SEC_EXCLUDE | SEC_SORT_ENTRIES),   /* leading_symbol_char: is the first char of a user symbol      predictable, and if so what is it */  elf_symbol_leading_char,  /* ar_pad_char: pad character for filenames within an archive header     FIXME:  this really has nothing to do with ELF, this is a characteristic     of the archiver and/or os and should be independently tunable */  '/',  /* ar_max_namelen: maximum number of characters in an archive header     FIXME:  this really has nothing to do with ELF, this is a characteristic     of the archiver and should be independently tunable.  This value is     a WAG (wild a** guess) */  14,  /* Routines to byte-swap various sized integers from the data sections */  bfd_getb64, bfd_getb_signed_64, bfd_putb64,    bfd_getb32, bfd_getb_signed_32, bfd_putb32,    bfd_getb16, bfd_getb_signed_16, bfd_putb16,  /* Routines to byte-swap various sized integers from the file headers */  bfd_getb64, bfd_getb_signed_64, bfd_putb64,    bfd_getb32, bfd_getb_signed_32, bfd_putb32,    bfd_getb16, bfd_getb_signed_16, bfd_putb16,  /* bfd_check_format: check the format of a file being read */  { _bfd_dummy_target,		/* unknown format */    bfd_elf64_object_p,		/* assembler/linker output (object file) */    bfd_elf64_archive_p,	/* an archive */    bfd_elf64_core_file_p	/* a core file */  },  /* bfd_set_format: set the format of a file being written */  { bfd_false,    bfd_elf64_mkobject,    bfd_elf64_mkarchive,    bfd_elf64_mkcorefile  },  /* bfd_write_contents: write cached information into a file being written */  { bfd_false,    bfd_elf64_write_object_contents,    bfd_elf64_write_archive_contents,    bfd_elf64_write_corefile_contents,  },      BFD_JUMP_TABLE_GENERIC (bfd_elf64),      BFD_JUMP_TABLE_COPY (bfd_elf64),      BFD_JUMP_TABLE_CORE (bfd_elf64),#ifdef bfd_elf64_archive_functions      BFD_JUMP_TABLE_ARCHIVE (bfd_elf64_archive),#else      BFD_JUMP_TABLE_ARCHIVE (_bfd_archive_coff),#endif      BFD_JUMP_TABLE_SYMBOLS (bfd_elf64),      BFD_JUMP_TABLE_RELOCS (bfd_elf64),      BFD_JUMP_TABLE_WRITE (bfd_elf64),      BFD_JUMP_TABLE_LINK (bfd_elf64),      BFD_JUMP_TABLE_DYNAMIC (bfd_elf64),  /* Alternative endian target.  */#ifdef TARGET_LITTLE_SYM  & TARGET_LITTLE_SYM,#else  NULL,#endif  /* backend_data: */  (PTR) &elf64_bed};#endif#ifdef TARGET_LITTLE_SYMconst bfd_target TARGET_LITTLE_SYM ={  /* name: identify kind of target */  TARGET_LITTLE_NAME,  /* flavour: general indication about file */  bfd_target_elf_flavour,  /* byteorder: data is little endian */  BFD_ENDIAN_LITTLE,  /* header_byteorder: header is also little endian */  BFD_ENDIAN_LITTLE,  /* object_flags: mask of all file flags */  (HAS_RELOC | EXEC_P | HAS_LINENO | HAS_DEBUG | HAS_SYMS | HAS_LOCALS |   DYNAMIC | WP_TEXT | D_PAGED),  /* section_flags: mask of all section flags */  (SEC_HAS_CONTENTS | SEC_ALLOC | SEC_LOAD | SEC_RELOC | SEC_READONLY |   SEC_CODE | SEC_DATA | SEC_DEBUGGING | SEC_EXCLUDE | SEC_SORT_ENTRIES),   /* leading_symbol_char: is the first char of a user symbol      predictable, and if so what is it */  elf_symbol_leading_char,  /* ar_pad_char: pad character for filenames within an archive header     FIXME:  this really has nothing to do with ELF, this is a characteristic     of the archiver and/or os and should be independently tunable */  '/',  /* ar_max_namelen: maximum number of characters in an archive header     FIXME:  this really has nothing to do with ELF, this is a characteristic     of the archiver and should be independently tunable.  This value is     a WAG (wild a** guess) */  14,  /* Routines to byte-swap various sized integers from the data sections */  bfd_getl64, bfd_getl_signed_64, bfd_putl64,    bfd_getl32, bfd_getl_signed_32, bfd_putl32,    bfd_getl16, bfd_getl_signed_16, bfd_putl16,  /* Routines to byte-swap various sized integers from the file headers */  bfd_getl64, bfd_getl_signed_64, bfd_putl64,    bfd_getl32, bfd_getl_signed_32, bfd_putl32,    bfd_getl16, bfd_getl_signed_16, bfd_putl16,  /* bfd_check_format: check the format of a file being read */  { _bfd_dummy_target,		/* unknown format */    bfd_elf64_object_p,		/* assembler/linker output (object file) */    bfd_elf64_archive_p,	/* an archive */    bfd_elf64_core_file_p	/* a core file */  },  /* bfd_set_format: set the format of a file being written */  { bfd_false,    bfd_elf64_mkobject,    bfd_elf64_mkarchive,    bfd_elf64_mkcorefile  },  /* bfd_write_contents: write cached information into a file being written */  { bfd_false,    bfd_elf64_write_object_contents,    bfd_elf64_write_archive_contents,    bfd_elf64_write_corefile_contents,  },      BFD_JUMP_TABLE_GENERIC (bfd_elf64),      BFD_JUMP_TABLE_COPY (bfd_elf64),      BFD_JUMP_TABLE_CORE (bfd_elf64),#ifdef bfd_elf64_archive_functions      BFD_JUMP_TABLE_ARCHIVE (bfd_elf64_archive),#else      BFD_JUMP_TABLE_ARCHIVE (_bfd_archive_coff),#endif      BFD_JUMP_TABLE_SYMBOLS (bfd_elf64),      BFD_JUMP_TABLE_RELOCS (bfd_elf64),      BFD_JUMP_TABLE_WRITE (bfd_elf64),      BFD_JUMP_TABLE_LINK (bfd_elf64),      BFD_JUMP_TABLE_DYNAMIC (bfd_elf64),  /* Alternative endian target.  */#ifdef TARGET_BIG_SYM  & TARGET_BIG_SYM,#else  NULL,#endif  /* backend_data: */  (PTR) &elf64_bed};#endif

⌨️ 快捷键说明

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