From: Fred Fish Date: Wed, 11 Sep 1996 04:25:57 +0000 (+0000) Subject: * syms.c (coff_section_type): Make arg const. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=ea3f058549165525b269ea65e4a0dd7d8ea598c4;p=binutils-gdb.git * syms.c (coff_section_type): Make arg const. * irix-core.c (irix_core_core_file_p): Remove extraneous extra arg to make_bfd_asection(). * elf-bfd.h (bfd_section_from_phdr): Add prototype. * elfcode.h (bfd_section_from_phdr): Remove prototype. (_bfd_elf_stringtab_init): Remove prototype. * netbsd-core.c (swap_abort): Add prototype. * aix386-core.c (swap_abort): Ditto & make static * hpux-core.c (swap_abort): Ditto & make static. * irix-core.c (swap_abort): Ditto & make static. * ptrace-core.c (swap_abort): Ditto & make static. * trad-core.c (swap_abort): Ditto & make static. * coffswap.h (coff_swap_reloc_in): Ditto. (coff_swap_reloc_out): Ditto. (coff_swap_filehdr_in): Ditto. (coff_swap_filehdr_out): Ditto. (coff_swap_sym_in): Ditto. (coff_swap_sym_out): Ditto. (coff_swap_aux_in): Ditto. (coff_swap_aux_out): Ditto. (coff_swap_lineno_in): Ditto. (coff_swap_lineno_out): Ditto. (coff_swap_aouthdr_in): Ditto. (coff_swap_aouthdr_out): Ditto. (coff_swap_scnhdr_in): Ditto. (coff_swap_scnhdr_out): Ditto. * ihex.c (ihex_sizeof_headers): Ditto. * tekhex.c (getsym): Ditto. (find_chunk): Ditto & make static. (insert_byte): Ditto. (first_phase): Ditto. (pass_over): Ditto. (tekhex_get_symtab): Ditto & make static. (tekhex_get_symtab_upper_bound): Ditto & make static. (tekhex_mkobject): Ditto. (tekhex_object_p): Ditto. (move_section_contents): Ditto. (tekhex_get_section_contents): Ditto. (tekhex_set_arch_mach): Ditto & make static. (tekhex_set_section_contents): Ditto. (writevalue): Ditto. (writesym): Ditto. (out): Ditto. (tekhex_write_object_contents): Ditto. (tekhex_sizeof_headers): Ditto. (tekhex_make_empty_symbol): Ditto. (tekhex_get_symbol_info): Ditto. (tekhex_print_symbol): Ditto. * irix-core.c (make_bfd_asection): Ditto. (irix_core_core_file_p): Ditto. (irix_core_core_file_failing_command): Ditto. (irix_core_core_file_failing_signal): Ditto. (irix_core_core_file_matches_executable_p): Ditto. (irix_core_make_empty_symbol): Ditto. * coff-mips.c (mips_bfd_reloc_type_lookup): Ditto. * srec.c (srec_new_symbol): Ditto. (srec_get_section_contents): Ditto. (srec_set_arch_mach): Ditto. (srec_set_section_contents): Ditto. (internal_srec_write_object_contents): Ditto. (srec_write_object_contents): Ditto. (symbolsrec_write_object_contents): Ditto. (srec_sizeof_headers): Ditto. (srec_make_empty_symbol): Ditto. (srec_get_symtab_upper_bound): Ditto. (srec_get_symtab): Ditto. (srec_print_symbol): Ditto and make static. * elf.c (elf_read): Ditto (assign_section_numbers): Ditto. (elf_fake_sections): Ditto. (sym_is_global): Ditto. (elf_map_symbols): Ditto. (get_program_header_size): Ditto. * coffgen.c (make_a_section_from_file): Ditto. (coff_real_object_p): Ditto. (fixup_symbol_value): Ditto. (build_debug_section): Ditto. (copy_name): Ditto. * syms.c (coff_section_type): Ditto. --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index a82f59ed9e4..03e95105fb3 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,86 @@ +Tue Sep 10 16:18:30 1996 Fred Fish + + * syms.c (coff_section_type): Make arg const. + * irix-core.c (irix_core_core_file_p): Remove extraneous extra arg + to make_bfd_asection(). + * elf-bfd.h (bfd_section_from_phdr): Add prototype. + * elfcode.h (bfd_section_from_phdr): Remove prototype. + (_bfd_elf_stringtab_init): Remove prototype. + + * netbsd-core.c (swap_abort): Add prototype. + * aix386-core.c (swap_abort): Ditto & make static + * hpux-core.c (swap_abort): Ditto & make static. + * irix-core.c (swap_abort): Ditto & make static. + * ptrace-core.c (swap_abort): Ditto & make static. + * trad-core.c (swap_abort): Ditto & make static. + * coffswap.h (coff_swap_reloc_in): Ditto. + (coff_swap_reloc_out): Ditto. + (coff_swap_filehdr_in): Ditto. + (coff_swap_filehdr_out): Ditto. + (coff_swap_sym_in): Ditto. + (coff_swap_sym_out): Ditto. + (coff_swap_aux_in): Ditto. + (coff_swap_aux_out): Ditto. + (coff_swap_lineno_in): Ditto. + (coff_swap_lineno_out): Ditto. + (coff_swap_aouthdr_in): Ditto. + (coff_swap_aouthdr_out): Ditto. + (coff_swap_scnhdr_in): Ditto. + (coff_swap_scnhdr_out): Ditto. + * ihex.c (ihex_sizeof_headers): Ditto. + * tekhex.c (getsym): Ditto. + (find_chunk): Ditto & make static. + (insert_byte): Ditto. + (first_phase): Ditto. + (pass_over): Ditto. + (tekhex_get_symtab): Ditto & make static. + (tekhex_get_symtab_upper_bound): Ditto & make static. + (tekhex_mkobject): Ditto. + (tekhex_object_p): Ditto. + (move_section_contents): Ditto. + (tekhex_get_section_contents): Ditto. + (tekhex_set_arch_mach): Ditto & make static. + (tekhex_set_section_contents): Ditto. + (writevalue): Ditto. + (writesym): Ditto. + (out): Ditto. + (tekhex_write_object_contents): Ditto. + (tekhex_sizeof_headers): Ditto. + (tekhex_make_empty_symbol): Ditto. + (tekhex_get_symbol_info): Ditto. + (tekhex_print_symbol): Ditto. + * irix-core.c (make_bfd_asection): Ditto. + (irix_core_core_file_p): Ditto. + (irix_core_core_file_failing_command): Ditto. + (irix_core_core_file_failing_signal): Ditto. + (irix_core_core_file_matches_executable_p): Ditto. + (irix_core_make_empty_symbol): Ditto. + * coff-mips.c (mips_bfd_reloc_type_lookup): Ditto. + * srec.c (srec_new_symbol): Ditto. + (srec_get_section_contents): Ditto. + (srec_set_arch_mach): Ditto. + (srec_set_section_contents): Ditto. + (internal_srec_write_object_contents): Ditto. + (srec_write_object_contents): Ditto. + (symbolsrec_write_object_contents): Ditto. + (srec_sizeof_headers): Ditto. + (srec_make_empty_symbol): Ditto. + (srec_get_symtab_upper_bound): Ditto. + (srec_get_symtab): Ditto. + (srec_print_symbol): Ditto and make static. + * elf.c (elf_read): Ditto + (assign_section_numbers): Ditto. + (elf_fake_sections): Ditto. + (sym_is_global): Ditto. + (elf_map_symbols): Ditto. + (get_program_header_size): Ditto. + * coffgen.c (make_a_section_from_file): Ditto. + (coff_real_object_p): Ditto. + (fixup_symbol_value): Ditto. + (build_debug_section): Ditto. + (copy_name): Ditto. + * syms.c (coff_section_type): Ditto. + start-sanitize-m324 Mon Sep 9 22:36:01 1996 Jeffrey A Law (law@cygnus.com) diff --git a/bfd/elf.c b/bfd/elf.c index dd5527f1e9f..9881ed242d0 100644 --- a/bfd/elf.c +++ b/bfd/elf.c @@ -47,6 +47,12 @@ static boolean assign_file_positions_except_relocs PARAMS ((bfd *)); static boolean prep_headers PARAMS ((bfd *)); static boolean swap_out_syms PARAMS ((bfd *, struct bfd_strtab_hash **)); static boolean copy_private_bfd_data PARAMS ((bfd *, bfd *)); +static char *elf_read PARAMS ((bfd *, long, unsigned int)); +static void elf_fake_sections PARAMS ((bfd *, asection *, PTR)); +static boolean assign_section_numbers PARAMS ((bfd *)); +static INLINE int sym_is_global PARAMS ((bfd *, asymbol *)); +static boolean elf_map_symbols PARAMS ((bfd *)); +static bfd_size_type get_program_header_size PARAMS ((bfd *)); /* Standard ELF hash function. Do not change this function; you will cause invalid hash tables to be generated. (Well, you would if this diff --git a/bfd/syms.c b/bfd/syms.c index da825cbaaaf..9959f0b6be6 100644 --- a/bfd/syms.c +++ b/bfd/syms.c @@ -307,6 +307,8 @@ CODE_FRAGMENT #include "bfdlink.h" #include "aout/stab_gnu.h" +static char coff_section_type PARAMS ((const char *)); + /* DOCDD INODE @@ -483,13 +485,16 @@ static CONST struct section_to_type stt[] = { {"*DEBUG*", 'N'}, {".bss", 'b'}, + {"zerovars", 'b'}, /* MRI .bss */ {".data", 'd'}, + {"vars", 'd'}, /* MRI .data */ {".rdata", 'r'}, /* Read only data. */ {".rodata", 'r'}, /* Read only data. */ {".sbss", 's'}, /* Small BSS (uninitialized data). */ {".scommon", 'c'}, /* Small common. */ {".sdata", 'g'}, /* Small initialized data. */ {".text", 't'}, + {"code", 't'}, /* MRI .text */ {0, 0} }; @@ -501,7 +506,7 @@ static CONST struct section_to_type stt[] = static char coff_section_type (s) - char *s; + const char *s; { CONST struct section_to_type *t; @@ -768,7 +773,7 @@ _bfd_stab_section_find_nearest_line (abfd, symbols, section, offset, pfound, { /* No stabs debugging information. Set *pinfo so that we can return quickly in the info != NULL case above. */ - *pinfo = info; + *pinfo = (PTR) info; return true; } @@ -841,7 +846,7 @@ _bfd_stab_section_find_nearest_line (abfd, symbols, section, offset, pfound, if (reloc_vector != NULL) free (reloc_vector); - *pinfo = info; + *pinfo = (PTR) info; } /* We are passed a section relative offset. The offsets in the @@ -930,7 +935,7 @@ _bfd_stab_section_find_nearest_line (abfd, symbols, section, offset, pfound, break; } - name = str + bfd_get_32 (abfd, stab + STRDXOFF); + name = (char *) str + bfd_get_32 (abfd, stab + STRDXOFF); /* An empty string indicates the end of the compilation unit. */ @@ -963,7 +968,8 @@ _bfd_stab_section_find_nearest_line (abfd, symbols, section, offset, pfound, { stab += STABSIZE; directory_name = current_file_name; - current_file_name = str + bfd_get_32 (abfd, stab + STRDXOFF); + current_file_name = ((char *) str + + bfd_get_32 (abfd, stab + STRDXOFF)); } main_file_name = current_file_name; @@ -972,7 +978,8 @@ _bfd_stab_section_find_nearest_line (abfd, symbols, section, offset, pfound, case N_SOL: /* The name of an include file. */ - current_file_name = str + bfd_get_32 (abfd, stab + STRDXOFF); + current_file_name = ((char *) str + + bfd_get_32 (abfd, stab + STRDXOFF)); break; case N_SLINE: @@ -992,7 +999,7 @@ _bfd_stab_section_find_nearest_line (abfd, symbols, section, offset, pfound, case N_FUN: /* A function name. */ val = bfd_get_32 (abfd, stab + VALOFF); - name = str + bfd_get_32 (abfd, stab + STRDXOFF); + name = (char *) str + bfd_get_32 (abfd, stab + STRDXOFF); /* An empty string here indicates the end of a function, and the value is relative to fnaddr. */ diff --git a/bfd/tekhex.c b/bfd/tekhex.c index 6a5b913282f..03b41f2d04f 100644 --- a/bfd/tekhex.c +++ b/bfd/tekhex.c @@ -100,6 +100,33 @@ static char sum_block[256]; (d)[0] = digs[((x)>>4)&0xf]; #define ISHEX(x) hex_p(x) +static void tekhex_print_symbol + PARAMS ((bfd *, PTR, asymbol *, bfd_print_symbol_type)); +static void tekhex_get_symbol_info PARAMS ((bfd *, asymbol *, symbol_info *)); +static asymbol *tekhex_make_empty_symbol PARAMS ((bfd *)); +static int tekhex_sizeof_headers PARAMS ((bfd *, boolean)); +static boolean tekhex_write_object_contents PARAMS ((bfd *)); +static void out PARAMS ((bfd *, char, char *, char *)); +static void writesym PARAMS ((char **, CONST char *)); +static void writevalue PARAMS ((char **, bfd_vma)); +static boolean tekhex_set_section_contents + PARAMS ((bfd*, sec_ptr, PTR, file_ptr, bfd_size_type)); +static boolean tekhex_set_arch_mach + PARAMS ((bfd *, enum bfd_architecture, unsigned long)); +static boolean tekhex_get_section_contents + PARAMS ((bfd *, asection *, PTR, file_ptr, bfd_size_type)); +static void move_section_contents + PARAMS ((bfd *, asection *, PTR, file_ptr, bfd_size_type, boolean)); +static const bfd_target *tekhex_object_p PARAMS ((bfd *)); +static boolean tekhex_mkobject PARAMS ((bfd *)); +static long tekhex_get_symtab_upper_bound PARAMS ((bfd *)); +static long tekhex_get_symtab PARAMS ((bfd *, asymbol **)); +static void pass_over PARAMS ((bfd *, void (*)(bfd*, char, char *))); +static void first_phase PARAMS ((bfd *, char, char *)); +static void insert_byte PARAMS ((bfd *, int, bfd_vma)); +static struct data_struct *find_chunk PARAMS ((bfd *, bfd_vma)); +static unsigned int getsym PARAMS ((char *, char **)); + /* Here's an example %3A6C6480004E56FFFC4E717063B0AEFFFC6D0652AEFFFC60F24E5E4E75 @@ -314,7 +341,7 @@ getsym (dstp, srcp) return len; } -struct data_struct * +static struct data_struct * find_chunk (abfd, vma) bfd *abfd; bfd_vma vma; @@ -453,9 +480,9 @@ first_phase (abfd, type, src) record. */ static void - pass_over (abfd, func) +pass_over (abfd, func) bfd *abfd; - void (*func) (); + void (*func) PARAMS ((bfd *, char, char *)); { unsigned int chars_on_line; boolean eof = false; @@ -499,11 +526,10 @@ static void } -long +static long tekhex_get_symtab (abfd, table) bfd *abfd; asymbol **table; - { tekhex_symbol_type *p = abfd->tdata.tekhex_data->symbols; unsigned int c = bfd_get_symcount (abfd); @@ -518,7 +544,7 @@ tekhex_get_symtab (abfd, table) return bfd_get_symcount (abfd); } -long +static long tekhex_get_symtab_upper_bound (abfd) bfd *abfd; { @@ -615,6 +641,7 @@ move_section_contents (abfd, section, locationp, offset, count, get) } } + static boolean tekhex_get_section_contents (abfd, section, locationp, offset, count) bfd *abfd; @@ -632,7 +659,7 @@ tekhex_get_section_contents (abfd, section, locationp, offset, count) return false; } -boolean +static boolean tekhex_set_arch_mach (abfd, arch, machine) bfd *abfd; enum bfd_architecture arch; @@ -894,7 +921,7 @@ tekhex_write_object_contents (abfd) } static int - tekhex_sizeof_headers (abfd, exec) +tekhex_sizeof_headers (abfd, exec) bfd *abfd; boolean exec; @@ -981,8 +1008,8 @@ const bfd_target tekhex_vec = { "tekhex", /* name */ bfd_target_tekhex_flavour, - true, /* target byte order */ - true, /* target headers byte order */ + BFD_ENDIAN_UNKNOWN, /* target byte order */ + BFD_ENDIAN_UNKNOWN, /* target headers byte order */ (EXEC_P | /* object flags */ HAS_SYMS | HAS_LINENO | HAS_DEBUG | HAS_RELOC | HAS_LOCALS | WP_TEXT | D_PAGED),