aboutsummaryrefslogtreecommitdiff
path: root/bfd
diff options
context:
space:
mode:
authorFred Fish <fnf@specifix.com>1996-09-11 04:25:57 +0000
committerFred Fish <fnf@specifix.com>1996-09-11 04:25:57 +0000
commitea3f058549165525b269ea65e4a0dd7d8ea598c4 (patch)
tree85103cfe0e96ee7554a26ca2f25931fb2317f7fe /bfd
parent475c826bb46ed6221b3104951f4dc64976096e4c (diff)
downloadgdb-ea3f058549165525b269ea65e4a0dd7d8ea598c4.zip
gdb-ea3f058549165525b269ea65e4a0dd7d8ea598c4.tar.gz
gdb-ea3f058549165525b269ea65e4a0dd7d8ea598c4.tar.bz2
* 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.
Diffstat (limited to 'bfd')
-rw-r--r--bfd/ChangeLog83
-rw-r--r--bfd/elf.c6
-rw-r--r--bfd/syms.c21
-rw-r--r--bfd/tekhex.c47
4 files changed, 140 insertions, 17 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index a82f59e..03e9510 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,86 @@
+Tue Sep 10 16:18:30 1996 Fred Fish <fnf@cygnus.com>
+
+ * 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 dd5527f..9881ed2 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 da825cb..9959f0b 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 6a5b913..03b41f2 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),