X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=bfd%2Fsom.h;h=cf8dcbfd542d4a481a91d73a3ad7358395edd67e;hb=65cf3563597713173bb688287a21666ec66e722d;hp=ab0bb484946e2b5cad187e6c676f117c7d9c2b7a;hpb=3e110533652d0f94211681ab718b7471f8bd3493;p=deliverable%2Fbinutils-gdb.git diff --git a/bfd/som.h b/bfd/som.h index ab0bb48494..cf8dcbfd54 100644 --- a/bfd/som.h +++ b/bfd/som.h @@ -1,6 +1,6 @@ /* HP PA-RISC SOM object file format: definitions internal to BFD. Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1998, 2000, 2001, - 2002, 2003, 2004, 2005 Free Software Foundation, Inc. + 2002, 2003, 2004, 2005, 2007, 2008, 2012 Free Software Foundation, Inc. Contributed by the Center for Software Science at the University of Utah (pa-gdb-bugs@cs.utah.edu). @@ -9,7 +9,7 @@ This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or + the Free Software Foundation; either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, @@ -30,9 +30,9 @@ /* We want reloc.h to provide PA 2.0 defines. */ #define PA_2_0 -#include -#include -#include +#include "som/aout.h" +#include "som/lst.h" +#include "som/internal.h" /* The SOM BFD backend doesn't currently use anything from these two include files, but it's likely to need them in the future. */ @@ -41,7 +41,7 @@ #include #endif -#if defined(HOST_HPPABSD) || defined (HOST_HPPAOSF) +#if defined (HOST_HPPABSD) || defined (HOST_HPPAOSF) /* BSD uses a completely different scheme for object file identification. so for now, define _PA_RISC_ID to accept any random value for a model number. */ @@ -49,9 +49,6 @@ #define _PA_RISC_ID(__m_num) 1 #endif /* HOST_HPPABSD */ -#define FILE_HDR_SIZE sizeof (struct header) -#define AUX_HDR_SIZE sizeof (struct som_exec_auxhdr) - typedef struct som_symbol { asymbol symbol; @@ -66,7 +63,7 @@ typedef struct som_symbol unsigned int hppa_arg_reloc; unsigned int hppa_priv_level; } ap; - PTR any; + void * any; } tc_data; @@ -116,11 +113,11 @@ struct somdata /* These three fields are only used when writing files and are generated from scratch. They need not be copied for objcopy or strip to work. */ - struct header *file_hdr; - struct copyright_aux_hdr *copyright_aux_hdr; - struct user_string_aux_hdr *version_aux_hdr; + struct som_header *file_hdr; + struct som_string_auxhdr *copyright_aux_hdr; + struct som_string_auxhdr *version_aux_hdr; struct som_exec_auxhdr *exec_hdr; - COMPUNIT *comp_unit; + struct som_compilation_unit *comp_unit; /* Pointers to a saved copy of the symbol and string tables. These need not be copied for objcopy or strip to work. */ @@ -136,6 +133,7 @@ struct somdata file_ptr str_filepos; file_ptr reloc_filepos; unsigned stringtab_size; + void * line_info; }; struct som_data_struct @@ -143,35 +141,6 @@ struct som_data_struct struct somdata a; }; -struct som_subspace_dictionary_record -{ - int space_index; - unsigned int access_control_bits : 7; - unsigned int memory_resident : 1; - unsigned int dup_common : 1; - unsigned int is_common : 1; - unsigned int is_loadable : 1; - unsigned int quadrant : 2; - unsigned int initially_frozen : 1; - unsigned int is_first : 1; - unsigned int code_only : 1; - unsigned int sort_key : 8; - unsigned int replicate_init : 1; - unsigned int continuation : 1; - unsigned int is_tspecific : 1; - unsigned int is_comdat : 1; - unsigned int reserved : 4; - int file_loc_init_value; - unsigned int initialization_length; - unsigned int subspace_start; - unsigned int subspace_length; - unsigned int reserved2 : 5; - unsigned int alignment :27; - union name_pt name; - int fixup_request_index; - unsigned int fixup_request_quantity; -}; - /* Substructure of som_section_data_struct used to hold information which can't be represented by the generic BFD section structure, but which must be copied during objcopy or strip. */ @@ -214,8 +183,8 @@ struct som_section_data_struct { struct som_copyable_section_data_struct *copy_data; unsigned int reloc_size; - char *reloc_stream; - struct space_dictionary_record *space_dict; + unsigned char *reloc_stream; + struct som_space_dictionary_record *space_dict; struct som_subspace_dictionary_record *subspace_dict; };