diff options
author | Ian Lance Taylor <ian@airs.com> | 1993-07-30 22:32:09 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@airs.com> | 1993-07-30 22:32:09 +0000 |
commit | 5a1cb8d5265ed89994c8017892053cbfcdf5f07f (patch) | |
tree | 33616bfb143c7778924cdf544aa1a912667b8245 /bfd | |
parent | 7ff42880571fd14e10616d81515f891978dfce38 (diff) | |
download | gdb-5a1cb8d5265ed89994c8017892053cbfcdf5f07f.zip gdb-5a1cb8d5265ed89994c8017892053cbfcdf5f07f.tar.gz gdb-5a1cb8d5265ed89994c8017892053cbfcdf5f07f.tar.bz2 |
* nlm32-i386.c: New file. First cut at i386 NLM code.
* libnlm.h: Added some more prototypes.
(struct nlm_relent): New structure.
(nlmNAME(symbol_type)): Added rcnt and relocs fields.
(struct nlm_obj_tdata): Added new fields: nlm_symbols,
nlm_text_low, nlm_data_low, nlm_reloc_fixups,
nlm_reloc_fixup_secs.
(struct nlm_backend_data): New structure, with accessor macros.
* nlmcode.h: Use NLM_HIBIT rather than MSB.
(nlm_object_p): Set SEC_RELOC for .text and .data. Don't set
SEC_DATA for .bss. Set HAS_RELOC and HAS_SYMS for abfd. Set the
architecture.
(nlm_swap_fixed_header_out, nlm_swap_variable_header_out,
find_nonzero, nlm_swap_auxiliary_headers_out): New outbound
swapping functions.
(nlm_get_symtab_upper_bound, nlm_slurp_symbol_table): Include
external references in symbol table as undefined symbols.
(nlm_get_symtab, nlm_slurp_symbol_table): Fill in alocation
argument in get_symtab rather than in slurp_symbol_table.
(nlm_slurp_symbol_table): Save symbol information in tdata.
(nlm_print_symbol): New function.
(nlm_slurp_reloc_fixups, nlm_get_reloc_upper_bound,
nlm_canonicalize_reloc): New functions to read relocs.
(nlm_compute_section_file_positions, nlm_set_section_contents,
nlm_external_reloc_compare, nlm_write_object_contents): New
functions to create NLM files.
* nlm-target.h: Define all the nlm functions here either as
default values or in terms of nlmNAME. Use JUMP_TABLE(nlm). Set
the backend_data field to TARGET_BACKEND_DATA.
* nlm32-gen.c, nlm64-gen.c: Don't define function macros here;
they are now in nlm-target.h.
(TARGET_BACKEND_DATA): Define as NULL.
* nlm.c (nlm_mkobject): Do allocate the tdata field.
(nlm_set_arch_mach): New function.
* targets.c: Added nlm32_i386_vec.
* Makefile.in (BFD32_BACKENDS): Added nlm32-i386.o.
(CFILES): Added nlm32-i386.c.
(nlm32-gen.o, nlm64-gen.o): Depend on nlm-target.h.
(nlm32-i386.o): New target.
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/nlm32-gen.c | 80 | ||||
-rw-r--r-- | bfd/nlm64-gen.c | 80 |
2 files changed, 2 insertions, 158 deletions
diff --git a/bfd/nlm32-gen.c b/bfd/nlm32-gen.c index 8918b08..16d5069 100644 --- a/bfd/nlm32-gen.c +++ b/bfd/nlm32-gen.c @@ -31,84 +31,6 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #define TARGET_LITTLE_SYM nlmNAME(little_generic_vec) #define TARGET_BIG_NAME "nlm32-big" #define TARGET_BIG_SYM nlmNAME(big_generic_vec) -#define JUMP_TABLE_INIT JUMP_TABLE(nlm32) - -/* We don't have core files. */ - -#define nlm32_core_file_p \ - ((bfd_target *(*) PARAMS ((bfd *))) bfd_nullvoidptr) -#define nlm32_core_file_failing_command \ - _bfd_dummy_core_file_failing_command -#define nlm32_core_file_failing_signal \ - _bfd_dummy_core_file_failing_signal -#define nlm32_core_file_matches_executable_p \ - _bfd_dummy_core_file_matches_executable_p - -/* Archives are generic or unimplemented. */ - -#define nlm32_slurp_armap \ - bfd_slurp_coff_armap -#define nlm32_slurp_extended_name_table \ - _bfd_slurp_extended_name_table -#define nlm32_truncate_arname \ - bfd_dont_truncate_arname -#define nlm32_openr_next_archived_file \ - bfd_generic_openr_next_archived_file -#define nlm32_generic_stat_arch_elt \ - bfd_generic_stat_arch_elt -#define nlm32_write_armap \ - coff_write_armap - -/* Ordinary section reading and writing */ -#define nlm32_get_section_contents \ - bfd_generic_get_section_contents -#define nlm32_close_and_cleanup \ - bfd_generic_close_and_cleanup - -#define nlm32_bfd_debug_info_start \ - bfd_void -#define nlm32_bfd_debug_info_end \ - bfd_void -#define nlm32_bfd_debug_info_accumulate \ - (PROTO(void,(*),(bfd*, struct sec *))) bfd_void -#define nlm32_bfd_get_relocated_section_contents \ - bfd_generic_get_relocated_section_contents -#define nlm32_bfd_relax_section \ - bfd_generic_relax_section -#define nlm32_bfd_seclet_link \ - bfd_generic_seclet_link -#define nlm32_bfd_make_debug_symbol \ - ((asymbol *(*) PARAMS ((bfd *, void *, unsigned long))) bfd_nullvoidptr) - -#define nlm32_set_section_contents \ - bfd_generic_set_section_contents -#define nlm32_new_section_hook \ - _bfd_dummy_new_section_hook - -#define nlm32_get_reloc_upper_bound \ - ((unsigned int (*) PARAMS ((bfd *, sec_ptr))) bfd_0u) - -#define nlm32_canonicalize_reloc \ - ((unsigned int (*) PARAMS ((bfd *, sec_ptr, arelent **, asymbol **))) bfd_0u) - -#define nlm32_print_symbol \ - ((void (*) PARAMS ((bfd *, PTR, asymbol *, bfd_print_symbol_type))) bfd_false) - -#define nlm32_get_lineno \ - ((alent * (*) PARAMS ((bfd *, asymbol *))) bfd_false) - -#define nlm32_find_nearest_line \ - ((boolean (*) PARAMS ((bfd *, asection *, asymbol **, bfd_vma, \ - CONST char **, CONST char **, unsigned int *))) \ - bfd_false) - -#define nlm32_sizeof_headers \ - ((int (*) PARAMS ((bfd *, boolean))) bfd_0u) - -#define nlm32_write_object_contents \ - ((boolean (*) PARAMS ((bfd *))) bfd_false) - -#define nlm32_bfd_reloc_type_lookup \ - bfd_default_reloc_type_lookup +#define TARGET_BACKEND_DATA NULL #include "nlm-target.h" diff --git a/bfd/nlm64-gen.c b/bfd/nlm64-gen.c index 727e06c..8c60a38 100644 --- a/bfd/nlm64-gen.c +++ b/bfd/nlm64-gen.c @@ -31,84 +31,6 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #define TARGET_LITTLE_SYM nlmNAME(little_generic_vec) #define TARGET_BIG_NAME "nlm64-big" #define TARGET_BIG_SYM nlmNAME(big_generic_vec) -#define JUMP_TABLE_INIT JUMP_TABLE(nlm64) - -/* We don't have core files. */ - -#define nlm64_core_file_p \ - ((bfd_target *(*) PARAMS ((bfd *))) bfd_nullvoidptr) -#define nlm64_core_file_failing_command \ - _bfd_dummy_core_file_failing_command -#define nlm64_core_file_failing_signal \ - _bfd_dummy_core_file_failing_signal -#define nlm64_core_file_matches_executable_p \ - _bfd_dummy_core_file_matches_executable_p - -/* Archives are generic or unimplemented. */ - -#define nlm64_slurp_armap \ - bfd_slurp_coff_armap -#define nlm64_slurp_extended_name_table \ - _bfd_slurp_extended_name_table -#define nlm64_truncate_arname \ - bfd_dont_truncate_arname -#define nlm64_openr_next_archived_file \ - bfd_generic_openr_next_archived_file -#define nlm64_generic_stat_arch_elt \ - bfd_generic_stat_arch_elt -#define nlm64_write_armap \ - coff_write_armap - -/* Ordinary section reading and writing */ -#define nlm64_get_section_contents \ - bfd_generic_get_section_contents -#define nlm64_close_and_cleanup \ - bfd_generic_close_and_cleanup - -#define nlm64_bfd_debug_info_start \ - bfd_void -#define nlm64_bfd_debug_info_end \ - bfd_void -#define nlm64_bfd_debug_info_accumulate \ - (PROTO(void,(*),(bfd*, struct sec *))) bfd_void -#define nlm64_bfd_get_relocated_section_contents \ - bfd_generic_get_relocated_section_contents -#define nlm64_bfd_relax_section \ - bfd_generic_relax_section -#define nlm64_bfd_seclet_link \ - bfd_generic_seclet_link -#define nlm64_bfd_make_debug_symbol \ - ((asymbol *(*) PARAMS ((bfd *, void *, unsigned long))) bfd_nullvoidptr) - -#define nlm64_set_section_contents \ - bfd_generic_set_section_contents -#define nlm64_new_section_hook \ - _bfd_dummy_new_section_hook - -#define nlm64_get_reloc_upper_bound \ - ((unsigned int (*) PARAMS ((bfd *, sec_ptr))) bfd_0u) - -#define nlm64_canonicalize_reloc \ - ((unsigned int (*) PARAMS ((bfd *, sec_ptr, arelent **, asymbol **))) bfd_0u) - -#define nlm64_print_symbol \ - ((void (*) PARAMS ((bfd *, PTR, asymbol *, bfd_print_symbol_type))) bfd_false) - -#define nlm64_get_lineno \ - ((alent * (*) PARAMS ((bfd *, asymbol *))) bfd_false) - -#define nlm64_find_nearest_line \ - ((boolean (*) PARAMS ((bfd *, asection *, asymbol **, bfd_vma, \ - CONST char **, CONST char **, unsigned int *))) \ - bfd_false) - -#define nlm64_sizeof_headers \ - ((int (*) PARAMS ((bfd *, boolean))) bfd_0u) - -#define nlm64_write_object_contents \ - ((boolean (*) PARAMS ((bfd *))) bfd_false) - -#define nlm64_bfd_reloc_type_lookup \ - bfd_default_reloc_type_lookup +#define TARGET_BACKEND_DATA NULL #include "nlm-target.h" |